]> Pileus Git - ~andy/linux/blobdiff - drivers/pinctrl/pinctrl-sunxi.c
pinctrl: sunxi: Fix masking when setting irq type
[~andy/linux] / drivers / pinctrl / pinctrl-sunxi.c
index 787f352e3461a99a8989ec6047ae8e9e48ac82a2..f9fabe9bf47d433b9152cd438e259e568b3b9ff5 100644 (file)
@@ -585,7 +585,7 @@ static int sunxi_pinctrl_irq_set_type(struct irq_data *d,
        spin_lock_irqsave(&pctl->lock, flags);
 
        regval = readl(pctl->membase + reg);
-       regval &= ~IRQ_CFG_IRQ_MASK;
+       regval &= ~(IRQ_CFG_IRQ_MASK << index);
        writel(regval | (mode << index), pctl->membase + reg);
 
        spin_unlock_irqrestore(&pctl->lock, flags);