1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0+ 2*f126890aSEmmanuel Vadot/* Device tree file for the Zyxel NSA 325 NAS box. 3*f126890aSEmmanuel Vadot * 4*f126890aSEmmanuel Vadot * Copyright (c) 2015, Hans Ulli Kroll <ulli.kroll@googlemail.com> 5*f126890aSEmmanuel Vadot * 6*f126890aSEmmanuel Vadot * 7*f126890aSEmmanuel Vadot * Based upon the board setup file created by Peter Schildmann 8*f126890aSEmmanuel Vadot */ 9*f126890aSEmmanuel Vadot 10*f126890aSEmmanuel Vadot/dts-v1/; 11*f126890aSEmmanuel Vadot 12*f126890aSEmmanuel Vadot#include "kirkwood-nsa3x0-common.dtsi" 13*f126890aSEmmanuel Vadot 14*f126890aSEmmanuel Vadot/ { 15*f126890aSEmmanuel Vadot model = "ZyXEL NSA325"; 16*f126890aSEmmanuel Vadot compatible = "zyxel,nsa325", "marvell,kirkwood-88f6282", "marvell,kirkwood"; 17*f126890aSEmmanuel Vadot 18*f126890aSEmmanuel Vadot memory { 19*f126890aSEmmanuel Vadot device_type = "memory"; 20*f126890aSEmmanuel Vadot reg = <0x00000000 0x20000000>; 21*f126890aSEmmanuel Vadot }; 22*f126890aSEmmanuel Vadot 23*f126890aSEmmanuel Vadot chosen { 24*f126890aSEmmanuel Vadot bootargs = "console=ttyS0,115200"; 25*f126890aSEmmanuel Vadot stdout-path = &uart0; 26*f126890aSEmmanuel Vadot }; 27*f126890aSEmmanuel Vadot 28*f126890aSEmmanuel Vadot ocp@f1000000 { 29*f126890aSEmmanuel Vadot pinctrl: pin-controller@10000 { 30*f126890aSEmmanuel Vadot pinctrl-names = "default"; 31*f126890aSEmmanuel Vadot 32*f126890aSEmmanuel Vadot pmx_led_hdd2_green: pmx-led-hdd2-green { 33*f126890aSEmmanuel Vadot marvell,pins = "mpp12"; 34*f126890aSEmmanuel Vadot marvell,function = "gpio"; 35*f126890aSEmmanuel Vadot }; 36*f126890aSEmmanuel Vadot 37*f126890aSEmmanuel Vadot pmx_led_hdd2_red: pmx-led-hdd2-red { 38*f126890aSEmmanuel Vadot marvell,pins = "mpp13"; 39*f126890aSEmmanuel Vadot marvell,function = "gpio"; 40*f126890aSEmmanuel Vadot }; 41*f126890aSEmmanuel Vadot 42*f126890aSEmmanuel Vadot pmx_mcu_data: pmx-mcu-data { 43*f126890aSEmmanuel Vadot marvell,pins = "mpp14"; 44*f126890aSEmmanuel Vadot marvell,function = "gpio"; 45*f126890aSEmmanuel Vadot }; 46*f126890aSEmmanuel Vadot 47*f126890aSEmmanuel Vadot pmx_led_usb_green: pmx-led-usb-green { 48*f126890aSEmmanuel Vadot marvell,pins = "mpp15"; 49*f126890aSEmmanuel Vadot marvell,function = "gpio"; 50*f126890aSEmmanuel Vadot }; 51*f126890aSEmmanuel Vadot 52*f126890aSEmmanuel Vadot pmx_mcu_clk: pmx-mcu-clk { 53*f126890aSEmmanuel Vadot marvell,pins = "mpp16"; 54*f126890aSEmmanuel Vadot marvell,function = "gpio"; 55*f126890aSEmmanuel Vadot }; 56*f126890aSEmmanuel Vadot 57*f126890aSEmmanuel Vadot pmx_mcu_act: pmx-mcu-act { 58*f126890aSEmmanuel Vadot marvell,pins = "mpp17"; 59*f126890aSEmmanuel Vadot marvell,function = "gpio"; 60*f126890aSEmmanuel Vadot }; 61*f126890aSEmmanuel Vadot 62*f126890aSEmmanuel Vadot pmx_led_sys_green: pmx-led-sys-green { 63*f126890aSEmmanuel Vadot marvell,pins = "mpp28"; 64*f126890aSEmmanuel Vadot marvell,function = "gpio"; 65*f126890aSEmmanuel Vadot }; 66*f126890aSEmmanuel Vadot 67*f126890aSEmmanuel Vadot pmx_led_sys_orange: pmx-led-sys-orange { 68*f126890aSEmmanuel Vadot marvell,pins = "mpp29"; 69*f126890aSEmmanuel Vadot marvell,function = "gpio"; 70*f126890aSEmmanuel Vadot }; 71*f126890aSEmmanuel Vadot 72*f126890aSEmmanuel Vadot pmx_led_hdd1_green: pmx-led-hdd1-green { 73*f126890aSEmmanuel Vadot marvell,pins = "mpp41"; 74*f126890aSEmmanuel Vadot marvell,function = "gpio"; 75*f126890aSEmmanuel Vadot }; 76*f126890aSEmmanuel Vadot 77*f126890aSEmmanuel Vadot pmx_led_hdd1_red: pmx-led-hdd1-red { 78*f126890aSEmmanuel Vadot marvell,pins = "mpp42"; 79*f126890aSEmmanuel Vadot marvell,function = "gpio"; 80*f126890aSEmmanuel Vadot }; 81*f126890aSEmmanuel Vadot 82*f126890aSEmmanuel Vadot pmx_htp: pmx-htp { 83*f126890aSEmmanuel Vadot marvell,pins = "mpp43"; 84*f126890aSEmmanuel Vadot marvell,function = "gpio"; 85*f126890aSEmmanuel Vadot }; 86*f126890aSEmmanuel Vadot 87*f126890aSEmmanuel Vadot /* 88*f126890aSEmmanuel Vadot * Buzzer needs to be switched at around 1kHz so is 89*f126890aSEmmanuel Vadot * not compatible with the gpio-beeper driver. 90*f126890aSEmmanuel Vadot */ 91*f126890aSEmmanuel Vadot pmx_buzzer: pmx-buzzer { 92*f126890aSEmmanuel Vadot marvell,pins = "mpp44"; 93*f126890aSEmmanuel Vadot marvell,function = "gpio"; 94*f126890aSEmmanuel Vadot }; 95*f126890aSEmmanuel Vadot 96*f126890aSEmmanuel Vadot pmx_vid_b1: pmx-vid-b1 { 97*f126890aSEmmanuel Vadot marvell,pins = "mpp45"; 98*f126890aSEmmanuel Vadot marvell,function = "gpio"; 99*f126890aSEmmanuel Vadot }; 100*f126890aSEmmanuel Vadot 101*f126890aSEmmanuel Vadot pmx_power_resume_data: pmx-power-resume-data { 102*f126890aSEmmanuel Vadot marvell,pins = "mpp47"; 103*f126890aSEmmanuel Vadot marvell,function = "gpio"; 104*f126890aSEmmanuel Vadot }; 105*f126890aSEmmanuel Vadot 106*f126890aSEmmanuel Vadot pmx_power_resume_clk: pmx-power-resume-clk { 107*f126890aSEmmanuel Vadot marvell,pins = "mpp49"; 108*f126890aSEmmanuel Vadot marvell,function = "gpio"; 109*f126890aSEmmanuel Vadot }; 110*f126890aSEmmanuel Vadot 111*f126890aSEmmanuel Vadot pmx_pwr_sata1: pmx-pwr-sata1 { 112*f126890aSEmmanuel Vadot marvell,pins = "mpp47"; 113*f126890aSEmmanuel Vadot marvell,function = "gpio"; 114*f126890aSEmmanuel Vadot }; 115*f126890aSEmmanuel Vadot }; 116*f126890aSEmmanuel Vadot 117*f126890aSEmmanuel Vadot /* This board uses the pcf8563 RTC instead of the SoC RTC */ 118*f126890aSEmmanuel Vadot rtc@10300 { 119*f126890aSEmmanuel Vadot status = "disabled"; 120*f126890aSEmmanuel Vadot }; 121*f126890aSEmmanuel Vadot 122*f126890aSEmmanuel Vadot i2c@11000 { 123*f126890aSEmmanuel Vadot status = "okay"; 124*f126890aSEmmanuel Vadot 125*f126890aSEmmanuel Vadot pcf8563: pcf8563@51 { 126*f126890aSEmmanuel Vadot compatible = "nxp,pcf8563"; 127*f126890aSEmmanuel Vadot reg = <0x51>; 128*f126890aSEmmanuel Vadot }; 129*f126890aSEmmanuel Vadot }; 130*f126890aSEmmanuel Vadot }; 131*f126890aSEmmanuel Vadot 132*f126890aSEmmanuel Vadot regulators { 133*f126890aSEmmanuel Vadot compatible = "simple-bus"; 134*f126890aSEmmanuel Vadot #address-cells = <1>; 135*f126890aSEmmanuel Vadot #size-cells = <0>; 136*f126890aSEmmanuel Vadot pinctrl-0 = <&pmx_pwr_sata1>; 137*f126890aSEmmanuel Vadot pinctrl-names = "default"; 138*f126890aSEmmanuel Vadot 139*f126890aSEmmanuel Vadot usb0_power: regulator@1 { 140*f126890aSEmmanuel Vadot enable-active-high; 141*f126890aSEmmanuel Vadot }; 142*f126890aSEmmanuel Vadot 143*f126890aSEmmanuel Vadot sata1_power: regulator@2 { 144*f126890aSEmmanuel Vadot compatible = "regulator-fixed"; 145*f126890aSEmmanuel Vadot reg = <2>; 146*f126890aSEmmanuel Vadot regulator-name = "SATA1 Power"; 147*f126890aSEmmanuel Vadot regulator-min-microvolt = <5000000>; 148*f126890aSEmmanuel Vadot regulator-max-microvolt = <5000000>; 149*f126890aSEmmanuel Vadot regulator-always-on; 150*f126890aSEmmanuel Vadot regulator-boot-on; 151*f126890aSEmmanuel Vadot enable-active-high; 152*f126890aSEmmanuel Vadot gpio = <&gpio1 15 GPIO_ACTIVE_HIGH>; 153*f126890aSEmmanuel Vadot }; 154*f126890aSEmmanuel Vadot }; 155*f126890aSEmmanuel Vadot 156*f126890aSEmmanuel Vadot gpio-leds { 157*f126890aSEmmanuel Vadot compatible = "gpio-leds"; 158*f126890aSEmmanuel Vadot pinctrl-0 = <&pmx_led_hdd2_green &pmx_led_hdd2_red 159*f126890aSEmmanuel Vadot &pmx_led_usb_green 160*f126890aSEmmanuel Vadot &pmx_led_sys_green &pmx_led_sys_orange 161*f126890aSEmmanuel Vadot &pmx_led_copy_green &pmx_led_copy_red 162*f126890aSEmmanuel Vadot &pmx_led_hdd1_green &pmx_led_hdd1_red>; 163*f126890aSEmmanuel Vadot pinctrl-names = "default"; 164*f126890aSEmmanuel Vadot 165*f126890aSEmmanuel Vadot green-sys { 166*f126890aSEmmanuel Vadot label = "nsa325:green:sys"; 167*f126890aSEmmanuel Vadot gpios = <&gpio0 28 GPIO_ACTIVE_HIGH>; 168*f126890aSEmmanuel Vadot }; 169*f126890aSEmmanuel Vadot orange-sys { 170*f126890aSEmmanuel Vadot label = "nsa325:orange:sys"; 171*f126890aSEmmanuel Vadot gpios = <&gpio0 29 GPIO_ACTIVE_HIGH>; 172*f126890aSEmmanuel Vadot }; 173*f126890aSEmmanuel Vadot green-hdd1 { 174*f126890aSEmmanuel Vadot label = "nsa325:green:hdd1"; 175*f126890aSEmmanuel Vadot gpios = <&gpio1 9 GPIO_ACTIVE_HIGH>; 176*f126890aSEmmanuel Vadot }; 177*f126890aSEmmanuel Vadot red-hdd1 { 178*f126890aSEmmanuel Vadot label = "nsa325:red:hdd1"; 179*f126890aSEmmanuel Vadot gpios = <&gpio1 10 GPIO_ACTIVE_HIGH>; 180*f126890aSEmmanuel Vadot }; 181*f126890aSEmmanuel Vadot green-hdd2 { 182*f126890aSEmmanuel Vadot label = "nsa325:green:hdd2"; 183*f126890aSEmmanuel Vadot gpios = <&gpio0 12 GPIO_ACTIVE_HIGH>; 184*f126890aSEmmanuel Vadot }; 185*f126890aSEmmanuel Vadot red-hdd2 { 186*f126890aSEmmanuel Vadot label = "nsa325:red:hdd2"; 187*f126890aSEmmanuel Vadot gpios = <&gpio0 13 GPIO_ACTIVE_HIGH>; 188*f126890aSEmmanuel Vadot }; 189*f126890aSEmmanuel Vadot green-usb { 190*f126890aSEmmanuel Vadot label = "nsa325:green:usb"; 191*f126890aSEmmanuel Vadot gpios = <&gpio0 15 GPIO_ACTIVE_HIGH>; 192*f126890aSEmmanuel Vadot }; 193*f126890aSEmmanuel Vadot green-copy { 194*f126890aSEmmanuel Vadot label = "nsa325:green:copy"; 195*f126890aSEmmanuel Vadot gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>; 196*f126890aSEmmanuel Vadot }; 197*f126890aSEmmanuel Vadot red-copy { 198*f126890aSEmmanuel Vadot label = "nsa325:red:copy"; 199*f126890aSEmmanuel Vadot gpios = <&gpio1 8 GPIO_ACTIVE_HIGH>; 200*f126890aSEmmanuel Vadot }; 201*f126890aSEmmanuel Vadot 202*f126890aSEmmanuel Vadot /* The following pins are currently not assigned to a driver, 203*f126890aSEmmanuel Vadot some of them should be configured as inputs. 204*f126890aSEmmanuel Vadot pinctrl-0 = <&pmx_mcu_data &pmx_mcu_clk &pmx_mcu_act 205*f126890aSEmmanuel Vadot &pmx_htp &pmx_vid_b1 206*f126890aSEmmanuel Vadot &pmx_power_resume_data &pmx_power_resume_clk>; */ 207*f126890aSEmmanuel Vadot }; 208*f126890aSEmmanuel Vadot 209*f126890aSEmmanuel Vadot 210*f126890aSEmmanuel Vadot}; 211*f126890aSEmmanuel Vadot 212*f126890aSEmmanuel Vadot&mdio { 213*f126890aSEmmanuel Vadot status = "okay"; 214*f126890aSEmmanuel Vadot ethphy0: ethernet-phy@1 { 215*f126890aSEmmanuel Vadot reg = <1>; 216*f126890aSEmmanuel Vadot }; 217*f126890aSEmmanuel Vadot}; 218*f126890aSEmmanuel Vadot 219*f126890aSEmmanuel Vadotð0 { 220*f126890aSEmmanuel Vadot status = "okay"; 221*f126890aSEmmanuel Vadot ethernet0-port@0 { 222*f126890aSEmmanuel Vadot phy-handle = <ðphy0>; 223*f126890aSEmmanuel Vadot }; 224*f126890aSEmmanuel Vadot}; 225*f126890aSEmmanuel Vadot 226*f126890aSEmmanuel Vadot&pciec { 227*f126890aSEmmanuel Vadot status = "okay"; 228*f126890aSEmmanuel Vadot}; 229*f126890aSEmmanuel Vadot 230*f126890aSEmmanuel Vadot&pcie0 { 231*f126890aSEmmanuel Vadot status = "okay"; 232*f126890aSEmmanuel Vadot}; 233