From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1162872AbbKTWU6 (ORCPT ); Fri, 20 Nov 2015 17:20:58 -0500 Received: from mout.kundenserver.de ([217.72.192.75]:58162 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1759831AbbKTWU5 (ORCPT ); Fri, 20 Nov 2015 17:20:57 -0500 From: Arnd Bergmann To: Imre Kaloz , Krzysztof Halasa Cc: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH] ARM: ixp4xx: fix read{b,w,l} return types Date: Fri, 20 Nov 2015 23:20:28 +0100 Message-ID: <4577677.sEiIMqkHSM@wuerfel> User-Agent: KMail/4.11.5 (Linux/3.16.0-10-generic; KDE/4.11.5; x86_64; ; ) MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" X-Provags-ID: V03:K0:R3xYfNbTMocdIWlbgosirSWb20BmO490L5QoM90FKf6B825bmD6 E3Lutnhz5Lj9wgoz6ctc84KsX2QAlKcKbKt7NJKKplsYj7QMab9N74FueCFmSqDxHI4Muyc rOL51sC9oJkq47FsYFb/yln8aa6SEjgXU6cn8DYapaRkjQTecu2cUa3tJbhQTNjEbvXdKDu 4hSL4zAHBFp+Jb3z87p2Q== X-UI-Out-Filterresults: notjunk:1;V01:K0:W9PkTlzyVcs=:dAYlOQ4c15xuXNmEkjzK/x QUvaIoc4klI2/6WkHJQwUJiJg08Web8oZZB4S72kDMpmkG2I6GDhmaxxb4nuoPKrh0Vmpj98G 0gWoxTbWKhKdDqWBX6K+K2bz9Odxj72C383t507jZ2JABNudnS3UEhhJYHvqcwNI+aNj493EV Kef9s1sHOna8OIAsPTC9y9uDwZWj+CMkULuV7kAwuLrTfwkdmcP8eoJhBj1ZAg0ymN7X4CXHC a0A/ykDElgoOyGGIbS/doG2KY3xpbDH4nWph3qDddCPJ1Sj6qOhS8JOtasI+wdzRVlnQFEaF7 D4oiyr3DXtWEeTSIACZaB2kEGfgmIxNnMtr7GZ1BB+1OOYWJC66WXN5Ji/8IGt9w8USQQwrji 4rUxrKYTRe+Mtg3WrjDpryYvGPfWEQIDasdYzPw8kZ85E0WxUa9lWMocu1GNB2v69R+F6HxlV ExWuXYVfX7z8C+wD98c6bfEDdXliON6OPe0A6ZvcFcI5TvJ89UGuDx5DCdb7SH+bA5dX4FLPZ ytZaqa4B8GCFOIN/cOGY+MMQJWcbvyQh5x/+4XlkYXG7aKgDCXwCZ6HekUCjP+gu4Wc8blhWt fw2YD5wRCNfwV3P6PHtGk63C/pPSq6hYGNd7c+8Qo7EErhP8nomBjt4W6yKY+L4sbbVRyEj5H Qbq4O6H69iQ/HRvhH6iuTbKembMXVN42P8SQVejjMgvzOYW4CvTD65cZ+tfa1sO+m75CThUef quLy8Ey+J0XpPqdm Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On ixp4xx, the readl() function returns an 'unsigned long' output when indirect I/O is used. This is unlike any other platform, and it causes lots of harmless compiler warnings, such as: drivers/ata/libahci.c: In function 'ahci_show_host_version': drivers/ata/libahci.c:254:22: warning: format '%x' expects argument of type 'unsigned int', but argument 3 has type 'long unsigned int' [-Wformat=] drivers/block/mtip32xx/mtip32xx.c: In function 'mtip_hw_read_registers': drivers/block/mtip32xx/mtip32xx.c:2602:31: warning: format '%X' expects argument of type 'unsigned int', but argument 3 has type 'long unsigned int' [-Wformat=] drivers/block/cciss.c: In function 'print_cfg_table': drivers/block/cciss.c:3845:25: warning: format '%d' expects argument of type 'int', but argument 4 has type 'long unsigned int' [-Wformat=] This changes all six of the ixp4xx specific I/O read functions to return the same types that we have in the normal asm/io.h, to avoid the warnings. Signed-off-by: Arnd Bergmann diff --git a/arch/arm/mach-ixp4xx/include/mach/io.h b/arch/arm/mach-ixp4xx/include/mach/io.h index b02439019963..7a0c13bf4269 100644 --- a/arch/arm/mach-ixp4xx/include/mach/io.h +++ b/arch/arm/mach-ixp4xx/include/mach/io.h @@ -143,7 +143,7 @@ static inline void __indirect_writesl(volatile void __iomem *bus_addr, writel(*vaddr++, bus_addr); } -static inline unsigned char __indirect_readb(const volatile void __iomem *p) +static inline u8 __indirect_readb(const volatile void __iomem *p) { u32 addr = (u32)p; u32 n, byte_enables, data; @@ -166,7 +166,7 @@ static inline void __indirect_readsb(const volatile void __iomem *bus_addr, *vaddr++ = readb(bus_addr); } -static inline unsigned short __indirect_readw(const volatile void __iomem *p) +static inline u16 __indirect_readw(const volatile void __iomem *p) { u32 addr = (u32)p; u32 n, byte_enables, data; @@ -189,7 +189,7 @@ static inline void __indirect_readsw(const volatile void __iomem *bus_addr, *vaddr++ = readw(bus_addr); } -static inline unsigned long __indirect_readl(const volatile void __iomem *p) +static inline u32 __indirect_readl(const volatile void __iomem *p) { u32 addr = (__force u32)p; u32 data; @@ -350,7 +350,7 @@ static inline void insl(u32 io_addr, void *p, u32 count) ((unsigned long)p <= (PIO_MASK + PIO_OFFSET))) #define ioread8(p) ioread8(p) -static inline unsigned int ioread8(const void __iomem *addr) +static inline u8 ioread8(const void __iomem *addr) { unsigned long port = (unsigned long __force)addr; if (__is_io_address(port)) @@ -378,7 +378,7 @@ static inline void ioread8_rep(const void __iomem *addr, void *vaddr, u32 count) } #define ioread16(p) ioread16(p) -static inline unsigned int ioread16(const void __iomem *addr) +static inline u16 ioread16(const void __iomem *addr) { unsigned long port = (unsigned long __force)addr; if (__is_io_address(port)) @@ -407,7 +407,7 @@ static inline void ioread16_rep(const void __iomem *addr, void *vaddr, } #define ioread32(p) ioread32(p) -static inline unsigned int ioread32(const void __iomem *addr) +static inline u32 ioread32(const void __iomem *addr) { unsigned long port = (unsigned long __force)addr; if (__is_io_address(port))