| // SPDX-License-Identifier: GPL-2.0-only OR MIT |
| /* |
| * Device Tree Source for AST27xx SoC Family Main Domain peripherals |
| * |
| * Copyright (C) 2026 ASPEED Technology Inc. |
| */ |
| |
| #include <dt-bindings/clock/aspeed,ast2700-scu.h> |
| #include <dt-bindings/reset/aspeed,ast2700-scu.h> |
| #include <dt-bindings/interrupt-controller/aspeed-scu-ic.h> |
| |
| &soc0 { |
| sram0: sram@10000000 { |
| compatible = "mmio-sram"; |
| reg = <0x0 0x10000000 0x0 0x20000>; |
| ranges = <0x0 0x0 0x10000000 0x20000>; |
| #address-cells = <1>; |
| #size-cells = <1>; |
| |
| soc0-sram@0 { |
| reg = <0x0 0x20000>; |
| export; |
| }; |
| }; |
| |
| vhuba1: usb-vhub@12011000 { |
| compatible = "aspeed,ast2700-usb-vhub"; |
| reg = <0x0 0x12011000 0x0 0x820>; |
| interrupts-extended = <&intc0 32>; |
| clocks = <&syscon0 SCU0_CLK_GATE_PORTAUSB2CLK>; |
| resets = <&syscon0 SCU0_RESET_PORTA_VHUB>; |
| aspeed,vhub-downstream-ports = <7>; |
| aspeed,vhub-generic-endpoints = <21>; |
| pinctrl-names = "default"; |
| pinctrl-0 = <&pinctrl_usb2axhpd1_default>; |
| status = "disabled"; |
| }; |
| |
| vhubb1: usb-vhub@12021000 { |
| compatible = "aspeed,ast2700-usb-vhub"; |
| reg = <0x0 0x12021000 0x0 0x820>; |
| interrupts-extended = <&intc0 36>; |
| clocks = <&syscon0 SCU0_CLK_GATE_PORTBUSB2CLK>; |
| resets = <&syscon0 SCU0_RESET_PORTB_VHUB>; |
| aspeed,vhub-downstream-ports = <7>; |
| aspeed,vhub-generic-endpoints = <21>; |
| pinctrl-names = "default"; |
| pinctrl-0 = <&pinctrl_usb2bxhpd1_default>; |
| status = "disabled"; |
| }; |
| |
| uhci0: usb@12040000 { |
| compatible = "aspeed,ast2700-uhci", "generic-uhci"; |
| reg = <0x0 0x12040000 0x0 0x100>; |
| interrupts-extended = <&intc0 10>; |
| #ports = <2>; |
| clocks = <&syscon0 SCU0_CLK_GATE_UHCICLK>; |
| resets = <&syscon0 SCU0_RESET_UHCI>; |
| status = "disabled"; |
| }; |
| |
| vhuba0: usb-vhub@12060000 { |
| compatible = "aspeed,ast2700-usb-vhub"; |
| reg = <0x0 0x12060000 0x0 0x820>; |
| interrupts-extended = <&intc0 33>; |
| clocks = <&syscon0 SCU0_CLK_GATE_PORTAUSB2CLK>; |
| resets = <&syscon0 SCU0_RESET_PORTA_VHUB_EHCI>; |
| aspeed,vhub-downstream-ports = <7>; |
| aspeed,vhub-generic-endpoints = <21>; |
| pinctrl-names = "default"; |
| pinctrl-0 = <&pinctrl_usb2ad0_default>; |
| status = "disabled"; |
| }; |
| |
| ehci0: usb@12061000 { |
| compatible = "aspeed,ast2700-ehci", "generic-ehci"; |
| reg = <0x0 0x12061000 0x0 0x100>; |
| interrupts-extended = <&intc0 33>; |
| clocks = <&syscon0 SCU0_CLK_GATE_PORTAUSB2CLK>; |
| resets = <&syscon0 SCU0_RESET_PORTA_VHUB_EHCI>; |
| pinctrl-names = "default"; |
| pinctrl-0 = <&pinctrl_usb2ah_default>; |
| status = "disabled"; |
| }; |
| |
| vhubb0: usb-vhub@12062000 { |
| compatible = "aspeed,ast2700-usb-vhub"; |
| reg = <0x0 0x12062000 0x0 0x820>; |
| interrupts-extended = <&intc0 37>; |
| clocks = <&syscon0 SCU0_CLK_GATE_PORTBUSB2CLK>; |
| resets = <&syscon0 SCU0_RESET_PORTB_VHUB_EHCI>; |
| aspeed,vhub-downstream-ports = <7>; |
| aspeed,vhub-generic-endpoints = <21>; |
| pinctrl-names = "default"; |
| pinctrl-0 = <&pinctrl_usb2bd0_default>; |
| status = "disabled"; |
| }; |
| |
| ehci1: usb@12063000 { |
| compatible = "aspeed,ast2700-ehci", "generic-ehci"; |
| reg = <0x0 0x12063000 0x0 0x100>; |
| interrupts-extended = <&intc0 37>; |
| clocks = <&syscon0 SCU0_CLK_GATE_PORTBUSB2CLK>; |
| resets = <&syscon0 SCU0_RESET_PORTB_VHUB_EHCI>; |
| pinctrl-names = "default"; |
| pinctrl-0 = <&pinctrl_usb2bh_default>; |
| status = "disabled"; |
| }; |
| |
| emmc_controller: sdc@12090000 { |
| compatible = "aspeed,ast2700-sd-controller", "aspeed,ast2600-sd-controller"; |
| reg = <0 0x12090000 0 0x100>; |
| #address-cells = <1>; |
| #size-cells = <1>; |
| ranges = <0x0 0x0 0x12090000 0x10000>; |
| clocks = <&syscon0 SCU0_CLK_GATE_EMMCCLK>; |
| resets = <&syscon0 SCU0_RESET_EMMC>; |
| status = "disabled"; |
| |
| emmc: sdhci@100 { |
| compatible = "aspeed,ast2700-sdhci", "aspeed,ast2600-sdhci"; |
| reg = <0x100 0x100>; |
| sdhci,auto-cmd12; |
| interrupts-extended = <&intc0 15>; |
| clocks = <&syscon0 SCU0_CLK_GATE_EMMCCLK>; |
| status = "disabled"; |
| }; |
| }; |
| |
| intc0: interrupt-controller@12100000 { |
| compatible = "aspeed,ast2700-intc0"; |
| reg = <0x0 0x12100000 0x0 0x3c00>; |
| interrupt-controller; |
| interrupt-parent = <&gic>; |
| #interrupt-cells = <1>; |
| aspeed,interrupt-ranges = |
| <0 128 &gic GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>, /* linear range 1 to 1*/ |
| <144 8 &gic GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH>, /* sw int SSP */ |
| <152 8 &gic GIC_SPI 152 IRQ_TYPE_LEVEL_HIGH>, /* sw int TSP */ |
| <192 10 &gic GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>, /* M0-M9 intm */ |
| <208 10 &gic GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>, /* M30-M39 intm */ |
| <224 10 &gic GIC_SPI 224 IRQ_TYPE_LEVEL_HIGH>, /* M40-M49 intm */ |
| <256 128 &ssp_nvic 0 0 >, /* linear to SSP */ |
| <384 10 &ssp_nvic 160 0 >, /* cascaded to SSP via M10-M19 */ |
| <400 8 &ssp_nvic 144 0 >, /* sw int PSP */ |
| <408 8 &ssp_nvic 152 0 >, /* sw int TSP */ |
| <426 128 &tsp_nvic 0 0 >, /* linear to TSP */ |
| <554 10 &tsp_nvic 160 0 >, /* cascaded to TSP via M20-M29 */ |
| <570 8 &tsp_nvic 144 0 >, /* sw int PSP */ |
| <578 8 &tsp_nvic 152 0 >; /* sw int TSP */ |
| }; |
| |
| syscon0: syscon@12c02000 { |
| compatible = "aspeed,ast2700-scu0", "syscon", "simple-mfd"; |
| reg = <0x0 0x12c02000 0x0 0x1000>; |
| ranges = <0x0 0x0 0x12c02000 0x1000>; |
| #address-cells = <1>; |
| #size-cells = <1>; |
| #clock-cells = <1>; |
| #reset-cells = <1>; |
| |
| silicon-id@0 { |
| compatible = "aspeed,ast2700-silicon-id", "aspeed,silicon-id"; |
| reg = <0x0 0x4>; |
| }; |
| |
| scu_ic0: interrupt-controller@1d0 { |
| compatible = "aspeed,ast2700-scu-ic0"; |
| reg = <0x1d0 0xc>; |
| interrupts-extended = <&intc0 97>; |
| #interrupt-cells = <1>; |
| interrupt-controller; |
| }; |
| |
| scu_ic1: interrupt-controller@1e0 { |
| compatible = "aspeed,ast2700-scu-ic1"; |
| reg = <0x1e0 0xc>; |
| interrupts-extended = <&intc0 98>; |
| #interrupt-cells = <1>; |
| interrupt-controller; |
| }; |
| |
| pinctrl0: pinctrl@400 { |
| compatible = "aspeed,ast2700-soc0-pinctrl"; |
| reg = <0x400 0x318>; |
| }; |
| }; |
| |
| gpio0: gpio@12c11000 { |
| #gpio-cells = <2>; |
| gpio-controller; |
| compatible = "aspeed,ast2700-gpio"; |
| reg = <0x0 0x12c11000 0x0 0x1000>; |
| interrupts-extended = <&intc0 11>; |
| gpio-ranges = <&pinctrl0 0 0 12>; |
| ngpios = <12>; |
| clocks = <&syscon0 SCU0_CLK_APB>; |
| interrupt-controller; |
| #interrupt-cells = <2>; |
| }; |
| |
| uart4: serial@12c1a000 { |
| compatible = "ns16550a"; |
| reg = <0x0 0x12c1a000 0x0 0x1000>; |
| reg-shift = <2>; |
| reg-io-width = <4>; |
| clocks = <&syscon0 SCU0_CLK_GATE_UART4CLK>; |
| interrupts-extended = <&intc0 8>; |
| no-loopback-test; |
| status = "disabled"; |
| }; |
| |
| mbox0: mbox@12c1c200 { |
| compatible = "aspeed,ast2700-mailbox"; |
| reg = <0x0 0x12c1c200 0x0 0x100>, <0x0 0x12c1c300 0x0 0x100>; |
| reg-names = "tx", "rx"; |
| interrupts-extended = <&intc0 103>; |
| #mbox-cells = <1>; |
| }; |
| |
| mbox1: mbox@12c1c600 { |
| compatible = "aspeed,ast2700-mailbox"; |
| reg = <0x0 0x12c1c600 0x0 0x100>, <0x0 0x12c1c700 0x0 0x100>; |
| reg-names = "tx", "rx"; |
| interrupts-extended = <&intc0 107>; |
| #mbox-cells = <1>; |
| }; |
| }; |
| |
| #include "aspeed-g7-soc0-pinctrl.dtsi" |