1*4882a593Smuzhiyun// SPDX-License-Identifier: GPL-2.0 2*4882a593Smuzhiyun#include "kirkwood.dtsi" 3*4882a593Smuzhiyun#include "kirkwood-6281.dtsi" 4*4882a593Smuzhiyun 5*4882a593Smuzhiyun/ { 6*4882a593Smuzhiyun chosen { 7*4882a593Smuzhiyun bootargs = "console=ttyS0,115200n8 earlyprintk"; 8*4882a593Smuzhiyun stdout-path = &uart0; 9*4882a593Smuzhiyun }; 10*4882a593Smuzhiyun 11*4882a593Smuzhiyun ocp@f1000000 { 12*4882a593Smuzhiyun pinctrl: pin-controller@10000 { 13*4882a593Smuzhiyun /* Non-default UART pins */ 14*4882a593Smuzhiyun pmx_uart0: pmx-uart0 { 15*4882a593Smuzhiyun marvell,pins = "mpp4", "mpp5"; 16*4882a593Smuzhiyun }; 17*4882a593Smuzhiyun 18*4882a593Smuzhiyun pmx_power_hdd: pmx-power-hdd { 19*4882a593Smuzhiyun marvell,pins = "mpp10"; 20*4882a593Smuzhiyun marvell,function = "gpo"; 21*4882a593Smuzhiyun }; 22*4882a593Smuzhiyun pmx_usb_vbus: pmx-usb-vbus { 23*4882a593Smuzhiyun marvell,pins = "mpp11"; 24*4882a593Smuzhiyun marvell,function = "gpio"; 25*4882a593Smuzhiyun }; 26*4882a593Smuzhiyun pmx_fan_high: pmx-fan-high { 27*4882a593Smuzhiyun marvell,pins = "mpp18"; 28*4882a593Smuzhiyun marvell,function = "gpo"; 29*4882a593Smuzhiyun }; 30*4882a593Smuzhiyun pmx_fan_low: pmx-fan-low { 31*4882a593Smuzhiyun marvell,pins = "mpp19"; 32*4882a593Smuzhiyun marvell,function = "gpo"; 33*4882a593Smuzhiyun }; 34*4882a593Smuzhiyun pmx_led_function_blue: pmx-led-function-blue { 35*4882a593Smuzhiyun marvell,pins = "mpp36"; 36*4882a593Smuzhiyun marvell,function = "gpio"; 37*4882a593Smuzhiyun }; 38*4882a593Smuzhiyun pmx_led_alarm: pmx-led-alarm { 39*4882a593Smuzhiyun marvell,pins = "mpp37"; 40*4882a593Smuzhiyun marvell,function = "gpio"; 41*4882a593Smuzhiyun }; 42*4882a593Smuzhiyun pmx_led_info: pmx-led-info { 43*4882a593Smuzhiyun marvell,pins = "mpp38"; 44*4882a593Smuzhiyun marvell,function = "gpio"; 45*4882a593Smuzhiyun }; 46*4882a593Smuzhiyun pmx_led_power: pmx-led-power { 47*4882a593Smuzhiyun marvell,pins = "mpp39"; 48*4882a593Smuzhiyun marvell,function = "gpio"; 49*4882a593Smuzhiyun }; 50*4882a593Smuzhiyun pmx_fan_lock: pmx-fan-lock { 51*4882a593Smuzhiyun marvell,pins = "mpp40"; 52*4882a593Smuzhiyun marvell,function = "gpio"; 53*4882a593Smuzhiyun }; 54*4882a593Smuzhiyun pmx_button_function: pmx-button-function { 55*4882a593Smuzhiyun marvell,pins = "mpp41"; 56*4882a593Smuzhiyun marvell,function = "gpio"; 57*4882a593Smuzhiyun }; 58*4882a593Smuzhiyun pmx_power_switch: pmx-power-switch { 59*4882a593Smuzhiyun marvell,pins = "mpp42"; 60*4882a593Smuzhiyun marvell,function = "gpio"; 61*4882a593Smuzhiyun }; 62*4882a593Smuzhiyun pmx_power_auto_switch: pmx-power-auto-switch { 63*4882a593Smuzhiyun marvell,pins = "mpp43"; 64*4882a593Smuzhiyun marvell,function = "gpio"; 65*4882a593Smuzhiyun }; 66*4882a593Smuzhiyun pmx_led_function_red: pmx-led-function_red { 67*4882a593Smuzhiyun marvell,pins = "mpp48"; 68*4882a593Smuzhiyun marvell,function = "gpio"; 69*4882a593Smuzhiyun }; 70*4882a593Smuzhiyun 71*4882a593Smuzhiyun }; 72*4882a593Smuzhiyun sata@80000 { 73*4882a593Smuzhiyun status = "okay"; 74*4882a593Smuzhiyun nr-ports = <1>; 75*4882a593Smuzhiyun }; 76*4882a593Smuzhiyun 77*4882a593Smuzhiyun spi@10600 { 78*4882a593Smuzhiyun status = "okay"; 79*4882a593Smuzhiyun 80*4882a593Smuzhiyun m25p40@0 { 81*4882a593Smuzhiyun #address-cells = <1>; 82*4882a593Smuzhiyun #size-cells = <1>; 83*4882a593Smuzhiyun compatible = "m25p40", "jedec,spi-nor"; 84*4882a593Smuzhiyun reg = <0>; 85*4882a593Smuzhiyun spi-max-frequency = <25000000>; 86*4882a593Smuzhiyun mode = <0>; 87*4882a593Smuzhiyun 88*4882a593Smuzhiyun partition@0 { 89*4882a593Smuzhiyun reg = <0x0 0x60000>; 90*4882a593Smuzhiyun label = "uboot"; 91*4882a593Smuzhiyun read-only; 92*4882a593Smuzhiyun }; 93*4882a593Smuzhiyun 94*4882a593Smuzhiyun partition@60000 { 95*4882a593Smuzhiyun reg = <0x60000 0x10000>; 96*4882a593Smuzhiyun label = "dtb"; 97*4882a593Smuzhiyun read-only; 98*4882a593Smuzhiyun }; 99*4882a593Smuzhiyun 100*4882a593Smuzhiyun partition@70000 { 101*4882a593Smuzhiyun reg = <0x70000 0x10000>; 102*4882a593Smuzhiyun label = "uboot_env"; 103*4882a593Smuzhiyun }; 104*4882a593Smuzhiyun }; 105*4882a593Smuzhiyun }; 106*4882a593Smuzhiyun }; 107*4882a593Smuzhiyun 108*4882a593Smuzhiyun gpio_keys { 109*4882a593Smuzhiyun compatible = "gpio-keys"; 110*4882a593Smuzhiyun #address-cells = <1>; 111*4882a593Smuzhiyun #size-cells = <0>; 112*4882a593Smuzhiyun pinctrl-0 = <&pmx_button_function &pmx_power_switch 113*4882a593Smuzhiyun &pmx_power_auto_switch>; 114*4882a593Smuzhiyun pinctrl-names = "default"; 115*4882a593Smuzhiyun 116*4882a593Smuzhiyun option { 117*4882a593Smuzhiyun label = "Function Button"; 118*4882a593Smuzhiyun linux,code = <KEY_OPTION>; 119*4882a593Smuzhiyun gpios = <&gpio1 9 GPIO_ACTIVE_LOW>; 120*4882a593Smuzhiyun }; 121*4882a593Smuzhiyun reserved { 122*4882a593Smuzhiyun label = "Power-on Switch"; 123*4882a593Smuzhiyun linux,code = <KEY_RESERVED>; 124*4882a593Smuzhiyun linux,input-type = <5>; 125*4882a593Smuzhiyun gpios = <&gpio1 10 GPIO_ACTIVE_LOW>; 126*4882a593Smuzhiyun }; 127*4882a593Smuzhiyun power { 128*4882a593Smuzhiyun label = "Power-auto Switch"; 129*4882a593Smuzhiyun linux,code = <KEY_ESC>; 130*4882a593Smuzhiyun linux,input-type = <5>; 131*4882a593Smuzhiyun gpios = <&gpio1 11 GPIO_ACTIVE_LOW>; 132*4882a593Smuzhiyun }; 133*4882a593Smuzhiyun }; 134*4882a593Smuzhiyun 135*4882a593Smuzhiyun gpio_leds { 136*4882a593Smuzhiyun compatible = "gpio-leds"; 137*4882a593Smuzhiyun pinctrl-0 = <&pmx_led_function_red &pmx_led_alarm 138*4882a593Smuzhiyun &pmx_led_info &pmx_led_power 139*4882a593Smuzhiyun &pmx_led_function_blue>; 140*4882a593Smuzhiyun pinctrl-names = "default"; 141*4882a593Smuzhiyun 142*4882a593Smuzhiyun func_blue { 143*4882a593Smuzhiyun label = "lsxl:blue:func"; 144*4882a593Smuzhiyun gpios = <&gpio1 4 GPIO_ACTIVE_LOW>; 145*4882a593Smuzhiyun }; 146*4882a593Smuzhiyun 147*4882a593Smuzhiyun alarm { 148*4882a593Smuzhiyun label = "lsxl:red:alarm"; 149*4882a593Smuzhiyun gpios = <&gpio1 5 GPIO_ACTIVE_LOW>; 150*4882a593Smuzhiyun }; 151*4882a593Smuzhiyun 152*4882a593Smuzhiyun info { 153*4882a593Smuzhiyun label = "lsxl:amber:info"; 154*4882a593Smuzhiyun gpios = <&gpio1 6 GPIO_ACTIVE_LOW>; 155*4882a593Smuzhiyun }; 156*4882a593Smuzhiyun 157*4882a593Smuzhiyun power { 158*4882a593Smuzhiyun label = "lsxl:blue:power"; 159*4882a593Smuzhiyun gpios = <&gpio1 7 GPIO_ACTIVE_LOW>; 160*4882a593Smuzhiyun default-state = "keep"; 161*4882a593Smuzhiyun }; 162*4882a593Smuzhiyun 163*4882a593Smuzhiyun func_red { 164*4882a593Smuzhiyun label = "lsxl:red:func"; 165*4882a593Smuzhiyun gpios = <&gpio1 16 GPIO_ACTIVE_LOW>; 166*4882a593Smuzhiyun }; 167*4882a593Smuzhiyun }; 168*4882a593Smuzhiyun 169*4882a593Smuzhiyun gpio_fan { 170*4882a593Smuzhiyun compatible = "gpio-fan"; 171*4882a593Smuzhiyun pinctrl-0 = <&pmx_fan_low &pmx_fan_high &pmx_fan_lock>; 172*4882a593Smuzhiyun pinctrl-names = "default"; 173*4882a593Smuzhiyun gpios = <&gpio0 19 GPIO_ACTIVE_LOW 174*4882a593Smuzhiyun &gpio0 18 GPIO_ACTIVE_LOW>; 175*4882a593Smuzhiyun gpio-fan,speed-map = <0 3 176*4882a593Smuzhiyun 1500 2 177*4882a593Smuzhiyun 3250 1 178*4882a593Smuzhiyun 5000 0>; 179*4882a593Smuzhiyun alarm-gpios = <&gpio1 8 GPIO_ACTIVE_HIGH>; 180*4882a593Smuzhiyun }; 181*4882a593Smuzhiyun 182*4882a593Smuzhiyun restart_poweroff { 183*4882a593Smuzhiyun compatible = "restart-poweroff"; 184*4882a593Smuzhiyun }; 185*4882a593Smuzhiyun 186*4882a593Smuzhiyun regulators { 187*4882a593Smuzhiyun compatible = "simple-bus"; 188*4882a593Smuzhiyun #address-cells = <1>; 189*4882a593Smuzhiyun #size-cells = <0>; 190*4882a593Smuzhiyun pinctrl-0 = <&pmx_power_hdd &pmx_usb_vbus>; 191*4882a593Smuzhiyun pinctrl-names = "default"; 192*4882a593Smuzhiyun 193*4882a593Smuzhiyun usb_power: regulator@1 { 194*4882a593Smuzhiyun compatible = "regulator-fixed"; 195*4882a593Smuzhiyun reg = <1>; 196*4882a593Smuzhiyun regulator-name = "USB Power"; 197*4882a593Smuzhiyun regulator-min-microvolt = <5000000>; 198*4882a593Smuzhiyun regulator-max-microvolt = <5000000>; 199*4882a593Smuzhiyun enable-active-high; 200*4882a593Smuzhiyun regulator-always-on; 201*4882a593Smuzhiyun regulator-boot-on; 202*4882a593Smuzhiyun gpio = <&gpio0 11 0>; 203*4882a593Smuzhiyun }; 204*4882a593Smuzhiyun hdd_power: regulator@2 { 205*4882a593Smuzhiyun compatible = "regulator-fixed"; 206*4882a593Smuzhiyun reg = <2>; 207*4882a593Smuzhiyun regulator-name = "HDD Power"; 208*4882a593Smuzhiyun regulator-min-microvolt = <5000000>; 209*4882a593Smuzhiyun regulator-max-microvolt = <5000000>; 210*4882a593Smuzhiyun enable-active-high; 211*4882a593Smuzhiyun regulator-always-on; 212*4882a593Smuzhiyun regulator-boot-on; 213*4882a593Smuzhiyun gpio = <&gpio0 10 0>; 214*4882a593Smuzhiyun }; 215*4882a593Smuzhiyun }; 216*4882a593Smuzhiyun}; 217*4882a593Smuzhiyun 218*4882a593Smuzhiyun&mdio { 219*4882a593Smuzhiyun status = "okay"; 220*4882a593Smuzhiyun 221*4882a593Smuzhiyun ethphy1: ethernet-phy@8 { 222*4882a593Smuzhiyun reg = <8>; 223*4882a593Smuzhiyun }; 224*4882a593Smuzhiyun}; 225*4882a593Smuzhiyun 226*4882a593Smuzhiyunð1 { 227*4882a593Smuzhiyun status = "okay"; 228*4882a593Smuzhiyun ethernet1-port@0 { 229*4882a593Smuzhiyun phy-handle = <ðphy1>; 230*4882a593Smuzhiyun }; 231*4882a593Smuzhiyun}; 232