1*724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0
2*724ba675SRob Herring/*
3*724ba675SRob Herring * Marvell OpenRD (Base|Client|Ultimate) Board Description
4*724ba675SRob Herring *
5*724ba675SRob Herring * Andrew Lunn <andrew@lunn.ch>
6*724ba675SRob Herring *
7*724ba675SRob Herring * This file contains the definitions that are common between the three
8*724ba675SRob Herring * variants of the Marvell Kirkwood Development Board.
9*724ba675SRob Herring */
10*724ba675SRob Herring
11*724ba675SRob Herring#include "kirkwood.dtsi"
12*724ba675SRob Herring#include "kirkwood-6281.dtsi"
13*724ba675SRob Herring
14*724ba675SRob Herring/ {
15*724ba675SRob Herring	memory {
16*724ba675SRob Herring		device_type = "memory";
17*724ba675SRob Herring		reg = <0x00000000 0x20000000>;
18*724ba675SRob Herring	};
19*724ba675SRob Herring
20*724ba675SRob Herring	chosen {
21*724ba675SRob Herring		bootargs = "console=ttyS0,115200n8";
22*724ba675SRob Herring		stdout-path = &uart0;
23*724ba675SRob Herring	};
24*724ba675SRob Herring
25*724ba675SRob Herring	ocp@f1000000 {
26*724ba675SRob Herring		pinctrl: pin-controller@10000 {
27*724ba675SRob Herring			pinctrl-0 = <&pmx_select28 &pmx_sdio_cd &pmx_select34>;
28*724ba675SRob Herring			pinctrl-names = "default";
29*724ba675SRob Herring
30*724ba675SRob Herring			pmx_select28: pmx-select-rs232-rs485 {
31*724ba675SRob Herring				marvell,pins = "mpp28";
32*724ba675SRob Herring				marvell,function = "gpio";
33*724ba675SRob Herring			};
34*724ba675SRob Herring			pmx_sdio_cd: pmx-sdio-cd {
35*724ba675SRob Herring				marvell,pins = "mpp29";
36*724ba675SRob Herring				marvell,function = "gpio";
37*724ba675SRob Herring			};
38*724ba675SRob Herring			pmx_select34: pmx-select-uart-sd {
39*724ba675SRob Herring				marvell,pins = "mpp34";
40*724ba675SRob Herring				marvell,function = "gpio";
41*724ba675SRob Herring			};
42*724ba675SRob Herring		};
43*724ba675SRob Herring		serial@12000 {
44*724ba675SRob Herring			status = "okay";
45*724ba675SRob Herring
46*724ba675SRob Herring		};
47*724ba675SRob Herring		sata@80000 {
48*724ba675SRob Herring			status = "okay";
49*724ba675SRob Herring			nr-ports = <2>;
50*724ba675SRob Herring		};
51*724ba675SRob Herring		mvsdio@90000 {
52*724ba675SRob Herring			status = "okay";
53*724ba675SRob Herring			cd-gpios = <&gpio0 29 9>;
54*724ba675SRob Herring		};
55*724ba675SRob Herring		gpio@10100 {
56*724ba675SRob Herring			p28 {
57*724ba675SRob Herring				gpio-hog;
58*724ba675SRob Herring				gpios = <28 GPIO_ACTIVE_HIGH>;
59*724ba675SRob Herring				/*
60*724ba675SRob Herring				 * SelRS232or485 selects between RS-232 or RS-485
61*724ba675SRob Herring				 * mode for the second UART.
62*724ba675SRob Herring				 *
63*724ba675SRob Herring				 * Low: RS-232
64*724ba675SRob Herring				 * High: RS-485
65*724ba675SRob Herring				 *
66*724ba675SRob Herring				 * To use the second UART, you need to change also
67*724ba675SRob Herring				 * the SelUARTorSD.
68*724ba675SRob Herring				 */
69*724ba675SRob Herring				output-low;
70*724ba675SRob Herring				line-name = "SelRS232or485";
71*724ba675SRob Herring			};
72*724ba675SRob Herring		};
73*724ba675SRob Herring		gpio@10140 {
74*724ba675SRob Herring			p2 {
75*724ba675SRob Herring				gpio-hog;
76*724ba675SRob Herring				gpios = <2 GPIO_ACTIVE_HIGH>;
77*724ba675SRob Herring				/*
78*724ba675SRob Herring				 * SelUARTorSD selects between the second UART
79*724ba675SRob Herring				 * (serial@12100) and SD (mvsdio@90000).
80*724ba675SRob Herring				 *
81*724ba675SRob Herring				 * Low: UART
82*724ba675SRob Herring				 * High: SD
83*724ba675SRob Herring				 *
84*724ba675SRob Herring				 * When changing this line make sure the newly
85*724ba675SRob Herring				 * selected device node is enabled and the
86*724ba675SRob Herring				 * previously selected device node is disabled.
87*724ba675SRob Herring				 */
88*724ba675SRob Herring				output-high; /* Select SD by default */
89*724ba675SRob Herring				line-name = "SelUARTorSD";
90*724ba675SRob Herring			};
91*724ba675SRob Herring		};
92*724ba675SRob Herring	};
93*724ba675SRob Herring};
94*724ba675SRob Herring
95*724ba675SRob Herring&nand {
96*724ba675SRob Herring	status = "okay";
97*724ba675SRob Herring	pinctrl-0 = <&pmx_nand>;
98*724ba675SRob Herring	pinctrl-names = "default";
99*724ba675SRob Herring
100*724ba675SRob Herring	partition@0 {
101*724ba675SRob Herring		label = "u-boot";
102*724ba675SRob Herring		reg = <0x0000000 0x100000>;
103*724ba675SRob Herring	};
104*724ba675SRob Herring
105*724ba675SRob Herring	partition@100000 {
106*724ba675SRob Herring		label = "uImage";
107*724ba675SRob Herring		reg = <0x0100000 0x400000>;
108*724ba675SRob Herring	};
109*724ba675SRob Herring
110*724ba675SRob Herring	partition@600000 {
111*724ba675SRob Herring		label = "root";
112*724ba675SRob Herring		reg = <0x0600000 0x1FA00000>;
113*724ba675SRob Herring	};
114*724ba675SRob Herring};
115*724ba675SRob Herring
116*724ba675SRob Herring&pciec {
117*724ba675SRob Herring	status = "okay";
118*724ba675SRob Herring};
119*724ba675SRob Herring
120*724ba675SRob Herring&pcie0 {
121*724ba675SRob Herring	status = "okay";
122*724ba675SRob Herring};
123