/* Device tree file for the Zyxel NSA 320 NAS box. * * Copyright (c) 2014, Adam Baker * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License * as published by the Free Software Foundation; either version * 2 of the License, or (at your option) any later version. * * Based upon the board setup file created by Peter Schildmann */ /dts-v1/; #include "kirkwood-nsa3x0-common.dtsi" / { model = "Zyxel NSA320"; compatible = "zyxel,nsa320", "marvell,kirkwood-88f6281", "marvell,kirkwood"; memory { device_type = "memory"; reg = <0x00000000 0x20000000>; }; chosen { bootargs = "console=ttyS0,115200"; stdout-path = &uart0; }; ocp@f1000000 { pinctrl: pin-controller@10000 { pinctrl-names = "default"; /* SATA Activity and Present pins are not connected */ pmx_sata0: pmx-sata0 { marvell,pins ; marvell,function = "sata0"; }; pmx_sata1: pmx-sata1 { marvell,pins ; marvell,function = "sata1"; }; pmx_led_hdd2_green: pmx-led-hdd2-green { marvell,pins = "mpp12"; marvell,function = "gpio"; }; pmx_led_hdd2_red: pmx-led-hdd2-red { marvell,pins = "mpp13"; marvell,function = "gpio"; }; pmx_mcu_data: pmx-mcu-data { marvell,pins = "mpp14"; marvell,function = "gpio"; }; pmx_led_usb_green: pmx-led-usb-green { marvell,pins = "mpp15"; marvell,function = "gpio"; }; pmx_mcu_clk: pmx-mcu-clk { marvell,pins = "mpp16"; marvell,function = "gpio"; }; pmx_mcu_act: pmx-mcu-act { marvell,pins = "mpp17"; marvell,function = "gpio"; }; pmx_led_sys_green: pmx-led-sys-green { marvell,pins = "mpp28"; marvell,function = "gpio"; }; pmx_led_sys_orange: pmx-led-sys-orange { marvell,pins = "mpp29"; marvell,function = "gpio"; }; pmx_led_hdd1_green: pmx-led-hdd1-green { marvell,pins = "mpp41"; marvell,function = "gpio"; }; pmx_led_hdd1_red: pmx-led-hdd1-red { marvell,pins = "mpp42"; marvell,function = "gpio"; }; pmx_htp: pmx-htp { marvell,pins = "mpp43"; marvell,function = "gpio"; }; /* Buzzer needs to be switched at around 1kHz so is not compatible with the gpio-beeper driver. */ pmx_buzzer: pmx-buzzer { marvell,pins = "mpp44"; marvell,function = "gpio"; }; pmx_vid_b1: pmx-vid-b1 { marvell,pins = "mpp45"; marvell,function = "gpio"; }; pmx_power_resume_data: pmx-power-resume-data { marvell,pins = "mpp47"; marvell,function = "gpio"; }; pmx_power_resume_clk: pmx-power-resume-clk { marvell,pins = "mpp49"; marvell,function = "gpio"; }; }; i2c@11000 { status = "okay"; pcf8563: pcf8563@51 { compatible = "nxp,pcf8563"; reg = <0x51>; }; }; }; regulators { usb0_power: regulator@1 { enable-active-high; }; }; gpio-leds { compatible = "gpio-leds"; pinctrl-0 = <&pmx_led_hdd2_green &pmx_led_hdd2_red &pmx_led_usb_green &pmx_led_sys_green &pmx_led_sys_orange &pmx_led_copy_green &pmx_led_copy_red &pmx_led_hdd1_green &pmx_led_hdd1_red>; pinctrl-names = "default"; green-sys { label = "nsa320:green:sys"; gpios = <&gpio0 28 GPIO_ACTIVE_HIGH>; }; orange-sys { label = "nsa320:orange:sys"; gpios = <&gpio0 29 GPIO_ACTIVE_HIGH>; }; green-hdd1 { label = "nsa320:green:hdd1"; gpios = <&gpio1 9 GPIO_ACTIVE_HIGH>; }; red-hdd1 { label = "nsa320:red:hdd1"; gpios = <&gpio1 10 GPIO_ACTIVE_HIGH>; }; green-hdd2 { label = "nsa320:green:hdd2"; gpios = <&gpio0 12 GPIO_ACTIVE_HIGH>; }; red-hdd2 { label = "nsa320:red:hdd2"; gpios = <&gpio0 13 GPIO_ACTIVE_HIGH>; }; green-usb { label = "nsa320:green:usb"; gpios = <&gpio0 15 GPIO_ACTIVE_HIGH>; }; green-copy { label = "nsa320:green:copy"; gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>; }; red-copy { label = "nsa320:red:copy"; gpios = <&gpio1 8 GPIO_ACTIVE_HIGH>; }; }; hwmon { compatible = "zyxel,nsa320-mcu"; pinctrl-0 = <&pmx_mcu_data &pmx_mcu_clk &pmx_mcu_act>; pinctrl-names = "default"; data-gpios = <&gpio0 14 GPIO_ACTIVE_HIGH>; clk-gpios = <&gpio0 16 GPIO_ACTIVE_HIGH>; act-gpios = <&gpio0 17 GPIO_ACTIVE_LOW>; }; /* The following pins are currently not assigned to a driver, some of them should be configured as inputs. pinctrl-0 = <&pmx_htp &pmx_vid_b1 &pmx_power_resume_data &pmx_power_resume_clk>; */ }; &mdio { status = "okay"; ethphy0: ethernet-phy@1 { reg = <1>; }; }; ð0 { status = "okay"; ethernet0-port@0 { phy-handle = <ðphy0>; }; }; &pciec { status = "okay"; }; &pcie0 { status = "okay"; };