All IRQs that can be used to wake up the system must be routed through
r_intc, so they are visible to firmware while the system is suspended.

For the H6, r_intc IRQ numbers are offset by 96 from the GIC IRQ
numbers.

Signed-off-by: Samuel Holland <sam...@sholland.org>
---
 arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi 
b/arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi
index d912188dc6ea..188699f47dea 100644
--- a/arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi
@@ -844,8 +844,9 @@ tcon_tv_out_tcon_top: endpoint@1 {
                rtc: rtc@7000000 {
                        compatible = "allwinner,sun50i-h6-rtc";
                        reg = <0x07000000 0x400>;
-                       interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>,
-                                    <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>;
+                       interrupt-parent = <&r_intc>;
+                       interrupts = <5 IRQ_TYPE_LEVEL_HIGH>,
+                                    <6 IRQ_TYPE_LEVEL_HIGH>;
                        clock-output-names = "osc32k", "osc32k-out", "iosc";
                        #clock-cells = <1>;
                };
@@ -880,8 +881,9 @@ r_intc: interrupt-controller@7021000 {
                r_pio: pinctrl@7022000 {
                        compatible = "allwinner,sun50i-h6-r-pinctrl";
                        reg = <0x07022000 0x400>;
-                       interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>,
-                                    <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>;
+                       interrupt-parent = <&r_intc>;
+                       interrupts = < 9 IRQ_TYPE_LEVEL_HIGH>,
+                                    <15 IRQ_TYPE_LEVEL_HIGH>;
                        clocks = <&r_ccu CLK_R_APB1>, <&osc24M>, <&rtc 0>;
                        clock-names = "apb", "hosc", "losc";
                        gpio-controller;
@@ -904,7 +906,8 @@ r_ir: ir@7040000 {
                        compatible = "allwinner,sun50i-h6-ir",
                                     "allwinner,sun6i-a31-ir";
                        reg = <0x07040000 0x400>;
-                       interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>;
+                       interrupt-parent = <&r_intc>;
+                       interrupts = <13 IRQ_TYPE_LEVEL_HIGH>;
                        clocks = <&r_ccu CLK_R_APB1_IR>,
                                 <&r_ccu CLK_IR>;
                        clock-names = "apb", "ir";
-- 
2.24.1

Reply via email to