On Thu, 5 May 2005, Thiemo Seufer wrote: > > > I'm just using USB host support on a AU1100 developing board (DB1100 > > > configuration) and i notice that CPU locks in function > > > au1xxx_start_hc(): > > > > > > /* wait for reset complete (read register twice; see au1500 errata) */ > > > while (au_readl(USB_HOST_CONFIG), > > > !(au_readl(USB_HOST_CONFIG) & USBH_ENABLE_RD)) > > > udelay(1000); > > > > > > while waiting for USB controller to reset. I checked it out and I > > > discovered that register USB_HOST_CONFIG is fixed at value 0xe! So the > > > controller never reset... > > > > > > Linux is 2.6.12-rc3 from CVS. > > > > > > Someone knows whats wrong? > > > > It sounds like this is a custom Au1100 based board? What boot code are > > you running? I'm guessing the SOC isn't setup correctly or you have a > > HW problem. > > I wonder if the code works reliable. At least, a comma operator isn't a > sequence point, which means the compiler is free to change the execution > order. Good point -- even though the code is valid C, it's complete rubbish. I'd suggest rewriting it to get something readable first. Maciej