arm64: dts: amlogic: add some device nodes for A9

Add pinctrl and irqchip-gpio device nodes for A9 SoC.

Signed-off-by: Xianwei Zhao <xianwei.zhao@amlogic.com>
Link: https://patch.msgid.link/20260629-a9-node-v2-1-dadd3401fccb@amlogic.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
This commit is contained in:
Xianwei Zhao 2026-06-29 07:52:53 +00:00 committed by Neil Armstrong
parent d0a92020bb
commit 3ecd66ea25

View File

@ -6,6 +6,7 @@
#include <dt-bindings/interrupt-controller/irq.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/pinctrl/amlogic,pinctrl.h>
/ {
interrupt-parent = <&gic>;
@ -97,6 +98,95 @@ soc {
#size-cells = <2>;
ranges;
apb: bus@fe000000 {
compatible = "simple-bus";
reg = <0x0 0xfe000000 0x0 0x480000>;
#address-cells = <2>;
#size-cells = <2>;
ranges = <0x0 0x0 0x0 0xfe000000 0x0 0x480000>;
periphs_pinctrl: pinctrl@4000 {
compatible = "amlogic,pinctrl-a9";
#address-cells = <2>;
#size-cells = <2>;
ranges = <0x0 0x0 0x0 0x4000 0x0 0x340>;
gpioz: gpio@c0 {
reg = <0 0xc0 0 0x20>, <0 0x18 0 0x8>;
reg-names = "gpio", "mux";
gpio-controller;
#gpio-cells = <2>;
gpio-ranges = <&periphs_pinctrl 0 (AMLOGIC_GPIO_Z<<8) 16>;
};
gpiox: gpio@100 {
reg = <0 0x100 0 0x24>, <0 0xc 0 0x8>;
reg-names = "gpio", "mux";
gpio-controller;
#gpio-cells = <2>;
gpio-ranges = <&periphs_pinctrl 0 (AMLOGIC_GPIO_X<<8) 18>;
};
gpioh: gpio@140 {
reg = <0 0x140 0 0x20>, <0 0x2c 0 0x4>;
reg-names = "gpio", "mux";
gpio-controller;
#gpio-cells = <2>;
gpio-ranges = <&periphs_pinctrl 0 (AMLOGIC_GPIO_H<<8) 8>;
};
gpiom: gpio@1a0 {
reg = <0 0x1a0 0 0x20>, <0 0x20 0 0x4>;
reg-names = "gpio", "mux";
gpio-controller;
#gpio-cells = <2>;
gpio-ranges = <&periphs_pinctrl 0 (AMLOGIC_GPIO_M<<8) 8>;
};
gpiob: gpio@240 {
reg = <0 0x240 0 0x20>, <0 0x0 0 0x8>;
reg-names = "gpio", "mux";
gpio-controller;
#gpio-cells = <2>;
gpio-ranges = <&periphs_pinctrl 0 (AMLOGIC_GPIO_B<<8) 14>;
};
gpioa: gpio@280 {
reg = <0 0x280 0 0x24>, <0 0x40 0 0xc>;
reg-names = "gpio", "mux";
gpio-controller;
#gpio-cells = <2>;
gpio-ranges = <&periphs_pinctrl 0 (AMLOGIC_GPIO_A<<8) 20>;
};
gpioy: gpio@2c0 {
reg = <0 0x2c0 0 0x20>, <0 0x30 0 0x8>;
reg-names = "gpio", "mux";
gpio-controller;
#gpio-cells = <2>;
gpio-ranges = <&periphs_pinctrl 0 (AMLOGIC_GPIO_Y<<8) 10>;
};
gpiocc: gpio@300 {
reg = <0 0x300 0 0x20>, <0 0x14 0 0x4>;
reg-names = "gpio", "mux";
gpio-controller;
#gpio-cells = <2>;
gpio-ranges = <&periphs_pinctrl 0 (AMLOGIC_GPIO_CC<<8) 2>;
};
};
gpio_intc: interrupt-controller@4080 {
compatible = "amlogic,a9-gpio-intc",
"amlogic,meson-gpio-intc";
reg = <0x0 0x4080 0x0 0x20>;
interrupt-controller;
#interrupt-cells = <2>;
amlogic,channel-interrupts =
<10 11 12 13 14 15 16 17 18 19 20 21>;
};
};
gic: interrupt-controller@ff800000 {
compatible = "arm,gic-v3";
#interrupt-cells = <3>;
@ -114,6 +204,56 @@ aobus: bus@ffa00000 {
#size-cells = <2>;
ranges = <0x0 0x0 0x0 0xffa00000 0x0 0x100000>;
aobus_pinctrl: pinctrl@4000 {
compatible = "amlogic,pinctrl-a9";
#address-cells = <2>;
#size-cells = <2>;
ranges = <0x0 0x0 0x0 0x4000 0x0 0x0e0>;
gpioao: gpio@1c {
reg = <0 0x1c 0 0x20>, <0 0x0 0 0x8>;
reg-names = "gpio", "mux";
gpio-controller;
#gpio-cells = <2>;
gpio-ranges = <&aobus_pinctrl 0 (AMLOGIC_GPIO_AO<<8) 13>;
};
gpioc: gpio@3c {
reg = <0 0x3c 0 0x20>, <0 0x10 0 0x4>;
reg-names = "gpio", "mux";
gpio-controller;
#gpio-cells = <2>;
gpio-ranges = <&aobus_pinctrl 0 (AMLOGIC_GPIO_C<<8) 7>;
};
gpiod: gpio@5c {
reg = <0 0x5c 0 0x24>, <0 0x8 0 0x8>;
reg-names = "gpio", "mux";
gpio-controller;
#gpio-cells = <2>;
gpio-ranges = <&aobus_pinctrl 0 (AMLOGIC_GPIO_D<<8) 18>;
};
test_n: gpio@c0 {
reg = <0 0xc0 0 0x20>;
reg-names = "gpio";
gpio-controller;
#gpio-cells = <2>;
gpio-ranges = <&aobus_pinctrl 0 (AMLOGIC_GPIO_TEST_N<<8) 1>;
};
};
gpio_ao_intc: interrupt-controller@4080 {
compatible = "amlogic,a9-gpio-ao-intc",
"amlogic,meson-gpio-intc";
reg = <0x0 0x4080 0x0 0x34>;
interrupt-controller;
#interrupt-cells = <2>;
amlogic,channel-interrupts =
<384 385 386 387 388 389 390 391 392 393
394 395 396 397 398 399 400 401 402 403>;
};
uart_b: serial@1e000 {
compatible = "amlogic,a9-uart",
"amlogic,meson-s4-uart";