irqchip/atmel-aic: Fix wrong bit operation for IRQ priority
authorMilo Kim <milo.kim@ti.com>
Wed, 13 Jan 2016 07:19:50 +0000 (16:19 +0900)
committerThomas Gleixner <tglx@linutronix.de>
Wed, 27 Jan 2016 11:54:33 +0000 (12:54 +0100)
commit49f34134aea74f19ca016f055d25ee55ec359dee
tree59f04e92480c7b87f40f5e3247d7d4e55792983d
parent18aa60ce2751c95d3412ed06a58b8b6cfb6f88f2
irqchip/atmel-aic: Fix wrong bit operation for IRQ priority

Atmel AIC has common structure for SMR (Source Mode Register).

  bit[6:5] Interrupt source type
  bit[2:0] Priority level
  Other bits are unused.

To update new priority value, bit[2:0] should be cleared first and then
new priority level can be written. However, aic_common_set_priority()
helper clears source type bits instead of priority bits.
This patch fixes wrong mask bit operation.

Fixes: b1479ebb7720 "irqchip: atmel-aic: Add atmel AIC/AIC5 drivers"
Signed-off-by: Milo Kim <milo.kim@ti.com>
Acked-by: Boris Brezillon <boris.brezillon@free-electrons.com>
Cc: Jason Cooper <jason@lakedaemon.net>
Cc: Marc Zyngier <marc.zyngier@arm.com>
Cc: Ludovic Desroches <ludovic.desroches@atmel.com>
Cc: Nicholas Ferre <nicolas.ferre@atmel.com>
Cc: stable@vger.kernel.org #v3.17+
Link: http://lkml.kernel.org/r/1452669592-3401-2-git-send-email-milo.kim@ti.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
drivers/irqchip/irq-atmel-aic-common.c