0001 // SPDX-License-Identifier: GPL-2.0
0002 /* OCTEON 3XXX DTS common parts. */
0003
0004 /dts-v1/;
0005
0006 / {
0007 compatible = "cavium,octeon-3860";
0008 #address-cells = <2>;
0009 #size-cells = <2>;
0010 interrupt-parent = <&ciu>;
0011
0012 soc@0 {
0013 compatible = "simple-bus";
0014 #address-cells = <2>;
0015 #size-cells = <2>;
0016 ranges; /* Direct mapping */
0017
0018 ciu: interrupt-controller@1070000000000 {
0019 compatible = "cavium,octeon-3860-ciu";
0020 interrupt-controller;
0021 /* Interrupts are specified by two parts:
0022 * 1) Controller register (0 or 1)
0023 * 2) Bit within the register (0..63)
0024 */
0025 #interrupt-cells = <2>;
0026 reg = <0x10700 0x00000000 0x0 0x7000>;
0027 };
0028
0029 gpio: gpio-controller@1070000000800 {
0030 #gpio-cells = <2>;
0031 compatible = "cavium,octeon-3860-gpio";
0032 reg = <0x10700 0x00000800 0x0 0x100>;
0033 gpio-controller;
0034 /* Interrupts are specified by two parts:
0035 * 1) GPIO pin number (0..15)
0036 * 2) Triggering (1 - edge rising
0037 * 2 - edge falling
0038 * 4 - level active high
0039 * 8 - level active low)
0040 */
0041 interrupt-controller;
0042 #interrupt-cells = <2>;
0043 /* The GPIO pin connect to 16 consecutive CUI bits */
0044 interrupts = <0 16>, <0 17>, <0 18>, <0 19>,
0045 <0 20>, <0 21>, <0 22>, <0 23>,
0046 <0 24>, <0 25>, <0 26>, <0 27>,
0047 <0 28>, <0 29>, <0 30>, <0 31>;
0048 };
0049
0050 smi0: mdio@1180000001800 {
0051 compatible = "cavium,octeon-3860-mdio";
0052 #address-cells = <1>;
0053 #size-cells = <0>;
0054 reg = <0x11800 0x00001800 0x0 0x40>;
0055 };
0056
0057 pip: pip@11800a0000000 {
0058 compatible = "cavium,octeon-3860-pip";
0059 #address-cells = <1>;
0060 #size-cells = <0>;
0061 reg = <0x11800 0xa0000000 0x0 0x2000>;
0062
0063 interface@0 {
0064 compatible = "cavium,octeon-3860-pip-interface";
0065 #address-cells = <1>;
0066 #size-cells = <0>;
0067 reg = <0>; /* interface */
0068
0069 ethernet@0 {
0070 compatible = "cavium,octeon-3860-pip-port";
0071 reg = <0x0>; /* Port */
0072 local-mac-address = [ 00 00 00 00 00 00 ];
0073 };
0074 ethernet@1 {
0075 compatible = "cavium,octeon-3860-pip-port";
0076 reg = <0x1>; /* Port */
0077 local-mac-address = [ 00 00 00 00 00 00 ];
0078 };
0079 ethernet@2 {
0080 compatible = "cavium,octeon-3860-pip-port";
0081 reg = <0x2>; /* Port */
0082 local-mac-address = [ 00 00 00 00 00 00 ];
0083 };
0084 };
0085
0086 interface@1 {
0087 compatible = "cavium,octeon-3860-pip-interface";
0088 #address-cells = <1>;
0089 #size-cells = <0>;
0090 reg = <1>; /* interface */
0091 };
0092 };
0093
0094 twsi0: i2c@1180000001000 {
0095 #address-cells = <1>;
0096 #size-cells = <0>;
0097 compatible = "cavium,octeon-3860-twsi";
0098 reg = <0x11800 0x00001000 0x0 0x200>;
0099 interrupts = <0 45>;
0100 clock-frequency = <100000>;
0101 };
0102
0103 uart0: serial@1180000000800 {
0104 compatible = "cavium,octeon-3860-uart","ns16550";
0105 reg = <0x11800 0x00000800 0x0 0x400>;
0106 clock-frequency = <0>;
0107 current-speed = <115200>;
0108 reg-shift = <3>;
0109 interrupts = <0 34>;
0110 };
0111
0112 bootbus: bootbus@1180000000000 {
0113 compatible = "cavium,octeon-3860-bootbus";
0114 reg = <0x11800 0x00000000 0x0 0x200>;
0115 /* The chip select number and offset */
0116 #address-cells = <2>;
0117 /* The size of the chip select region */
0118 #size-cells = <1>;
0119 ranges = <0 0 0x0 0x1f400000 0xc00000>,
0120 <1 0 0x10000 0x30000000 0>,
0121 <2 0 0x10000 0x40000000 0>,
0122 <3 0 0x10000 0x50000000 0>,
0123 <4 0 0x0 0x1d020000 0x10000>,
0124 <5 0 0x0 0x1d040000 0x10000>,
0125 <6 0 0x0 0x1d050000 0x10000>,
0126 <7 0 0x10000 0x90000000 0>;
0127
0128 cavium,cs-config@0 {
0129 compatible = "cavium,octeon-3860-bootbus-config";
0130 cavium,cs-index = <0>;
0131 cavium,t-adr = <20>;
0132 cavium,t-ce = <60>;
0133 cavium,t-oe = <60>;
0134 cavium,t-we = <45>;
0135 cavium,t-rd-hld = <35>;
0136 cavium,t-wr-hld = <45>;
0137 cavium,t-pause = <0>;
0138 cavium,t-wait = <0>;
0139 cavium,t-page = <35>;
0140 cavium,t-rd-dly = <0>;
0141
0142 cavium,pages = <0>;
0143 cavium,bus-width = <8>;
0144 };
0145 cavium,cs-config@4 {
0146 compatible = "cavium,octeon-3860-bootbus-config";
0147 cavium,cs-index = <4>;
0148 cavium,t-adr = <320>;
0149 cavium,t-ce = <320>;
0150 cavium,t-oe = <320>;
0151 cavium,t-we = <320>;
0152 cavium,t-rd-hld = <320>;
0153 cavium,t-wr-hld = <320>;
0154 cavium,t-pause = <320>;
0155 cavium,t-wait = <320>;
0156 cavium,t-page = <320>;
0157 cavium,t-rd-dly = <0>;
0158
0159 cavium,pages = <0>;
0160 cavium,bus-width = <8>;
0161 };
0162 cavium,cs-config@5 {
0163 compatible = "cavium,octeon-3860-bootbus-config";
0164 cavium,cs-index = <5>;
0165 cavium,t-adr = <5>;
0166 cavium,t-ce = <300>;
0167 cavium,t-oe = <125>;
0168 cavium,t-we = <150>;
0169 cavium,t-rd-hld = <100>;
0170 cavium,t-wr-hld = <30>;
0171 cavium,t-pause = <0>;
0172 cavium,t-wait = <30>;
0173 cavium,t-page = <320>;
0174 cavium,t-rd-dly = <0>;
0175
0176 cavium,pages = <0>;
0177 cavium,bus-width = <16>;
0178 };
0179 cavium,cs-config@6 {
0180 compatible = "cavium,octeon-3860-bootbus-config";
0181 cavium,cs-index = <6>;
0182 cavium,t-adr = <5>;
0183 cavium,t-ce = <300>;
0184 cavium,t-oe = <270>;
0185 cavium,t-we = <150>;
0186 cavium,t-rd-hld = <100>;
0187 cavium,t-wr-hld = <70>;
0188 cavium,t-pause = <0>;
0189 cavium,t-wait = <0>;
0190 cavium,t-page = <320>;
0191 cavium,t-rd-dly = <0>;
0192
0193 cavium,pages = <0>;
0194 cavium,wait-mode;
0195 cavium,bus-width = <16>;
0196 };
0197
0198 flash0: nor@0,0 {
0199 compatible = "cfi-flash";
0200 reg = <0 0 0x800000>;
0201 #address-cells = <1>;
0202 #size-cells = <1>;
0203 };
0204 };
0205
0206 dma0: dma-engine@1180000000100 {
0207 compatible = "cavium,octeon-5750-bootbus-dma";
0208 reg = <0x11800 0x00000100 0x0 0x8>;
0209 interrupts = <0 63>;
0210 };
0211
0212 dma1: dma-engine@1180000000108 {
0213 compatible = "cavium,octeon-5750-bootbus-dma";
0214 reg = <0x11800 0x00000108 0x0 0x8>;
0215 interrupts = <0 63>;
0216 };
0217
0218 usbn: usbn@1180068000000 {
0219 compatible = "cavium,octeon-5750-usbn";
0220 reg = <0x11800 0x68000000 0x0 0x1000>;
0221 ranges; /* Direct mapping */
0222 #address-cells = <2>;
0223 #size-cells = <2>;
0224
0225 usbc@16f0010000000 {
0226 compatible = "cavium,octeon-5750-usbc";
0227 reg = <0x16f00 0x10000000 0x0 0x80000>;
0228 interrupts = <0 56>;
0229 };
0230 };
0231 };
0232 };