Subject: Re: [PATCH v2] net: can: Disable flexcan driver build for big endian CPU on ARM

From: Marc Kleine-Budde <[email-masked]>
Date: Thu, 16 Jan 2014 17:49:13 +0100

On 01/14/2014 11:44 AM, Arnd Bergmann wrote:
>> On 01/06/2014 02:21 PM, Guenter Roeck wrote:
>>> Building arm:allmodconfig fails with
>>>
>>> flexcan.c: In function 'flexcan_read':
>>> flexcan.c:243:2: error: implicit declaration of function 'in_be32'
>>> flexcan.c: In function 'flexcan_write':
>>> flexcan.c:248:2: error: implicit declaration of function 'out_be32'
>>>
>>> in_be32 and out_be32 do not (or no longer) exist for ARM targets.
>>> Disable the build for ARM on big endian CPUs.
>>>
>>> Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>
>>
>> Applied to can-next.
> 
> Sorry, this patch was wrong.
> 
> There is no reason to disallow building the driver on big-endian
> ARM kernels. Furthermore, the current behavior is actually broken
> on little-endian PowerPC as well.
> The choice of register accessor functions must purely depend
> on the CPU architecture, not which endianess the CPU is running
> on. Note that we nowadays allow both big-endian ARM and little-endian
> PowerPC kernels.
> With this patch applied, we will do the right thing in all four
> combinations.
> 
> Signed-off-by: Arnd Bergmann <[email-masked]>

Thanks Arnd, I've squashed in the revert of Guenter's patch.

Marc

-- 
Pengutronix e.K.                  | Marc Kleine-Budde           |
Industrial Linux Solutions        | Phone: +49-231-2826-924     |
Vertretung West/Dortmund          | Fax:   +49-5121-206917-5555 |
Amtsgericht Hildesheim, HRA 2686  | http://www.pengutronix.de   |