Re: [Linux-fbdev-devel] [PATCH 2.6.18-rc4] sisusbvga: fix sisusb.c
From: Geert Uytterhoeven <geert@linux-m68k.org>
Date: 2006-08-16 11:41:16
On Wed, 16 Aug 2006, Mitsuhiro KOGA wrote:
quoted hunk ↗ jump to hunk
@@ -76,6 +76,63 @@ static struct usb_driver sisusb_driver; DEFINE_MUTEX(disconnect_mutex); +#ifdef __BIG_ENDIAN +static inline void sisusb_memcpy(u16 *dst, u16 *src, int count) +{ + while (count--) + *(dst++) = cpu_to_le16(*(src++)); +} +#else +static inline void sisusb_memcpy(u16 *dst, u16 *src, int count) +{ + memcpy(dst, src, count); +} +#endif + +#ifdef __BIG_ENDIAN +static inline void sisusb_order_wmem_24bit(char *src, u32 *dst) +{ + *dst = (*src << 16) | + (*(src + 1) << 8) | + *(src + 2); +} +#else +static inline void sisusb_order_wmem_24bit(char *src, u32 *dst) +{ + *dst = (*(src + 2) << 16) | + (*(src + 1) << 8) | + *src; +} +#endif + +#ifdef __BIG_ENDIAN +static inline void sisusb_order_rmem_24bit(u32 *src, char *dst) +{ + *dst = (*src >> 16) & 0xff; + *(dst + 1) = (*src >> 8) & 0xff; + *(dst + 2) = *src & 0xff; +} +#else +static inline void sisusb_order_rmem_24bit(u32 *src, char *dst) +{ + *(dst + 2) = (*src >> 16) & 0xff; + *(dst + 1) = (*src >> 8) & 0xff; + *dst = *src & 0xff; +} +#endif + +#ifdef __BIG_ENDIAN +static inline void sisusb_order_mem_32bit(u32 *src, u32 *dst) +{ + *dst = ((*src << 16) & 0xffff0000) | ((*src >> 16) & 0xffff); +} +#else +static inline void sisusb_order_mem_32bit(u32 *src, u32 *dst) +{ + *dst = *src; +} +#endif + static void sisusb_free_buffers(struct sisusb_usb_data *sisusb) {
Why not merge the #ifdefs, so you need only one?
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
linux-usb-devel@lists.sourceforge.net
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel