[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [microblaze-uclinux] Kernel hangs after mount filesystem on CF card



Hi Claudio

I am using systemace on the Ml401 board and I had the same problem. I found 
that there is something wrong with the write interrupt. If a sector of 512 
bytes is written every 32 byte (this is the buffer size of the systemace) an 
interrupt is executed. At the last sector after 16 interrupts all data is 
written and  the complition routines are called. But after this a 17th 
interrupt is comming (why??) with the request of writing 0 bytes, the 
systemace driver does correctly go just another time through the complition 
routines but then on the ML 401 there is a OPB-bus error and the sytem 
crashes. To overcome this I disabled in the write routine the interrupt and 
changed it to a  polling solution and now everything works. But this is of 
cource not a final solution because of its blocking character, but my linux 
knowledge is not good enough to find out why this happens. I would be also 
happy if one of the experts could solve this problem!

Cheers

Alfred Gruenewald
----- Original Message ----- 
From: "Claudio Lanconelli" <lanconelli.claudio@eptar.com>
To: <microblaze-uclinux@itee.uq.edu.au>
Sent: Thursday, March 17, 2005 4:50 PM
Subject: [microblaze-uclinux] Kernel hangs after mount filesystem on CF card


Hi,
I have solved my previous problem with systemace. It was due to power on 
reset
on my Spartan3 MB1500 evaluation board with systemace board installed. If I
press FPGA RESET button until the FPGA is configured by systemace the
bootloader loads image file to SDRAM memory and the linux kernel start
sucesfully.
However, at boot prompt, if I mount the CF filesystem RW the system hangs 
and
sometimes a message appears:
 Scheduling in interrupt kernel BUG at sched.c:569!
sometimes the kernel silently hangs (look at BOOT log above).

I tried with both MSDOS and EXT2 filesystems but it doesn't matter.
Instead if I mount the filesystems readonly the problem seems to disappear.

I suspect it's a problem on the systemace driver, but I'm not an expert with
uclinux.
Does anyone ever tried to mount a filesystem readwrite on the systemace CF?

I have updated the kernel today from CVS and build with latest gcc tools. In
the configuration file I enabled systemace driver, devfs and msdos
filesystems support. (config file in the attachment with system.mhs and
system.mss files)

My CF card is partitioned with MSDOS on partition n.1 and EXT2 on partition
n.2. I really write access at least on second partition.

Disk /dev/sdc: 128 MB, 128450560 bytes
4 heads, 62 sectors/track, 1011 cylinders
Units = cylinders of 248 * 512 = 126976 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sdc1               1         127       15717    6  FAT16
/dev/sdc2             128        1011      109616   83  Linux


Thanks in advance for any suggestions.
Regards,
Claudio Lanconelli


___________________________
microblaze-uclinux mailing list
microblaze-uclinux@itee.uq.edu.au
Project Home Page : http://www.itee.uq.edu.au/~jwilliams/mblaze-uclinux
Mailing List Archive : http://www.itee.uq.edu.au/~listarch/microblaze-uclinux/