Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: GPL-2.0
0002 
0003 / {
0004         pch: bus@10000000 {
0005                 compatible = "simple-bus";
0006                 #address-cells = <2>;
0007                 #size-cells = <2>;
0008                 ranges = <0 0x10000000 0 0x10000000 0 0x10000000 /* PIO & CONF & APB */
0009                                 0 0x20000000 0 0x20000000 0 0x10000000
0010                                 0 0x40000000 0 0x40000000 0 0x40000000 /* PCI MEM */
0011                                 0xe00 0x00000000 0xe00 0x00000000 0x100 0x0000000>;
0012 
0013                 pic: interrupt-controller@10000000 {
0014                         compatible = "loongson,pch-pic-1.0";
0015                         reg = <0 0x10000000 0 0x400>;
0016                         interrupt-controller;
0017                         interrupt-parent = <&htvec>;
0018                         loongson,pic-base-vec = <0>;
0019                         #interrupt-cells = <2>;
0020                 };
0021 
0022                 ls7a_uart0: serial@10080000 {
0023                         compatible = "ns16550a";
0024                         reg = <0 0x10080000 0 0x100>;
0025                         clock-frequency = <50000000>;
0026                         interrupt-parent = <&pic>;
0027                         interrupts = <8 IRQ_TYPE_LEVEL_HIGH>;
0028                         no-loopback-test;
0029                 };
0030 
0031                 ls7a_uart1: serial@10080100 {
0032                         status = "disabled";
0033                         compatible = "ns16550a";
0034                         reg = <0 0x10080100 0 0x100>;
0035                         clock-frequency = <50000000>;
0036                         interrupt-parent = <&pic>;
0037                         interrupts = <8 IRQ_TYPE_LEVEL_HIGH>;
0038                         no-loopback-test;
0039                 };
0040 
0041                 ls7a_uart2: serial@10080200 {
0042                         status = "disabled";
0043                         compatible = "ns16550a";
0044                         reg = <0 0x10080200 0 0x100>;
0045                         clock-frequency = <50000000>;
0046                         interrupt-parent = <&pic>;
0047                         interrupts = <8 IRQ_TYPE_LEVEL_HIGH>;
0048                         no-loopback-test;
0049                 };
0050 
0051                 ls7a_uart3: serial@10080300 {
0052                         status = "disabled";
0053                         compatible = "ns16550a";
0054                         reg = <0 0x10080300 0 0x100>;
0055                         clock-frequency = <50000000>;
0056                         interrupt-parent = <&pic>;
0057                         interrupts = <8 IRQ_TYPE_LEVEL_HIGH>;
0058                         no-loopback-test;
0059                 };
0060 
0061                 pci@1a000000 {
0062                         compatible = "loongson,ls7a-pci";
0063                         device_type = "pci";
0064                         #address-cells = <3>;
0065                         #size-cells = <2>;
0066                         #interrupt-cells = <2>;
0067                         msi-parent = <&msi>;
0068 
0069                         reg = <0 0x1a000000 0 0x02000000>,
0070                                 <0xefe 0x00000000 0 0x20000000>;
0071 
0072                         ranges = <0x01000000 0x0 0x00020000 0x0 0x18020000 0x0 0x00020000>,
0073                                  <0x02000000 0x0 0x40000000 0x0 0x40000000 0x0 0x40000000>;
0074 
0075                         ohci@4,0 {
0076                                 compatible = "pci0014,7a24.0",
0077                                                    "pci0014,7a24",
0078                                                    "pciclass0c0310",
0079                                                    "pciclass0c03";
0080 
0081                                 reg = <0x2000 0x0 0x0 0x0 0x0>;
0082                                 interrupts = <49 IRQ_TYPE_LEVEL_HIGH>;
0083                                 interrupt-parent = <&pic>;
0084                         };
0085 
0086                         ehci@4,1 {
0087                                 compatible = "pci0014,7a14.0",
0088                                                    "pci0014,7a14",
0089                                                    "pciclass0c0320",
0090                                                    "pciclass0c03";
0091 
0092                                 reg = <0x2100 0x0 0x0 0x0 0x0>;
0093                                 interrupts = <48 IRQ_TYPE_LEVEL_HIGH>;
0094                                 interrupt-parent = <&pic>;
0095                         };
0096 
0097                         ohci@5,0 {
0098                                 compatible = "pci0014,7a24.0",
0099                                                    "pci0014,7a24",
0100                                                    "pciclass0c0310",
0101                                                    "pciclass0c03";
0102 
0103                                 reg = <0x2800 0x0 0x0 0x0 0x0>;
0104                                 interrupts = <51 IRQ_TYPE_LEVEL_HIGH>;
0105                                 interrupt-parent = <&pic>;
0106                         };
0107 
0108                         ehci@5,1 {
0109                                 compatible = "pci0014,7a14.0",
0110                                                    "pci0014,7a14",
0111                                                    "pciclass0c0320",
0112                                                    "pciclass0c03";
0113 
0114                                 reg = <0x2900 0x0 0x0 0x0 0x0>;
0115                                 interrupts = <50 IRQ_TYPE_LEVEL_HIGH>;
0116                                 interrupt-parent = <&pic>;
0117                         };
0118 
0119                         sata@8,0 {
0120                                 compatible = "pci0014,7a08.0",
0121                                                    "pci0014,7a08",
0122                                                    "pciclass010601",
0123                                                    "pciclass0106";
0124 
0125                                 reg = <0x4000 0x0 0x0 0x0 0x0>;
0126                                 interrupts = <16 IRQ_TYPE_LEVEL_HIGH>;
0127                                 interrupt-parent = <&pic>;
0128                         };
0129 
0130                         sata@8,1 {
0131                                 compatible = "pci0014,7a08.0",
0132                                                    "pci0014,7a08",
0133                                                    "pciclass010601",
0134                                                    "pciclass0106";
0135 
0136                                 reg = <0x4100 0x0 0x0 0x0 0x0>;
0137                                 interrupts = <17 IRQ_TYPE_LEVEL_HIGH>;
0138                                 interrupt-parent = <&pic>;
0139                         };
0140 
0141                         sata@8,2 {
0142                                 compatible = "pci0014,7a08.0",
0143                                                    "pci0014,7a08",
0144                                                    "pciclass010601",
0145                                                    "pciclass0106";
0146 
0147                                 reg = <0x4200 0x0 0x0 0x0 0x0>;
0148                                 interrupts = <18 IRQ_TYPE_LEVEL_HIGH>;
0149                                 interrupt-parent = <&pic>;
0150                         };
0151 
0152                         gpu@6,0 {
0153                                 compatible = "pci0014,7a15.0",
0154                                                    "pci0014,7a15",
0155                                                    "pciclass030200",
0156                                                    "pciclass0302";
0157 
0158                                 reg = <0x3000 0x0 0x0 0x0 0x0>;
0159                                 interrupts = <29 IRQ_TYPE_LEVEL_HIGH>;
0160                                 interrupt-parent = <&pic>;
0161                         };
0162 
0163                         dc@6,1 {
0164                                 compatible = "pci0014,7a06.0",
0165                                                    "pci0014,7a06",
0166                                                    "pciclass030000",
0167                                                    "pciclass0300";
0168 
0169                                 reg = <0x3100 0x0 0x0 0x0 0x0>;
0170                                 interrupts = <28 IRQ_TYPE_LEVEL_HIGH>;
0171                                 interrupt-parent = <&pic>;
0172                         };
0173 
0174                         hda@7,0 {
0175                                 compatible = "pci0014,7a07.0",
0176                                                    "pci0014,7a07",
0177                                                    "pciclass040300",
0178                                                    "pciclass0403";
0179 
0180                                 reg = <0x3800 0x0 0x0 0x0 0x0>;
0181                                 interrupts = <58 IRQ_TYPE_LEVEL_HIGH>;
0182                                 interrupt-parent = <&pic>;
0183                         };
0184 
0185                         gmac@3,0 {
0186                                 compatible = "pci0014,7a03.0",
0187                                                    "pci0014,7a03",
0188                                                    "pciclass020000",
0189                                                    "pciclass0200",
0190                                                    "loongson, pci-gmac";
0191 
0192                                 reg = <0x1800 0x0 0x0 0x0 0x0>;
0193                                 interrupts = <12 IRQ_TYPE_LEVEL_HIGH>,
0194                                              <13 IRQ_TYPE_LEVEL_HIGH>;
0195                                 interrupt-names = "macirq", "eth_lpi";
0196                                 interrupt-parent = <&pic>;
0197                                 phy-mode = "rgmii";
0198                                 mdio {
0199                                         #address-cells = <1>;
0200                                         #size-cells = <0>;
0201                                         compatible = "snps,dwmac-mdio";
0202                                         phy0: ethernet-phy@0 {
0203                                                 reg = <0>;
0204                                         };
0205                                 };
0206                         };
0207 
0208                         gmac@3,1 {
0209                                 compatible = "pci0014,7a03.0",
0210                                                    "pci0014,7a03",
0211                                                    "pciclass020000",
0212                                                    "pciclass0200",
0213                                                    "loongson, pci-gmac";
0214 
0215                                 reg = <0x1900 0x0 0x0 0x0 0x0>;
0216                                 interrupts = <14 IRQ_TYPE_LEVEL_HIGH>,
0217                                              <15 IRQ_TYPE_LEVEL_HIGH>;
0218                                 interrupt-names = "macirq", "eth_lpi";
0219                                 interrupt-parent = <&pic>;
0220                                 phy-mode = "rgmii";
0221                                 mdio {
0222                                         #address-cells = <1>;
0223                                         #size-cells = <0>;
0224                                         compatible = "snps,dwmac-mdio";
0225                                         phy1: ethernet-phy@1 {
0226                                                 reg = <0>;
0227                                         };
0228                                 };
0229                         };
0230 
0231                         pci_bridge@9,0 {
0232                                 compatible = "pci0014,7a19.1",
0233                                                    "pci0014,7a19",
0234                                                    "pciclass060400",
0235                                                    "pciclass0604";
0236 
0237                                 reg = <0x4800 0x0 0x0 0x0 0x0>;
0238                                 interrupts = <32 IRQ_TYPE_LEVEL_HIGH>;
0239                                 interrupt-parent = <&pic>;
0240 
0241                                 #interrupt-cells = <1>;
0242                                 interrupt-map-mask = <0 0 0 0>;
0243                                 interrupt-map = <0 0 0 0 &pic 32 IRQ_TYPE_LEVEL_HIGH>;
0244                         };
0245 
0246                         pci_bridge@a,0 {
0247                                 compatible = "pci0014,7a09.1",
0248                                                    "pci0014,7a09",
0249                                                    "pciclass060400",
0250                                                    "pciclass0604";
0251 
0252                                 reg = <0x5000 0x0 0x0 0x0 0x0>;
0253                                 interrupts = <33 IRQ_TYPE_LEVEL_HIGH>;
0254                                 interrupt-parent = <&pic>;
0255 
0256                                 #interrupt-cells = <1>;
0257                                 interrupt-map-mask = <0 0 0 0>;
0258                                 interrupt-map = <0 0 0 0 &pic 33 IRQ_TYPE_LEVEL_HIGH>;
0259                         };
0260 
0261                         pci_bridge@b,0 {
0262                                 compatible = "pci0014,7a09.1",
0263                                                    "pci0014,7a09",
0264                                                    "pciclass060400",
0265                                                    "pciclass0604";
0266 
0267                                 reg = <0x5800 0x0 0x0 0x0 0x0>;
0268                                 interrupts = <34 IRQ_TYPE_LEVEL_HIGH>;
0269                                 interrupt-parent = <&pic>;
0270 
0271                                 #interrupt-cells = <1>;
0272                                 interrupt-map-mask = <0 0 0 0>;
0273                                 interrupt-map = <0 0 0 0 &pic 34 IRQ_TYPE_LEVEL_HIGH>;
0274                         };
0275 
0276                         pci_bridge@c,0 {
0277                                 compatible = "pci0014,7a09.1",
0278                                                    "pci0014,7a09",
0279                                                    "pciclass060400",
0280                                                    "pciclass0604";
0281 
0282                                 reg = <0x6000 0x0 0x0 0x0 0x0>;
0283                                 interrupts = <35 IRQ_TYPE_LEVEL_HIGH>;
0284                                 interrupt-parent = <&pic>;
0285 
0286                                 #interrupt-cells = <1>;
0287                                 interrupt-map-mask = <0 0 0 0>;
0288                                 interrupt-map = <0 0 0 0 &pic 35 IRQ_TYPE_LEVEL_HIGH>;
0289                         };
0290 
0291                         pci_bridge@d,0 {
0292                                 compatible = "pci0014,7a19.1",
0293                                                    "pci0014,7a19",
0294                                                    "pciclass060400",
0295                                                    "pciclass0604";
0296 
0297                                 reg = <0x6800 0x0 0x0 0x0 0x0>;
0298                                 interrupts = <36 IRQ_TYPE_LEVEL_HIGH>;
0299                                 interrupt-parent = <&pic>;
0300 
0301                                 #interrupt-cells = <1>;
0302                                 interrupt-map-mask = <0 0 0 0>;
0303                                 interrupt-map = <0 0 0 0 &pic 36 IRQ_TYPE_LEVEL_HIGH>;
0304                         };
0305 
0306                         pci_bridge@e,0 {
0307                                 compatible = "pci0014,7a09.1",
0308                                                    "pci0014,7a09",
0309                                                    "pciclass060400",
0310                                                    "pciclass0604";
0311 
0312                                 reg = <0x7000 0x0 0x0 0x0 0x0>;
0313                                 interrupts = <37 IRQ_TYPE_LEVEL_HIGH>;
0314                                 interrupt-parent = <&pic>;
0315 
0316                                 #interrupt-cells = <1>;
0317                                 interrupt-map-mask = <0 0 0 0>;
0318                                 interrupt-map = <0 0 0 0 &pic 37 IRQ_TYPE_LEVEL_HIGH>;
0319                         };
0320 
0321                         pci_bridge@f,0 {
0322                                 compatible = "pci0014,7a29.1",
0323                                                    "pci0014,7a29",
0324                                                    "pciclass060400",
0325                                                    "pciclass0604";
0326 
0327                                 reg = <0x7800 0x0 0x0 0x0 0x0>;
0328                                 interrupts = <40 IRQ_TYPE_LEVEL_HIGH>;
0329                                 interrupt-parent = <&pic>;
0330 
0331                                 #interrupt-cells = <1>;
0332                                 interrupt-map-mask = <0 0 0 0>;
0333                                 interrupt-map = <0 0 0 0 &pic 40 IRQ_TYPE_LEVEL_HIGH>;
0334                         };
0335 
0336                         pci_bridge@10,0 {
0337                                 compatible = "pci0014,7a19.1",
0338                                                    "pci0014,7a19",
0339                                                    "pciclass060400",
0340                                                    "pciclass0604";
0341 
0342                                 reg = <0x8000 0x0 0x0 0x0 0x0>;
0343                                 interrupts = <41 IRQ_TYPE_LEVEL_HIGH>;
0344                                 interrupt-parent = <&pic>;
0345 
0346                                 #interrupt-cells = <1>;
0347                                 interrupt-map-mask = <0 0 0 0>;
0348                                 interrupt-map = <0 0 0 0 &pic 41 IRQ_TYPE_LEVEL_HIGH>;
0349                         };
0350 
0351                         pci_bridge@11,0 {
0352                                 compatible = "pci0014,7a29.1",
0353                                                    "pci0014,7a29",
0354                                                    "pciclass060400",
0355                                                    "pciclass0604";
0356 
0357                                 reg = <0x8800 0x0 0x0 0x0 0x0>;
0358                                 interrupts = <42 IRQ_TYPE_LEVEL_HIGH>;
0359                                 interrupt-parent = <&pic>;
0360 
0361                                 #interrupt-cells = <1>;
0362                                 interrupt-map-mask = <0 0 0 0>;
0363                                 interrupt-map = <0 0 0 0 &pic 42 IRQ_TYPE_LEVEL_HIGH>;
0364                         };
0365 
0366                         pci_bridge@12,0 {
0367                                 compatible = "pci0014,7a19.1",
0368                                                    "pci0014,7a19",
0369                                                    "pciclass060400",
0370                                                    "pciclass0604";
0371 
0372                                 reg = <0x9000 0x0 0x0 0x0 0x0>;
0373                                 interrupts = <43 IRQ_TYPE_LEVEL_HIGH>;
0374                                 interrupt-parent = <&pic>;
0375 
0376                                 #interrupt-cells = <1>;
0377                                 interrupt-map-mask = <0 0 0 0>;
0378                                 interrupt-map = <0 0 0 0 &pic 43 IRQ_TYPE_LEVEL_HIGH>;
0379                         };
0380 
0381                         pci_bridge@13,0 {
0382                                 compatible = "pci0014,7a29.1",
0383                                                    "pci0014,7a29",
0384                                                    "pciclass060400",
0385                                                    "pciclass0604";
0386 
0387                                 reg = <0x9800 0x0 0x0 0x0 0x0>;
0388                                 interrupts = <38 IRQ_TYPE_LEVEL_HIGH>;
0389                                 interrupt-parent = <&pic>;
0390 
0391                                 #interrupt-cells = <1>;
0392                                 interrupt-map-mask = <0 0 0 0>;
0393                                 interrupt-map = <0 0 0 0 &pic 38 IRQ_TYPE_LEVEL_HIGH>;
0394                         };
0395 
0396                         pci_bridge@14,0 {
0397                                 compatible = "pci0014,7a19.1",
0398                                                    "pci0014,7a19",
0399                                                    "pciclass060400",
0400                                                    "pciclass0604";
0401 
0402                                 reg = <0xa000 0x0 0x0 0x0 0x0>;
0403                                 interrupts = <39 IRQ_TYPE_LEVEL_HIGH>;
0404                                 interrupt-parent = <&pic>;
0405 
0406                                 #interrupt-cells = <1>;
0407                                 interrupt-map-mask = <0 0 0 0>;
0408                                 interrupt-map = <0 0 0 0 &pic 39 IRQ_TYPE_LEVEL_HIGH>;
0409                         };
0410                 };
0411 
0412                 isa@18000000 {
0413                         compatible = "isa";
0414                         #address-cells = <2>;
0415                         #size-cells = <1>;
0416                         ranges = <1 0 0 0x18000000 0x20000>;
0417                 };
0418         };
0419 };