Messages in this thread Patch in this message |  | | From | Radhey Shyam Pandey <> | Subject | [PATCH net-next 3/3] net: emaclite: Fix arm64 compilation warnings | Date | Mon, 16 Dec 2019 17:38:10 +0530 |
| |
From: Michal Simek <michal.simek@xilinx.com>
Recast pointers with ulong instead of u32 for arm64. This patch fixes these compilation warnings:
drivers/net/ethernet/xilinx/xilinx_emaclite.c: In function ‘xemaclite_send_data’: drivers/net/ethernet/xilinx/xilinx_emaclite.c:335:35: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] addr = (void __iomem __force *)((u32 __force)addr ^ ^ drivers/net/ethernet/xilinx/xilinx_emaclite.c:335:10: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] addr = (void __iomem __force *)((u32 __force)addr ^ ^ drivers/net/ethernet/xilinx/xilinx_emaclite.c: In function ‘xemaclite_recv_data’: drivers/net/ethernet/xilinx/xilinx_emaclite.c:397:36: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] addr = (void __iomem __force *)((u32 __force)addr ^ ^ drivers/net/ethernet/xilinx/xilinx_emaclite.c:397:11: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] addr = (void __iomem __force *)((u32 __force)addr ^ ^ drivers/net/ethernet/xilinx/xilinx_emaclite.c: In function ‘xemaclite_rx_handler’: drivers/net/ethernet/xilinx/xilinx_emaclite.c:97:42: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] #define BUFFER_ALIGN(adr) ((ALIGNMENT - ((u32)adr)) % ALIGNMENT) ^ drivers/net/ethernet/xilinx/xilinx_emaclite.c:612:10: note: in expansion of macro ‘BUFFER_ALIGN’ align = BUFFER_ALIGN(skb->data); ^~~~~~~~~~~~ In file included from ./include/linux/dma-mapping.h:7, from ./include/linux/skbuff.h:31, from ./include/linux/if_ether.h:19, from ./include/uapi/linux/ethtool.h:19, from ./include/linux/ethtool.h:18, from ./include/linux/netdevice.h:37, from drivers/net/ethernet/xilinx/xilinx_emaclite.c:12: drivers/net/ethernet/xilinx/xilinx_emaclite.c: In function ‘xemaclite_of_probe’: drivers/net/ethernet/xilinx/xilinx_emaclite.c:1191:4: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] (unsigned int __force)lp->base_addr, ndev->irq); ^ ./include/linux/device.h:1780:33: note: in definition of macro ‘dev_info’ _dev_info(dev, dev_fmt(fmt), ##__VA_ARGS__) ^~~~~~~~~~~
Signed-off-by: Michal Simek <michal.simek@xilinx.com> Signed-off-by: Radhey Shyam Pandey <radhey.shyam.pandey@xilinx.com> --- drivers/net/ethernet/xilinx/xilinx_emaclite.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/drivers/net/ethernet/xilinx/xilinx_emaclite.c b/drivers/net/ethernet/xilinx/xilinx_emaclite.c index 4aa6752..cfb051a 100644 --- a/drivers/net/ethernet/xilinx/xilinx_emaclite.c +++ b/drivers/net/ethernet/xilinx/xilinx_emaclite.c @@ -94,7 +94,7 @@ #define ALIGNMENT 4 /* BUFFER_ALIGN(adr) calculates the number of bytes to the next alignment. */ -#define BUFFER_ALIGN(adr) ((ALIGNMENT - ((u32)adr)) % ALIGNMENT) +#define BUFFER_ALIGN(adr) ((ALIGNMENT - ((ulong)adr)) % ALIGNMENT) #ifdef __BIG_ENDIAN #define xemaclite_readl ioread32be @@ -332,7 +332,7 @@ static int xemaclite_send_data(struct net_local *drvdata, u8 *data, * if it is configured in HW */ - addr = (void __iomem __force *)((u32 __force)addr ^ + addr = (void __iomem __force *)((ulong __force)addr ^ XEL_BUFFER_OFFSET); reg_data = xemaclite_readl(addr + XEL_TSR_OFFSET); @@ -394,7 +394,7 @@ static u16 xemaclite_recv_data(struct net_local *drvdata, u8 *data, int maxlen) * will correct on subsequent calls */ if (drvdata->rx_ping_pong != 0) - addr = (void __iomem __force *)((u32 __force)addr ^ + addr = (void __iomem __force *)((ulong __force)addr ^ XEL_BUFFER_OFFSET); else return 0; /* No data was available */ @@ -1186,9 +1186,9 @@ static int xemaclite_of_probe(struct platform_device *ofdev) } dev_info(dev, - "Xilinx EmacLite at 0x%08X mapped to 0x%08X, irq=%d\n", + "Xilinx EmacLite at 0x%08X mapped to 0x%08lX, irq=%d\n", (unsigned int __force)ndev->mem_start, - (unsigned int __force)lp->base_addr, ndev->irq); + (unsigned long __force)lp->base_addr, ndev->irq); return 0; error: -- 2.7.4
|  |