[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20110622154022.GB19027@kroah.com>
Date: Wed, 22 Jun 2011 08:40:22 -0700
From: Greg KH <greg@...ah.com>
To: David Miller <davem@...emloft.net>
Cc: linux-kernel@...r.kernel.org
Subject: Re: brcm80211 build busted on big-endian
On Tue, Jun 21, 2011 at 07:36:41PM -0700, David Miller wrote:
>
> It tries to do "xor" operations on pointers because of how the
> R_REG() and W_REG() macros are defined.
>
> ====================
> #define R_REG(r) (\
> SELECT_BUS_READ( \
> ({ \
> __typeof(*(r)) __osl_v; \
> switch (sizeof(*(r))) { \
> case sizeof(u8): \
> __osl_v = \
> readb((volatile u8*)((r)^3)); \
> break; \
> case sizeof(u16): \
> __osl_v = \
> readw((volatile u16*)((r)^2)); \
> break; \
> case sizeof(u32): \
> __osl_v = readl((volatile u32*)(r)); \
> break; \
> } \
> __osl_v; \
> }), \
> OSL_READ_REG(r)) \
> )
> ====================
>
> This driver is a crap fest of volatile pointers and not-compile-tested
> code.
For big endian, I agree, which is why I thought I fixed this up so it
wouldn't build on other arches than MIPS for the moment.
Is this blowing up in -next or in Linus's tree right now?
thanks,
greg k-h
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists