On Mon, 9 May 2011, Jan Andersson wrote: > This patch adds support for big endian GRUSBHC UHCI controllers. > The HCD bus glue will probe the register interface to determine > the endianness of the controller. > > Tested on GR-LEON4-ITX board which has a controller with little endian > interface and on custom LEON3 board with a BE controller. ... > diff --git a/drivers/usb/host/uhci-hcd.h b/drivers/usb/host/uhci-hcd.h > index 22a4ce6..079fac3 100644 > --- a/drivers/usb/host/uhci-hcd.h > +++ b/drivers/usb/host/uhci-hcd.h > @@ -545,9 +545,18 @@ static inline void uhci_writeb(const struct uhci_hcd *uhci, u8 val, int reg) > #if defined(CONFIG_USB_UHCI_BIG_ENDIAN_MMIO) > /* Support (non-PCI) big endian host controllers */ > #define uhci_big_endian_mmio(u) ((u)->big_endian_mmio) > +/* Arch-specific big endian read/write functions */ > +#if defined(CONFIG_SPARC_LEON) > +#define readl_be(addr) __raw_readl(addr) > +#define writel_be(val, addr) __raw_writel(val, addr) > +#define readw_be(addr) __raw_readw(addr) > +#define writew_be(val, addr) __raw_writew(val, addr) > +#define readb_be(addr) __raw_readb(addr) > +#define writeb_be(val, addr) __raw_writeb(val, addr) > +#endif /* CONFIG_SPARC_LEON */ Shouldn't these things already be defined in an arch-specific header file? Just like readl(), __raw_readl(), ... ? Alan Stern -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html