1*b2441318SGreg Kroah-Hartman// SPDX-License-Identifier: GPL-2.0 2fa0a497bSAaro Koskinen/* OCTEON 3XXX DTS common parts. */ 3fa0a497bSAaro Koskinen 4fa0a497bSAaro Koskinen/dts-v1/; 5fa0a497bSAaro Koskinen 6fa0a497bSAaro Koskinen/ { 7fa0a497bSAaro Koskinen compatible = "cavium,octeon-3860"; 8fa0a497bSAaro Koskinen #address-cells = <2>; 9fa0a497bSAaro Koskinen #size-cells = <2>; 10fa0a497bSAaro Koskinen interrupt-parent = <&ciu>; 11fa0a497bSAaro Koskinen 12fa0a497bSAaro Koskinen soc@0 { 13fa0a497bSAaro Koskinen compatible = "simple-bus"; 14fa0a497bSAaro Koskinen #address-cells = <2>; 15fa0a497bSAaro Koskinen #size-cells = <2>; 16fa0a497bSAaro Koskinen ranges; /* Direct mapping */ 17fa0a497bSAaro Koskinen 18fa0a497bSAaro Koskinen ciu: interrupt-controller@1070000000000 { 19fa0a497bSAaro Koskinen compatible = "cavium,octeon-3860-ciu"; 20fa0a497bSAaro Koskinen interrupt-controller; 21fa0a497bSAaro Koskinen /* Interrupts are specified by two parts: 22fa0a497bSAaro Koskinen * 1) Controller register (0 or 1) 23fa0a497bSAaro Koskinen * 2) Bit within the register (0..63) 24fa0a497bSAaro Koskinen */ 25fa0a497bSAaro Koskinen #interrupt-cells = <2>; 26fa0a497bSAaro Koskinen reg = <0x10700 0x00000000 0x0 0x7000>; 27fa0a497bSAaro Koskinen }; 28fa0a497bSAaro Koskinen 29fa0a497bSAaro Koskinen gpio: gpio-controller@1070000000800 { 30fa0a497bSAaro Koskinen #gpio-cells = <2>; 31fa0a497bSAaro Koskinen compatible = "cavium,octeon-3860-gpio"; 32fa0a497bSAaro Koskinen reg = <0x10700 0x00000800 0x0 0x100>; 33fa0a497bSAaro Koskinen gpio-controller; 34fa0a497bSAaro Koskinen /* Interrupts are specified by two parts: 35fa0a497bSAaro Koskinen * 1) GPIO pin number (0..15) 36fa0a497bSAaro Koskinen * 2) Triggering (1 - edge rising 37fa0a497bSAaro Koskinen * 2 - edge falling 38fa0a497bSAaro Koskinen * 4 - level active high 39fa0a497bSAaro Koskinen * 8 - level active low) 40fa0a497bSAaro Koskinen */ 41fa0a497bSAaro Koskinen interrupt-controller; 42fa0a497bSAaro Koskinen #interrupt-cells = <2>; 43fa0a497bSAaro Koskinen /* The GPIO pin connect to 16 consecutive CUI bits */ 44fa0a497bSAaro Koskinen interrupts = <0 16>, <0 17>, <0 18>, <0 19>, 45fa0a497bSAaro Koskinen <0 20>, <0 21>, <0 22>, <0 23>, 46fa0a497bSAaro Koskinen <0 24>, <0 25>, <0 26>, <0 27>, 47fa0a497bSAaro Koskinen <0 28>, <0 29>, <0 30>, <0 31>; 48fa0a497bSAaro Koskinen }; 49fa0a497bSAaro Koskinen 50fa0a497bSAaro Koskinen smi0: mdio@1180000001800 { 51fa0a497bSAaro Koskinen compatible = "cavium,octeon-3860-mdio"; 52fa0a497bSAaro Koskinen #address-cells = <1>; 53fa0a497bSAaro Koskinen #size-cells = <0>; 54fa0a497bSAaro Koskinen reg = <0x11800 0x00001800 0x0 0x40>; 55fa0a497bSAaro Koskinen }; 56fa0a497bSAaro Koskinen 57fa0a497bSAaro Koskinen pip: pip@11800a0000000 { 58fa0a497bSAaro Koskinen compatible = "cavium,octeon-3860-pip"; 59fa0a497bSAaro Koskinen #address-cells = <1>; 60fa0a497bSAaro Koskinen #size-cells = <0>; 61fa0a497bSAaro Koskinen reg = <0x11800 0xa0000000 0x0 0x2000>; 62fa0a497bSAaro Koskinen 63fa0a497bSAaro Koskinen interface@0 { 64fa0a497bSAaro Koskinen compatible = "cavium,octeon-3860-pip-interface"; 65fa0a497bSAaro Koskinen #address-cells = <1>; 66fa0a497bSAaro Koskinen #size-cells = <0>; 67fa0a497bSAaro Koskinen reg = <0>; /* interface */ 68fa0a497bSAaro Koskinen 69fa0a497bSAaro Koskinen ethernet@0 { 70fa0a497bSAaro Koskinen compatible = "cavium,octeon-3860-pip-port"; 71fa0a497bSAaro Koskinen reg = <0x0>; /* Port */ 72fa0a497bSAaro Koskinen local-mac-address = [ 00 00 00 00 00 00 ]; 73fa0a497bSAaro Koskinen }; 74fa0a497bSAaro Koskinen ethernet@1 { 75fa0a497bSAaro Koskinen compatible = "cavium,octeon-3860-pip-port"; 76fa0a497bSAaro Koskinen reg = <0x1>; /* Port */ 77fa0a497bSAaro Koskinen local-mac-address = [ 00 00 00 00 00 00 ]; 78fa0a497bSAaro Koskinen }; 79fa0a497bSAaro Koskinen ethernet@2 { 80fa0a497bSAaro Koskinen compatible = "cavium,octeon-3860-pip-port"; 81fa0a497bSAaro Koskinen reg = <0x2>; /* Port */ 82fa0a497bSAaro Koskinen local-mac-address = [ 00 00 00 00 00 00 ]; 83fa0a497bSAaro Koskinen }; 84fa0a497bSAaro Koskinen }; 85fa0a497bSAaro Koskinen 86fa0a497bSAaro Koskinen interface@1 { 87fa0a497bSAaro Koskinen compatible = "cavium,octeon-3860-pip-interface"; 88fa0a497bSAaro Koskinen #address-cells = <1>; 89fa0a497bSAaro Koskinen #size-cells = <0>; 90fa0a497bSAaro Koskinen reg = <1>; /* interface */ 91fa0a497bSAaro Koskinen }; 92fa0a497bSAaro Koskinen }; 93fa0a497bSAaro Koskinen 94fa0a497bSAaro Koskinen twsi0: i2c@1180000001000 { 95fa0a497bSAaro Koskinen #address-cells = <1>; 96fa0a497bSAaro Koskinen #size-cells = <0>; 97fa0a497bSAaro Koskinen compatible = "cavium,octeon-3860-twsi"; 98fa0a497bSAaro Koskinen reg = <0x11800 0x00001000 0x0 0x200>; 99fa0a497bSAaro Koskinen interrupts = <0 45>; 100fa0a497bSAaro Koskinen clock-frequency = <100000>; 101fa0a497bSAaro Koskinen }; 102fa0a497bSAaro Koskinen 103fa0a497bSAaro Koskinen uart0: serial@1180000000800 { 104fa0a497bSAaro Koskinen compatible = "cavium,octeon-3860-uart","ns16550"; 105fa0a497bSAaro Koskinen reg = <0x11800 0x00000800 0x0 0x400>; 106fa0a497bSAaro Koskinen clock-frequency = <0>; 107fa0a497bSAaro Koskinen current-speed = <115200>; 108fa0a497bSAaro Koskinen reg-shift = <3>; 109fa0a497bSAaro Koskinen interrupts = <0 34>; 110fa0a497bSAaro Koskinen }; 111fa0a497bSAaro Koskinen 112fa0a497bSAaro Koskinen bootbus: bootbus@1180000000000 { 113fa0a497bSAaro Koskinen compatible = "cavium,octeon-3860-bootbus"; 114fa0a497bSAaro Koskinen reg = <0x11800 0x00000000 0x0 0x200>; 115fa0a497bSAaro Koskinen /* The chip select number and offset */ 116fa0a497bSAaro Koskinen #address-cells = <2>; 117fa0a497bSAaro Koskinen /* The size of the chip select region */ 118fa0a497bSAaro Koskinen #size-cells = <1>; 119fa0a497bSAaro Koskinen ranges = <0 0 0x0 0x1f400000 0xc00000>, 120fa0a497bSAaro Koskinen <1 0 0x10000 0x30000000 0>, 121fa0a497bSAaro Koskinen <2 0 0x10000 0x40000000 0>, 122fa0a497bSAaro Koskinen <3 0 0x10000 0x50000000 0>, 123fa0a497bSAaro Koskinen <4 0 0x0 0x1d020000 0x10000>, 124fa0a497bSAaro Koskinen <5 0 0x0 0x1d040000 0x10000>, 125fa0a497bSAaro Koskinen <6 0 0x0 0x1d050000 0x10000>, 126fa0a497bSAaro Koskinen <7 0 0x10000 0x90000000 0>; 127fa0a497bSAaro Koskinen 128fa0a497bSAaro Koskinen cavium,cs-config@0 { 129fa0a497bSAaro Koskinen compatible = "cavium,octeon-3860-bootbus-config"; 130fa0a497bSAaro Koskinen cavium,cs-index = <0>; 131fa0a497bSAaro Koskinen cavium,t-adr = <20>; 132fa0a497bSAaro Koskinen cavium,t-ce = <60>; 133fa0a497bSAaro Koskinen cavium,t-oe = <60>; 134fa0a497bSAaro Koskinen cavium,t-we = <45>; 135fa0a497bSAaro Koskinen cavium,t-rd-hld = <35>; 136fa0a497bSAaro Koskinen cavium,t-wr-hld = <45>; 137fa0a497bSAaro Koskinen cavium,t-pause = <0>; 138fa0a497bSAaro Koskinen cavium,t-wait = <0>; 139fa0a497bSAaro Koskinen cavium,t-page = <35>; 140fa0a497bSAaro Koskinen cavium,t-rd-dly = <0>; 141fa0a497bSAaro Koskinen 142fa0a497bSAaro Koskinen cavium,pages = <0>; 143fa0a497bSAaro Koskinen cavium,bus-width = <8>; 144fa0a497bSAaro Koskinen }; 145fa0a497bSAaro Koskinen cavium,cs-config@4 { 146fa0a497bSAaro Koskinen compatible = "cavium,octeon-3860-bootbus-config"; 147fa0a497bSAaro Koskinen cavium,cs-index = <4>; 148fa0a497bSAaro Koskinen cavium,t-adr = <320>; 149fa0a497bSAaro Koskinen cavium,t-ce = <320>; 150fa0a497bSAaro Koskinen cavium,t-oe = <320>; 151fa0a497bSAaro Koskinen cavium,t-we = <320>; 152fa0a497bSAaro Koskinen cavium,t-rd-hld = <320>; 153fa0a497bSAaro Koskinen cavium,t-wr-hld = <320>; 154fa0a497bSAaro Koskinen cavium,t-pause = <320>; 155fa0a497bSAaro Koskinen cavium,t-wait = <320>; 156fa0a497bSAaro Koskinen cavium,t-page = <320>; 157fa0a497bSAaro Koskinen cavium,t-rd-dly = <0>; 158fa0a497bSAaro Koskinen 159fa0a497bSAaro Koskinen cavium,pages = <0>; 160fa0a497bSAaro Koskinen cavium,bus-width = <8>; 161fa0a497bSAaro Koskinen }; 162fa0a497bSAaro Koskinen cavium,cs-config@5 { 163fa0a497bSAaro Koskinen compatible = "cavium,octeon-3860-bootbus-config"; 164fa0a497bSAaro Koskinen cavium,cs-index = <5>; 165fa0a497bSAaro Koskinen cavium,t-adr = <5>; 166fa0a497bSAaro Koskinen cavium,t-ce = <300>; 167fa0a497bSAaro Koskinen cavium,t-oe = <125>; 168fa0a497bSAaro Koskinen cavium,t-we = <150>; 169fa0a497bSAaro Koskinen cavium,t-rd-hld = <100>; 170fa0a497bSAaro Koskinen cavium,t-wr-hld = <30>; 171fa0a497bSAaro Koskinen cavium,t-pause = <0>; 172fa0a497bSAaro Koskinen cavium,t-wait = <30>; 173fa0a497bSAaro Koskinen cavium,t-page = <320>; 174fa0a497bSAaro Koskinen cavium,t-rd-dly = <0>; 175fa0a497bSAaro Koskinen 176fa0a497bSAaro Koskinen cavium,pages = <0>; 177fa0a497bSAaro Koskinen cavium,bus-width = <16>; 178fa0a497bSAaro Koskinen }; 179fa0a497bSAaro Koskinen cavium,cs-config@6 { 180fa0a497bSAaro Koskinen compatible = "cavium,octeon-3860-bootbus-config"; 181fa0a497bSAaro Koskinen cavium,cs-index = <6>; 182fa0a497bSAaro Koskinen cavium,t-adr = <5>; 183fa0a497bSAaro Koskinen cavium,t-ce = <300>; 184fa0a497bSAaro Koskinen cavium,t-oe = <270>; 185fa0a497bSAaro Koskinen cavium,t-we = <150>; 186fa0a497bSAaro Koskinen cavium,t-rd-hld = <100>; 187fa0a497bSAaro Koskinen cavium,t-wr-hld = <70>; 188fa0a497bSAaro Koskinen cavium,t-pause = <0>; 189fa0a497bSAaro Koskinen cavium,t-wait = <0>; 190fa0a497bSAaro Koskinen cavium,t-page = <320>; 191fa0a497bSAaro Koskinen cavium,t-rd-dly = <0>; 192fa0a497bSAaro Koskinen 193fa0a497bSAaro Koskinen cavium,pages = <0>; 194fa0a497bSAaro Koskinen cavium,wait-mode; 195fa0a497bSAaro Koskinen cavium,bus-width = <16>; 196fa0a497bSAaro Koskinen }; 197fa0a497bSAaro Koskinen 198fa0a497bSAaro Koskinen flash0: nor@0,0 { 199fa0a497bSAaro Koskinen compatible = "cfi-flash"; 200fa0a497bSAaro Koskinen reg = <0 0 0x800000>; 201fa0a497bSAaro Koskinen #address-cells = <1>; 202fa0a497bSAaro Koskinen #size-cells = <1>; 203fa0a497bSAaro Koskinen }; 204fa0a497bSAaro Koskinen }; 205fa0a497bSAaro Koskinen 206fa0a497bSAaro Koskinen dma0: dma-engine@1180000000100 { 207fa0a497bSAaro Koskinen compatible = "cavium,octeon-5750-bootbus-dma"; 208fa0a497bSAaro Koskinen reg = <0x11800 0x00000100 0x0 0x8>; 209fa0a497bSAaro Koskinen interrupts = <0 63>; 210fa0a497bSAaro Koskinen }; 211fa0a497bSAaro Koskinen 212fa0a497bSAaro Koskinen dma1: dma-engine@1180000000108 { 213fa0a497bSAaro Koskinen compatible = "cavium,octeon-5750-bootbus-dma"; 214fa0a497bSAaro Koskinen reg = <0x11800 0x00000108 0x0 0x8>; 215fa0a497bSAaro Koskinen interrupts = <0 63>; 216fa0a497bSAaro Koskinen }; 217fa0a497bSAaro Koskinen 218fa0a497bSAaro Koskinen usbn: usbn@1180068000000 { 219fa0a497bSAaro Koskinen compatible = "cavium,octeon-5750-usbn"; 220fa0a497bSAaro Koskinen reg = <0x11800 0x68000000 0x0 0x1000>; 221fa0a497bSAaro Koskinen ranges; /* Direct mapping */ 222fa0a497bSAaro Koskinen #address-cells = <2>; 223fa0a497bSAaro Koskinen #size-cells = <2>; 224fa0a497bSAaro Koskinen 225fa0a497bSAaro Koskinen usbc@16f0010000000 { 226fa0a497bSAaro Koskinen compatible = "cavium,octeon-5750-usbc"; 227fa0a497bSAaro Koskinen reg = <0x16f00 0x10000000 0x0 0x80000>; 228fa0a497bSAaro Koskinen interrupts = <0 56>; 229fa0a497bSAaro Koskinen }; 230fa0a497bSAaro Koskinen }; 231fa0a497bSAaro Koskinen }; 232fa0a497bSAaro Koskinen}; 233