Re: Linux hanging on Xilinx SystemACE
From: Jeff Angielski <hidden>
Date: 2006-08-17 00:51:49
On Wed, 2006-08-16 at 15:48 -0600, Grant Likely wrote:
On 8/16/06, Clint Thomas [off-list ref] wrote:quoted
Hey, 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 forgot to mention that we used to see this problem when the identify command that is sent during intialization fails. The driver is written in such a way that if any of this fails, the system hangs because it sits in a polling loop waiting for the correct response. There are no timeout failures... :( In our case we saw this error because we forgot to put a CF into the system [usually during development with NFS rootfs]. It is fairly easy to printk() the drivers init code to find out which step is stuck in the polling loop.
Checking partitions is a user-space activity (fsck). Remove it from your init scripts. Besides, unless your using a microdrive, your ext2 rootfs should be mounted read-only which greatly reduces the need for fsck. (because FLASH will wear out after too many writes)
The partition check he is referring to is part of a block device driver initialization. It is not fsck. If he were only so luck to be that far in the startup sequence... :) Jeff Angielski The PTR Group