linux/arch/mips/boot/dts/loongson/ls7a-pch.dtsi
<<
>>
Prefs
   1// SPDX-License-Identifier: GPL-2.0
   2
   3/ {
   4        pch: bus@10000000 {
   5                compatible = "simple-bus";
   6                #address-cells = <2>;
   7                #size-cells = <2>;
   8                ranges = <0 0x10000000 0 0x10000000 0 0x10000000 /* PIO & CONF & APB */
   9                                0 0x20000000 0 0x20000000 0 0x10000000
  10                                0 0x40000000 0 0x40000000 0 0x40000000 /* PCI MEM */
  11                                0xe00 0x00000000 0xe00 0x00000000 0x100 0x0000000>;
  12
  13                pic: interrupt-controller@10000000 {
  14                        compatible = "loongson,pch-pic-1.0";
  15                        reg = <0 0x10000000 0 0x400>;
  16                        interrupt-controller;
  17                        interrupt-parent = <&htvec>;
  18                        loongson,pic-base-vec = <0>;
  19                        #interrupt-cells = <2>;
  20                };
  21
  22                ls7a_uart0: serial@10080000 {
  23                        compatible = "ns16550a";
  24                        reg = <0 0x10080000 0 0x100>;
  25                        clock-frequency = <50000000>;
  26                        interrupt-parent = <&pic>;
  27                        interrupts = <8 IRQ_TYPE_LEVEL_HIGH>;
  28                        no-loopback-test;
  29                };
  30
  31                ls7a_uart1: serial@10080100 {
  32                        status = "disabled";
  33                        compatible = "ns16550a";
  34                        reg = <0 0x10080100 0 0x100>;
  35                        clock-frequency = <50000000>;
  36                        interrupt-parent = <&pic>;
  37                        interrupts = <8 IRQ_TYPE_LEVEL_HIGH>;
  38                        no-loopback-test;
  39                };
  40
  41                ls7a_uart2: serial@10080200 {
  42                        status = "disabled";
  43                        compatible = "ns16550a";
  44                        reg = <0 0x10080200 0 0x100>;
  45                        clock-frequency = <50000000>;
  46                        interrupt-parent = <&pic>;
  47                        interrupts = <8 IRQ_TYPE_LEVEL_HIGH>;
  48                        no-loopback-test;
  49                };
  50
  51                ls7a_uart3: serial@10080300 {
  52                        status = "disabled";
  53                        compatible = "ns16550a";
  54                        reg = <0 0x10080300 0 0x100>;
  55                        clock-frequency = <50000000>;
  56                        interrupt-parent = <&pic>;
  57                        interrupts = <8 IRQ_TYPE_LEVEL_HIGH>;
  58                        no-loopback-test;
  59                };
  60
  61                pci@1a000000 {
  62                        compatible = "loongson,ls7a-pci";
  63                        device_type = "pci";
  64                        #address-cells = <3>;
  65                        #size-cells = <2>;
  66                        #interrupt-cells = <2>;
  67                        msi-parent = <&msi>;
  68
  69                        reg = <0 0x1a000000 0 0x02000000>,
  70                                <0xefe 0x00000000 0 0x20000000>;
  71
  72                        ranges = <0x01000000 0x0 0x00020000 0x0 0x18020000 0x0 0x00020000>,
  73                                 <0x02000000 0x0 0x40000000 0x0 0x40000000 0x0 0x40000000>;
  74
  75                        ohci@4,0 {
  76                                compatible = "pci0014,7a24.0",
  77                                                   "pci0014,7a24",
  78                                                   "pciclass0c0310",
  79                                                   "pciclass0c03";
  80
  81                                reg = <0x2000 0x0 0x0 0x0 0x0>;
  82                                interrupts = <49 IRQ_TYPE_LEVEL_HIGH>;
  83                                interrupt-parent = <&pic>;
  84                        };
  85
  86                        ehci@4,1 {
  87                                compatible = "pci0014,7a14.0",
  88                                                   "pci0014,7a14",
  89                                                   "pciclass0c0320",
  90                                                   "pciclass0c03";
  91
  92                                reg = <0x2100 0x0 0x0 0x0 0x0>;
  93                                interrupts = <48 IRQ_TYPE_LEVEL_HIGH>;
  94                                interrupt-parent = <&pic>;
  95                        };
  96
  97                        ohci@5,0 {
  98                                compatible = "pci0014,7a24.0",
  99                                                   "pci0014,7a24",
 100                                                   "pciclass0c0310",
 101                                                   "pciclass0c03";
 102
 103                                reg = <0x2800 0x0 0x0 0x0 0x0>;
 104                                interrupts = <51 IRQ_TYPE_LEVEL_HIGH>;
 105                                interrupt-parent = <&pic>;
 106                        };
 107
 108                        ehci@5,1 {
 109                                compatible = "pci0014,7a14.0",
 110                                                   "pci0014,7a14",
 111                                                   "pciclass0c0320",
 112                                                   "pciclass0c03";
 113
 114                                reg = <0x2900 0x0 0x0 0x0 0x0>;
 115                                interrupts = <50 IRQ_TYPE_LEVEL_HIGH>;
 116                                interrupt-parent = <&pic>;
 117                        };
 118
 119                        sata@8,0 {
 120                                compatible = "pci0014,7a08.0",
 121                                                   "pci0014,7a08",
 122                                                   "pciclass010601",
 123                                                   "pciclass0106";
 124
 125                                reg = <0x4000 0x0 0x0 0x0 0x0>;
 126                                interrupts = <16 IRQ_TYPE_LEVEL_HIGH>;
 127                                interrupt-parent = <&pic>;
 128                        };
 129
 130                        sata@8,1 {
 131                                compatible = "pci0014,7a08.0",
 132                                                   "pci0014,7a08",
 133                                                   "pciclass010601",
 134                                                   "pciclass0106";
 135
 136                                reg = <0x4100 0x0 0x0 0x0 0x0>;
 137                                interrupts = <17 IRQ_TYPE_LEVEL_HIGH>;
 138                                interrupt-parent = <&pic>;
 139                        };
 140
 141                        sata@8,2 {
 142                                compatible = "pci0014,7a08.0",
 143                                                   "pci0014,7a08",
 144                                                   "pciclass010601",
 145                                                   "pciclass0106";
 146
 147                                reg = <0x4200 0x0 0x0 0x0 0x0>;
 148                                interrupts = <18 IRQ_TYPE_LEVEL_HIGH>;
 149                                interrupt-parent = <&pic>;
 150                        };
 151
 152                        gpu@6,0 {
 153                                compatible = "pci0014,7a15.0",
 154                                                   "pci0014,7a15",
 155                                                   "pciclass030200",
 156                                                   "pciclass0302";
 157
 158                                reg = <0x3000 0x0 0x0 0x0 0x0>;
 159                                interrupts = <29 IRQ_TYPE_LEVEL_HIGH>;
 160                                interrupt-parent = <&pic>;
 161                        };
 162
 163                        dc@6,1 {
 164                                compatible = "pci0014,7a06.0",
 165                                                   "pci0014,7a06",
 166                                                   "pciclass030000",
 167                                                   "pciclass0300";
 168
 169                                reg = <0x3100 0x0 0x0 0x0 0x0>;
 170                                interrupts = <28 IRQ_TYPE_LEVEL_HIGH>;
 171                                interrupt-parent = <&pic>;
 172                        };
 173
 174                        hda@7,0 {
 175                                compatible = "pci0014,7a07.0",
 176                                                   "pci0014,7a07",
 177                                                   "pciclass040300",
 178                                                   "pciclass0403";
 179
 180                                reg = <0x3800 0x0 0x0 0x0 0x0>;
 181                                interrupts = <58 IRQ_TYPE_LEVEL_HIGH>;
 182                                interrupt-parent = <&pic>;
 183                        };
 184
 185                        gmac@3,0 {
 186                                compatible = "pci0014,7a03.0",
 187                                                   "pci0014,7a03",
 188                                                   "pciclass020000",
 189                                                   "pciclass0200",
 190                                                   "loongson, pci-gmac";
 191
 192                                reg = <0x1800 0x0 0x0 0x0 0x0>;
 193                                interrupts = <12 IRQ_TYPE_LEVEL_HIGH>,
 194                                             <13 IRQ_TYPE_LEVEL_HIGH>;
 195                                interrupt-names = "macirq", "eth_lpi";
 196                                interrupt-parent = <&pic>;
 197                                phy-mode = "rgmii";
 198                                mdio {
 199                                        #address-cells = <1>;
 200                                        #size-cells = <0>;
 201                                        compatible = "snps,dwmac-mdio";
 202                                        phy0: ethernet-phy@0 {
 203                                                reg = <0>;
 204                                        };
 205                                };
 206                        };
 207
 208                        gmac@3,1 {
 209                                compatible = "pci0014,7a03.0",
 210                                                   "pci0014,7a03",
 211                                                   "pciclass020000",
 212                                                   "pciclass0200",
 213                                                   "loongson, pci-gmac";
 214
 215                                reg = <0x1900 0x0 0x0 0x0 0x0>;
 216                                interrupts = <14 IRQ_TYPE_LEVEL_HIGH>,
 217                                             <15 IRQ_TYPE_LEVEL_HIGH>;
 218                                interrupt-names = "macirq", "eth_lpi";
 219                                interrupt-parent = <&pic>;
 220                                phy-mode = "rgmii";
 221                                mdio {
 222                                        #address-cells = <1>;
 223                                        #size-cells = <0>;
 224                                        compatible = "snps,dwmac-mdio";
 225                                        phy1: ethernet-phy@1 {
 226                                                reg = <0>;
 227                                        };
 228                                };
 229                        };
 230
 231                        pci_bridge@9,0 {
 232                                compatible = "pci0014,7a19.1",
 233                                                   "pci0014,7a19",
 234                                                   "pciclass060400",
 235                                                   "pciclass0604";
 236
 237                                reg = <0x4800 0x0 0x0 0x0 0x0>;
 238                                interrupts = <32 IRQ_TYPE_LEVEL_HIGH>;
 239                                interrupt-parent = <&pic>;
 240
 241                                #interrupt-cells = <1>;
 242                                interrupt-map-mask = <0 0 0 0>;
 243                                interrupt-map = <0 0 0 0 &pic 32 IRQ_TYPE_LEVEL_HIGH>;
 244                        };
 245
 246                        pci_bridge@a,0 {
 247                                compatible = "pci0014,7a09.1",
 248                                                   "pci0014,7a09",
 249                                                   "pciclass060400",
 250                                                   "pciclass0604";
 251
 252                                reg = <0x5000 0x0 0x0 0x0 0x0>;
 253                                interrupts = <33 IRQ_TYPE_LEVEL_HIGH>;
 254                                interrupt-parent = <&pic>;
 255
 256                                #interrupt-cells = <1>;
 257                                interrupt-map-mask = <0 0 0 0>;
 258                                interrupt-map = <0 0 0 0 &pic 33 IRQ_TYPE_LEVEL_HIGH>;
 259                        };
 260
 261                        pci_bridge@b,0 {
 262                                compatible = "pci0014,7a09.1",
 263                                                   "pci0014,7a09",
 264                                                   "pciclass060400",
 265                                                   "pciclass0604";
 266
 267                                reg = <0x5800 0x0 0x0 0x0 0x0>;
 268                                interrupts = <34 IRQ_TYPE_LEVEL_HIGH>;
 269                                interrupt-parent = <&pic>;
 270
 271                                #interrupt-cells = <1>;
 272                                interrupt-map-mask = <0 0 0 0>;
 273                                interrupt-map = <0 0 0 0 &pic 34 IRQ_TYPE_LEVEL_HIGH>;
 274                        };
 275
 276                        pci_bridge@c,0 {
 277                                compatible = "pci0014,7a09.1",
 278                                                   "pci0014,7a09",
 279                                                   "pciclass060400",
 280                                                   "pciclass0604";
 281
 282                                reg = <0x6000 0x0 0x0 0x0 0x0>;
 283                                interrupts = <35 IRQ_TYPE_LEVEL_HIGH>;
 284                                interrupt-parent = <&pic>;
 285
 286                                #interrupt-cells = <1>;
 287                                interrupt-map-mask = <0 0 0 0>;
 288                                interrupt-map = <0 0 0 0 &pic 35 IRQ_TYPE_LEVEL_HIGH>;
 289                        };
 290
 291                        pci_bridge@d,0 {
 292                                compatible = "pci0014,7a19.1",
 293                                                   "pci0014,7a19",
 294                                                   "pciclass060400",
 295                                                   "pciclass0604";
 296
 297                                reg = <0x6800 0x0 0x0 0x0 0x0>;
 298                                interrupts = <36 IRQ_TYPE_LEVEL_HIGH>;
 299                                interrupt-parent = <&pic>;
 300
 301                                #interrupt-cells = <1>;
 302                                interrupt-map-mask = <0 0 0 0>;
 303                                interrupt-map = <0 0 0 0 &pic 36 IRQ_TYPE_LEVEL_HIGH>;
 304                        };
 305
 306                        pci_bridge@e,0 {
 307                                compatible = "pci0014,7a09.1",
 308                                                   "pci0014,7a09",
 309                                                   "pciclass060400",
 310                                                   "pciclass0604";
 311
 312                                reg = <0x7000 0x0 0x0 0x0 0x0>;
 313                                interrupts = <37 IRQ_TYPE_LEVEL_HIGH>;
 314                                interrupt-parent = <&pic>;
 315
 316                                #interrupt-cells = <1>;
 317                                interrupt-map-mask = <0 0 0 0>;
 318                                interrupt-map = <0 0 0 0 &pic 37 IRQ_TYPE_LEVEL_HIGH>;
 319                        };
 320
 321                        pci_bridge@f,0 {
 322                                compatible = "pci0014,7a29.1",
 323                                                   "pci0014,7a29",
 324                                                   "pciclass060400",
 325                                                   "pciclass0604";
 326
 327                                reg = <0x7800 0x0 0x0 0x0 0x0>;
 328                                interrupts = <40 IRQ_TYPE_LEVEL_HIGH>;
 329                                interrupt-parent = <&pic>;
 330
 331                                #interrupt-cells = <1>;
 332                                interrupt-map-mask = <0 0 0 0>;
 333                                interrupt-map = <0 0 0 0 &pic 40 IRQ_TYPE_LEVEL_HIGH>;
 334                        };
 335
 336                        pci_bridge@10,0 {
 337                                compatible = "pci0014,7a19.1",
 338                                                   "pci0014,7a19",
 339                                                   "pciclass060400",
 340                                                   "pciclass0604";
 341
 342                                reg = <0x8000 0x0 0x0 0x0 0x0>;
 343                                interrupts = <41 IRQ_TYPE_LEVEL_HIGH>;
 344                                interrupt-parent = <&pic>;
 345
 346                                #interrupt-cells = <1>;
 347                                interrupt-map-mask = <0 0 0 0>;
 348                                interrupt-map = <0 0 0 0 &pic 41 IRQ_TYPE_LEVEL_HIGH>;
 349                        };
 350
 351                        pci_bridge@11,0 {
 352                                compatible = "pci0014,7a29.1",
 353                                                   "pci0014,7a29",
 354                                                   "pciclass060400",
 355                                                   "pciclass0604";
 356
 357                                reg = <0x8800 0x0 0x0 0x0 0x0>;
 358                                interrupts = <42 IRQ_TYPE_LEVEL_HIGH>;
 359                                interrupt-parent = <&pic>;
 360
 361                                #interrupt-cells = <1>;
 362                                interrupt-map-mask = <0 0 0 0>;
 363                                interrupt-map = <0 0 0 0 &pic 42 IRQ_TYPE_LEVEL_HIGH>;
 364                        };
 365
 366                        pci_bridge@12,0 {
 367                                compatible = "pci0014,7a19.1",
 368                                                   "pci0014,7a19",
 369                                                   "pciclass060400",
 370                                                   "pciclass0604";
 371
 372                                reg = <0x9000 0x0 0x0 0x0 0x0>;
 373                                interrupts = <43 IRQ_TYPE_LEVEL_HIGH>;
 374                                interrupt-parent = <&pic>;
 375
 376                                #interrupt-cells = <1>;
 377                                interrupt-map-mask = <0 0 0 0>;
 378                                interrupt-map = <0 0 0 0 &pic 43 IRQ_TYPE_LEVEL_HIGH>;
 379                        };
 380
 381                        pci_bridge@13,0 {
 382                                compatible = "pci0014,7a29.1",
 383                                                   "pci0014,7a29",
 384                                                   "pciclass060400",
 385                                                   "pciclass0604";
 386
 387                                reg = <0x9800 0x0 0x0 0x0 0x0>;
 388                                interrupts = <38 IRQ_TYPE_LEVEL_HIGH>;
 389                                interrupt-parent = <&pic>;
 390
 391                                #interrupt-cells = <1>;
 392                                interrupt-map-mask = <0 0 0 0>;
 393                                interrupt-map = <0 0 0 0 &pic 38 IRQ_TYPE_LEVEL_HIGH>;
 394                        };
 395
 396                        pci_bridge@14,0 {
 397                                compatible = "pci0014,7a19.1",
 398                                                   "pci0014,7a19",
 399                                                   "pciclass060400",
 400                                                   "pciclass0604";
 401
 402                                reg = <0xa000 0x0 0x0 0x0 0x0>;
 403                                interrupts = <39 IRQ_TYPE_LEVEL_HIGH>;
 404                                interrupt-parent = <&pic>;
 405
 406                                #interrupt-cells = <1>;
 407                                interrupt-map-mask = <0 0 0 0>;
 408                                interrupt-map = <0 0 0 0 &pic 39 IRQ_TYPE_LEVEL_HIGH>;
 409                        };
 410                };
 411
 412                isa@18000000 {
 413                        compatible = "isa";
 414                        #address-cells = <2>;
 415                        #size-cells = <1>;
 416                        ranges = <1 0 0 0x18000000 0x20000>;
 417                };
 418        };
 419};
 420