How to Access CompactFlash by using SystemACE?

Jun 05, 2007 2 Replies

Hi Guys,



I was trying to access CF by using API sysace_fread and sysace_fwrite. I checked xilfatfs library in the software platform settings and #include , but edk still complains.


---------------------------------------------------------------------------= =AD-------------------------------------------- Running DRCs for OSes, Drivers and Libraries ... ERROR:MDT - issued from TCL procedure "::sw_xilfatfs_v1_00_a::xilfatfs_drc" line 15 xilfatfs () - Sysace HW module not present or not accessible from this processor. FATfs cannot be used without this module


ERROR:MDT - Error while running DRC for processor ppc405_1...


make: *** [ppc405_0/lib/libxil.a] Error 2



---------------------------------------------------------------------------= =AD--------------------------------------------


Has anyone experienced this before? Any input would be appreciated!


Thanks in advance,


Yao



--=AD=AD--------------------------------------------

--=AD=AD--------------------------------------------

Do you have the system ace module accessible over the bus from your processor?

Jon

----=AD=AD=AD--------------------------------------------

----=AD=AD=AD--------------------------------------------

Hi Jon,

The previous problem was solved. I was supposed to use ppc405_0, not ppc405_1. I think thats why edk complains. A silly mistake.

But, I run into another weird erorr. sysace_fwrite() cannot be found.

--------------------------------------------------------------------------- undefined reference to `sysace_fwrite' collect2: ld returned 1 exit status make: *** [CF_demo/executable.elf] Error 1

---------------------------------------------------------------------------

Xilfatfs lib is chosen and included in the main.c, as follow. If I comment out sysace_fwrite, no errors come up during compilation. How come can edk only find sysace_fread but sysace_fwrite? Any input would be appreciated!

Thanks in advance,

Yao

---------------------------------------------------------------------------= =AD------------------------------------------------------------------------=

---=AD---------------- #include "xparameters.h" #include "xutil.h" #include "xio.h"

#include

int main(void) {

char* file1 =3D "input.bin"; char* file2 =3D "result.bin";

SYSACE_FILE* infile1, *infile2;

int i, numread, numwrite;

unsigned char Buffer[1];

/** Open the dummy files and read a data**/ infile1 =3D sysace_fopen(file1, "r"); infile2 =3D sysace_fopen(file2, "w");

for(i=3D0; i

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required