1 // SPDX-License-Identifier: GPL-2.0+
2 #include <dt-bindings/clock/aspeed-clock.h>
6 compatible = "aspeed,ast2400";
9 interrupt-parent = <&vic>;
39 compatible = "arm,arm926ej-s";
46 compatible = "simple-bus";
51 fmc: flash-controller@1e620000 {
52 reg = < 0x1e620000 0x94
53 0x20000000 0x10000000 >;
56 compatible = "aspeed,ast2400-fmc";
57 clocks = <&syscon ASPEED_CLK_AHB>;
62 compatible = "jedec,spi-nor";
67 spi: flash-controller@1e630000 {
68 reg = < 0x1e630000 0x18
69 0x30000000 0x10000000 >;
72 compatible = "aspeed,ast2400-spi";
73 clocks = <&syscon ASPEED_CLK_AHB>;
77 compatible = "jedec,spi-nor";
82 vic: interrupt-controller@1e6c0080 {
83 compatible = "aspeed,ast2400-vic";
85 #interrupt-cells = <1>;
86 valid-sources = <0xffffffff 0x0007ffff>;
87 reg = <0x1e6c0080 0x80>;
90 mac0: ethernet@1e660000 {
91 compatible = "aspeed,ast2400-mac", "faraday,ftgmac100";
92 reg = <0x1e660000 0x180>;
94 clocks = <&syscon ASPEED_CLK_GATE_MAC1CLK>;
98 mac1: ethernet@1e680000 {
99 compatible = "aspeed,ast2400-mac", "faraday,ftgmac100";
100 reg = <0x1e680000 0x180>;
102 clocks = <&syscon ASPEED_CLK_GATE_MAC2CLK>;
107 compatible = "simple-bus";
108 #address-cells = <1>;
112 syscon: syscon@1e6e2000 {
113 compatible = "aspeed,ast2400-scu", "syscon", "simple-mfd";
114 reg = <0x1e6e2000 0x1a8>;
115 #address-cells = <1>;
121 compatible = "aspeed,g4-pinctrl";
126 compatible = "aspeed,ast2400-adc";
127 reg = <0x1e6e9000 0xb0>;
128 clocks = <&syscon ASPEED_CLK_APB>;
129 resets = <&syscon ASPEED_RESET_ADC>;
130 #io-channel-cells = <1>;
135 compatible = "mmio-sram";
136 reg = <0x1e720000 0x8000>; // 32K
139 gpio: gpio@1e780000 {
142 compatible = "aspeed,ast2400-gpio";
143 reg = <0x1e780000 0x1000>;
145 gpio-ranges = <&pinctrl 0 0 220>;
146 clocks = <&syscon ASPEED_CLK_APB>;
147 interrupt-controller;
150 timer: timer@1e782000 {
151 /* This timer is a Faraday FTTMR010 derivative */
152 compatible = "aspeed,ast2400-timer";
153 reg = <0x1e782000 0x90>;
154 interrupts = <16 17 18 35 36 37 38 39>;
155 clocks = <&syscon ASPEED_CLK_APB>;
156 clock-names = "PCLK";
159 uart1: serial@1e783000 {
160 compatible = "ns16550a";
161 reg = <0x1e783000 0x20>;
164 clocks = <&syscon ASPEED_CLK_GATE_UART1CLK>;
169 uart5: serial@1e784000 {
170 compatible = "ns16550a";
171 reg = <0x1e784000 0x20>;
174 clocks = <&syscon ASPEED_CLK_GATE_UART5CLK>;
179 wdt1: watchdog@1e785000 {
180 compatible = "aspeed,ast2400-wdt";
181 reg = <0x1e785000 0x1c>;
182 clocks = <&syscon ASPEED_CLK_APB>;
185 wdt2: watchdog@1e785020 {
186 compatible = "aspeed,ast2400-wdt";
187 reg = <0x1e785020 0x1c>;
188 clocks = <&syscon ASPEED_CLK_APB>;
191 pwm_tacho: pwm-tacho-controller@1e786000 {
192 compatible = "aspeed,ast2400-pwm-tacho";
193 #address-cells = <1>;
195 reg = <0x1e786000 0x1000>;
196 clocks = <&syscon ASPEED_CLK_APB>;
197 resets = <&syscon ASPEED_RESET_PWM>;
201 vuart: serial@1e787000 {
202 compatible = "aspeed,ast2400-vuart";
203 reg = <0x1e787000 0x40>;
206 clocks = <&syscon ASPEED_CLK_APB>;
212 compatible = "aspeed,ast2400-lpc", "simple-mfd";
213 reg = <0x1e789000 0x1000>;
215 #address-cells = <1>;
217 ranges = <0x0 0x1e789000 0x1000>;
220 compatible = "aspeed,ast2400-lpc-bmc";
224 lpc_host: lpc-host@80 {
225 compatible = "aspeed,ast2400-lpc-host", "simple-mfd", "syscon";
229 #address-cells = <1>;
231 ranges = <0x0 0x80 0x1e0>;
233 lpc_ctrl: lpc-ctrl@0 {
234 compatible = "aspeed,ast2400-lpc-ctrl";
239 lpc_snoop: lpc-snoop@0 {
240 compatible = "aspeed,ast2400-lpc-snoop";
247 compatible = "aspeed,ast2400-lhc";
248 reg = <0x20 0x24 0x48 0x8>;
253 uart2: serial@1e78d000 {
254 compatible = "ns16550a";
255 reg = <0x1e78d000 0x20>;
258 clocks = <&syscon ASPEED_CLK_GATE_UART2CLK>;
263 uart3: serial@1e78e000 {
264 compatible = "ns16550a";
265 reg = <0x1e78e000 0x20>;
268 clocks = <&syscon ASPEED_CLK_GATE_UART3CLK>;
273 uart4: serial@1e78f000 {
274 compatible = "ns16550a";
275 reg = <0x1e78f000 0x20>;
278 clocks = <&syscon ASPEED_CLK_GATE_UART4CLK>;
284 compatible = "simple-bus";
285 #address-cells = <1>;
287 ranges = <0 0x1e78a000 0x1000>;
294 i2c_ic: interrupt-controller@0 {
295 #interrupt-cells = <1>;
296 compatible = "aspeed,ast2400-i2c-ic";
299 interrupt-controller;
303 #address-cells = <1>;
305 #interrupt-cells = <1>;
308 compatible = "aspeed,ast2400-i2c-bus";
309 clocks = <&syscon ASPEED_CLK_APB>;
310 resets = <&syscon ASPEED_RESET_I2C>;
311 bus-frequency = <100000>;
313 interrupt-parent = <&i2c_ic>;
315 /* Does not need pinctrl properties */
319 #address-cells = <1>;
321 #interrupt-cells = <1>;
324 compatible = "aspeed,ast2400-i2c-bus";
325 clocks = <&syscon ASPEED_CLK_APB>;
326 resets = <&syscon ASPEED_RESET_I2C>;
327 bus-frequency = <100000>;
329 interrupt-parent = <&i2c_ic>;
331 /* Does not need pinctrl properties */
335 #address-cells = <1>;
337 #interrupt-cells = <1>;
340 compatible = "aspeed,ast2400-i2c-bus";
341 clocks = <&syscon ASPEED_CLK_APB>;
342 resets = <&syscon ASPEED_RESET_I2C>;
343 bus-frequency = <100000>;
345 interrupt-parent = <&i2c_ic>;
346 pinctrl-names = "default";
347 pinctrl-0 = <&pinctrl_i2c3_default>;
352 #address-cells = <1>;
354 #interrupt-cells = <1>;
357 compatible = "aspeed,ast2400-i2c-bus";
358 clocks = <&syscon ASPEED_CLK_APB>;
359 resets = <&syscon ASPEED_RESET_I2C>;
360 bus-frequency = <100000>;
362 interrupt-parent = <&i2c_ic>;
363 pinctrl-names = "default";
364 pinctrl-0 = <&pinctrl_i2c4_default>;
369 #address-cells = <1>;
371 #interrupt-cells = <1>;
374 compatible = "aspeed,ast2400-i2c-bus";
375 clocks = <&syscon ASPEED_CLK_APB>;
376 resets = <&syscon ASPEED_RESET_I2C>;
377 bus-frequency = <100000>;
379 interrupt-parent = <&i2c_ic>;
380 pinctrl-names = "default";
381 pinctrl-0 = <&pinctrl_i2c5_default>;
386 #address-cells = <1>;
388 #interrupt-cells = <1>;
391 compatible = "aspeed,ast2400-i2c-bus";
392 clocks = <&syscon ASPEED_CLK_APB>;
393 resets = <&syscon ASPEED_RESET_I2C>;
394 bus-frequency = <100000>;
396 interrupt-parent = <&i2c_ic>;
397 pinctrl-names = "default";
398 pinctrl-0 = <&pinctrl_i2c6_default>;
403 #address-cells = <1>;
405 #interrupt-cells = <1>;
408 compatible = "aspeed,ast2400-i2c-bus";
409 clocks = <&syscon ASPEED_CLK_APB>;
410 resets = <&syscon ASPEED_RESET_I2C>;
411 bus-frequency = <100000>;
413 interrupt-parent = <&i2c_ic>;
414 pinctrl-names = "default";
415 pinctrl-0 = <&pinctrl_i2c7_default>;
420 #address-cells = <1>;
422 #interrupt-cells = <1>;
425 compatible = "aspeed,ast2400-i2c-bus";
426 clocks = <&syscon ASPEED_CLK_APB>;
427 resets = <&syscon ASPEED_RESET_I2C>;
428 bus-frequency = <100000>;
430 interrupt-parent = <&i2c_ic>;
431 pinctrl-names = "default";
432 pinctrl-0 = <&pinctrl_i2c8_default>;
437 #address-cells = <1>;
439 #interrupt-cells = <1>;
442 compatible = "aspeed,ast2400-i2c-bus";
443 clocks = <&syscon ASPEED_CLK_APB>;
444 resets = <&syscon ASPEED_RESET_I2C>;
445 bus-frequency = <100000>;
447 interrupt-parent = <&i2c_ic>;
448 pinctrl-names = "default";
449 pinctrl-0 = <&pinctrl_i2c9_default>;
454 #address-cells = <1>;
456 #interrupt-cells = <1>;
459 compatible = "aspeed,ast2400-i2c-bus";
460 clocks = <&syscon ASPEED_CLK_APB>;
461 resets = <&syscon ASPEED_RESET_I2C>;
462 bus-frequency = <100000>;
464 interrupt-parent = <&i2c_ic>;
465 pinctrl-names = "default";
466 pinctrl-0 = <&pinctrl_i2c10_default>;
471 #address-cells = <1>;
473 #interrupt-cells = <1>;
476 compatible = "aspeed,ast2400-i2c-bus";
477 clocks = <&syscon ASPEED_CLK_APB>;
478 resets = <&syscon ASPEED_RESET_I2C>;
479 bus-frequency = <100000>;
481 interrupt-parent = <&i2c_ic>;
482 pinctrl-names = "default";
483 pinctrl-0 = <&pinctrl_i2c11_default>;
488 #address-cells = <1>;
490 #interrupt-cells = <1>;
493 compatible = "aspeed,ast2400-i2c-bus";
494 clocks = <&syscon ASPEED_CLK_APB>;
495 resets = <&syscon ASPEED_RESET_I2C>;
496 bus-frequency = <100000>;
498 interrupt-parent = <&i2c_ic>;
499 pinctrl-names = "default";
500 pinctrl-0 = <&pinctrl_i2c12_default>;
505 #address-cells = <1>;
507 #interrupt-cells = <1>;
510 compatible = "aspeed,ast2400-i2c-bus";
511 clocks = <&syscon ASPEED_CLK_APB>;
512 resets = <&syscon ASPEED_RESET_I2C>;
513 bus-frequency = <100000>;
515 interrupt-parent = <&i2c_ic>;
516 pinctrl-names = "default";
517 pinctrl-0 = <&pinctrl_i2c13_default>;
522 #address-cells = <1>;
524 #interrupt-cells = <1>;
527 compatible = "aspeed,ast2400-i2c-bus";
528 clocks = <&syscon ASPEED_CLK_APB>;
529 resets = <&syscon ASPEED_RESET_I2C>;
530 bus-frequency = <100000>;
532 interrupt-parent = <&i2c_ic>;
533 pinctrl-names = "default";
534 pinctrl-0 = <&pinctrl_i2c14_default>;
540 pinctrl_acpi_default: acpi_default {
545 pinctrl_adc0_default: adc0_default {
550 pinctrl_adc1_default: adc1_default {
555 pinctrl_adc10_default: adc10_default {
560 pinctrl_adc11_default: adc11_default {
565 pinctrl_adc12_default: adc12_default {
570 pinctrl_adc13_default: adc13_default {
575 pinctrl_adc14_default: adc14_default {
580 pinctrl_adc15_default: adc15_default {
585 pinctrl_adc2_default: adc2_default {
590 pinctrl_adc3_default: adc3_default {
595 pinctrl_adc4_default: adc4_default {
600 pinctrl_adc5_default: adc5_default {
605 pinctrl_adc6_default: adc6_default {
610 pinctrl_adc7_default: adc7_default {
615 pinctrl_adc8_default: adc8_default {
620 pinctrl_adc9_default: adc9_default {
625 pinctrl_bmcint_default: bmcint_default {
630 pinctrl_ddcclk_default: ddcclk_default {
635 pinctrl_ddcdat_default: ddcdat_default {
640 pinctrl_extrst_default: extrst_default {
645 pinctrl_flack_default: flack_default {
650 pinctrl_flbusy_default: flbusy_default {
655 pinctrl_flwp_default: flwp_default {
660 pinctrl_gpid_default: gpid_default {
665 pinctrl_gpid0_default: gpid0_default {
670 pinctrl_gpid2_default: gpid2_default {
675 pinctrl_gpid4_default: gpid4_default {
680 pinctrl_gpid6_default: gpid6_default {
685 pinctrl_gpie0_default: gpie0_default {
690 pinctrl_gpie2_default: gpie2_default {
695 pinctrl_gpie4_default: gpie4_default {
700 pinctrl_gpie6_default: gpie6_default {
705 pinctrl_i2c10_default: i2c10_default {
710 pinctrl_i2c11_default: i2c11_default {
715 pinctrl_i2c12_default: i2c12_default {
720 pinctrl_i2c13_default: i2c13_default {
725 pinctrl_i2c14_default: i2c14_default {
730 pinctrl_i2c3_default: i2c3_default {
735 pinctrl_i2c4_default: i2c4_default {
740 pinctrl_i2c5_default: i2c5_default {
745 pinctrl_i2c6_default: i2c6_default {
750 pinctrl_i2c7_default: i2c7_default {
755 pinctrl_i2c8_default: i2c8_default {
760 pinctrl_i2c9_default: i2c9_default {
765 pinctrl_lpcpd_default: lpcpd_default {
770 pinctrl_lpcpme_default: lpcpme_default {
775 pinctrl_lpcrst_default: lpcrst_default {
780 pinctrl_lpcsmi_default: lpcsmi_default {
785 pinctrl_mac1link_default: mac1link_default {
786 function = "MAC1LINK";
790 pinctrl_mac2link_default: mac2link_default {
791 function = "MAC2LINK";
795 pinctrl_mdio1_default: mdio1_default {
800 pinctrl_mdio2_default: mdio2_default {
805 pinctrl_ncts1_default: ncts1_default {
810 pinctrl_ncts2_default: ncts2_default {
815 pinctrl_ncts3_default: ncts3_default {
820 pinctrl_ncts4_default: ncts4_default {
825 pinctrl_ndcd1_default: ndcd1_default {
830 pinctrl_ndcd2_default: ndcd2_default {
835 pinctrl_ndcd3_default: ndcd3_default {
840 pinctrl_ndcd4_default: ndcd4_default {
845 pinctrl_ndsr1_default: ndsr1_default {
850 pinctrl_ndsr2_default: ndsr2_default {
855 pinctrl_ndsr3_default: ndsr3_default {
860 pinctrl_ndsr4_default: ndsr4_default {
865 pinctrl_ndtr1_default: ndtr1_default {
870 pinctrl_ndtr2_default: ndtr2_default {
875 pinctrl_ndtr3_default: ndtr3_default {
880 pinctrl_ndtr4_default: ndtr4_default {
885 pinctrl_ndts4_default: ndts4_default {
890 pinctrl_nri1_default: nri1_default {
895 pinctrl_nri2_default: nri2_default {
900 pinctrl_nri3_default: nri3_default {
905 pinctrl_nri4_default: nri4_default {
910 pinctrl_nrts1_default: nrts1_default {
915 pinctrl_nrts2_default: nrts2_default {
920 pinctrl_nrts3_default: nrts3_default {
925 pinctrl_oscclk_default: oscclk_default {
930 pinctrl_pwm0_default: pwm0_default {
935 pinctrl_pwm1_default: pwm1_default {
940 pinctrl_pwm2_default: pwm2_default {
945 pinctrl_pwm3_default: pwm3_default {
950 pinctrl_pwm4_default: pwm4_default {
955 pinctrl_pwm5_default: pwm5_default {
960 pinctrl_pwm6_default: pwm6_default {
965 pinctrl_pwm7_default: pwm7_default {
970 pinctrl_rgmii1_default: rgmii1_default {
975 pinctrl_rgmii2_default: rgmii2_default {
980 pinctrl_rmii1_default: rmii1_default {
985 pinctrl_rmii2_default: rmii2_default {
990 pinctrl_rom16_default: rom16_default {
995 pinctrl_rom8_default: rom8_default {
1000 pinctrl_romcs1_default: romcs1_default {
1001 function = "ROMCS1";
1005 pinctrl_romcs2_default: romcs2_default {
1006 function = "ROMCS2";
1010 pinctrl_romcs3_default: romcs3_default {
1011 function = "ROMCS3";
1015 pinctrl_romcs4_default: romcs4_default {
1016 function = "ROMCS4";
1020 pinctrl_rxd1_default: rxd1_default {
1025 pinctrl_rxd2_default: rxd2_default {
1030 pinctrl_rxd3_default: rxd3_default {
1035 pinctrl_rxd4_default: rxd4_default {
1040 pinctrl_salt1_default: salt1_default {
1045 pinctrl_salt2_default: salt2_default {
1050 pinctrl_salt3_default: salt3_default {
1055 pinctrl_salt4_default: salt4_default {
1060 pinctrl_sd1_default: sd1_default {
1065 pinctrl_sd2_default: sd2_default {
1070 pinctrl_sgpmck_default: sgpmck_default {
1071 function = "SGPMCK";
1075 pinctrl_sgpmi_default: sgpmi_default {
1080 pinctrl_sgpmld_default: sgpmld_default {
1081 function = "SGPMLD";
1085 pinctrl_sgpmo_default: sgpmo_default {
1090 pinctrl_sgpsck_default: sgpsck_default {
1091 function = "SGPSCK";
1095 pinctrl_sgpsi0_default: sgpsi0_default {
1096 function = "SGPSI0";
1100 pinctrl_sgpsi1_default: sgpsi1_default {
1101 function = "SGPSI1";
1105 pinctrl_sgpsld_default: sgpsld_default {
1106 function = "SGPSLD";
1110 pinctrl_sioonctrl_default: sioonctrl_default {
1111 function = "SIOONCTRL";
1112 groups = "SIOONCTRL";
1115 pinctrl_siopbi_default: siopbi_default {
1116 function = "SIOPBI";
1120 pinctrl_siopbo_default: siopbo_default {
1121 function = "SIOPBO";
1125 pinctrl_siopwreq_default: siopwreq_default {
1126 function = "SIOPWREQ";
1127 groups = "SIOPWREQ";
1130 pinctrl_siopwrgd_default: siopwrgd_default {
1131 function = "SIOPWRGD";
1132 groups = "SIOPWRGD";
1135 pinctrl_sios3_default: sios3_default {
1140 pinctrl_sios5_default: sios5_default {
1145 pinctrl_siosci_default: siosci_default {
1146 function = "SIOSCI";
1150 pinctrl_spi1_default: spi1_default {
1155 pinctrl_spi1debug_default: spi1debug_default {
1156 function = "SPI1DEBUG";
1157 groups = "SPI1DEBUG";
1160 pinctrl_spi1passthru_default: spi1passthru_default {
1161 function = "SPI1PASSTHRU";
1162 groups = "SPI1PASSTHRU";
1165 pinctrl_spics1_default: spics1_default {
1166 function = "SPICS1";
1170 pinctrl_timer3_default: timer3_default {
1171 function = "TIMER3";
1175 pinctrl_timer4_default: timer4_default {
1176 function = "TIMER4";
1180 pinctrl_timer5_default: timer5_default {
1181 function = "TIMER5";
1185 pinctrl_timer6_default: timer6_default {
1186 function = "TIMER6";
1190 pinctrl_timer7_default: timer7_default {
1191 function = "TIMER7";
1195 pinctrl_timer8_default: timer8_default {
1196 function = "TIMER8";
1200 pinctrl_txd1_default: txd1_default {
1205 pinctrl_txd2_default: txd2_default {
1210 pinctrl_txd3_default: txd3_default {
1215 pinctrl_txd4_default: txd4_default {
1220 pinctrl_uart6_default: uart6_default {
1225 pinctrl_usbcki_default: usbcki_default {
1226 function = "USBCKI";
1230 pinctrl_vgabios_rom_default: vgabios_rom_default {
1231 function = "VGABIOS_ROM";
1232 groups = "VGABIOS_ROM";
1235 pinctrl_vgahs_default: vgahs_default {
1240 pinctrl_vgavs_default: vgavs_default {
1245 pinctrl_vpi18_default: vpi18_default {
1250 pinctrl_vpi24_default: vpi24_default {
1255 pinctrl_vpi30_default: vpi30_default {
1260 pinctrl_vpo12_default: vpo12_default {
1265 pinctrl_vpo24_default: vpo24_default {
1270 pinctrl_wdtrst1_default: wdtrst1_default {
1271 function = "WDTRST1";
1275 pinctrl_wdtrst2_default: wdtrst2_default {
1276 function = "WDTRST2";