0001 // SPDX-License-Identifier: GPL-2.0-only
0002 // Copyright (C) 2012 Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
0003
0004 /*
0005 * TODO: add Orion USB device port init when kernel.org support is added.
0006 * TODO: add flash write support: see below.
0007 * TODO: add power-off support.
0008 * TODO: add I2C EEPROM support.
0009 */
0010
0011 /dts-v1/;
0012
0013 #include <dt-bindings/gpio/gpio.h>
0014 #include <dt-bindings/input/input.h>
0015 #include <dt-bindings/interrupt-controller/irq.h>
0016 #include "orion5x-mv88f5182.dtsi"
0017
0018 / {
0019 model = "LaCie Ethernet Disk mini V2";
0020 compatible = "lacie,ethernet-disk-mini-v2", "marvell,orion5x-88f5182", "marvell,orion5x";
0021
0022 memory {
0023 device_type = "memory";
0024 reg = <0x00000000 0x4000000>; /* 64 MB */
0025 };
0026
0027 chosen {
0028 bootargs = "console=ttyS0,115200n8 earlyprintk";
0029 stdout-path = &uart0;
0030 };
0031
0032 soc {
0033 ranges = <MBUS_ID(0xf0, 0x01) 0 0xf1000000 0x100000>,
0034 <MBUS_ID(0x09, 0x00) 0 0xf2200000 0x800>,
0035 <MBUS_ID(0x01, 0x0f) 0 0xfff80000 0x80000>;
0036 };
0037
0038 gpio-keys {
0039 compatible = "gpio-keys";
0040 pinctrl-0 = <&pmx_power_button>;
0041 pinctrl-names = "default";
0042 #address-cells = <1>;
0043 #size-cells = <0>;
0044 button@1 {
0045 label = "Power-on Switch";
0046 linux,code = <KEY_POWER>;
0047 gpios = <&gpio0 18 GPIO_ACTIVE_HIGH>;
0048 };
0049 };
0050
0051 gpio-leds {
0052 compatible = "gpio-leds";
0053 pinctrl-0 = <&pmx_power_led>;
0054 pinctrl-names = "default";
0055
0056 led@1 {
0057 label = "power:blue";
0058 gpios = <&gpio0 16 GPIO_ACTIVE_LOW>;
0059 };
0060 };
0061 };
0062
0063 &devbus_bootcs {
0064 status = "okay";
0065
0066 /* Read parameters */
0067 devbus,bus-width = <8>;
0068 devbus,turn-off-ps = <90000>;
0069 devbus,badr-skew-ps = <0>;
0070 devbus,acc-first-ps = <186000>;
0071 devbus,acc-next-ps = <186000>;
0072
0073 /* Write parameters */
0074 devbus,wr-high-ps = <90000>;
0075 devbus,wr-low-ps = <90000>;
0076 devbus,ale-wr-ps = <90000>;
0077
0078 /*
0079 * Currently the MTD code does not recognize the MX29LV400CBCT
0080 * as a bottom-type device. This could cause risks of
0081 * accidentally erasing critical flash sectors. We thus define
0082 * a single, write-protected partition covering the whole
0083 * flash. TODO: once the flash part TOP/BOTTOM detection
0084 * issue is sorted out in the MTD code, break this into at
0085 * least three partitions: 'u-boot code', 'u-boot environment'
0086 * and 'whatever is left'.
0087 */
0088 flash@0 {
0089 compatible = "cfi-flash";
0090 reg = <0 0x80000>;
0091 bank-width = <1>;
0092 #address-cells = <1>;
0093 #size-cells = <1>;
0094
0095 partition@0 {
0096 label = "Full512Kb";
0097 reg = <0 0x80000>;
0098 read-only;
0099 };
0100 };
0101 };
0102
0103 &ehci0 {
0104 status = "okay";
0105 };
0106
0107 ð {
0108 status = "okay";
0109
0110 ethernet-port@0 {
0111 phy-handle = <ðphy>;
0112 };
0113 };
0114
0115 &i2c {
0116 status = "okay";
0117 clock-frequency = <100000>;
0118 #address-cells = <1>;
0119
0120 rtc@32 {
0121 compatible = "ricoh,rs5c372a";
0122 reg = <0x32>;
0123 interrupt-parent = <&gpio0>;
0124 interrupts = <3 IRQ_TYPE_LEVEL_LOW>;
0125 };
0126 };
0127
0128 &mdio {
0129 status = "okay";
0130
0131 ethphy: ethernet-phy {
0132 reg = <8>;
0133 };
0134 };
0135
0136 &pinctrl {
0137 pinctrl-0 = <&pmx_rtc &pmx_power_led_ctrl>;
0138 pinctrl-names = "default";
0139
0140 pmx_power_button: pmx-power-button {
0141 marvell,pins = "mpp18";
0142 marvell,function = "gpio";
0143 };
0144
0145 pmx_power_led: pmx-power-led {
0146 marvell,pins = "mpp16";
0147 marvell,function = "gpio";
0148 };
0149
0150 pmx_power_led_ctrl: pmx-power-led-ctrl {
0151 marvell,pins = "mpp17";
0152 marvell,function = "gpio";
0153 };
0154
0155 pmx_rtc: pmx-rtc {
0156 marvell,pins = "mpp3";
0157 marvell,function = "gpio";
0158 };
0159 };
0160
0161 &sata {
0162 pinctrl-0 = <&pmx_sata0 &pmx_sata1>;
0163 pinctrl-names = "default";
0164 status = "okay";
0165 nr-ports = <2>;
0166 };
0167
0168 &uart0 {
0169 status = "okay";
0170 };