We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 19867

6.2 EDK - XilMFS issues errors when loading an initialized file image from PC


General Description:

When generating an MFS image using MFSGen on the PC, and then downloading the image to the Embedded System, the image content returned by mfs_ls() is empty.


This issue is related to the following:

- You must still use the "s" option for MFSGen on a PC to generate the image.

- When you invoke mfs_init_fs(), the base address should be offset by 4.

If you load your image at 0xff000000, the base address for mfs_init_fs() should be specified as 0xff000004. The reason for this address specification is because MFSGen added a 4-bit header to the image file to identify the type of image (big or little endian). The library was supposed to be enhanced to recognize this change and fix the image in memory, but this feature has not been implemented.

You can load the MFS image without any problems as follows:

1. Run the following to generate the "mfsimage.mfs" image file (note the use of the "s" parameter for the byte swapping on the PC):

mfsgen -cvfsb mfsimage.mfs 3 testimg.txt

2. Load the image to the HW at 0x8600 0000 using XMD and specify 0x8600 0004 as the base address in mfs_init_fs().

3. Call mfs_ls() to verify the image at run time.

This Problem is resolved in EDK 7.1. For details on how to initialize the XilMFS from the C Code, refer to the EDK User Manual.

AR# 19867
Date Created 09/03/2007
Last Updated 12/15/2012
Status Active
Type General Article