1*b2441318SGreg Kroah-Hartman// SPDX-License-Identifier: GPL-2.0 28c0b9ee8SAndrew Bresticker/dts-v1/; 38c0b9ee8SAndrew Bresticker/* 48c0b9ee8SAndrew Bresticker * OCTEON 68XX device tree skeleton. 58c0b9ee8SAndrew Bresticker * 68c0b9ee8SAndrew Bresticker * This device tree is pruned and patched by early boot code before 78c0b9ee8SAndrew Bresticker * use. Because of this, it contains a super-set of the available 88c0b9ee8SAndrew Bresticker * devices and properties. 98c0b9ee8SAndrew Bresticker */ 108c0b9ee8SAndrew Bresticker/ { 118c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-6880"; 128c0b9ee8SAndrew Bresticker #address-cells = <2>; 138c0b9ee8SAndrew Bresticker #size-cells = <2>; 148c0b9ee8SAndrew Bresticker interrupt-parent = <&ciu2>; 158c0b9ee8SAndrew Bresticker 168c0b9ee8SAndrew Bresticker soc@0 { 178c0b9ee8SAndrew Bresticker compatible = "simple-bus"; 188c0b9ee8SAndrew Bresticker #address-cells = <2>; 198c0b9ee8SAndrew Bresticker #size-cells = <2>; 208c0b9ee8SAndrew Bresticker ranges; /* Direct mapping */ 218c0b9ee8SAndrew Bresticker 228c0b9ee8SAndrew Bresticker ciu2: interrupt-controller@1070100000000 { 238c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-6880-ciu2"; 248c0b9ee8SAndrew Bresticker interrupt-controller; 258c0b9ee8SAndrew Bresticker /* Interrupts are specified by two parts: 268c0b9ee8SAndrew Bresticker * 1) Controller register (0 or 7) 278c0b9ee8SAndrew Bresticker * 2) Bit within the register (0..63) 288c0b9ee8SAndrew Bresticker */ 298c0b9ee8SAndrew Bresticker #address-cells = <0>; 308c0b9ee8SAndrew Bresticker #interrupt-cells = <2>; 318c0b9ee8SAndrew Bresticker reg = <0x10701 0x00000000 0x0 0x4000000>; 328c0b9ee8SAndrew Bresticker }; 338c0b9ee8SAndrew Bresticker 348c0b9ee8SAndrew Bresticker gpio: gpio-controller@1070000000800 { 358c0b9ee8SAndrew Bresticker #gpio-cells = <2>; 368c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-3860-gpio"; 378c0b9ee8SAndrew Bresticker reg = <0x10700 0x00000800 0x0 0x100>; 388c0b9ee8SAndrew Bresticker gpio-controller; 398c0b9ee8SAndrew Bresticker /* Interrupts are specified by two parts: 408c0b9ee8SAndrew Bresticker * 1) GPIO pin number (0..15) 418c0b9ee8SAndrew Bresticker * 2) Triggering (1 - edge rising 428c0b9ee8SAndrew Bresticker * 2 - edge falling 438c0b9ee8SAndrew Bresticker * 4 - level active high 448c0b9ee8SAndrew Bresticker * 8 - level active low) 458c0b9ee8SAndrew Bresticker */ 468c0b9ee8SAndrew Bresticker interrupt-controller; 478c0b9ee8SAndrew Bresticker #interrupt-cells = <2>; 488c0b9ee8SAndrew Bresticker /* The GPIO pins connect to 16 consecutive CUI bits */ 498c0b9ee8SAndrew Bresticker interrupts = <7 0>, <7 1>, <7 2>, <7 3>, 508c0b9ee8SAndrew Bresticker <7 4>, <7 5>, <7 6>, <7 7>, 518c0b9ee8SAndrew Bresticker <7 8>, <7 9>, <7 10>, <7 11>, 528c0b9ee8SAndrew Bresticker <7 12>, <7 13>, <7 14>, <7 15>; 538c0b9ee8SAndrew Bresticker }; 548c0b9ee8SAndrew Bresticker 558c0b9ee8SAndrew Bresticker smi0: mdio@1180000003800 { 568c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-3860-mdio"; 578c0b9ee8SAndrew Bresticker #address-cells = <1>; 588c0b9ee8SAndrew Bresticker #size-cells = <0>; 598c0b9ee8SAndrew Bresticker reg = <0x11800 0x00003800 0x0 0x40>; 608c0b9ee8SAndrew Bresticker 618c0b9ee8SAndrew Bresticker phy0: ethernet-phy@6 { 628c0b9ee8SAndrew Bresticker compatible = "marvell,88e1118"; 638c0b9ee8SAndrew Bresticker marvell,reg-init = 648c0b9ee8SAndrew Bresticker /* Fix rx and tx clock transition timing */ 658c0b9ee8SAndrew Bresticker <2 0x15 0xffcf 0>, /* Reg 2,21 Clear bits 4, 5 */ 668c0b9ee8SAndrew Bresticker /* Adjust LED drive. */ 678c0b9ee8SAndrew Bresticker <3 0x11 0 0x442a>, /* Reg 3,17 <- 0442a */ 688c0b9ee8SAndrew Bresticker /* irq, blink-activity, blink-link */ 698c0b9ee8SAndrew Bresticker <3 0x10 0 0x0242>; /* Reg 3,16 <- 0x0242 */ 708c0b9ee8SAndrew Bresticker reg = <6>; 718c0b9ee8SAndrew Bresticker }; 728c0b9ee8SAndrew Bresticker 738c0b9ee8SAndrew Bresticker phy1: ethernet-phy@1 { 748c0b9ee8SAndrew Bresticker cavium,qlm-trim = "4,sgmii"; 758c0b9ee8SAndrew Bresticker reg = <1>; 768c0b9ee8SAndrew Bresticker compatible = "marvell,88e1149r"; 778c0b9ee8SAndrew Bresticker marvell,reg-init = <3 0x10 0 0x5777>, 788c0b9ee8SAndrew Bresticker <3 0x11 0 0x00aa>, 798c0b9ee8SAndrew Bresticker <3 0x12 0 0x4105>, 808c0b9ee8SAndrew Bresticker <3 0x13 0 0x0a60>; 818c0b9ee8SAndrew Bresticker }; 828c0b9ee8SAndrew Bresticker phy2: ethernet-phy@2 { 838c0b9ee8SAndrew Bresticker cavium,qlm-trim = "4,sgmii"; 848c0b9ee8SAndrew Bresticker reg = <2>; 858c0b9ee8SAndrew Bresticker compatible = "marvell,88e1149r"; 868c0b9ee8SAndrew Bresticker marvell,reg-init = <3 0x10 0 0x5777>, 878c0b9ee8SAndrew Bresticker <3 0x11 0 0x00aa>, 888c0b9ee8SAndrew Bresticker <3 0x12 0 0x4105>, 898c0b9ee8SAndrew Bresticker <3 0x13 0 0x0a60>; 908c0b9ee8SAndrew Bresticker }; 918c0b9ee8SAndrew Bresticker phy3: ethernet-phy@3 { 928c0b9ee8SAndrew Bresticker cavium,qlm-trim = "4,sgmii"; 938c0b9ee8SAndrew Bresticker reg = <3>; 948c0b9ee8SAndrew Bresticker compatible = "marvell,88e1149r"; 958c0b9ee8SAndrew Bresticker marvell,reg-init = <3 0x10 0 0x5777>, 968c0b9ee8SAndrew Bresticker <3 0x11 0 0x00aa>, 978c0b9ee8SAndrew Bresticker <3 0x12 0 0x4105>, 988c0b9ee8SAndrew Bresticker <3 0x13 0 0x0a60>; 998c0b9ee8SAndrew Bresticker }; 1008c0b9ee8SAndrew Bresticker phy4: ethernet-phy@4 { 1018c0b9ee8SAndrew Bresticker cavium,qlm-trim = "4,sgmii"; 1028c0b9ee8SAndrew Bresticker reg = <4>; 1038c0b9ee8SAndrew Bresticker compatible = "marvell,88e1149r"; 1048c0b9ee8SAndrew Bresticker marvell,reg-init = <3 0x10 0 0x5777>, 1058c0b9ee8SAndrew Bresticker <3 0x11 0 0x00aa>, 1068c0b9ee8SAndrew Bresticker <3 0x12 0 0x4105>, 1078c0b9ee8SAndrew Bresticker <3 0x13 0 0x0a60>; 1088c0b9ee8SAndrew Bresticker }; 1098c0b9ee8SAndrew Bresticker }; 1108c0b9ee8SAndrew Bresticker 1118c0b9ee8SAndrew Bresticker smi1: mdio@1180000003880 { 1128c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-3860-mdio"; 1138c0b9ee8SAndrew Bresticker #address-cells = <1>; 1148c0b9ee8SAndrew Bresticker #size-cells = <0>; 1158c0b9ee8SAndrew Bresticker reg = <0x11800 0x00003880 0x0 0x40>; 1168c0b9ee8SAndrew Bresticker 1178c0b9ee8SAndrew Bresticker phy41: ethernet-phy@1 { 1188c0b9ee8SAndrew Bresticker cavium,qlm-trim = "0,sgmii"; 1198c0b9ee8SAndrew Bresticker reg = <1>; 1208c0b9ee8SAndrew Bresticker compatible = "marvell,88e1149r"; 1218c0b9ee8SAndrew Bresticker marvell,reg-init = <3 0x10 0 0x5777>, 1228c0b9ee8SAndrew Bresticker <3 0x11 0 0x00aa>, 1238c0b9ee8SAndrew Bresticker <3 0x12 0 0x4105>, 1248c0b9ee8SAndrew Bresticker <3 0x13 0 0x0a60>; 1258c0b9ee8SAndrew Bresticker }; 1268c0b9ee8SAndrew Bresticker phy42: ethernet-phy@2 { 1278c0b9ee8SAndrew Bresticker cavium,qlm-trim = "0,sgmii"; 1288c0b9ee8SAndrew Bresticker reg = <2>; 1298c0b9ee8SAndrew Bresticker compatible = "marvell,88e1149r"; 1308c0b9ee8SAndrew Bresticker marvell,reg-init = <3 0x10 0 0x5777>, 1318c0b9ee8SAndrew Bresticker <3 0x11 0 0x00aa>, 1328c0b9ee8SAndrew Bresticker <3 0x12 0 0x4105>, 1338c0b9ee8SAndrew Bresticker <3 0x13 0 0x0a60>; 1348c0b9ee8SAndrew Bresticker }; 1358c0b9ee8SAndrew Bresticker phy43: ethernet-phy@3 { 1368c0b9ee8SAndrew Bresticker cavium,qlm-trim = "0,sgmii"; 1378c0b9ee8SAndrew Bresticker reg = <3>; 1388c0b9ee8SAndrew Bresticker compatible = "marvell,88e1149r"; 1398c0b9ee8SAndrew Bresticker marvell,reg-init = <3 0x10 0 0x5777>, 1408c0b9ee8SAndrew Bresticker <3 0x11 0 0x00aa>, 1418c0b9ee8SAndrew Bresticker <3 0x12 0 0x4105>, 1428c0b9ee8SAndrew Bresticker <3 0x13 0 0x0a60>; 1438c0b9ee8SAndrew Bresticker }; 1448c0b9ee8SAndrew Bresticker phy44: ethernet-phy@4 { 1458c0b9ee8SAndrew Bresticker cavium,qlm-trim = "0,sgmii"; 1468c0b9ee8SAndrew Bresticker reg = <4>; 1478c0b9ee8SAndrew Bresticker compatible = "marvell,88e1149r"; 1488c0b9ee8SAndrew Bresticker marvell,reg-init = <3 0x10 0 0x5777>, 1498c0b9ee8SAndrew Bresticker <3 0x11 0 0x00aa>, 1508c0b9ee8SAndrew Bresticker <3 0x12 0 0x4105>, 1518c0b9ee8SAndrew Bresticker <3 0x13 0 0x0a60>; 1528c0b9ee8SAndrew Bresticker }; 1538c0b9ee8SAndrew Bresticker }; 1548c0b9ee8SAndrew Bresticker 1558c0b9ee8SAndrew Bresticker smi2: mdio@1180000003900 { 1568c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-3860-mdio"; 1578c0b9ee8SAndrew Bresticker #address-cells = <1>; 1588c0b9ee8SAndrew Bresticker #size-cells = <0>; 1598c0b9ee8SAndrew Bresticker reg = <0x11800 0x00003900 0x0 0x40>; 1608c0b9ee8SAndrew Bresticker 1618c0b9ee8SAndrew Bresticker phy21: ethernet-phy@1 { 1628c0b9ee8SAndrew Bresticker cavium,qlm-trim = "2,sgmii"; 1638c0b9ee8SAndrew Bresticker reg = <1>; 1648c0b9ee8SAndrew Bresticker compatible = "marvell,88e1149r"; 1658c0b9ee8SAndrew Bresticker marvell,reg-init = <3 0x10 0 0x5777>, 1668c0b9ee8SAndrew Bresticker <3 0x11 0 0x00aa>, 1678c0b9ee8SAndrew Bresticker <3 0x12 0 0x4105>, 1688c0b9ee8SAndrew Bresticker <3 0x13 0 0x0a60>; 1698c0b9ee8SAndrew Bresticker }; 1708c0b9ee8SAndrew Bresticker phy22: ethernet-phy@2 { 1718c0b9ee8SAndrew Bresticker cavium,qlm-trim = "2,sgmii"; 1728c0b9ee8SAndrew Bresticker reg = <2>; 1738c0b9ee8SAndrew Bresticker compatible = "marvell,88e1149r"; 1748c0b9ee8SAndrew Bresticker marvell,reg-init = <3 0x10 0 0x5777>, 1758c0b9ee8SAndrew Bresticker <3 0x11 0 0x00aa>, 1768c0b9ee8SAndrew Bresticker <3 0x12 0 0x4105>, 1778c0b9ee8SAndrew Bresticker <3 0x13 0 0x0a60>; 1788c0b9ee8SAndrew Bresticker }; 1798c0b9ee8SAndrew Bresticker phy23: ethernet-phy@3 { 1808c0b9ee8SAndrew Bresticker cavium,qlm-trim = "2,sgmii"; 1818c0b9ee8SAndrew Bresticker reg = <3>; 1828c0b9ee8SAndrew Bresticker compatible = "marvell,88e1149r"; 1838c0b9ee8SAndrew Bresticker marvell,reg-init = <3 0x10 0 0x5777>, 1848c0b9ee8SAndrew Bresticker <3 0x11 0 0x00aa>, 1858c0b9ee8SAndrew Bresticker <3 0x12 0 0x4105>, 1868c0b9ee8SAndrew Bresticker <3 0x13 0 0x0a60>; 1878c0b9ee8SAndrew Bresticker }; 1888c0b9ee8SAndrew Bresticker phy24: ethernet-phy@4 { 1898c0b9ee8SAndrew Bresticker cavium,qlm-trim = "2,sgmii"; 1908c0b9ee8SAndrew Bresticker reg = <4>; 1918c0b9ee8SAndrew Bresticker compatible = "marvell,88e1149r"; 1928c0b9ee8SAndrew Bresticker marvell,reg-init = <3 0x10 0 0x5777>, 1938c0b9ee8SAndrew Bresticker <3 0x11 0 0x00aa>, 1948c0b9ee8SAndrew Bresticker <3 0x12 0 0x4105>, 1958c0b9ee8SAndrew Bresticker <3 0x13 0 0x0a60>; 1968c0b9ee8SAndrew Bresticker }; 1978c0b9ee8SAndrew Bresticker }; 1988c0b9ee8SAndrew Bresticker 1998c0b9ee8SAndrew Bresticker smi3: mdio@1180000003980 { 2008c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-3860-mdio"; 2018c0b9ee8SAndrew Bresticker #address-cells = <1>; 2028c0b9ee8SAndrew Bresticker #size-cells = <0>; 2038c0b9ee8SAndrew Bresticker reg = <0x11800 0x00003980 0x0 0x40>; 2048c0b9ee8SAndrew Bresticker 2058c0b9ee8SAndrew Bresticker phy11: ethernet-phy@1 { 2068c0b9ee8SAndrew Bresticker cavium,qlm-trim = "3,sgmii"; 2078c0b9ee8SAndrew Bresticker reg = <1>; 2088c0b9ee8SAndrew Bresticker compatible = "marvell,88e1149r"; 2098c0b9ee8SAndrew Bresticker marvell,reg-init = <3 0x10 0 0x5777>, 2108c0b9ee8SAndrew Bresticker <3 0x11 0 0x00aa>, 2118c0b9ee8SAndrew Bresticker <3 0x12 0 0x4105>, 2128c0b9ee8SAndrew Bresticker <3 0x13 0 0x0a60>; 2138c0b9ee8SAndrew Bresticker }; 2148c0b9ee8SAndrew Bresticker phy12: ethernet-phy@2 { 2158c0b9ee8SAndrew Bresticker cavium,qlm-trim = "3,sgmii"; 2168c0b9ee8SAndrew Bresticker reg = <2>; 2178c0b9ee8SAndrew Bresticker compatible = "marvell,88e1149r"; 2188c0b9ee8SAndrew Bresticker marvell,reg-init = <3 0x10 0 0x5777>, 2198c0b9ee8SAndrew Bresticker <3 0x11 0 0x00aa>, 2208c0b9ee8SAndrew Bresticker <3 0x12 0 0x4105>, 2218c0b9ee8SAndrew Bresticker <3 0x13 0 0x0a60>; 2228c0b9ee8SAndrew Bresticker }; 2238c0b9ee8SAndrew Bresticker phy13: ethernet-phy@3 { 2248c0b9ee8SAndrew Bresticker cavium,qlm-trim = "3,sgmii"; 2258c0b9ee8SAndrew Bresticker reg = <3>; 2268c0b9ee8SAndrew Bresticker compatible = "marvell,88e1149r"; 2278c0b9ee8SAndrew Bresticker marvell,reg-init = <3 0x10 0 0x5777>, 2288c0b9ee8SAndrew Bresticker <3 0x11 0 0x00aa>, 2298c0b9ee8SAndrew Bresticker <3 0x12 0 0x4105>, 2308c0b9ee8SAndrew Bresticker <3 0x13 0 0x0a60>; 2318c0b9ee8SAndrew Bresticker }; 2328c0b9ee8SAndrew Bresticker phy14: ethernet-phy@4 { 2338c0b9ee8SAndrew Bresticker cavium,qlm-trim = "3,sgmii"; 2348c0b9ee8SAndrew Bresticker reg = <4>; 2358c0b9ee8SAndrew Bresticker compatible = "marvell,88e1149r"; 2368c0b9ee8SAndrew Bresticker marvell,reg-init = <3 0x10 0 0x5777>, 2378c0b9ee8SAndrew Bresticker <3 0x11 0 0x00aa>, 2388c0b9ee8SAndrew Bresticker <3 0x12 0 0x4105>, 2398c0b9ee8SAndrew Bresticker <3 0x13 0 0x0a60>; 2408c0b9ee8SAndrew Bresticker }; 2418c0b9ee8SAndrew Bresticker }; 2428c0b9ee8SAndrew Bresticker 2438c0b9ee8SAndrew Bresticker mix0: ethernet@1070000100000 { 2448c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-5750-mix"; 2458c0b9ee8SAndrew Bresticker reg = <0x10700 0x00100000 0x0 0x100>, /* MIX */ 2468c0b9ee8SAndrew Bresticker <0x11800 0xE0000000 0x0 0x300>, /* AGL */ 2478c0b9ee8SAndrew Bresticker <0x11800 0xE0000400 0x0 0x400>, /* AGL_SHARED */ 2488c0b9ee8SAndrew Bresticker <0x11800 0xE0002000 0x0 0x8>; /* AGL_PRT_CTL */ 2498c0b9ee8SAndrew Bresticker cell-index = <0>; 2508c0b9ee8SAndrew Bresticker interrupts = <6 40>, <6 32>; 2518c0b9ee8SAndrew Bresticker local-mac-address = [ 00 00 00 00 00 00 ]; 2528c0b9ee8SAndrew Bresticker phy-handle = <&phy0>; 2538c0b9ee8SAndrew Bresticker }; 2548c0b9ee8SAndrew Bresticker 2558c0b9ee8SAndrew Bresticker pip: pip@11800a0000000 { 2568c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-3860-pip"; 2578c0b9ee8SAndrew Bresticker #address-cells = <1>; 2588c0b9ee8SAndrew Bresticker #size-cells = <0>; 2598c0b9ee8SAndrew Bresticker reg = <0x11800 0xa0000000 0x0 0x2000>; 2608c0b9ee8SAndrew Bresticker 2618c0b9ee8SAndrew Bresticker interface@4 { 2628c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-3860-pip-interface"; 2638c0b9ee8SAndrew Bresticker #address-cells = <1>; 2648c0b9ee8SAndrew Bresticker #size-cells = <0>; 2658c0b9ee8SAndrew Bresticker reg = <0x4>; /* interface */ 2668c0b9ee8SAndrew Bresticker 2678c0b9ee8SAndrew Bresticker ethernet@0 { 2688c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-3860-pip-port"; 2698c0b9ee8SAndrew Bresticker reg = <0x0>; /* Port */ 2708c0b9ee8SAndrew Bresticker local-mac-address = [ 00 00 00 00 00 00 ]; 2718c0b9ee8SAndrew Bresticker phy-handle = <&phy1>; 2728c0b9ee8SAndrew Bresticker }; 2738c0b9ee8SAndrew Bresticker ethernet@1 { 2748c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-3860-pip-port"; 2758c0b9ee8SAndrew Bresticker reg = <0x1>; /* Port */ 2768c0b9ee8SAndrew Bresticker local-mac-address = [ 00 00 00 00 00 00 ]; 2778c0b9ee8SAndrew Bresticker phy-handle = <&phy2>; 2788c0b9ee8SAndrew Bresticker }; 2798c0b9ee8SAndrew Bresticker ethernet@2 { 2808c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-3860-pip-port"; 2818c0b9ee8SAndrew Bresticker reg = <0x2>; /* Port */ 2828c0b9ee8SAndrew Bresticker local-mac-address = [ 00 00 00 00 00 00 ]; 2838c0b9ee8SAndrew Bresticker phy-handle = <&phy3>; 2848c0b9ee8SAndrew Bresticker }; 2858c0b9ee8SAndrew Bresticker ethernet@3 { 2868c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-3860-pip-port"; 2878c0b9ee8SAndrew Bresticker reg = <0x3>; /* Port */ 2888c0b9ee8SAndrew Bresticker local-mac-address = [ 00 00 00 00 00 00 ]; 2898c0b9ee8SAndrew Bresticker phy-handle = <&phy4>; 2908c0b9ee8SAndrew Bresticker }; 2918c0b9ee8SAndrew Bresticker }; 2928c0b9ee8SAndrew Bresticker 2938c0b9ee8SAndrew Bresticker interface@3 { 2948c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-3860-pip-interface"; 2958c0b9ee8SAndrew Bresticker #address-cells = <1>; 2968c0b9ee8SAndrew Bresticker #size-cells = <0>; 2978c0b9ee8SAndrew Bresticker reg = <0x3>; /* interface */ 2988c0b9ee8SAndrew Bresticker 2998c0b9ee8SAndrew Bresticker ethernet@0 { 3008c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-3860-pip-port"; 3018c0b9ee8SAndrew Bresticker reg = <0x0>; /* Port */ 3028c0b9ee8SAndrew Bresticker local-mac-address = [ 00 00 00 00 00 00 ]; 3038c0b9ee8SAndrew Bresticker phy-handle = <&phy11>; 3048c0b9ee8SAndrew Bresticker }; 3058c0b9ee8SAndrew Bresticker ethernet@1 { 3068c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-3860-pip-port"; 3078c0b9ee8SAndrew Bresticker reg = <0x1>; /* Port */ 3088c0b9ee8SAndrew Bresticker local-mac-address = [ 00 00 00 00 00 00 ]; 3098c0b9ee8SAndrew Bresticker phy-handle = <&phy12>; 3108c0b9ee8SAndrew Bresticker }; 3118c0b9ee8SAndrew Bresticker ethernet@2 { 3128c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-3860-pip-port"; 3138c0b9ee8SAndrew Bresticker reg = <0x2>; /* Port */ 3148c0b9ee8SAndrew Bresticker local-mac-address = [ 00 00 00 00 00 00 ]; 3158c0b9ee8SAndrew Bresticker phy-handle = <&phy13>; 3168c0b9ee8SAndrew Bresticker }; 3178c0b9ee8SAndrew Bresticker ethernet@3 { 3188c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-3860-pip-port"; 3198c0b9ee8SAndrew Bresticker reg = <0x3>; /* Port */ 3208c0b9ee8SAndrew Bresticker local-mac-address = [ 00 00 00 00 00 00 ]; 3218c0b9ee8SAndrew Bresticker phy-handle = <&phy14>; 3228c0b9ee8SAndrew Bresticker }; 3238c0b9ee8SAndrew Bresticker }; 3248c0b9ee8SAndrew Bresticker 3258c0b9ee8SAndrew Bresticker interface@2 { 3268c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-3860-pip-interface"; 3278c0b9ee8SAndrew Bresticker #address-cells = <1>; 3288c0b9ee8SAndrew Bresticker #size-cells = <0>; 3298c0b9ee8SAndrew Bresticker reg = <0x2>; /* interface */ 3308c0b9ee8SAndrew Bresticker 3318c0b9ee8SAndrew Bresticker ethernet@0 { 3328c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-3860-pip-port"; 3338c0b9ee8SAndrew Bresticker reg = <0x0>; /* Port */ 3348c0b9ee8SAndrew Bresticker local-mac-address = [ 00 00 00 00 00 00 ]; 3358c0b9ee8SAndrew Bresticker phy-handle = <&phy21>; 3368c0b9ee8SAndrew Bresticker }; 3378c0b9ee8SAndrew Bresticker ethernet@1 { 3388c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-3860-pip-port"; 3398c0b9ee8SAndrew Bresticker reg = <0x1>; /* Port */ 3408c0b9ee8SAndrew Bresticker local-mac-address = [ 00 00 00 00 00 00 ]; 3418c0b9ee8SAndrew Bresticker phy-handle = <&phy22>; 3428c0b9ee8SAndrew Bresticker }; 3438c0b9ee8SAndrew Bresticker ethernet@2 { 3448c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-3860-pip-port"; 3458c0b9ee8SAndrew Bresticker reg = <0x2>; /* Port */ 3468c0b9ee8SAndrew Bresticker local-mac-address = [ 00 00 00 00 00 00 ]; 3478c0b9ee8SAndrew Bresticker phy-handle = <&phy23>; 3488c0b9ee8SAndrew Bresticker }; 3498c0b9ee8SAndrew Bresticker ethernet@3 { 3508c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-3860-pip-port"; 3518c0b9ee8SAndrew Bresticker reg = <0x3>; /* Port */ 3528c0b9ee8SAndrew Bresticker local-mac-address = [ 00 00 00 00 00 00 ]; 3538c0b9ee8SAndrew Bresticker phy-handle = <&phy24>; 3548c0b9ee8SAndrew Bresticker }; 3558c0b9ee8SAndrew Bresticker }; 3568c0b9ee8SAndrew Bresticker 3578c0b9ee8SAndrew Bresticker interface@1 { 3588c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-3860-pip-interface"; 3598c0b9ee8SAndrew Bresticker #address-cells = <1>; 3608c0b9ee8SAndrew Bresticker #size-cells = <0>; 3618c0b9ee8SAndrew Bresticker reg = <0x1>; /* interface */ 3628c0b9ee8SAndrew Bresticker 3638c0b9ee8SAndrew Bresticker ethernet@0 { 3648c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-3860-pip-port"; 3658c0b9ee8SAndrew Bresticker reg = <0x0>; /* Port */ 3668c0b9ee8SAndrew Bresticker local-mac-address = [ 00 00 00 00 00 00 ]; 3678c0b9ee8SAndrew Bresticker }; 3688c0b9ee8SAndrew Bresticker }; 3698c0b9ee8SAndrew Bresticker 3708c0b9ee8SAndrew Bresticker interface@0 { 3718c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-3860-pip-interface"; 3728c0b9ee8SAndrew Bresticker #address-cells = <1>; 3738c0b9ee8SAndrew Bresticker #size-cells = <0>; 3748c0b9ee8SAndrew Bresticker reg = <0x0>; /* interface */ 3758c0b9ee8SAndrew Bresticker 3768c0b9ee8SAndrew Bresticker ethernet@0 { 3778c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-3860-pip-port"; 3788c0b9ee8SAndrew Bresticker reg = <0x0>; /* Port */ 3798c0b9ee8SAndrew Bresticker local-mac-address = [ 00 00 00 00 00 00 ]; 3808c0b9ee8SAndrew Bresticker phy-handle = <&phy41>; 3818c0b9ee8SAndrew Bresticker }; 3828c0b9ee8SAndrew Bresticker ethernet@1 { 3838c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-3860-pip-port"; 3848c0b9ee8SAndrew Bresticker reg = <0x1>; /* Port */ 3858c0b9ee8SAndrew Bresticker local-mac-address = [ 00 00 00 00 00 00 ]; 3868c0b9ee8SAndrew Bresticker phy-handle = <&phy42>; 3878c0b9ee8SAndrew Bresticker }; 3888c0b9ee8SAndrew Bresticker ethernet@2 { 3898c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-3860-pip-port"; 3908c0b9ee8SAndrew Bresticker reg = <0x2>; /* Port */ 3918c0b9ee8SAndrew Bresticker local-mac-address = [ 00 00 00 00 00 00 ]; 3928c0b9ee8SAndrew Bresticker phy-handle = <&phy43>; 3938c0b9ee8SAndrew Bresticker }; 3948c0b9ee8SAndrew Bresticker ethernet@3 { 3958c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-3860-pip-port"; 3968c0b9ee8SAndrew Bresticker reg = <0x3>; /* Port */ 3978c0b9ee8SAndrew Bresticker local-mac-address = [ 00 00 00 00 00 00 ]; 3988c0b9ee8SAndrew Bresticker phy-handle = <&phy44>; 3998c0b9ee8SAndrew Bresticker }; 4008c0b9ee8SAndrew Bresticker }; 4018c0b9ee8SAndrew Bresticker }; 4028c0b9ee8SAndrew Bresticker 4038c0b9ee8SAndrew Bresticker twsi0: i2c@1180000001000 { 4048c0b9ee8SAndrew Bresticker #address-cells = <1>; 4058c0b9ee8SAndrew Bresticker #size-cells = <0>; 4068c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-3860-twsi"; 4078c0b9ee8SAndrew Bresticker reg = <0x11800 0x00001000 0x0 0x200>; 4088c0b9ee8SAndrew Bresticker interrupts = <3 32>; 4098c0b9ee8SAndrew Bresticker clock-frequency = <100000>; 4108c0b9ee8SAndrew Bresticker 4118c0b9ee8SAndrew Bresticker rtc@68 { 4128c0b9ee8SAndrew Bresticker compatible = "dallas,ds1337"; 4138c0b9ee8SAndrew Bresticker reg = <0x68>; 4148c0b9ee8SAndrew Bresticker }; 4158c0b9ee8SAndrew Bresticker tmp@4c { 4168c0b9ee8SAndrew Bresticker compatible = "ti,tmp421"; 4178c0b9ee8SAndrew Bresticker reg = <0x4c>; 4188c0b9ee8SAndrew Bresticker }; 4198c0b9ee8SAndrew Bresticker }; 4208c0b9ee8SAndrew Bresticker 4218c0b9ee8SAndrew Bresticker twsi1: i2c@1180000001200 { 4228c0b9ee8SAndrew Bresticker #address-cells = <1>; 4238c0b9ee8SAndrew Bresticker #size-cells = <0>; 4248c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-3860-twsi"; 4258c0b9ee8SAndrew Bresticker reg = <0x11800 0x00001200 0x0 0x200>; 4268c0b9ee8SAndrew Bresticker interrupts = <3 33>; 4278c0b9ee8SAndrew Bresticker clock-frequency = <100000>; 4288c0b9ee8SAndrew Bresticker }; 4298c0b9ee8SAndrew Bresticker 4308c0b9ee8SAndrew Bresticker uart0: serial@1180000000800 { 4318c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-3860-uart","ns16550"; 4328c0b9ee8SAndrew Bresticker reg = <0x11800 0x00000800 0x0 0x400>; 4338c0b9ee8SAndrew Bresticker clock-frequency = <0>; 4348c0b9ee8SAndrew Bresticker current-speed = <115200>; 4358c0b9ee8SAndrew Bresticker reg-shift = <3>; 4368c0b9ee8SAndrew Bresticker interrupts = <3 36>; 4378c0b9ee8SAndrew Bresticker }; 4388c0b9ee8SAndrew Bresticker 4398c0b9ee8SAndrew Bresticker uart1: serial@1180000000c00 { 4408c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-3860-uart","ns16550"; 4418c0b9ee8SAndrew Bresticker reg = <0x11800 0x00000c00 0x0 0x400>; 4428c0b9ee8SAndrew Bresticker clock-frequency = <0>; 4438c0b9ee8SAndrew Bresticker current-speed = <115200>; 4448c0b9ee8SAndrew Bresticker reg-shift = <3>; 4458c0b9ee8SAndrew Bresticker interrupts = <3 37>; 4468c0b9ee8SAndrew Bresticker }; 4478c0b9ee8SAndrew Bresticker 4488c0b9ee8SAndrew Bresticker bootbus: bootbus@1180000000000 { 4498c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-3860-bootbus"; 4508c0b9ee8SAndrew Bresticker reg = <0x11800 0x00000000 0x0 0x200>; 4518c0b9ee8SAndrew Bresticker /* The chip select number and offset */ 4528c0b9ee8SAndrew Bresticker #address-cells = <2>; 4538c0b9ee8SAndrew Bresticker /* The size of the chip select region */ 4548c0b9ee8SAndrew Bresticker #size-cells = <1>; 4558c0b9ee8SAndrew Bresticker ranges = <0 0 0 0x1f400000 0xc00000>, 4568c0b9ee8SAndrew Bresticker <1 0 0x10000 0x30000000 0>, 4578c0b9ee8SAndrew Bresticker <2 0 0x10000 0x40000000 0>, 4588c0b9ee8SAndrew Bresticker <3 0 0x10000 0x50000000 0>, 4598c0b9ee8SAndrew Bresticker <4 0 0 0x1d020000 0x10000>, 4608c0b9ee8SAndrew Bresticker <5 0 0 0x1d040000 0x10000>, 4618c0b9ee8SAndrew Bresticker <6 0 0 0x1d050000 0x10000>, 4628c0b9ee8SAndrew Bresticker <7 0 0x10000 0x90000000 0>; 4638c0b9ee8SAndrew Bresticker 4648c0b9ee8SAndrew Bresticker cavium,cs-config@0 { 4658c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-3860-bootbus-config"; 4668c0b9ee8SAndrew Bresticker cavium,cs-index = <0>; 4678c0b9ee8SAndrew Bresticker cavium,t-adr = <10>; 4688c0b9ee8SAndrew Bresticker cavium,t-ce = <50>; 4698c0b9ee8SAndrew Bresticker cavium,t-oe = <50>; 4708c0b9ee8SAndrew Bresticker cavium,t-we = <35>; 4718c0b9ee8SAndrew Bresticker cavium,t-rd-hld = <25>; 4728c0b9ee8SAndrew Bresticker cavium,t-wr-hld = <35>; 4738c0b9ee8SAndrew Bresticker cavium,t-pause = <0>; 4748c0b9ee8SAndrew Bresticker cavium,t-wait = <300>; 4758c0b9ee8SAndrew Bresticker cavium,t-page = <25>; 4768c0b9ee8SAndrew Bresticker cavium,t-rd-dly = <0>; 4778c0b9ee8SAndrew Bresticker 4788c0b9ee8SAndrew Bresticker cavium,pages = <0>; 4798c0b9ee8SAndrew Bresticker cavium,bus-width = <8>; 4808c0b9ee8SAndrew Bresticker }; 4818c0b9ee8SAndrew Bresticker cavium,cs-config@4 { 4828c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-3860-bootbus-config"; 4838c0b9ee8SAndrew Bresticker cavium,cs-index = <4>; 4848c0b9ee8SAndrew Bresticker cavium,t-adr = <320>; 4858c0b9ee8SAndrew Bresticker cavium,t-ce = <320>; 4868c0b9ee8SAndrew Bresticker cavium,t-oe = <320>; 4878c0b9ee8SAndrew Bresticker cavium,t-we = <320>; 4888c0b9ee8SAndrew Bresticker cavium,t-rd-hld = <320>; 4898c0b9ee8SAndrew Bresticker cavium,t-wr-hld = <320>; 4908c0b9ee8SAndrew Bresticker cavium,t-pause = <320>; 4918c0b9ee8SAndrew Bresticker cavium,t-wait = <320>; 4928c0b9ee8SAndrew Bresticker cavium,t-page = <320>; 4938c0b9ee8SAndrew Bresticker cavium,t-rd-dly = <0>; 4948c0b9ee8SAndrew Bresticker 4958c0b9ee8SAndrew Bresticker cavium,pages = <0>; 4968c0b9ee8SAndrew Bresticker cavium,bus-width = <8>; 4978c0b9ee8SAndrew Bresticker }; 4988c0b9ee8SAndrew Bresticker cavium,cs-config@5 { 4998c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-3860-bootbus-config"; 5008c0b9ee8SAndrew Bresticker cavium,cs-index = <5>; 5018c0b9ee8SAndrew Bresticker cavium,t-adr = <0>; 5028c0b9ee8SAndrew Bresticker cavium,t-ce = <300>; 5038c0b9ee8SAndrew Bresticker cavium,t-oe = <125>; 5048c0b9ee8SAndrew Bresticker cavium,t-we = <150>; 5058c0b9ee8SAndrew Bresticker cavium,t-rd-hld = <100>; 5068c0b9ee8SAndrew Bresticker cavium,t-wr-hld = <300>; 5078c0b9ee8SAndrew Bresticker cavium,t-pause = <0>; 5088c0b9ee8SAndrew Bresticker cavium,t-wait = <300>; 5098c0b9ee8SAndrew Bresticker cavium,t-page = <310>; 5108c0b9ee8SAndrew Bresticker cavium,t-rd-dly = <0>; 5118c0b9ee8SAndrew Bresticker 5128c0b9ee8SAndrew Bresticker cavium,pages = <0>; 5138c0b9ee8SAndrew Bresticker cavium,bus-width = <16>; 5148c0b9ee8SAndrew Bresticker }; 5158c0b9ee8SAndrew Bresticker cavium,cs-config@6 { 5168c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-3860-bootbus-config"; 5178c0b9ee8SAndrew Bresticker cavium,cs-index = <6>; 5188c0b9ee8SAndrew Bresticker cavium,t-adr = <0>; 5198c0b9ee8SAndrew Bresticker cavium,t-ce = <30>; 5208c0b9ee8SAndrew Bresticker cavium,t-oe = <125>; 5218c0b9ee8SAndrew Bresticker cavium,t-we = <150>; 5228c0b9ee8SAndrew Bresticker cavium,t-rd-hld = <100>; 5238c0b9ee8SAndrew Bresticker cavium,t-wr-hld = <30>; 5248c0b9ee8SAndrew Bresticker cavium,t-pause = <0>; 5258c0b9ee8SAndrew Bresticker cavium,t-wait = <30>; 5268c0b9ee8SAndrew Bresticker cavium,t-page = <310>; 5278c0b9ee8SAndrew Bresticker cavium,t-rd-dly = <0>; 5288c0b9ee8SAndrew Bresticker 5298c0b9ee8SAndrew Bresticker cavium,pages = <0>; 5308c0b9ee8SAndrew Bresticker cavium,wait-mode; 5318c0b9ee8SAndrew Bresticker cavium,bus-width = <16>; 5328c0b9ee8SAndrew Bresticker }; 5338c0b9ee8SAndrew Bresticker 5348c0b9ee8SAndrew Bresticker flash0: nor@0,0 { 5358c0b9ee8SAndrew Bresticker compatible = "cfi-flash"; 5368c0b9ee8SAndrew Bresticker reg = <0 0 0x800000>; 5378c0b9ee8SAndrew Bresticker #address-cells = <1>; 5388c0b9ee8SAndrew Bresticker #size-cells = <1>; 5398c0b9ee8SAndrew Bresticker 5408c0b9ee8SAndrew Bresticker partition@0 { 5418c0b9ee8SAndrew Bresticker label = "bootloader"; 5428c0b9ee8SAndrew Bresticker reg = <0 0x200000>; 5438c0b9ee8SAndrew Bresticker read-only; 5448c0b9ee8SAndrew Bresticker }; 5458c0b9ee8SAndrew Bresticker partition@200000 { 5468c0b9ee8SAndrew Bresticker label = "kernel"; 5478c0b9ee8SAndrew Bresticker reg = <0x200000 0x200000>; 5488c0b9ee8SAndrew Bresticker }; 5498c0b9ee8SAndrew Bresticker partition@400000 { 5508c0b9ee8SAndrew Bresticker label = "cramfs"; 5518c0b9ee8SAndrew Bresticker reg = <0x400000 0x3fe000>; 5528c0b9ee8SAndrew Bresticker }; 5538c0b9ee8SAndrew Bresticker partition@7fe000 { 5548c0b9ee8SAndrew Bresticker label = "environment"; 5558c0b9ee8SAndrew Bresticker reg = <0x7fe000 0x2000>; 5568c0b9ee8SAndrew Bresticker read-only; 5578c0b9ee8SAndrew Bresticker }; 5588c0b9ee8SAndrew Bresticker }; 5598c0b9ee8SAndrew Bresticker 5608c0b9ee8SAndrew Bresticker led0: led-display@4,0 { 5618c0b9ee8SAndrew Bresticker compatible = "avago,hdsp-253x"; 5628c0b9ee8SAndrew Bresticker reg = <4 0x20 0x20>, <4 0 0x20>; 5638c0b9ee8SAndrew Bresticker }; 5648c0b9ee8SAndrew Bresticker 5658c0b9ee8SAndrew Bresticker compact-flash@5,0 { 5668c0b9ee8SAndrew Bresticker compatible = "cavium,ebt3000-compact-flash"; 5678c0b9ee8SAndrew Bresticker reg = <5 0 0x10000>, <6 0 0x10000>; 5688c0b9ee8SAndrew Bresticker cavium,bus-width = <16>; 5698c0b9ee8SAndrew Bresticker cavium,true-ide; 5708c0b9ee8SAndrew Bresticker cavium,dma-engine-handle = <&dma0>; 5718c0b9ee8SAndrew Bresticker }; 5728c0b9ee8SAndrew Bresticker }; 5738c0b9ee8SAndrew Bresticker 5748c0b9ee8SAndrew Bresticker dma0: dma-engine@1180000000100 { 5758c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-5750-bootbus-dma"; 5768c0b9ee8SAndrew Bresticker reg = <0x11800 0x00000100 0x0 0x8>; 5778c0b9ee8SAndrew Bresticker interrupts = <0 63>; 5788c0b9ee8SAndrew Bresticker }; 5798c0b9ee8SAndrew Bresticker dma1: dma-engine@1180000000108 { 5808c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-5750-bootbus-dma"; 5818c0b9ee8SAndrew Bresticker reg = <0x11800 0x00000108 0x0 0x8>; 5828c0b9ee8SAndrew Bresticker interrupts = <0 63>; 5838c0b9ee8SAndrew Bresticker }; 5848c0b9ee8SAndrew Bresticker 5858c0b9ee8SAndrew Bresticker uctl: uctl@118006f000000 { 5868c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-6335-uctl"; 5878c0b9ee8SAndrew Bresticker reg = <0x11800 0x6f000000 0x0 0x100>; 5888c0b9ee8SAndrew Bresticker ranges; /* Direct mapping */ 5898c0b9ee8SAndrew Bresticker #address-cells = <2>; 5908c0b9ee8SAndrew Bresticker #size-cells = <2>; 5918c0b9ee8SAndrew Bresticker /* 12MHz, 24MHz and 48MHz allowed */ 5928c0b9ee8SAndrew Bresticker refclk-frequency = <12000000>; 5938c0b9ee8SAndrew Bresticker /* Either "crystal" or "external" */ 5948c0b9ee8SAndrew Bresticker refclk-type = "crystal"; 5958c0b9ee8SAndrew Bresticker 5968c0b9ee8SAndrew Bresticker ehci@16f0000000000 { 5978c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-6335-ehci","usb-ehci"; 5988c0b9ee8SAndrew Bresticker reg = <0x16f00 0x00000000 0x0 0x100>; 5998c0b9ee8SAndrew Bresticker interrupts = <3 44>; 6008c0b9ee8SAndrew Bresticker big-endian-regs; 6018c0b9ee8SAndrew Bresticker }; 6028c0b9ee8SAndrew Bresticker ohci@16f0000000400 { 6038c0b9ee8SAndrew Bresticker compatible = "cavium,octeon-6335-ohci","usb-ohci"; 6048c0b9ee8SAndrew Bresticker reg = <0x16f00 0x00000400 0x0 0x100>; 6058c0b9ee8SAndrew Bresticker interrupts = <3 44>; 6068c0b9ee8SAndrew Bresticker big-endian-regs; 6078c0b9ee8SAndrew Bresticker }; 6088c0b9ee8SAndrew Bresticker }; 6098c0b9ee8SAndrew Bresticker }; 6108c0b9ee8SAndrew Bresticker 6118c0b9ee8SAndrew Bresticker aliases { 6128c0b9ee8SAndrew Bresticker mix0 = &mix0; 6138c0b9ee8SAndrew Bresticker pip = &pip; 6148c0b9ee8SAndrew Bresticker smi0 = &smi0; 6158c0b9ee8SAndrew Bresticker smi1 = &smi1; 6168c0b9ee8SAndrew Bresticker smi2 = &smi2; 6178c0b9ee8SAndrew Bresticker smi3 = &smi3; 6188c0b9ee8SAndrew Bresticker twsi0 = &twsi0; 6198c0b9ee8SAndrew Bresticker twsi1 = &twsi1; 6208c0b9ee8SAndrew Bresticker uart0 = &uart0; 6218c0b9ee8SAndrew Bresticker uart1 = &uart1; 6228c0b9ee8SAndrew Bresticker uctl = &uctl; 6238c0b9ee8SAndrew Bresticker led0 = &led0; 6248c0b9ee8SAndrew Bresticker flash0 = &flash0; 6258c0b9ee8SAndrew Bresticker }; 6268c0b9ee8SAndrew Bresticker }; 627