staging: ccree: dma mask is type u64
authorGilad Ben-Yossef <gilad@benyossef.com>
Tue, 9 Jan 2018 10:24:33 +0000 (10:24 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 9 Jan 2018 15:02:18 +0000 (16:02 +0100)
The dma mask var was defined as dma_addr_t but should be
u64. This showed as a sparse warning when building for 32 bit.
Fix it by changing type to u64 and drop the cast.

Signed-off-by: Gilad Ben-Yossef <gilad@benyossef.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/ccree/cc_driver.c

index b49bc25..6682d9d 100644 (file)
@@ -156,7 +156,7 @@ static int init_cc_resources(struct platform_device *plat_dev)
        struct device *dev = &plat_dev->dev;
        struct device_node *np = dev->of_node;
        u32 signature_val;
-       dma_addr_t dma_mask;
+       u64 dma_mask;
        int rc = 0;
 
        new_drvdata = devm_kzalloc(dev, sizeof(*new_drvdata), GFP_KERNEL);
@@ -205,7 +205,7 @@ static int init_cc_resources(struct platform_device *plat_dev)
        if (!plat_dev->dev.dma_mask)
                plat_dev->dev.dma_mask = &plat_dev->dev.coherent_dma_mask;
 
-       dma_mask = (dma_addr_t)(DMA_BIT_MASK(DMA_BIT_MASK_LEN));
+       dma_mask = DMA_BIT_MASK(DMA_BIT_MASK_LEN);
        while (dma_mask > 0x7fffffffUL) {
                if (dma_supported(&plat_dev->dev, dma_mask)) {
                        rc = dma_set_coherent_mask(&plat_dev->dev, dma_mask);