Re: [PATCH] asm-generic: io: Fix ioread16/32be and iowrite16/32be

2013-02-08 Thread Michal Simek
2013/2/8 Geert Uytterhoeven :
> On Thu, Feb 7, 2013 at 3:18 PM, Michal Simek  wrote:
>> Fix ioreadXXbe and iowriteXXbe functions which did
>> additional little endian conversion on native big endian systems.
>> Using be_to_cpu (cpu_to_be) conversions with __raw_read/write
>> functions have resolved it.
>>
>> Signed-off-by: Michal Simek 
>> CC: Benjamin Herrenschmidt 
>> CC: Arnd Bergmann 
>> CC: Geert Uytterhoeven 
>> CC: Will Deacon 
>> CC: linux-a...@vger.kernel.org
>
> I have one question (see below). Apart from that:
> Acked-by: Geert Uytterhoeven 
>
>> -#define ioread16be(addr)   be16_to_cpu(ioread16(addr))
>> +#define ioread16be(addr)   __be16_to_cpu(__raw_readw(addr))
>
> Why did you change it to the __beX_to_cpu variant with underscores?

The question could be probably different. Why are they even defined?
I have grepped the kernel and all archs use these generic macros

include/linux/byteorder/generic.h:94:#define be32_to_cpu __be32_to_cpu
include/linux/byteorder/generic.h:106:#define be32_to_cpup __be32_to_cpup
include/linux/byteorder/generic.h:118:#define be32_to_cpus __be32_to_cpus

What about to remove them?

Back to you question. I can't remember particular reason for that maybe
just experience that __ versions should be the fastest kernel implementation.

Thanks,
Michal


-- 
Michal Simek, Ing. (M.Eng)
w: www.monstr.eu p: +42-0-721842854
Maintainer of Linux kernel - Microblaze cpu - http://www.monstr.eu/fdt/
Maintainer of Linux kernel - Xilinx Zynq ARM architecture
Microblaze U-BOOT custodian and responsible for u-boot arm zynq platform
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] asm-generic: io: Fix ioread16/32be and iowrite16/32be

2013-02-08 Thread Michal Simek
2013/2/8 Geert Uytterhoeven ge...@linux-m68k.org:
 On Thu, Feb 7, 2013 at 3:18 PM, Michal Simek michal.si...@xilinx.com wrote:
 Fix ioreadXXbe and iowriteXXbe functions which did
 additional little endian conversion on native big endian systems.
 Using be_to_cpu (cpu_to_be) conversions with __raw_read/write
 functions have resolved it.

 Signed-off-by: Michal Simek michal.si...@xilinx.com
 CC: Benjamin Herrenschmidt b...@kernel.crashing.org
 CC: Arnd Bergmann a...@arndb.de
 CC: Geert Uytterhoeven ge...@linux-m68k.org
 CC: Will Deacon will.dea...@arm.com
 CC: linux-a...@vger.kernel.org

 I have one question (see below). Apart from that:
 Acked-by: Geert Uytterhoeven ge...@linux-m68k.org

 -#define ioread16be(addr)   be16_to_cpu(ioread16(addr))
 +#define ioread16be(addr)   __be16_to_cpu(__raw_readw(addr))

 Why did you change it to the __beX_to_cpu variant with underscores?

The question could be probably different. Why are they even defined?
I have grepped the kernel and all archs use these generic macros

include/linux/byteorder/generic.h:94:#define be32_to_cpu __be32_to_cpu
include/linux/byteorder/generic.h:106:#define be32_to_cpup __be32_to_cpup
include/linux/byteorder/generic.h:118:#define be32_to_cpus __be32_to_cpus

What about to remove them?

Back to you question. I can't remember particular reason for that maybe
just experience that __ versions should be the fastest kernel implementation.

Thanks,
Michal


-- 
Michal Simek, Ing. (M.Eng)
w: www.monstr.eu p: +42-0-721842854
Maintainer of Linux kernel - Microblaze cpu - http://www.monstr.eu/fdt/
Maintainer of Linux kernel - Xilinx Zynq ARM architecture
Microblaze U-BOOT custodian and responsible for u-boot arm zynq platform
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] asm-generic: io: Fix ioread16/32be and iowrite16/32be

2013-02-07 Thread Geert Uytterhoeven
On Thu, Feb 7, 2013 at 3:18 PM, Michal Simek  wrote:
> Fix ioreadXXbe and iowriteXXbe functions which did
> additional little endian conversion on native big endian systems.
> Using be_to_cpu (cpu_to_be) conversions with __raw_read/write
> functions have resolved it.
>
> Signed-off-by: Michal Simek 
> CC: Benjamin Herrenschmidt 
> CC: Arnd Bergmann 
> CC: Geert Uytterhoeven 
> CC: Will Deacon 
> CC: linux-a...@vger.kernel.org

I have one question (see below). Apart from that:
Acked-by: Geert Uytterhoeven 

> -#define ioread16be(addr)   be16_to_cpu(ioread16(addr))
> +#define ioread16be(addr)   __be16_to_cpu(__raw_readw(addr))

Why did you change it to the __beX_to_cpu variant with underscores?

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- ge...@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
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] asm-generic: io: Fix ioread16/32be and iowrite16/32be

2013-02-07 Thread Arnd Bergmann
On Thursday 07 February 2013 15:18:48 Michal Simek wrote:
> Fix ioreadXXbe and iowriteXXbe functions which did
> additional little endian conversion on native big endian systems.
> Using be_to_cpu (cpu_to_be) conversions with __raw_read/write
> functions have resolved it.
> 
> Signed-off-by: Michal Simek 
> CC: Benjamin Herrenschmidt 
> CC: Arnd Bergmann 
> CC: Geert Uytterhoeven 
> CC: Will Deacon 
> CC: linux-a...@vger.kernel.org

Acked-by: Arnd Bergmann 
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] asm-generic: io: Fix ioread16/32be and iowrite16/32be

2013-02-07 Thread Geert Uytterhoeven
On Thu, Feb 7, 2013 at 3:18 PM, Michal Simek michal.si...@xilinx.com wrote:
 Fix ioreadXXbe and iowriteXXbe functions which did
 additional little endian conversion on native big endian systems.
 Using be_to_cpu (cpu_to_be) conversions with __raw_read/write
 functions have resolved it.

 Signed-off-by: Michal Simek michal.si...@xilinx.com
 CC: Benjamin Herrenschmidt b...@kernel.crashing.org
 CC: Arnd Bergmann a...@arndb.de
 CC: Geert Uytterhoeven ge...@linux-m68k.org
 CC: Will Deacon will.dea...@arm.com
 CC: linux-a...@vger.kernel.org

I have one question (see below). Apart from that:
Acked-by: Geert Uytterhoeven ge...@linux-m68k.org

 -#define ioread16be(addr)   be16_to_cpu(ioread16(addr))
 +#define ioread16be(addr)   __be16_to_cpu(__raw_readw(addr))

Why did you change it to the __beX_to_cpu variant with underscores?

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- ge...@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
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] asm-generic: io: Fix ioread16/32be and iowrite16/32be

2013-02-07 Thread Arnd Bergmann
On Thursday 07 February 2013 15:18:48 Michal Simek wrote:
 Fix ioreadXXbe and iowriteXXbe functions which did
 additional little endian conversion on native big endian systems.
 Using be_to_cpu (cpu_to_be) conversions with __raw_read/write
 functions have resolved it.
 
 Signed-off-by: Michal Simek michal.si...@xilinx.com
 CC: Benjamin Herrenschmidt b...@kernel.crashing.org
 CC: Arnd Bergmann a...@arndb.de
 CC: Geert Uytterhoeven ge...@linux-m68k.org
 CC: Will Deacon will.dea...@arm.com
 CC: linux-a...@vger.kernel.org

Acked-by: Arnd Bergmann a...@arndb.de
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/