Machine check in USB driver interrupt handler on 8xx board

carolyn.j.smith at carolyn.j.smith at
Thu Oct 28 07:05:59 EST 2004


I am porting a USB (Philips ISP116x) driver to an 8xx (852T in particular)
board. It is built into the kernel at the moment (i.e. it isn't a loadable
module) and comes up fine and gets and handles interrupts (at least 2400 of
them) while the rest of the kernel is initializing.

Just before the kernel is completely up, after the message "Freeing unused
kernel memmory ...", I get a machine check in the driver's interrupt
handler, in particular on a write to the command port register. 

The ISP116x has only 2 16-bit registers which are memory mapped to 2 16-bit
words in the phyiscal address space 0xfa000000 and 0xfa000002 and then
ioremap'ed to kernel address space when the driver starts up. That seems to
be working fine up until the machine check occurs.

I am baffled and don't know where to look next. Any ideas / suggestions will
be gratefully received.

Carolyn Smith
Tektronix, Inc.

More information about the Linuxppc-embedded mailing list