Commit-ID: 91d1179212161f220938198b742c328ad38fd0a3 Gitweb: http://git.kernel.org/tip/91d1179212161f220938198b742c328ad38fd0a3 Author: Gavin Li <git@xxxxxxxxxxxxxx> AuthorDate: Tue, 6 Jan 2015 18:47:23 -0800 Committer: Jason Cooper <jason@xxxxxxxxxxxxxx> CommitDate: Wed, 7 Jan 2015 12:41:45 +0000 irqchip: atmel-aic-common: Prevent clobbering of priority when changing IRQ type This patch makes the bitmask for AIC_SRCTYPE consistent with that of its valid values, and prevents the priority field at bits 2:0 from being clobbered by an incorrect AND with the AIC_SRCTYPE mask. Signed-off-by: Gavin Li <gavinli@xxxxxxxxxxxxxx> Cc: <stable@xxxxxxxxxxxxxxx> # v3.17+ Acked-by: Boris Brezillon <boris.brezillon@xxxxxxxxxxxxxxxxxx> Acked-by: Nicolas Ferre <nicolas.ferre@xxxxxxxxx> Link: https://lkml.kernel.org/r/1420598843-8409-1-git-send-email-gavinli@xxxxxxxxxxxxxx Signed-off-by: Jason Cooper <jason@xxxxxxxxxxxxxx> --- drivers/irqchip/irq-atmel-aic-common.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/irqchip/irq-atmel-aic-common.c b/drivers/irqchip/irq-atmel-aic-common.c index d111ac7..63cd031 100644 --- a/drivers/irqchip/irq-atmel-aic-common.c +++ b/drivers/irqchip/irq-atmel-aic-common.c @@ -28,7 +28,7 @@ #define AT91_AIC_IRQ_MIN_PRIORITY 0 #define AT91_AIC_IRQ_MAX_PRIORITY 7 -#define AT91_AIC_SRCTYPE GENMASK(7, 6) +#define AT91_AIC_SRCTYPE GENMASK(6, 5) #define AT91_AIC_SRCTYPE_LOW (0 << 5) #define AT91_AIC_SRCTYPE_FALLING (1 << 5) #define AT91_AIC_SRCTYPE_HIGH (2 << 5) @@ -74,7 +74,7 @@ int aic_common_set_type(struct irq_data *d, unsigned type, unsigned *val) return -EINVAL; } - *val &= AT91_AIC_SRCTYPE; + *val &= ~AT91_AIC_SRCTYPE; *val |= aic_type; return 0; -- To unsubscribe from this list: send the line "unsubscribe linux-tip-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html
![]() |