OSDN Git Service

gpio: davinci: Fix the compiler warning with ARM64 config enabled
authorKeerthy <j-keerthy@ti.com>
Wed, 5 Jun 2019 08:02:57 +0000 (13:32 +0530)
committerLinus Walleij <linus.walleij@linaro.org>
Fri, 7 Jun 2019 22:31:35 +0000 (00:31 +0200)
Fix the compiler warning with ARM64 config enabled
as the current mask assumes 32 bit by default.

Signed-off-by: Keerthy <j-keerthy@ti.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
drivers/gpio/gpio-davinci.c

index 188b8e5..b937bbc 100644 (file)
@@ -301,7 +301,7 @@ static int davinci_gpio_probe(struct platform_device *pdev)
 static void gpio_irq_disable(struct irq_data *d)
 {
        struct davinci_gpio_regs __iomem *g = irq2regs(d);
-       u32 mask = (u32) irq_data_get_irq_handler_data(d);
+       uintptr_t mask = (uintptr_t)irq_data_get_irq_handler_data(d);
 
        writel_relaxed(mask, &g->clr_falling);
        writel_relaxed(mask, &g->clr_rising);
@@ -310,7 +310,7 @@ static void gpio_irq_disable(struct irq_data *d)
 static void gpio_irq_enable(struct irq_data *d)
 {
        struct davinci_gpio_regs __iomem *g = irq2regs(d);
-       u32 mask = (u32) irq_data_get_irq_handler_data(d);
+       uintptr_t mask = (uintptr_t)irq_data_get_irq_handler_data(d);
        unsigned status = irqd_get_trigger_type(d);
 
        status &= IRQ_TYPE_EDGE_FALLING | IRQ_TYPE_EDGE_RISING;
@@ -451,7 +451,7 @@ davinci_gpio_irq_map(struct irq_domain *d, unsigned int irq,
                                "davinci_gpio");
        irq_set_irq_type(irq, IRQ_TYPE_NONE);
        irq_set_chip_data(irq, (__force void *)g);
-       irq_set_handler_data(irq, (void *)__gpio_mask(hw));
+       irq_set_handler_data(irq, (void *)(uintptr_t)__gpio_mask(hw));
 
        return 0;
 }