1 // SPDX-License-Identifier: GPL-2.0-only
3 * dts file for Hisilicon D05 Development Board
5 * Copyright (C) 2016 Hisilicon Ltd.
8 #include <dt-bindings/interrupt-controller/arm-gic.h>
11 compatible = "hisilicon,hip07-d05";
12 interrupt-parent = <&gic>;
17 compatible = "arm,psci-0.2";
269 compatible = "arm,cortex-a72";
271 enable-method = "psci";
272 next-level-cache = <&cluster0_l2>;
278 compatible = "arm,cortex-a72";
280 enable-method = "psci";
281 next-level-cache = <&cluster0_l2>;
287 compatible = "arm,cortex-a72";
289 enable-method = "psci";
290 next-level-cache = <&cluster0_l2>;
296 compatible = "arm,cortex-a72";
298 enable-method = "psci";
299 next-level-cache = <&cluster0_l2>;
305 compatible = "arm,cortex-a72";
307 enable-method = "psci";
308 next-level-cache = <&cluster1_l2>;
314 compatible = "arm,cortex-a72";
316 enable-method = "psci";
317 next-level-cache = <&cluster1_l2>;
323 compatible = "arm,cortex-a72";
325 enable-method = "psci";
326 next-level-cache = <&cluster1_l2>;
332 compatible = "arm,cortex-a72";
334 enable-method = "psci";
335 next-level-cache = <&cluster1_l2>;
341 compatible = "arm,cortex-a72";
343 enable-method = "psci";
344 next-level-cache = <&cluster2_l2>;
350 compatible = "arm,cortex-a72";
352 enable-method = "psci";
353 next-level-cache = <&cluster2_l2>;
359 compatible = "arm,cortex-a72";
361 enable-method = "psci";
362 next-level-cache = <&cluster2_l2>;
368 compatible = "arm,cortex-a72";
370 enable-method = "psci";
371 next-level-cache = <&cluster2_l2>;
377 compatible = "arm,cortex-a72";
379 enable-method = "psci";
380 next-level-cache = <&cluster3_l2>;
386 compatible = "arm,cortex-a72";
388 enable-method = "psci";
389 next-level-cache = <&cluster3_l2>;
395 compatible = "arm,cortex-a72";
397 enable-method = "psci";
398 next-level-cache = <&cluster3_l2>;
404 compatible = "arm,cortex-a72";
406 enable-method = "psci";
407 next-level-cache = <&cluster3_l2>;
413 compatible = "arm,cortex-a72";
415 enable-method = "psci";
416 next-level-cache = <&cluster4_l2>;
422 compatible = "arm,cortex-a72";
424 enable-method = "psci";
425 next-level-cache = <&cluster4_l2>;
431 compatible = "arm,cortex-a72";
433 enable-method = "psci";
434 next-level-cache = <&cluster4_l2>;
440 compatible = "arm,cortex-a72";
442 enable-method = "psci";
443 next-level-cache = <&cluster4_l2>;
449 compatible = "arm,cortex-a72";
451 enable-method = "psci";
452 next-level-cache = <&cluster5_l2>;
458 compatible = "arm,cortex-a72";
460 enable-method = "psci";
461 next-level-cache = <&cluster5_l2>;
467 compatible = "arm,cortex-a72";
469 enable-method = "psci";
470 next-level-cache = <&cluster5_l2>;
476 compatible = "arm,cortex-a72";
478 enable-method = "psci";
479 next-level-cache = <&cluster5_l2>;
485 compatible = "arm,cortex-a72";
487 enable-method = "psci";
488 next-level-cache = <&cluster6_l2>;
494 compatible = "arm,cortex-a72";
496 enable-method = "psci";
497 next-level-cache = <&cluster6_l2>;
503 compatible = "arm,cortex-a72";
505 enable-method = "psci";
506 next-level-cache = <&cluster6_l2>;
512 compatible = "arm,cortex-a72";
514 enable-method = "psci";
515 next-level-cache = <&cluster6_l2>;
521 compatible = "arm,cortex-a72";
523 enable-method = "psci";
524 next-level-cache = <&cluster7_l2>;
530 compatible = "arm,cortex-a72";
532 enable-method = "psci";
533 next-level-cache = <&cluster7_l2>;
539 compatible = "arm,cortex-a72";
541 enable-method = "psci";
542 next-level-cache = <&cluster7_l2>;
548 compatible = "arm,cortex-a72";
550 enable-method = "psci";
551 next-level-cache = <&cluster7_l2>;
557 compatible = "arm,cortex-a72";
559 enable-method = "psci";
560 next-level-cache = <&cluster8_l2>;
566 compatible = "arm,cortex-a72";
568 enable-method = "psci";
569 next-level-cache = <&cluster8_l2>;
575 compatible = "arm,cortex-a72";
577 enable-method = "psci";
578 next-level-cache = <&cluster8_l2>;
584 compatible = "arm,cortex-a72";
586 enable-method = "psci";
587 next-level-cache = <&cluster8_l2>;
593 compatible = "arm,cortex-a72";
595 enable-method = "psci";
596 next-level-cache = <&cluster9_l2>;
602 compatible = "arm,cortex-a72";
604 enable-method = "psci";
605 next-level-cache = <&cluster9_l2>;
611 compatible = "arm,cortex-a72";
613 enable-method = "psci";
614 next-level-cache = <&cluster9_l2>;
620 compatible = "arm,cortex-a72";
622 enable-method = "psci";
623 next-level-cache = <&cluster9_l2>;
629 compatible = "arm,cortex-a72";
631 enable-method = "psci";
632 next-level-cache = <&cluster10_l2>;
638 compatible = "arm,cortex-a72";
640 enable-method = "psci";
641 next-level-cache = <&cluster10_l2>;
647 compatible = "arm,cortex-a72";
649 enable-method = "psci";
650 next-level-cache = <&cluster10_l2>;
656 compatible = "arm,cortex-a72";
658 enable-method = "psci";
659 next-level-cache = <&cluster10_l2>;
665 compatible = "arm,cortex-a72";
667 enable-method = "psci";
668 next-level-cache = <&cluster11_l2>;
674 compatible = "arm,cortex-a72";
676 enable-method = "psci";
677 next-level-cache = <&cluster11_l2>;
683 compatible = "arm,cortex-a72";
685 enable-method = "psci";
686 next-level-cache = <&cluster11_l2>;
692 compatible = "arm,cortex-a72";
694 enable-method = "psci";
695 next-level-cache = <&cluster11_l2>;
701 compatible = "arm,cortex-a72";
703 enable-method = "psci";
704 next-level-cache = <&cluster12_l2>;
710 compatible = "arm,cortex-a72";
712 enable-method = "psci";
713 next-level-cache = <&cluster12_l2>;
719 compatible = "arm,cortex-a72";
721 enable-method = "psci";
722 next-level-cache = <&cluster12_l2>;
728 compatible = "arm,cortex-a72";
730 enable-method = "psci";
731 next-level-cache = <&cluster12_l2>;
737 compatible = "arm,cortex-a72";
739 enable-method = "psci";
740 next-level-cache = <&cluster13_l2>;
746 compatible = "arm,cortex-a72";
748 enable-method = "psci";
749 next-level-cache = <&cluster13_l2>;
755 compatible = "arm,cortex-a72";
757 enable-method = "psci";
758 next-level-cache = <&cluster13_l2>;
764 compatible = "arm,cortex-a72";
766 enable-method = "psci";
767 next-level-cache = <&cluster13_l2>;
773 compatible = "arm,cortex-a72";
775 enable-method = "psci";
776 next-level-cache = <&cluster14_l2>;
782 compatible = "arm,cortex-a72";
784 enable-method = "psci";
785 next-level-cache = <&cluster14_l2>;
791 compatible = "arm,cortex-a72";
793 enable-method = "psci";
794 next-level-cache = <&cluster14_l2>;
800 compatible = "arm,cortex-a72";
802 enable-method = "psci";
803 next-level-cache = <&cluster14_l2>;
809 compatible = "arm,cortex-a72";
811 enable-method = "psci";
812 next-level-cache = <&cluster15_l2>;
818 compatible = "arm,cortex-a72";
820 enable-method = "psci";
821 next-level-cache = <&cluster15_l2>;
827 compatible = "arm,cortex-a72";
829 enable-method = "psci";
830 next-level-cache = <&cluster15_l2>;
836 compatible = "arm,cortex-a72";
838 enable-method = "psci";
839 next-level-cache = <&cluster15_l2>;
843 cluster0_l2: l2-cache0 {
844 compatible = "cache";
847 cluster1_l2: l2-cache1 {
848 compatible = "cache";
851 cluster2_l2: l2-cache2 {
852 compatible = "cache";
855 cluster3_l2: l2-cache3 {
856 compatible = "cache";
859 cluster4_l2: l2-cache4 {
860 compatible = "cache";
863 cluster5_l2: l2-cache5 {
864 compatible = "cache";
867 cluster6_l2: l2-cache6 {
868 compatible = "cache";
871 cluster7_l2: l2-cache7 {
872 compatible = "cache";
875 cluster8_l2: l2-cache8 {
876 compatible = "cache";
879 cluster9_l2: l2-cache9 {
880 compatible = "cache";
883 cluster10_l2: l2-cache10 {
884 compatible = "cache";
887 cluster11_l2: l2-cache11 {
888 compatible = "cache";
891 cluster12_l2: l2-cache12 {
892 compatible = "cache";
895 cluster13_l2: l2-cache13 {
896 compatible = "cache";
899 cluster14_l2: l2-cache14 {
900 compatible = "cache";
903 cluster15_l2: l2-cache15 {
904 compatible = "cache";
908 gic: interrupt-controller@4d000000 {
909 compatible = "arm,gic-v3";
910 #interrupt-cells = <3>;
911 #address-cells = <2>;
914 interrupt-controller;
915 #redistributor-regions = <4>;
916 redistributor-stride = <0x0 0x40000>;
917 reg = <0x0 0x4d000000 0x0 0x10000>, /* GICD */
918 <0x0 0x4d100000 0x0 0x400000>, /* p0 GICR node 0 */
919 <0x0 0x6d100000 0x0 0x400000>, /* p0 GICR node 1 */
920 <0x400 0x4d100000 0x0 0x400000>, /* p1 GICR node 2 */
921 <0x400 0x6d100000 0x0 0x400000>, /* p1 GICR node 3 */
922 <0x0 0xfe000000 0x0 0x10000>, /* GICC */
923 <0x0 0xfe010000 0x0 0x10000>, /* GICH */
924 <0x0 0xfe020000 0x0 0x10000>; /* GICV */
925 interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
927 p0_its_peri_a: interrupt-controller@4c000000 {
928 compatible = "arm,gic-v3-its";
931 reg = <0x0 0x4c000000 0x0 0x40000>;
934 p0_its_peri_b: interrupt-controller@6c000000 {
935 compatible = "arm,gic-v3-its";
938 reg = <0x0 0x6c000000 0x0 0x40000>;
941 p0_its_dsa_a: interrupt-controller@c6000000 {
942 compatible = "arm,gic-v3-its";
945 reg = <0x0 0xc6000000 0x0 0x40000>;
948 p0_its_dsa_b: interrupt-controller@8,c6000000 {
949 compatible = "arm,gic-v3-its";
952 reg = <0x8 0xc6000000 0x0 0x40000>;
955 p1_its_peri_a: interrupt-controller@400,4c000000 {
956 compatible = "arm,gic-v3-its";
959 reg = <0x400 0x4c000000 0x0 0x40000>;
962 p1_its_peri_b: interrupt-controller@400,6c000000 {
963 compatible = "arm,gic-v3-its";
966 reg = <0x400 0x6c000000 0x0 0x40000>;
969 p1_its_dsa_a: interrupt-controller@400,c6000000 {
970 compatible = "arm,gic-v3-its";
973 reg = <0x400 0xc6000000 0x0 0x40000>;
976 p1_its_dsa_b: interrupt-controller@408,c6000000 {
977 compatible = "arm,gic-v3-its";
980 reg = <0x408 0xc6000000 0x0 0x40000>;
985 compatible = "arm,armv8-timer";
986 interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_LOW>,
987 <GIC_PPI 14 IRQ_TYPE_LEVEL_LOW>,
988 <GIC_PPI 11 IRQ_TYPE_LEVEL_LOW>,
989 <GIC_PPI 10 IRQ_TYPE_LEVEL_LOW>;
993 compatible = "arm,cortex-a72-pmu";
994 interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_HIGH>;
997 p0_mbigen_peri_b: interrupt-controller@60080000 {
998 compatible = "hisilicon,mbigen-v2";
999 reg = <0x0 0x60080000 0x0 0x10000>;
1001 mbigen_uart: uart_intc {
1002 msi-parent = <&p0_its_peri_b 0x120c7>;
1003 interrupt-controller;
1004 #interrupt-cells = <2>;
1009 p0_mbigen_pcie_a: interrupt-controller@a0080000 {
1010 compatible = "hisilicon,mbigen-v2";
1011 reg = <0x0 0xa0080000 0x0 0x10000>;
1013 mbigen_pcie2_a: intc_pcie2_a {
1014 msi-parent = <&p0_its_dsa_a 0x40087>;
1015 interrupt-controller;
1016 #interrupt-cells = <2>;
1020 mbigen_sas1: intc_sas1 {
1021 msi-parent = <&p0_its_dsa_a 0x40000>;
1022 interrupt-controller;
1023 #interrupt-cells = <2>;
1027 mbigen_sas2: intc_sas2 {
1028 msi-parent = <&p0_its_dsa_a 0x40040>;
1029 interrupt-controller;
1030 #interrupt-cells = <2>;
1034 mbigen_smmu_pcie: intc_smmu_pcie {
1035 msi-parent = <&p0_its_dsa_a 0x40b0c>;
1036 interrupt-controller;
1037 #interrupt-cells = <2>;
1041 mbigen_usb: intc_usb {
1042 msi-parent = <&p0_its_dsa_a 0x40080>;
1043 interrupt-controller;
1044 #interrupt-cells = <2>;
1048 p0_mbigen_alg_a:interrupt-controller@d0080000 {
1049 compatible = "hisilicon,mbigen-v2";
1050 reg = <0x0 0xd0080000 0x0 0x10000>;
1052 p0_mbigen_sec_a: intc_sec {
1053 msi-parent = <&p0_its_dsa_a 0x40400>;
1054 interrupt-controller;
1055 #interrupt-cells = <2>;
1058 p0_mbigen_smmu_alg_a: intc_smmu_alg {
1059 msi-parent = <&p0_its_dsa_a 0x40b1b>;
1060 interrupt-controller;
1061 #interrupt-cells = <2>;
1065 p0_mbigen_alg_b:interrupt-controller@8,d0080000 {
1066 compatible = "hisilicon,mbigen-v2";
1067 reg = <0x8 0xd0080000 0x0 0x10000>;
1069 p0_mbigen_sec_b: intc_sec {
1070 msi-parent = <&p0_its_dsa_b 0x42400>;
1071 interrupt-controller;
1072 #interrupt-cells = <2>;
1075 p0_mbigen_smmu_alg_b: intc_smmu_alg {
1076 msi-parent = <&p0_its_dsa_b 0x42b1b>;
1077 interrupt-controller;
1078 #interrupt-cells = <2>;
1082 p1_mbigen_alg_a:interrupt-controller@400,d0080000 {
1083 compatible = "hisilicon,mbigen-v2";
1084 reg = <0x400 0xd0080000 0x0 0x10000>;
1086 p1_mbigen_sec_a: intc_sec {
1087 msi-parent = <&p1_its_dsa_a 0x44400>;
1088 interrupt-controller;
1089 #interrupt-cells = <2>;
1092 p1_mbigen_smmu_alg_a: intc_smmu_alg {
1093 msi-parent = <&p1_its_dsa_a 0x44b1b>;
1094 interrupt-controller;
1095 #interrupt-cells = <2>;
1099 p1_mbigen_alg_b:interrupt-controller@408,d0080000 {
1100 compatible = "hisilicon,mbigen-v2";
1101 reg = <0x408 0xd0080000 0x0 0x10000>;
1103 p1_mbigen_sec_b: intc_sec {
1104 msi-parent = <&p1_its_dsa_b 0x46400>;
1105 interrupt-controller;
1106 #interrupt-cells = <2>;
1109 p1_mbigen_smmu_alg_b: intc_smmu_alg {
1110 msi-parent = <&p1_its_dsa_b 0x46b1b>;
1111 interrupt-controller;
1112 #interrupt-cells = <2>;
1116 p0_mbigen_dsa_a: interrupt-controller@c0080000 {
1117 compatible = "hisilicon,mbigen-v2";
1118 reg = <0x0 0xc0080000 0x0 0x10000>;
1120 mbigen_dsaf0: intc_dsaf0 {
1121 msi-parent = <&p0_its_dsa_a 0x40800>;
1122 interrupt-controller;
1123 #interrupt-cells = <2>;
1127 mbigen_dsa_roce: intc-roce {
1128 msi-parent = <&p0_its_dsa_a 0x40B1E>;
1129 interrupt-controller;
1130 #interrupt-cells = <2>;
1134 mbigen_sas0: intc-sas0 {
1135 msi-parent = <&p0_its_dsa_a 0x40900>;
1136 interrupt-controller;
1137 #interrupt-cells = <2>;
1141 mbigen_smmu_dsa: intc_smmu_dsa {
1142 msi-parent = <&p0_its_dsa_a 0x40b20>;
1143 interrupt-controller;
1144 #interrupt-cells = <2>;
1150 * HiSilicon erratum 161010801: This describes the limitation
1151 * of HiSilicon platforms hip06/hip07 to support the SMMUv3
1152 * mappings for PCIe MSI transactions.
1153 * PCIe controller on these platforms has to differentiate the
1154 * MSI payload against other DMA payload and has to modify the
1155 * MSI payload. This makes it difficult for these platforms to
1156 * have a SMMU translation for MSI. In order to workaround this,
1157 * ARM SMMUv3 driver requires a quirk to treat the MSI regions
1158 * separately. Such a quirk is currently missing for DT based
1159 * systems. Hence please make sure that the smmu pcie node on
1160 * hip07 is disabled as this will break the PCIe functionality
1161 * when iommu-map entry is used along with the PCIe node.
1162 * Refer:https://www.spinics.net/lists/arm-kernel/msg602812.html
1165 compatible = "arm,smmu-v3";
1166 reg = <0x0 0xa0040000 0x0 0x20000>;
1169 smmu-cb-memtype = <0x0 0x1>;
1170 hisilicon,broken-prefetch-cmd;
1171 status = "disabled";
1173 p0_smmu_alg_a: smmu_alg@d0040000 {
1174 compatible = "arm,smmu-v3";
1175 reg = <0x0 0xd0040000 0x0 0x20000>;
1176 interrupt-parent = <&p0_mbigen_smmu_alg_a>;
1177 interrupts = <733 1>,
1180 interrupt-names = "eventq", "gerror", "priq";
1183 hisilicon,broken-prefetch-cmd;
1184 /* smmu-cb-memtype = <0x0 0x1>;*/
1186 p0_smmu_alg_b: smmu_alg@8,d0040000 {
1187 compatible = "arm,smmu-v3";
1188 reg = <0x8 0xd0040000 0x0 0x20000>;
1189 interrupt-parent = <&p0_mbigen_smmu_alg_b>;
1190 interrupts = <733 1>,
1193 interrupt-names = "eventq", "gerror", "priq";
1196 hisilicon,broken-prefetch-cmd;
1197 /* smmu-cb-memtype = <0x0 0x1>;*/
1199 p1_smmu_alg_a: smmu_alg@400,d0040000 {
1200 compatible = "arm,smmu-v3";
1201 reg = <0x400 0xd0040000 0x0 0x20000>;
1202 interrupt-parent = <&p1_mbigen_smmu_alg_a>;
1203 interrupts = <733 1>,
1206 interrupt-names = "eventq", "gerror", "priq";
1209 hisilicon,broken-prefetch-cmd;
1210 /* smmu-cb-memtype = <0x0 0x1>;*/
1212 p1_smmu_alg_b: smmu_alg@408,d0040000 {
1213 compatible = "arm,smmu-v3";
1214 reg = <0x408 0xd0040000 0x0 0x20000>;
1215 interrupt-parent = <&p1_mbigen_smmu_alg_b>;
1216 interrupts = <733 1>,
1219 interrupt-names = "eventq", "gerror", "priq";
1222 hisilicon,broken-prefetch-cmd;
1223 /* smmu-cb-memtype = <0x0 0x1>;*/
1227 compatible = "simple-bus";
1228 #address-cells = <2>;
1233 compatible = "hisilicon,hip07-lpc";
1235 #address-cells = <2>;
1236 reg = <0x0 0xa01b0000 0x0 0x1000>;
1239 compatible = "ipmi-bt";
1240 device_type = "ipmi";
1241 reg = <0x01 0xe4 0x04>;
1242 status = "disabled";
1246 uart0: uart@602b0000 {
1247 compatible = "arm,sbsa-uart";
1248 reg = <0x0 0x602b0000 0x0 0x1000>;
1249 interrupt-parent = <&mbigen_uart>;
1250 interrupts = <807 4>;
1251 current-speed = <115200>;
1253 status = "disabled";
1256 usb_ohci: ohci@a7030000 {
1257 compatible = "generic-ohci";
1258 reg = <0x0 0xa7030000 0x0 0x10000>;
1259 interrupt-parent = <&mbigen_usb>;
1260 interrupts = <640 4>;
1262 status = "disabled";
1265 usb_ehci: ehci@a7020000 {
1266 compatible = "generic-ehci";
1267 reg = <0x0 0xa7020000 0x0 0x10000>;
1268 interrupt-parent = <&mbigen_usb>;
1269 interrupts = <641 4>;
1271 status = "disabled";
1274 peri_c_subctrl: sub_ctrl_c@60000000 {
1275 compatible = "hisilicon,peri-subctrl","syscon";
1276 reg = <0 0x60000000 0x0 0x10000>;
1279 dsa_subctrl: dsa_subctrl@c0000000 {
1280 compatible = "hisilicon,dsa-subctrl", "syscon";
1281 reg = <0x0 0xc0000000 0x0 0x10000>;
1284 dsa_cpld: dsa_cpld@78000010 {
1285 compatible = "syscon";
1286 reg = <0x0 0x78000010 0x0 0x100>;
1290 pcie_subctl: pcie_subctl@a0000000 {
1291 compatible = "hisilicon,pcie-sas-subctrl", "syscon";
1292 reg = <0x0 0xa0000000 0x0 0x10000>;
1295 serdes_ctrl: sds_ctrl@c2200000 {
1296 compatible = "syscon";
1297 reg = <0 0xc2200000 0x0 0x80000>;
1301 compatible = "hisilicon,hns-mdio";
1302 reg = <0x0 0x603c0000 0x0 0x1000>;
1303 subctrl-vbase = <&peri_c_subctrl 0x338 0xa38
1305 #address-cells = <1>;
1308 phy0: ethernet-phy@0 {
1309 compatible = "ethernet-phy-ieee802.3-c22";
1313 phy1: ethernet-phy@1 {
1314 compatible = "ethernet-phy-ieee802.3-c22";
1319 dsaf0: dsa@c7000000 {
1320 #address-cells = <1>;
1322 compatible = "hisilicon,hns-dsaf-v2";
1323 mode = "6port-16rss";
1324 reg = <0x0 0xc5000000 0x0 0x890000
1325 0x0 0xc7000000 0x0 0x600000>;
1326 reg-names = "ppe-base", "dsaf-base";
1327 interrupt-parent = <&mbigen_dsaf0>;
1328 subctrl-syscon = <&dsa_subctrl>;
1329 reset-field-offset = <0>;
1331 <576 1>, <577 1>, <578 1>, <579 1>, <580 1>,
1332 <581 1>, <582 1>, <583 1>, <584 1>, <585 1>,
1333 <586 1>, <587 1>, <588 1>, <589 1>, <590 1>,
1334 <591 1>, <592 1>, <593 1>, <594 1>, <595 1>,
1335 <596 1>, <597 1>, <598 1>, <599 1>, <600 1>,
1336 <960 1>, <961 1>, <962 1>, <963 1>, <964 1>,
1337 <965 1>, <966 1>, <967 1>, <968 1>, <969 1>,
1338 <970 1>, <971 1>, <972 1>, <973 1>, <974 1>,
1339 <975 1>, <976 1>, <977 1>, <978 1>, <979 1>,
1340 <980 1>, <981 1>, <982 1>, <983 1>, <984 1>,
1341 <985 1>, <986 1>, <987 1>, <988 1>, <989 1>,
1342 <990 1>, <991 1>, <992 1>, <993 1>, <994 1>,
1343 <995 1>, <996 1>, <997 1>, <998 1>, <999 1>,
1344 <1000 1>, <1001 1>, <1002 1>, <1003 1>, <1004 1>,
1345 <1005 1>, <1006 1>, <1007 1>, <1008 1>, <1009 1>,
1346 <1010 1>, <1011 1>, <1012 1>, <1013 1>, <1014 1>,
1347 <1015 1>, <1016 1>, <1017 1>, <1018 1>, <1019 1>,
1348 <1020 1>, <1021 1>, <1022 1>, <1023 1>, <1024 1>,
1349 <1025 1>, <1026 1>, <1027 1>, <1028 1>, <1029 1>,
1350 <1030 1>, <1031 1>, <1032 1>, <1033 1>, <1034 1>,
1351 <1035 1>, <1036 1>, <1037 1>, <1038 1>, <1039 1>,
1352 <1040 1>, <1041 1>, <1042 1>, <1043 1>, <1044 1>,
1353 <1045 1>, <1046 1>, <1047 1>, <1048 1>, <1049 1>,
1354 <1050 1>, <1051 1>, <1052 1>, <1053 1>, <1054 1>,
1355 <1055 1>, <1056 1>, <1057 1>, <1058 1>, <1059 1>,
1356 <1060 1>, <1061 1>, <1062 1>, <1063 1>, <1064 1>,
1357 <1065 1>, <1066 1>, <1067 1>, <1068 1>, <1069 1>,
1358 <1070 1>, <1071 1>, <1072 1>, <1073 1>, <1074 1>,
1359 <1075 1>, <1076 1>, <1077 1>, <1078 1>, <1079 1>,
1360 <1080 1>, <1081 1>, <1082 1>, <1083 1>, <1084 1>,
1361 <1085 1>, <1086 1>, <1087 1>, <1088 1>, <1089 1>,
1362 <1090 1>, <1091 1>, <1092 1>, <1093 1>, <1094 1>,
1363 <1095 1>, <1096 1>, <1097 1>, <1098 1>, <1099 1>,
1364 <1100 1>, <1101 1>, <1102 1>, <1103 1>, <1104 1>,
1365 <1105 1>, <1106 1>, <1107 1>, <1108 1>, <1109 1>,
1366 <1110 1>, <1111 1>, <1112 1>, <1113 1>, <1114 1>,
1367 <1115 1>, <1116 1>, <1117 1>, <1118 1>, <1119 1>,
1368 <1120 1>, <1121 1>, <1122 1>, <1123 1>, <1124 1>,
1369 <1125 1>, <1126 1>, <1127 1>, <1128 1>, <1129 1>,
1370 <1130 1>, <1131 1>, <1132 1>, <1133 1>, <1134 1>,
1371 <1135 1>, <1136 1>, <1137 1>, <1138 1>, <1139 1>,
1372 <1140 1>, <1141 1>, <1142 1>, <1143 1>, <1144 1>,
1373 <1145 1>, <1146 1>, <1147 1>, <1148 1>, <1149 1>,
1374 <1150 1>, <1151 1>, <1152 1>, <1153 1>, <1154 1>,
1375 <1155 1>, <1156 1>, <1157 1>, <1158 1>, <1159 1>,
1376 <1160 1>, <1161 1>, <1162 1>, <1163 1>, <1164 1>,
1377 <1165 1>, <1166 1>, <1167 1>, <1168 1>, <1169 1>,
1378 <1170 1>, <1171 1>, <1172 1>, <1173 1>, <1174 1>,
1379 <1175 1>, <1176 1>, <1177 1>, <1178 1>, <1179 1>,
1380 <1180 1>, <1181 1>, <1182 1>, <1183 1>, <1184 1>,
1381 <1185 1>, <1186 1>, <1187 1>, <1188 1>, <1189 1>,
1382 <1190 1>, <1191 1>, <1192 1>, <1193 1>, <1194 1>,
1383 <1195 1>, <1196 1>, <1197 1>, <1198 1>, <1199 1>,
1384 <1200 1>, <1201 1>, <1202 1>, <1203 1>, <1204 1>,
1385 <1205 1>, <1206 1>, <1207 1>, <1208 1>, <1209 1>,
1386 <1210 1>, <1211 1>, <1212 1>, <1213 1>, <1214 1>,
1387 <1215 1>, <1216 1>, <1217 1>, <1218 1>, <1219 1>,
1388 <1220 1>, <1221 1>, <1222 1>, <1223 1>, <1224 1>,
1389 <1225 1>, <1226 1>, <1227 1>, <1228 1>, <1229 1>,
1390 <1230 1>, <1231 1>, <1232 1>, <1233 1>, <1234 1>,
1391 <1235 1>, <1236 1>, <1237 1>, <1238 1>, <1239 1>,
1392 <1240 1>, <1241 1>, <1242 1>, <1243 1>, <1244 1>,
1393 <1245 1>, <1246 1>, <1247 1>, <1248 1>, <1249 1>,
1394 <1250 1>, <1251 1>, <1252 1>, <1253 1>, <1254 1>,
1395 <1255 1>, <1256 1>, <1257 1>, <1258 1>, <1259 1>,
1396 <1260 1>, <1261 1>, <1262 1>, <1263 1>, <1264 1>,
1397 <1265 1>, <1266 1>, <1267 1>, <1268 1>, <1269 1>,
1398 <1270 1>, <1271 1>, <1272 1>, <1273 1>, <1274 1>,
1399 <1275 1>, <1276 1>, <1277 1>, <1278 1>, <1279 1>,
1400 <1280 1>, <1281 1>, <1282 1>, <1283 1>, <1284 1>,
1401 <1285 1>, <1286 1>, <1287 1>, <1288 1>, <1289 1>,
1402 <1290 1>, <1291 1>, <1292 1>, <1293 1>, <1294 1>,
1403 <1295 1>, <1296 1>, <1297 1>, <1298 1>, <1299 1>,
1404 <1300 1>, <1301 1>, <1302 1>, <1303 1>, <1304 1>,
1405 <1305 1>, <1306 1>, <1307 1>, <1308 1>, <1309 1>,
1406 <1310 1>, <1311 1>, <1312 1>, <1313 1>, <1314 1>,
1407 <1315 1>, <1316 1>, <1317 1>, <1318 1>, <1319 1>,
1408 <1320 1>, <1321 1>, <1322 1>, <1323 1>, <1324 1>,
1409 <1325 1>, <1326 1>, <1327 1>, <1328 1>, <1329 1>,
1410 <1330 1>, <1331 1>, <1332 1>, <1333 1>, <1334 1>,
1411 <1335 1>, <1336 1>, <1337 1>, <1338 1>, <1339 1>,
1412 <1340 1>, <1341 1>, <1342 1>, <1343 1>;
1415 buf-size = <0x1000>;
1420 serdes-syscon = <&serdes_ctrl>;
1421 cpld-syscon = <&dsa_cpld 0x0>;
1422 port-rst-offset = <0>;
1423 port-mode-offset = <0>;
1424 mc-mac-mask = [ff f0 00 00 00 00];
1425 media-type = "fiber";
1430 serdes-syscon= <&serdes_ctrl>;
1431 cpld-syscon = <&dsa_cpld 0x4>;
1432 port-rst-offset = <1>;
1433 port-mode-offset = <1>;
1434 mc-mac-mask = [ff f0 00 00 00 00];
1435 media-type = "fiber";
1440 phy-handle = <&phy0>;
1441 serdes-syscon= <&serdes_ctrl>;
1442 port-rst-offset = <4>;
1443 port-mode-offset = <2>;
1444 mc-mac-mask = [ff f0 00 00 00 00];
1445 media-type = "copper";
1450 phy-handle = <&phy1>;
1451 serdes-syscon= <&serdes_ctrl>;
1452 port-rst-offset = <5>;
1453 port-mode-offset = <3>;
1454 mc-mac-mask = [ff f0 00 00 00 00];
1455 media-type = "copper";
1460 compatible = "hisilicon,hns-nic-v2";
1461 ae-handle = <&dsaf0>;
1462 port-idx-in-ae = <4>;
1463 local-mac-address = [00 00 00 00 00 00];
1464 status = "disabled";
1469 compatible = "hisilicon,hns-nic-v2";
1470 ae-handle = <&dsaf0>;
1471 port-idx-in-ae = <5>;
1472 local-mac-address = [00 00 00 00 00 00];
1473 status = "disabled";
1478 compatible = "hisilicon,hns-nic-v2";
1479 ae-handle = <&dsaf0>;
1480 port-idx-in-ae = <0>;
1481 local-mac-address = [00 00 00 00 00 00];
1482 status = "disabled";
1487 compatible = "hisilicon,hns-nic-v2";
1488 ae-handle = <&dsaf0>;
1489 port-idx-in-ae = <1>;
1490 local-mac-address = [00 00 00 00 00 00];
1491 status = "disabled";
1495 infiniband@c4000000 {
1496 compatible = "hisilicon,hns-roce-v1";
1497 reg = <0x0 0xc4000000 0x0 0x100000>;
1499 eth-handle = <ð2 ð3 0 0 ð0 ð1>;
1500 dsaf-handle = <&dsaf0>;
1501 node-guid = [00 9A CD 00 00 01 02 03];
1502 #address-cells = <2>;
1504 interrupt-parent = <&mbigen_dsa_roce>;
1505 interrupts = <722 1>,
1540 interrupt-names = "hns-roce-comp-0",
1576 sas0: sas@c3000000 {
1577 compatible = "hisilicon,hip07-sas-v2";
1578 reg = <0 0xc3000000 0 0x10000>;
1579 sas-addr = [50 01 88 20 16 00 00 00];
1580 hisilicon,sas-syscon = <&dsa_subctrl>;
1581 ctrl-reset-reg = <0xa60>;
1582 ctrl-reset-sts-reg = <0x5a30>;
1583 ctrl-clock-ena-reg = <0x338>;
1587 interrupt-parent = <&mbigen_sas0>;
1588 interrupts = <64 4>,<65 4>,<66 4>,<67 4>,<68 4>,
1589 <69 4>,<70 4>,<71 4>,<72 4>,<73 4>,
1590 <74 4>,<75 4>,<76 4>,<77 4>,<78 4>,
1591 <79 4>,<80 4>,<81 4>,<82 4>,<83 4>,
1592 <84 4>,<85 4>,<86 4>,<87 4>,<88 4>,
1593 <89 4>,<90 4>,<91 4>,<92 4>,<93 4>,
1594 <94 4>,<95 4>,<96 4>,<97 4>,<98 4>,
1595 <99 4>,<100 4>,<101 4>,<102 4>,<103 4>,
1596 <104 4>,<105 4>,<106 4>,<107 4>,<108 4>,
1597 <109 4>,<110 4>,<111 4>,<112 4>,<113 4>,
1598 <114 4>,<115 4>,<116 4>,<117 4>,<118 4>,
1599 <119 4>,<120 4>,<121 4>,<122 4>,<123 4>,
1600 <124 4>,<125 4>,<126 4>,<127 4>,<128 4>,
1601 <129 4>,<130 4>,<131 4>,<132 4>,<133 4>,
1602 <134 4>,<135 4>,<136 4>,<137 4>,<138 4>,
1603 <139 4>,<140 4>,<141 4>,<142 4>,<143 4>,
1604 <144 4>,<145 4>,<146 4>,<147 4>,<148 4>,
1605 <149 4>,<150 4>,<151 4>,<152 4>,<153 4>,
1606 <154 4>,<155 4>,<156 4>,<157 4>,<158 4>,
1607 <159 4>,<601 1>,<602 1>,<603 1>,<604 1>,
1608 <605 1>,<606 1>,<607 1>,<608 1>,<609 1>,
1609 <610 1>,<611 1>,<612 1>,<613 1>,<614 1>,
1610 <615 1>,<616 1>,<617 1>,<618 1>,<619 1>,
1611 <620 1>,<621 1>,<622 1>,<623 1>,<624 1>,
1612 <625 1>,<626 1>,<627 1>,<628 1>,<629 1>,
1613 <630 1>,<631 1>,<632 1>;
1614 status = "disabled";
1617 sas1: sas@a2000000 {
1618 compatible = "hisilicon,hip07-sas-v2";
1619 reg = <0 0xa2000000 0 0x10000>;
1620 sas-addr = [50 01 88 20 16 00 00 00];
1621 hisilicon,sas-syscon = <&pcie_subctl>;
1622 hip06-sas-v2-quirk-amt;
1623 ctrl-reset-reg = <0xa18>;
1624 ctrl-reset-sts-reg = <0x5a0c>;
1625 ctrl-clock-ena-reg = <0x318>;
1629 interrupt-parent = <&mbigen_sas1>;
1630 interrupts = <64 4>,<65 4>,<66 4>,<67 4>,<68 4>,
1631 <69 4>,<70 4>,<71 4>,<72 4>,<73 4>,
1632 <74 4>,<75 4>,<76 4>,<77 4>,<78 4>,
1633 <79 4>,<80 4>,<81 4>,<82 4>,<83 4>,
1634 <84 4>,<85 4>,<86 4>,<87 4>,<88 4>,
1635 <89 4>,<90 4>,<91 4>,<92 4>,<93 4>,
1636 <94 4>,<95 4>,<96 4>,<97 4>,<98 4>,
1637 <99 4>,<100 4>,<101 4>,<102 4>,<103 4>,
1638 <104 4>,<105 4>,<106 4>,<107 4>,<108 4>,
1639 <109 4>,<110 4>,<111 4>,<112 4>,<113 4>,
1640 <114 4>,<115 4>,<116 4>,<117 4>,<118 4>,
1641 <119 4>,<120 4>,<121 4>,<122 4>,<123 4>,
1642 <124 4>,<125 4>,<126 4>,<127 4>,<128 4>,
1643 <129 4>,<130 4>,<131 4>,<132 4>,<133 4>,
1644 <134 4>,<135 4>,<136 4>,<137 4>,<138 4>,
1645 <139 4>,<140 4>,<141 4>,<142 4>,<143 4>,
1646 <144 4>,<145 4>,<146 4>,<147 4>,<148 4>,
1647 <149 4>,<150 4>,<151 4>,<152 4>,<153 4>,
1648 <154 4>,<155 4>,<156 4>,<157 4>,<158 4>,
1649 <159 4>,<576 1>,<577 1>,<578 1>,<579 1>,
1650 <580 1>,<581 1>,<582 1>,<583 1>,<584 1>,
1651 <585 1>,<586 1>,<587 1>,<588 1>,<589 1>,
1652 <590 1>,<591 1>,<592 1>,<593 1>,<594 1>,
1653 <595 1>,<596 1>,<597 1>,<598 1>,<599 1>,
1654 <600 1>,<601 1>,<602 1>,<603 1>,<604 1>,
1655 <605 1>,<606 1>,<607 1>;
1656 status = "disabled";
1659 sas2: sas@a3000000 {
1660 compatible = "hisilicon,hip07-sas-v2";
1661 reg = <0 0xa3000000 0 0x10000>;
1662 sas-addr = [50 01 88 20 16 00 00 00];
1663 hisilicon,sas-syscon = <&pcie_subctl>;
1664 ctrl-reset-reg = <0xae0>;
1665 ctrl-reset-sts-reg = <0x5a70>;
1666 ctrl-clock-ena-reg = <0x3a8>;
1670 interrupt-parent = <&mbigen_sas2>;
1671 interrupts = <192 4>,<193 4>,<194 4>,<195 4>,<196 4>,
1672 <197 4>,<198 4>,<199 4>,<200 4>,<201 4>,
1673 <202 4>,<203 4>,<204 4>,<205 4>,<206 4>,
1674 <207 4>,<208 4>,<209 4>,<210 4>,<211 4>,
1675 <212 4>,<213 4>,<214 4>,<215 4>,<216 4>,
1676 <217 4>,<218 4>,<219 4>,<220 4>,<221 4>,
1677 <222 4>,<223 4>,<224 4>,<225 4>,<226 4>,
1678 <227 4>,<228 4>,<229 4>,<230 4>,<231 4>,
1679 <232 4>,<233 4>,<234 4>,<235 4>,<236 4>,
1680 <237 4>,<238 4>,<239 4>,<240 4>,<241 4>,
1681 <242 4>,<243 4>,<244 4>,<245 4>,<246 4>,
1682 <247 4>,<248 4>,<249 4>,<250 4>,<251 4>,
1683 <252 4>,<253 4>,<254 4>,<255 4>,<256 4>,
1684 <257 4>,<258 4>,<259 4>,<260 4>,<261 4>,
1685 <262 4>,<263 4>,<264 4>,<265 4>,<266 4>,
1686 <267 4>,<268 4>,<269 4>,<270 4>,<271 4>,
1687 <272 4>,<273 4>,<274 4>,<275 4>,<276 4>,
1688 <277 4>,<278 4>,<279 4>,<280 4>,<281 4>,
1689 <282 4>,<283 4>,<284 4>,<285 4>,<286 4>,
1690 <287 4>,<608 1>,<609 1>,<610 1>,<611 1>,
1691 <612 1>,<613 1>,<614 1>,<615 1>,<616 1>,
1692 <617 1>,<618 1>,<619 1>,<620 1>,<621 1>,
1693 <622 1>,<623 1>,<624 1>,<625 1>,<626 1>,
1694 <627 1>,<628 1>,<629 1>,<630 1>,<631 1>,
1695 <632 1>,<633 1>,<634 1>,<635 1>,<636 1>,
1696 <637 1>,<638 1>,<639 1>;
1697 status = "disabled";
1700 p0_pcie2_a: pcie@a00a0000 {
1701 compatible = "hisilicon,hip07-pcie-ecam";
1702 reg = <0 0xaf800000 0 0x800000>,
1703 <0 0xa00a0000 0 0x10000>;
1704 bus-range = <0xf8 0xff>;
1705 msi-map = <0xf800 &p0_its_dsa_a 0xf800 0x800>;
1706 msi-map-mask = <0xffff>;
1707 #address-cells = <3>;
1709 device_type = "pci";
1711 ranges = <0x02000000 0 0xa8000000 0 0xa8000000 0 0x77f0000
1712 0x01000000 0 0 0 0xaf7f0000 0 0x10000>;
1713 #interrupt-cells = <1>;
1714 interrupt-map-mask = <0xf800 0 0 7>;
1715 interrupt-map = <0x0 0 0 1 &mbigen_pcie2_a 671 4
1716 0x0 0 0 2 &mbigen_pcie2_a 671 4
1717 0x0 0 0 3 &mbigen_pcie2_a 671 4
1718 0x0 0 0 4 &mbigen_pcie2_a 671 4>;
1719 status = "disabled";
1721 p0_sec_a: crypto@d2000000 {
1722 compatible = "hisilicon,hip07-sec";
1723 reg = <0x0 0xd0000000 0x0 0x10000
1724 0x0 0xd2000000 0x0 0x10000
1725 0x0 0xd2010000 0x0 0x10000
1726 0x0 0xd2020000 0x0 0x10000
1727 0x0 0xd2030000 0x0 0x10000
1728 0x0 0xd2040000 0x0 0x10000
1729 0x0 0xd2050000 0x0 0x10000
1730 0x0 0xd2060000 0x0 0x10000
1731 0x0 0xd2070000 0x0 0x10000
1732 0x0 0xd2080000 0x0 0x10000
1733 0x0 0xd2090000 0x0 0x10000
1734 0x0 0xd20a0000 0x0 0x10000
1735 0x0 0xd20b0000 0x0 0x10000
1736 0x0 0xd20c0000 0x0 0x10000
1737 0x0 0xd20d0000 0x0 0x10000
1738 0x0 0xd20e0000 0x0 0x10000
1739 0x0 0xd20f0000 0x0 0x10000
1740 0x0 0xd2100000 0x0 0x10000>;
1741 interrupt-parent = <&p0_mbigen_sec_a>;
1742 iommus = <&p0_smmu_alg_a 0x600>;
1744 interrupts = <576 4>,
1762 p0_sec_b: crypto@8,d2000000 {
1763 compatible = "hisilicon,hip07-sec";
1764 reg = <0x8 0xd0000000 0x0 0x10000
1765 0x8 0xd2000000 0x0 0x10000
1766 0x8 0xd2010000 0x0 0x10000
1767 0x8 0xd2020000 0x0 0x10000
1768 0x8 0xd2030000 0x0 0x10000
1769 0x8 0xd2040000 0x0 0x10000
1770 0x8 0xd2050000 0x0 0x10000
1771 0x8 0xd2060000 0x0 0x10000
1772 0x8 0xd2070000 0x0 0x10000
1773 0x8 0xd2080000 0x0 0x10000
1774 0x8 0xd2090000 0x0 0x10000
1775 0x8 0xd20a0000 0x0 0x10000
1776 0x8 0xd20b0000 0x0 0x10000
1777 0x8 0xd20c0000 0x0 0x10000
1778 0x8 0xd20d0000 0x0 0x10000
1779 0x8 0xd20e0000 0x0 0x10000
1780 0x8 0xd20f0000 0x0 0x10000
1781 0x8 0xd2100000 0x0 0x10000>;
1782 interrupt-parent = <&p0_mbigen_sec_b>;
1783 iommus = <&p0_smmu_alg_b 0x600>;
1785 interrupts = <576 4>,
1803 p1_sec_a: crypto@400,d2000000 {
1804 compatible = "hisilicon,hip07-sec";
1805 reg = <0x400 0xd0000000 0x0 0x10000
1806 0x400 0xd2000000 0x0 0x10000
1807 0x400 0xd2010000 0x0 0x10000
1808 0x400 0xd2020000 0x0 0x10000
1809 0x400 0xd2030000 0x0 0x10000
1810 0x400 0xd2040000 0x0 0x10000
1811 0x400 0xd2050000 0x0 0x10000
1812 0x400 0xd2060000 0x0 0x10000
1813 0x400 0xd2070000 0x0 0x10000
1814 0x400 0xd2080000 0x0 0x10000
1815 0x400 0xd2090000 0x0 0x10000
1816 0x400 0xd20a0000 0x0 0x10000
1817 0x400 0xd20b0000 0x0 0x10000
1818 0x400 0xd20c0000 0x0 0x10000
1819 0x400 0xd20d0000 0x0 0x10000
1820 0x400 0xd20e0000 0x0 0x10000
1821 0x400 0xd20f0000 0x0 0x10000
1822 0x400 0xd2100000 0x0 0x10000>;
1823 interrupt-parent = <&p1_mbigen_sec_a>;
1824 iommus = <&p1_smmu_alg_a 0x600>;
1826 interrupts = <576 4>,
1844 p1_sec_b: crypto@408,d2000000 {
1845 compatible = "hisilicon,hip07-sec";
1846 reg = <0x408 0xd0000000 0x0 0x10000
1847 0x408 0xd2000000 0x0 0x10000
1848 0x408 0xd2010000 0x0 0x10000
1849 0x408 0xd2020000 0x0 0x10000
1850 0x408 0xd2030000 0x0 0x10000
1851 0x408 0xd2040000 0x0 0x10000
1852 0x408 0xd2050000 0x0 0x10000
1853 0x408 0xd2060000 0x0 0x10000
1854 0x408 0xd2070000 0x0 0x10000
1855 0x408 0xd2080000 0x0 0x10000
1856 0x408 0xd2090000 0x0 0x10000
1857 0x408 0xd20a0000 0x0 0x10000
1858 0x408 0xd20b0000 0x0 0x10000
1859 0x408 0xd20c0000 0x0 0x10000
1860 0x408 0xd20d0000 0x0 0x10000
1861 0x408 0xd20e0000 0x0 0x10000
1862 0x408 0xd20f0000 0x0 0x10000
1863 0x408 0xd2100000 0x0 0x10000>;
1864 interrupt-parent = <&p1_mbigen_sec_b>;
1865 iommus = <&p1_smmu_alg_b 0x600>;
1867 interrupts = <576 4>,