hello, On Wed, 2005-09-28 at 15:52 -0500, Jay Monkman wrote: > I'm trying to get USB working on my AU1550 board, and I'm getting an error I > don't understand. I've searched the web and the mailing list archives, but > haven't found anything relevant. there was a post of mine, dating back to 22 Nov 2004 which could have been relevant to your cause :-) > > I'm using 2.6.12, in big-endian mode. [..] > Can anyone point me in the right direction to get this working? don't know whether you still require being pointed in to any direction; however, the following patch (against current GIT HEAD, works for me, YMMV :-) might provide a hint: diff --git a/drivers/usb/host/Kconfig b/drivers/usb/host/Kconfig index ed1899d..914b964 100644 --- a/drivers/usb/host/Kconfig +++ b/drivers/usb/host/Kconfig @@ -100,12 +100,14 @@ config USB_OHCI_HCD_PCI config USB_OHCI_BIG_ENDIAN bool depends on USB_OHCI_HCD + default y if SOC_AU1X00 && CPU_BIG_ENDIAN default n config USB_OHCI_LITTLE_ENDIAN bool depends on USB_OHCI_HCD default n if STB03xxx || PPC_MPC52xx + default n if SOC_AU1X00 && CPU_BIG_ENDIAN default y config USB_UHCI_HCD diff --git a/drivers/usb/host/ohci.h b/drivers/usb/host/ohci.h index caacf14..bf18351 100644 --- a/drivers/usb/host/ohci.h +++ b/drivers/usb/host/ohci.h @@ -462,6 +462,11 @@ static inline struct usb_hcd *ohci_to_hc #define writel_be(val, addr) out_be32((__force unsigned *)addr, val) #endif +#if defined(CONFIG_SOC_AU1X00) +#define readl_be(addr) __raw_readl((__force u32 *)(addr)) +#define writel_be(val, addr) __raw_writel(val, (__force u32 *)(addr)) +#endif + static inline unsigned int ohci_readl (const struct ohci_hcd *ohci, __hc32 __iomem * regs) { greetings, -- Herbert Valerio Riedel <hvr@xxxxxxx> GnuPG Key Fingerprint: 7BB9 2D6C D485 CE64 4748 5F65 4981 E064 883F 4142