Skip to content

Commit

Permalink
ARM: mediatek: Add sysirq in mt6589/mt8135/mt8127 dtsi
Browse files Browse the repository at this point in the history
Add sysirq settings for mt6589/mt8135/mt8127
This also correct timer interrupt flag. The old setting works
because boot loader already set polarity for timer interrupt.
Without intpol support, the setting was not changed so gic
can get the irq correctly.

Signed-off-by: Yingjoe Chen <[email protected]>
Signed-off-by: Matthias Brugger <[email protected]>
  • Loading branch information
yingjoe authored and mbgg committed Jan 2, 2015
1 parent 97bf6af commit e0bed07
Show file tree
Hide file tree
Showing 3 changed files with 36 additions and 6 deletions.
14 changes: 12 additions & 2 deletions arch/arm/boot/dts/mt6589.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@

/ {
compatible = "mediatek,mt6589";
interrupt-parent = <&gic>;
interrupt-parent = <&sysirq>;

cpus {
#address-cells = <1>;
Expand Down Expand Up @@ -76,15 +76,25 @@
timer: timer@10008000 {
compatible = "mediatek,mt6577-timer";
reg = <0x10008000 0x80>;
interrupts = <GIC_SPI 113 IRQ_TYPE_EDGE_RISING>;
interrupts = <GIC_SPI 113 IRQ_TYPE_LEVEL_LOW>;
clocks = <&system_clk>, <&rtc_clk>;
clock-names = "system-clk", "rtc-clk";
};

sysirq: interrupt-controller@10200100 {
compatible = "mediatek,mt6589-sysirq",
"mediatek,mt6577-sysirq";
interrupt-controller;
#interrupt-cells = <3>;
interrupt-parent = <&gic>;
reg = <0x10200100 0x1c>;
};

gic: interrupt-controller@10211000 {
compatible = "arm,cortex-a7-gic";
interrupt-controller;
#interrupt-cells = <3>;
interrupt-parent = <&gic>;
reg = <0x10211000 0x1000>,
<0x10212000 0x1000>,
<0x10214000 0x2000>,
Expand Down
14 changes: 12 additions & 2 deletions arch/arm/boot/dts/mt8127.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@

/ {
compatible = "mediatek,mt8127";
interrupt-parent = <&gic>;
interrupt-parent = <&sysirq>;

cpus {
#address-cells = <1>;
Expand Down Expand Up @@ -76,15 +76,25 @@
compatible = "mediatek,mt8127-timer",
"mediatek,mt6577-timer";
reg = <0 0x10008000 0 0x80>;
interrupts = <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>;
interrupts = <GIC_SPI 112 IRQ_TYPE_LEVEL_LOW>;
clocks = <&system_clk>, <&rtc_clk>;
clock-names = "system-clk", "rtc-clk";
};

sysirq: interrupt-controller@10200100 {
compatible = "mediatek,mt8127-sysirq",
"mediatek,mt6577-sysirq";
interrupt-controller;
#interrupt-cells = <3>;
interrupt-parent = <&gic>;
reg = <0 0x10200100 0 0x1c>;
};

gic: interrupt-controller@10211000 {
compatible = "arm,cortex-a7-gic";
interrupt-controller;
#interrupt-cells = <3>;
interrupt-parent = <&gic>;
reg = <0 0x10211000 0 0x1000>,
<0 0x10212000 0 0x1000>,
<0 0x10214000 0 0x2000>,
Expand Down
14 changes: 12 additions & 2 deletions arch/arm/boot/dts/mt8135.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@

/ {
compatible = "mediatek,mt8135";
interrupt-parent = <&gic>;
interrupt-parent = <&sysirq>;

cpu-map {
cluster0 {
Expand Down Expand Up @@ -98,15 +98,25 @@
compatible = "mediatek,mt8135-timer",
"mediatek,mt6577-timer";
reg = <0 0x10008000 0 0x80>;
interrupts = <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>;
interrupts = <GIC_SPI 113 IRQ_TYPE_LEVEL_LOW>;
clocks = <&system_clk>, <&rtc_clk>;
clock-names = "system-clk", "rtc-clk";
};

sysirq: interrupt-controller@10200030 {
compatible = "mediatek,mt8135-sysirq",
"mediatek,mt6577-sysirq";
interrupt-controller;
#interrupt-cells = <3>;
interrupt-parent = <&gic>;
reg = <0 0x10200030 0 0x1c>;
};

gic: interrupt-controller@10211000 {
compatible = "arm,cortex-a15-gic";
interrupt-controller;
#interrupt-cells = <3>;
interrupt-parent = <&gic>;
reg = <0 0x10211000 0 0x1000>,
<0 0x10212000 0 0x1000>,
<0 0x10214000 0 0x2000>,
Expand Down

0 comments on commit e0bed07

Please sign in to comment.