0001 // SPDX-License-Identifier: GPL-2.0
0002 #include "kirkwood.dtsi"
0003 #include "kirkwood-6281.dtsi"
0004
0005 / {
0006 model = "D-Link DNS NASes (kirkwood-based)";
0007 compatible = "dlink,dns-kirkwood", "marvell,kirkwood-88f6281", "marvell,kirkwood";
0008
0009 gpio_keys {
0010 compatible = "gpio-keys";
0011 #address-cells = <1>;
0012 #size-cells = <0>;
0013 pinctrl-0 = <&pmx_button_power &pmx_button_unmount
0014 &pmx_button_reset>;
0015 pinctrl-names = "default";
0016
0017 power {
0018 label = "Power button";
0019 linux,code = <KEY_POWER>;
0020 gpios = <&gpio1 2 GPIO_ACTIVE_LOW>;
0021 };
0022 eject {
0023 label = "USB unmount button";
0024 linux,code = <KEY_EJECTCD>;
0025 gpios = <&gpio1 15 GPIO_ACTIVE_LOW>;
0026 };
0027 reset {
0028 label = "Reset button";
0029 linux,code = <KEY_RESTART>;
0030 gpios = <&gpio1 16 GPIO_ACTIVE_LOW>;
0031 };
0032 };
0033
0034 gpio_fan {
0035 /* Fan: ADDA AD045HB-G73 40mm 6000rpm@5v */
0036 compatible = "gpio-fan";
0037 pinctrl-0 = <&pmx_fan_high_speed &pmx_fan_low_speed>;
0038 pinctrl-names = "default";
0039 gpios = <&gpio1 14 GPIO_ACTIVE_HIGH
0040 &gpio1 13 GPIO_ACTIVE_HIGH>;
0041 gpio-fan,speed-map = <0 0
0042 3000 1
0043 6000 2>;
0044 };
0045
0046 gpio_poweroff {
0047 compatible = "gpio-poweroff";
0048 pinctrl-0 = <&pmx_power_off>;
0049 pinctrl-names = "default";
0050 gpios = <&gpio1 4 GPIO_ACTIVE_HIGH>;
0051 };
0052
0053 ocp@f1000000 {
0054 pinctrl: pin-controller@10000 {
0055
0056 pinctrl-0 = <&pmx_power_back_on &pmx_present_sata0
0057 &pmx_present_sata1 &pmx_fan_tacho
0058 &pmx_temp_alarm>;
0059 pinctrl-names = "default";
0060
0061 pmx_sata0: pmx-sata0 {
0062 marvell,pins = "mpp20";
0063 marvell,function = "sata1";
0064 };
0065 pmx_sata1: pmx-sata1 {
0066 marvell,pins = "mpp21";
0067 marvell,function = "sata0";
0068 };
0069 pmx_led_power: pmx-led-power {
0070 marvell,pins = "mpp26";
0071 marvell,function = "gpio";
0072 };
0073 pmx_led_red_right_hdd: pmx-led-red-right-hdd {
0074 marvell,pins = "mpp27";
0075 marvell,function = "gpio";
0076 };
0077 pmx_led_red_left_hdd: pmx-led-red-left-hdd {
0078 marvell,pins = "mpp28";
0079 marvell,function = "gpio";
0080 };
0081 pmx_led_red_usb_325: pmx-led-red-usb-325 {
0082 marvell,pins = "mpp29";
0083 marvell,function = "gpio";
0084 };
0085 pmx_button_power: pmx-button-power {
0086 marvell,pins = "mpp34";
0087 marvell,function = "gpio";
0088 };
0089 pmx_led_red_usb_320: pmx-led-red-usb-320 {
0090 marvell,pins = "mpp35";
0091 marvell,function = "gpio";
0092 };
0093 pmx_power_off: pmx-power-off {
0094 marvell,pins = "mpp36";
0095 marvell,function = "gpio";
0096 };
0097 pmx_power_back_on: pmx-power-back-on {
0098 marvell,pins = "mpp37";
0099 marvell,function = "gpio";
0100 };
0101 pmx_power_sata0: pmx-power-sata0 {
0102 marvell,pins = "mpp39";
0103 marvell,function = "gpio";
0104 };
0105 pmx_power_sata1: pmx-power-sata1 {
0106 marvell,pins = "mpp40";
0107 marvell,function = "gpio";
0108 };
0109 pmx_present_sata0: pmx-present-sata0 {
0110 marvell,pins = "mpp41";
0111 marvell,function = "gpio";
0112 };
0113 pmx_present_sata1: pmx-present-sata1 {
0114 marvell,pins = "mpp42";
0115 marvell,function = "gpio";
0116 };
0117 pmx_led_white_usb: pmx-led-white-usb {
0118 marvell,pins = "mpp43";
0119 marvell,function = "gpio";
0120 };
0121 pmx_fan_tacho: pmx-fan-tacho {
0122 marvell,pins = "mpp44";
0123 marvell,function = "gpio";
0124 };
0125 pmx_fan_high_speed: pmx-fan-high-speed {
0126 marvell,pins = "mpp45";
0127 marvell,function = "gpio";
0128 };
0129 pmx_fan_low_speed: pmx-fan-low-speed {
0130 marvell,pins = "mpp46";
0131 marvell,function = "gpio";
0132 };
0133 pmx_button_unmount: pmx-button-unmount {
0134 marvell,pins = "mpp47";
0135 marvell,function = "gpio";
0136 };
0137 pmx_button_reset: pmx-button-reset {
0138 marvell,pins = "mpp48";
0139 marvell,function = "gpio";
0140 };
0141 pmx_temp_alarm: pmx-temp-alarm {
0142 marvell,pins = "mpp49";
0143 marvell,function = "gpio";
0144 };
0145 };
0146 sata@80000 {
0147 pinctrl-0 = <&pmx_sata0 &pmx_sata1>;
0148 pinctrl-names = "default";
0149 status = "okay";
0150 nr-ports = <2>;
0151 };
0152 };
0153
0154 regulators {
0155 compatible = "simple-bus";
0156 #address-cells = <1>;
0157 #size-cells = <0>;
0158 pinctrl-0 = <&pmx_power_sata0 &pmx_power_sata1>;
0159 pinctrl-names = "default";
0160
0161 sata0_power: regulator@1 {
0162 compatible = "regulator-fixed";
0163 reg = <1>;
0164 regulator-name = "SATA0 Power";
0165 regulator-min-microvolt = <5000000>;
0166 regulator-max-microvolt = <5000000>;
0167 enable-active-high;
0168 regulator-always-on;
0169 regulator-boot-on;
0170 gpio = <&gpio1 7 0>;
0171 };
0172 sata1_power: regulator@2 {
0173 compatible = "regulator-fixed";
0174 reg = <2>;
0175 regulator-name = "SATA1 Power";
0176 regulator-min-microvolt = <5000000>;
0177 regulator-max-microvolt = <5000000>;
0178 enable-active-high;
0179 regulator-always-on;
0180 regulator-boot-on;
0181 gpio = <&gpio1 8 0>;
0182 };
0183 };
0184 };
0185
0186 &nand {
0187 status = "okay";
0188 chip-delay = <35>;
0189
0190 partition@0 {
0191 label = "u-boot";
0192 reg = <0x0000000 0x100000>;
0193 read-only;
0194 };
0195
0196 partition@100000 {
0197 label = "uImage";
0198 reg = <0x0100000 0x500000>;
0199 };
0200
0201 partition@600000 {
0202 label = "ramdisk";
0203 reg = <0x0600000 0x500000>;
0204 };
0205
0206 partition@b00000 {
0207 label = "image";
0208 reg = <0x0b00000 0x6600000>;
0209 };
0210
0211 partition@7100000 {
0212 label = "mini firmware";
0213 reg = <0x7100000 0xa00000>;
0214 };
0215
0216 partition@7b00000 {
0217 label = "config";
0218 reg = <0x7b00000 0x500000>;
0219 };
0220 };
0221
0222 &mdio {
0223 status = "okay";
0224
0225 ethphy0: ethernet-phy@8 {
0226 reg = <8>;
0227 };
0228 };
0229
0230 ð0 {
0231 status = "okay";
0232 ethernet0-port@0 {
0233 phy-handle = <ðphy0>;
0234 };
0235 };