Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: GPL-2.0
0002 /dts-v1/;
0003 
0004 #include <dt-bindings/clock/boston-clock.h>
0005 #include <dt-bindings/gpio/gpio.h>
0006 #include <dt-bindings/interrupt-controller/irq.h>
0007 #include <dt-bindings/interrupt-controller/mips-gic.h>
0008 
0009 / {
0010         #address-cells = <1>;
0011         #size-cells = <1>;
0012         compatible = "img,boston";
0013 
0014         chosen {
0015                 stdout-path = "uart0:115200";
0016         };
0017 
0018         aliases {
0019                 uart0 = &uart0;
0020         };
0021 
0022         cpus {
0023                 #address-cells = <1>;
0024                 #size-cells = <0>;
0025 
0026                 cpu@0 {
0027                         device_type = "cpu";
0028                         compatible = "img,mips";
0029                         reg = <0>;
0030                         clocks = <&clk_boston BOSTON_CLK_CPU>;
0031                 };
0032         };
0033 
0034         memory@0 {
0035                 device_type = "memory";
0036                 reg = <0x00000000 0x10000000>;
0037         };
0038 
0039         pci0: pci@10000000 {
0040                 compatible = "xlnx,axi-pcie-host-1.00.a";
0041                 device_type = "pci";
0042                 reg = <0x10000000 0x2000000>;
0043 
0044                 #address-cells = <3>;
0045                 #size-cells = <2>;
0046                 #interrupt-cells = <1>;
0047 
0048                 interrupt-parent = <&gic>;
0049                 interrupts = <GIC_SHARED 2 IRQ_TYPE_LEVEL_HIGH>;
0050 
0051                 ranges = <0x02000000 0 0x40000000
0052                           0x40000000 0 0x40000000>;
0053 
0054                 bus-range = <0x00 0xff>;
0055 
0056                 interrupt-map-mask = <0 0 0 7>;
0057                 interrupt-map = <0 0 0 1 &pci0_intc 1>,
0058                                 <0 0 0 2 &pci0_intc 2>,
0059                                 <0 0 0 3 &pci0_intc 3>,
0060                                 <0 0 0 4 &pci0_intc 4>;
0061 
0062                 pci0_intc: interrupt-controller {
0063                         interrupt-controller;
0064                         #address-cells = <0>;
0065                         #interrupt-cells = <1>;
0066                 };
0067         };
0068 
0069         pci1: pci@12000000 {
0070                 compatible = "xlnx,axi-pcie-host-1.00.a";
0071                 device_type = "pci";
0072                 reg = <0x12000000 0x2000000>;
0073 
0074                 #address-cells = <3>;
0075                 #size-cells = <2>;
0076                 #interrupt-cells = <1>;
0077 
0078                 interrupt-parent = <&gic>;
0079                 interrupts = <GIC_SHARED 1 IRQ_TYPE_LEVEL_HIGH>;
0080 
0081                 ranges = <0x02000000 0 0x20000000
0082                           0x20000000 0 0x20000000>;
0083 
0084                 bus-range = <0x00 0xff>;
0085 
0086                 interrupt-map-mask = <0 0 0 7>;
0087                 interrupt-map = <0 0 0 1 &pci1_intc 1>,
0088                                 <0 0 0 2 &pci1_intc 2>,
0089                                 <0 0 0 3 &pci1_intc 3>,
0090                                 <0 0 0 4 &pci1_intc 4>;
0091 
0092                 pci1_intc: interrupt-controller {
0093                         interrupt-controller;
0094                         #address-cells = <0>;
0095                         #interrupt-cells = <1>;
0096                 };
0097         };
0098 
0099         pci2: pci@14000000 {
0100                 compatible = "xlnx,axi-pcie-host-1.00.a";
0101                 device_type = "pci";
0102                 reg = <0x14000000 0x2000000>;
0103 
0104                 #address-cells = <3>;
0105                 #size-cells = <2>;
0106                 #interrupt-cells = <1>;
0107 
0108                 interrupt-parent = <&gic>;
0109                 interrupts = <GIC_SHARED 0 IRQ_TYPE_LEVEL_HIGH>;
0110 
0111                 ranges = <0x02000000 0 0x16000000
0112                           0x16000000 0 0x100000>;
0113 
0114                 bus-range = <0x00 0xff>;
0115 
0116                 interrupt-map-mask = <0 0 0 7>;
0117                 interrupt-map = <0 0 0 1 &pci2_intc 1>,
0118                                 <0 0 0 2 &pci2_intc 2>,
0119                                 <0 0 0 3 &pci2_intc 3>,
0120                                 <0 0 0 4 &pci2_intc 4>;
0121 
0122                 pci2_intc: interrupt-controller {
0123                         interrupt-controller;
0124                         #address-cells = <0>;
0125                         #interrupt-cells = <1>;
0126                 };
0127 
0128                 pci2_root@0,0,0 {
0129                         compatible = "pci10ee,7021";
0130                         reg = <0x00000000 0 0 0 0>;
0131 
0132                         #address-cells = <3>;
0133                         #size-cells = <2>;
0134                         #interrupt-cells = <1>;
0135 
0136                         eg20t_bridge@1,0,0 {
0137                                 compatible = "pci8086,8800";
0138                                 reg = <0x00010000 0 0 0 0>;
0139 
0140                                 #address-cells = <3>;
0141                                 #size-cells = <2>;
0142                                 #interrupt-cells = <1>;
0143 
0144                                 eg20t_phub@2,0,0 {
0145                                         compatible = "pci8086,8801";
0146                                         reg = <0x00020000 0 0 0 0>;
0147                                         intel,eg20t-prefetch = <0>;
0148                                 };
0149 
0150                                 eg20t_mac@2,0,1 {
0151                                         compatible = "pci8086,8802";
0152                                         reg = <0x00020100 0 0 0 0>;
0153                                         phy-reset-gpios = <&eg20t_gpio 6
0154                                                            GPIO_ACTIVE_LOW>;
0155                                 };
0156 
0157                                 eg20t_gpio: eg20t_gpio@2,0,2 {
0158                                         compatible = "pci8086,8803";
0159                                         reg = <0x00020200 0 0 0 0>;
0160 
0161                                         gpio-controller;
0162                                         #gpio-cells = <2>;
0163                                 };
0164 
0165                                 eg20t_i2c@2,12,2 {
0166                                         compatible = "pci8086,8817";
0167                                         reg = <0x00026200 0 0 0 0>;
0168 
0169                                         #address-cells = <1>;
0170                                         #size-cells = <0>;
0171 
0172                                         rtc@68 {
0173                                                 compatible = "st,m41t81s";
0174                                                 reg = <0x68>;
0175                                         };
0176                                 };
0177                         };
0178                 };
0179         };
0180 
0181         gic: interrupt-controller@16120000 {
0182                 compatible = "mti,gic";
0183                 reg = <0x16120000 0x20000>;
0184 
0185                 interrupt-controller;
0186                 #interrupt-cells = <3>;
0187 
0188                 timer {
0189                         compatible = "mti,gic-timer";
0190                         interrupts = <GIC_LOCAL 1 IRQ_TYPE_NONE>;
0191                         clocks = <&clk_boston BOSTON_CLK_CPU>;
0192                 };
0193         };
0194 
0195         cdmm@16140000 {
0196                 compatible = "mti,mips-cdmm";
0197                 reg = <0x16140000 0x8000>;
0198         };
0199 
0200         cpc@16200000 {
0201                 compatible = "mti,mips-cpc";
0202                 reg = <0x16200000 0x8000>;
0203         };
0204 
0205         plat_regs: system-controller@17ffd000 {
0206                 compatible = "img,boston-platform-regs", "syscon";
0207                 reg = <0x17ffd000 0x1000>;
0208 
0209                 clk_boston: clock {
0210                         compatible = "img,boston-clock";
0211                         #clock-cells = <1>;
0212                 };
0213         };
0214 
0215         reboot: syscon-reboot {
0216                 compatible = "syscon-reboot";
0217                 regmap = <&plat_regs>;
0218                 offset = <0x10>;
0219                 mask = <0x10>;
0220         };
0221 
0222         uart0: uart@17ffe000 {
0223                 compatible = "ns16550a";
0224                 reg = <0x17ffe000 0x1000>;
0225                 reg-shift = <2>;
0226 
0227                 interrupt-parent = <&gic>;
0228                 interrupts = <GIC_SHARED 3 IRQ_TYPE_LEVEL_HIGH>;
0229 
0230                 clocks = <&clk_boston BOSTON_CLK_SYS>;
0231         };
0232 
0233         lcd: lcd@17fff000 {
0234                 compatible = "img,boston-lcd";
0235                 reg = <0x17fff000 0x8>;
0236         };
0237 };