[PATCH] mtd: sh_flctl: Fix warnings due to improper casts
Brian Norris
computersforpeace at gmail.com
Tue Nov 26 21:11:40 EST 2013
On Wed, Nov 27, 2013 at 01:35:11AM +0100, Laurent Pinchart wrote:
> Cast pointers to unsigned long instead of unsigned int. This fixes
> warnings on platforms where pointers have a different size than int.
>
> Cc: David Woodhouse <dwmw2 at infradead.org>
> Cc: linux-mtd at lists.infradead.org
> Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas at ideasonboard.com>
> ---
> drivers/mtd/nand/sh_flctl.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/mtd/nand/sh_flctl.c b/drivers/mtd/nand/sh_flctl.c
> index a3c84eb..b1e2b13 100644
> --- a/drivers/mtd/nand/sh_flctl.c
> +++ b/drivers/mtd/nand/sh_flctl.c
> @@ -151,7 +151,7 @@ static void flctl_setup_dma(struct sh_flctl *flctl)
> dma_cap_set(DMA_SLAVE, mask);
>
> flctl->chan_fifo0_tx = dma_request_channel(mask, shdma_chan_filter,
> - (void *)pdata->slave_id_fifo0_tx);
> + (void *)(unsigned long)pdata->slave_id_fifo0_tx);
Perhaps the intermediate cast should be for uintptr_t instead of
unsigned long, just to be more exact? (I see that uintptr_t is just
typedef'd for unsigned long, but it still seems more precise.)
> dev_dbg(&pdev->dev, "%s: TX: got channel %p\n", __func__,
> flctl->chan_fifo0_tx);
>
> @@ -168,7 +168,7 @@ static void flctl_setup_dma(struct sh_flctl *flctl)
> goto err;
>
> flctl->chan_fifo0_rx = dma_request_channel(mask, shdma_chan_filter,
> - (void *)pdata->slave_id_fifo0_rx);
> + (void *)(unsigned long)pdata->slave_id_fifo0_rx);
Ditto.
> dev_dbg(&pdev->dev, "%s: RX: got channel %p\n", __func__,
> flctl->chan_fifo0_rx);
>
Brian
More information about the linux-mtd
mailing list