Linux hanging on Xilinx SystemACE

Keith J Outwater kjoutwater at
Thu Aug 17 08:01:54 EST 2006


> Using the powerpc development tree of Linux 2.4, I am trying to boot my 
system from CompactFlash using Xilinx SystemACE. My compact flash card has 
two partitions, a 16MB FAT16 that holds the combination FPGA image / Linux 
Kernel ELF file, and an Ext2 partition that holds the root file system. 
The system starts the boot process, uncompresses the Linux kernel and 
begins loading drivers. Part way into this process, it conducts a 
partition check of the drive being reported to it by SystemACE, however, 
it hangs at that point. No kernel panic, no error message, it simply 
hangs. Here is the output at that point...
> Partition check:
>  xsysacea:
> what I am trying to find out is if this problem has been seen/fixed in 
the past? or did I format the CF card incorrectly?

I have a system that uses the SystemAce in a similar way.  I was also 
having lockups.  After a lot of digging, I found a patch by John Masters 
(e-mail unknown) to the MontaVista SystemAce driver in the 2.4 kernel that 
disables the use of interrupts and runs the SystemAce in a polled mode. 
Performance is not that great, but at least it does not crash with the 
patch.  As I recall, the reason that the unpatched driver crashed is that 
the SystemAce is issuing more than one interrupt upon completion of a 
sector read or write.  Apparently, the Xilinx ML300 board works fine 
without this patch while other eval boards like the Memec DS-BD-2VPxx 
crash without the patch.

This still may not be your problem, but the patch may help later on.

I've attached the patched file.  The file is from 
./drivers/block/xilinx_sysace/adapter.c in the 2.4.30 from MontaVista.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: adapter.c
Type: application/octet-stream
Size: 25817 bytes
Desc: not available
Url : 

More information about the Linuxppc-embedded mailing list