lkml.org 
[lkml]   [2019]   [May]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 3.18 46/86] ARM: iop: dont use using 64-bit DMA masks
    Date
    [ Upstream commit 2125801ccce19249708ca3245d48998e70569ab8 ]

    clang warns about statically defined DMA masks from the DMA_BIT_MASK
    macro with length 64:

    arch/arm/mach-iop13xx/setup.c:303:35: error: shift count >= width of type [-Werror,-Wshift-count-overflow]
    static u64 iop13xx_adma_dmamask = DMA_BIT_MASK(64);
    ^~~~~~~~~~~~~~~~
    include/linux/dma-mapping.h:141:54: note: expanded from macro 'DMA_BIT_MASK'
    #define DMA_BIT_MASK(n) (((n) == 64) ? ~0ULL : ((1ULL<<(n))-1))
    ^ ~~~

    The ones in iop shouldn't really be 64 bit masks, so changing them
    to what the driver can support avoids the warning.

    Signed-off-by: Arnd Bergmann <arnd@arndb.de>
    Signed-off-by: Olof Johansson <olof@lixom.net>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    arch/arm/mach-iop13xx/setup.c | 8 ++++----
    arch/arm/mach-iop13xx/tpmi.c | 10 +++++-----
    arch/arm/plat-iop/adma.c | 6 +++---
    3 files changed, 12 insertions(+), 12 deletions(-)

    diff --git a/arch/arm/mach-iop13xx/setup.c b/arch/arm/mach-iop13xx/setup.c
    index 53c316f7301e..fe4932fda01d 100644
    --- a/arch/arm/mach-iop13xx/setup.c
    +++ b/arch/arm/mach-iop13xx/setup.c
    @@ -300,7 +300,7 @@ static struct resource iop13xx_adma_2_resources[] = {
    }
    };

    -static u64 iop13xx_adma_dmamask = DMA_BIT_MASK(64);
    +static u64 iop13xx_adma_dmamask = DMA_BIT_MASK(32);
    static struct iop_adma_platform_data iop13xx_adma_0_data = {
    .hw_id = 0,
    .pool_size = PAGE_SIZE,
    @@ -324,7 +324,7 @@ static struct platform_device iop13xx_adma_0_channel = {
    .resource = iop13xx_adma_0_resources,
    .dev = {
    .dma_mask = &iop13xx_adma_dmamask,
    - .coherent_dma_mask = DMA_BIT_MASK(64),
    + .coherent_dma_mask = DMA_BIT_MASK(32),
    .platform_data = (void *) &iop13xx_adma_0_data,
    },
    };
    @@ -336,7 +336,7 @@ static struct platform_device iop13xx_adma_1_channel = {
    .resource = iop13xx_adma_1_resources,
    .dev = {
    .dma_mask = &iop13xx_adma_dmamask,
    - .coherent_dma_mask = DMA_BIT_MASK(64),
    + .coherent_dma_mask = DMA_BIT_MASK(32),
    .platform_data = (void *) &iop13xx_adma_1_data,
    },
    };
    @@ -348,7 +348,7 @@ static struct platform_device iop13xx_adma_2_channel = {
    .resource = iop13xx_adma_2_resources,
    .dev = {
    .dma_mask = &iop13xx_adma_dmamask,
    - .coherent_dma_mask = DMA_BIT_MASK(64),
    + .coherent_dma_mask = DMA_BIT_MASK(32),
    .platform_data = (void *) &iop13xx_adma_2_data,
    },
    };
    diff --git a/arch/arm/mach-iop13xx/tpmi.c b/arch/arm/mach-iop13xx/tpmi.c
    index db511ec2b1df..116feb6b261e 100644
    --- a/arch/arm/mach-iop13xx/tpmi.c
    +++ b/arch/arm/mach-iop13xx/tpmi.c
    @@ -152,7 +152,7 @@ static struct resource iop13xx_tpmi_3_resources[] = {
    }
    };

    -u64 iop13xx_tpmi_mask = DMA_BIT_MASK(64);
    +u64 iop13xx_tpmi_mask = DMA_BIT_MASK(32);
    static struct platform_device iop13xx_tpmi_0_device = {
    .name = "iop-tpmi",
    .id = 0,
    @@ -160,7 +160,7 @@ static struct platform_device iop13xx_tpmi_0_device = {
    .resource = iop13xx_tpmi_0_resources,
    .dev = {
    .dma_mask = &iop13xx_tpmi_mask,
    - .coherent_dma_mask = DMA_BIT_MASK(64),
    + .coherent_dma_mask = DMA_BIT_MASK(32),
    },
    };

    @@ -171,7 +171,7 @@ static struct platform_device iop13xx_tpmi_1_device = {
    .resource = iop13xx_tpmi_1_resources,
    .dev = {
    .dma_mask = &iop13xx_tpmi_mask,
    - .coherent_dma_mask = DMA_BIT_MASK(64),
    + .coherent_dma_mask = DMA_BIT_MASK(32),
    },
    };

    @@ -182,7 +182,7 @@ static struct platform_device iop13xx_tpmi_2_device = {
    .resource = iop13xx_tpmi_2_resources,
    .dev = {
    .dma_mask = &iop13xx_tpmi_mask,
    - .coherent_dma_mask = DMA_BIT_MASK(64),
    + .coherent_dma_mask = DMA_BIT_MASK(32),
    },
    };

    @@ -193,7 +193,7 @@ static struct platform_device iop13xx_tpmi_3_device = {
    .resource = iop13xx_tpmi_3_resources,
    .dev = {
    .dma_mask = &iop13xx_tpmi_mask,
    - .coherent_dma_mask = DMA_BIT_MASK(64),
    + .coherent_dma_mask = DMA_BIT_MASK(32),
    },
    };

    diff --git a/arch/arm/plat-iop/adma.c b/arch/arm/plat-iop/adma.c
    index a4d1f8de3b5b..d9612221e484 100644
    --- a/arch/arm/plat-iop/adma.c
    +++ b/arch/arm/plat-iop/adma.c
    @@ -143,7 +143,7 @@ struct platform_device iop3xx_dma_0_channel = {
    .resource = iop3xx_dma_0_resources,
    .dev = {
    .dma_mask = &iop3xx_adma_dmamask,
    - .coherent_dma_mask = DMA_BIT_MASK(64),
    + .coherent_dma_mask = DMA_BIT_MASK(32),
    .platform_data = (void *) &iop3xx_dma_0_data,
    },
    };
    @@ -155,7 +155,7 @@ struct platform_device iop3xx_dma_1_channel = {
    .resource = iop3xx_dma_1_resources,
    .dev = {
    .dma_mask = &iop3xx_adma_dmamask,
    - .coherent_dma_mask = DMA_BIT_MASK(64),
    + .coherent_dma_mask = DMA_BIT_MASK(32),
    .platform_data = (void *) &iop3xx_dma_1_data,
    },
    };
    @@ -167,7 +167,7 @@ struct platform_device iop3xx_aau_channel = {
    .resource = iop3xx_aau_resources,
    .dev = {
    .dma_mask = &iop3xx_adma_dmamask,
    - .coherent_dma_mask = DMA_BIT_MASK(64),
    + .coherent_dma_mask = DMA_BIT_MASK(32),
    .platform_data = (void *) &iop3xx_aau_data,
    },
    };
    --
    2.20.1


    \
     
     \ /
      Last update: 2019-05-15 14:20    [W:4.112 / U:0.036 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site