diff options
author | Grygorii Strashko <Grygorii.Strashko@linaro.org> | 2015-04-08 18:56:26 -0500 |
---|---|---|
committer | Tony Lindgren <tony@atomide.com> | 2015-05-04 09:21:02 -0700 |
commit | e7a7357341664148cabf98a3ab50b5d449afca0b (patch) | |
tree | 657fe9711b25692ea0bd8e67b69db8623859f66c /arch | |
parent | 2055088b5e17b450fcfb536568aee00eccd0ced5 (diff) | |
download | linux-stable-e7a7357341664148cabf98a3ab50b5d449afca0b.tar.gz linux-stable-e7a7357341664148cabf98a3ab50b5d449afca0b.tar.bz2 linux-stable-e7a7357341664148cabf98a3ab50b5d449afca0b.zip |
ARM: dts: am57xx-beagle-x15: Fix IRQ type for mcp7941x
The interrupt polarity provided in devicetree is used to configure
the interrupt controller(ARM GIC), however, it seems that we have an
inverter at the GIC boundary inside AM57xx which inverts the signal
input from sys_irq external interrupt source.
Further, as per GIC distributor TRM,
http://infocenter.arm.com/help/topic/com.arm.doc.ddi0438d/BGBHIACJ.html#BABJFCFB
ARM GIC distributor does not support IRQ trigger type
IRQ_TYPE_LEVEL_LOW, and only rising or level high signals.
However, for some reason, the current configuration(which gets ignored
by GIC driver) functions on some platforms, however, on few platforms
results in infinite interrupts hogging the system down.
Switch over to rising edge for GIC configuration which is also aligned
with trigger point from the RTC chip and the internal inversion.
Fixes: 5a0f93c6576a ("ARM: dts: Add am57xx-beagle-x15")
Signed-off-by: Grygorii Strashko <Grygorii.Strashko@linaro.org>
Signed-off-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/boot/dts/am57xx-beagle-x15.dts | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/arm/boot/dts/am57xx-beagle-x15.dts b/arch/arm/boot/dts/am57xx-beagle-x15.dts index 15f198e4864d..7ac6ee2c52d8 100644 --- a/arch/arm/boot/dts/am57xx-beagle-x15.dts +++ b/arch/arm/boot/dts/am57xx-beagle-x15.dts @@ -455,7 +455,7 @@ mcp_rtc: rtc@6f { compatible = "microchip,mcp7941x"; reg = <0x6f>; - interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_LOW>; /* IRQ_SYS_1N */ + interrupts = <GIC_SPI 2 IRQ_TYPE_EDGE_RISING>; /* IRQ_SYS_1N */ pinctrl-names = "default"; pinctrl-0 = <&mcp79410_pins_default>; |