From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S965814AbdGTPxi (ORCPT ); Thu, 20 Jul 2017 11:53:38 -0400 Received: from mout.kundenserver.de ([212.227.126.187]:51360 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S934344AbdGTPxg (ORCPT ); Thu, 20 Jul 2017 11:53:36 -0400 From: Arnd Bergmann To: Imre Kaloz , Krzysztof Halasa , Arnd Bergmann Cc: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH 09/12] ARM: ixp4xx: use normal prototype for {read,write}s{b,w,l} Date: Thu, 20 Jul 2017 17:51:47 +0200 Message-Id: <20170720155209.3250880-6-arnd@arndb.de> X-Mailer: git-send-email 2.9.0 In-Reply-To: <20170720154616.3250481-1-arnd@arndb.de> References: <20170720154616.3250481-1-arnd@arndb.de> X-Provags-ID: V03:K0:57I9buRgPvSTB3dT5v5stUddWaqaqu4d+NU6i22IKSJtgya+KL8 E0BvEWrU/l2IQxumyyiXoVFOvdg+mFQMYCJBeko1RcpmjA71dLRGVCsuAQYDJzn/JrRIKYa If6+trqmlREsjla1UsjHWqZoTcFM3+0dDMVhIuUzg1fV5zwwhs++Sj58xVPlY9xt8lCqbgj h0WZDQFFNuZql3rFhcWhQ== X-UI-Out-Filterresults: notjunk:1;V01:K0:AjX6+COo6O0=:qeMTM6jkbe7Lw4KxGTqrCO EMfBjl9x/XuHqMtClfHH5k6dMe3cF8UmaYE6bDKd4eoXVpysRdRTOUYXCzZKNlZm+2Dg6jhMO tJNPL+TiYr08y5aK7v5A1lExqgwyTQAI3UKAfIUt2YWKm/tz43LV61IhRNMDge+OcvfiLug09 TZvzPofrq8iLHfJUuLU8Y2V0Mhrs/PSYqLlqUnyTMQvnP+Ckzlcuj3EHFwOG312x4bFmZbRCk hZWLdKRkL6IiNbiQnHceBWOGJ+dtCCCxKAKIYIViuNzwbWfHeFurZAFgRw/JwMT/rOwhif2Dn +uWMWfoDsGqYkhbObNwgkpjEmLwQxHP/8B+8iIhDUsStOE4Wb1Xu84gywlvWbOkpVtSfH9oQI 3elK2xGEAEodbTBnMEdkM7+wZ8G5QVGgH9D8TILkYt5qdAwamcYpMUWo3O0BBgndgU+rs3E+m FZz/lUIfmjXdGD+kI7Y4Yo8Skj5ZUixA+nimSSLLRBq2gIzmO5Chm8CL9LIxfzF7gns+P/zSc YJVtRIxXzHSFtCnAWzn+Q+8QOy26U2mdu35WnxZJPqfFWe/kPdOi99Sq+aDn58ubl6O4rJwrF ryTp+lakubDN+Z8hCUbNwRPzU2JQDckk735sykLMe1496T2/wJfXFWd1I4KmlEnvutRe9O+o5 kyS/VhvMf9NQt4rs3Uf8H43/fRl4ulVesonDlnspQGxVHxiRkiTOXKFXzhZESKKoqtv0flcr7 DCZV+MfHZTtFjtVe9f5e+bN/UKxMLRyDzSoo9Q== Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org ixp4xx defines the arguments to its __indirect_writesb() and other functions as pointers to fixed-size data. This is not necessarily wrong, and it works most of the time, but it causes warnings in at least one driver: drivers/net/ethernet/smsc/smc91x.c: In function 'smc_rcv': drivers/net/ethernet/smsc/smc91x.c:495:21: error: passing argument 2 of '__indirect_readsw' from incompatible pointer type [-Werror=incompatible-pointer-types] SMC_PULL_DATA(lp, data, packet_len - 4); All other definitions of the same functions pass void pointers, so doing the same here avoids the warnings. Signed-off-by: Arnd Bergmann Acked-by: Krzysztof Halasa --- Originally sent on Feb 2016, but it got lost --- arch/arm/mach-ixp4xx/include/mach/io.h | 23 +++++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) diff --git a/arch/arm/mach-ixp4xx/include/mach/io.h b/arch/arm/mach-ixp4xx/include/mach/io.h index 2f84c26a6758..844e8ac593e2 100644 --- a/arch/arm/mach-ixp4xx/include/mach/io.h +++ b/arch/arm/mach-ixp4xx/include/mach/io.h @@ -95,8 +95,10 @@ static inline void __indirect_writeb(u8 value, volatile void __iomem *p) } static inline void __indirect_writesb(volatile void __iomem *bus_addr, - const u8 *vaddr, int count) + const void *p, int count) { + const u8 *vaddr = p; + while (count--) writeb(*vaddr++, bus_addr); } @@ -118,8 +120,10 @@ static inline void __indirect_writew(u16 value, volatile void __iomem *p) } static inline void __indirect_writesw(volatile void __iomem *bus_addr, - const u16 *vaddr, int count) + const void *p, int count) { + const u16 *vaddr = p; + while (count--) writew(*vaddr++, bus_addr); } @@ -137,8 +141,9 @@ static inline void __indirect_writel(u32 value, volatile void __iomem *p) } static inline void __indirect_writesl(volatile void __iomem *bus_addr, - const u32 *vaddr, int count) + const void *p, int count) { + const u32 *vaddr = p; while (count--) writel(*vaddr++, bus_addr); } @@ -160,8 +165,10 @@ static inline u8 __indirect_readb(const volatile void __iomem *p) } static inline void __indirect_readsb(const volatile void __iomem *bus_addr, - u8 *vaddr, u32 count) + void *p, u32 count) { + u8 *vaddr = p; + while (count--) *vaddr++ = readb(bus_addr); } @@ -183,8 +190,10 @@ static inline u16 __indirect_readw(const volatile void __iomem *p) } static inline void __indirect_readsw(const volatile void __iomem *bus_addr, - u16 *vaddr, u32 count) + void *p, u32 count) { + u16 *vaddr = p; + while (count--) *vaddr++ = readw(bus_addr); } @@ -204,8 +213,10 @@ static inline u32 __indirect_readl(const volatile void __iomem *p) } static inline void __indirect_readsl(const volatile void __iomem *bus_addr, - u32 *vaddr, u32 count) + void *p, u32 count) { + u32 *vaddr = p; + while (count--) *vaddr++ = readl(bus_addr); } -- 2.9.0