ARM: Kirkwood: DT board setup for LaPlug

This patch adds DT board setup for the LaCie NAS LaPlug.

Chipset list:
- CPU MARVELL 88FR131 800Mhz
- SDRAM memory: 128MB DDR2-800 400Mhz
- 1 Ethernet Gigabit port (PHY MARVELL 88E1318)
- 1 Mini PCI-Express port
- 1 NAND 512 MB
- 1 push button
- 2 LEDs (red and blue)
- 4 USB Ports

Signed-off-by: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
Acked-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
This commit is contained in:
Maxime Hadjinlian 2013-12-24 13:53:19 +01:00 committed by Jason Cooper
parent e38cd3ae6e
commit 2cc64b5655
2 changed files with 176 additions and 0 deletions

View File

@ -85,6 +85,7 @@ dtb-$(CONFIG_ARCH_KIRKWOOD) += kirkwood-cloudbox.dtb \
kirkwood-iomega_ix2_200.dtb \
kirkwood-is2.dtb \
kirkwood-km_kirkwood.dtb \
kirkwood-laplug.dtb \
kirkwood-lschlv2.dtb \
kirkwood-lsxhl.dtb \
kirkwood-mplcec4.dtb \

View File

@ -0,0 +1,175 @@
/*
* Copyright (C) 2013 Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
*
* This file is licensed under the terms of the GNU General Public
* License version 2. This program is licensed "as is" without any
* warranty of any kind, whether express or implied.
*/
/dts-v1/;
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/input/input.h>
#include "kirkwood.dtsi"
#include "kirkwood-6192.dtsi"
/ {
model = "LaCie LaPlug";
compatible = "lacie,laplug", "marvell,kirkwood-88f6192", "marvell,kirkwood";
memory {
device_type = "memory";
reg = <0x00000000 0x8000000>; /* 128 MB */
};
chosen {
bootargs = "console=ttyS0,115200n8 earlyprintk";
};
mbus {
pcie-controller {
status = "okay";
pcie@1,0 {
status = "okay";
};
};
};
ocp@f1000000 {
serial@12000 {
pinctrl-0 = <&pmx_uart0>;
pinctrl-names = "default";
status = "okay";
};
i2c@11000 {
pinctrl-0 = <&pmx_twsi0>;
pinctrl-names = "default";
status = "okay";
eeprom@50 {
compatible = "at,24c04";
pagesize = <16>;
reg = <0x50>;
};
};
pinctrl: pinctrl@10000 {
pmx_usb_power_enable: pmx-usb-power-enable {
marvell,pins = "mpp14";
marvell,function = "gpio";
};
};
};
gpio_keys {
compatible = "gpio-keys";
button@1{
label = "Power push button";
linux,code = <KEY_POWER>;
gpios = <&gpio1 0 GPIO_ACTIVE_HIGH>;
};
};
gpio-leds {
compatible = "gpio-leds";
red-fail {
label = "laplug_v2:red:power";
gpios = <&gpio0 12 GPIO_ACTIVE_HIGH>;
};
blue-power {
label = "laplug_v2:blue:power";
gpios = <&gpio0 29 GPIO_ACTIVE_HIGH>;
linux,default-trigger = "default-on";
};
};
gpio_poweroff {
compatible = "gpio-poweroff";
gpios = <&gpio0 31 GPIO_ACTIVE_HIGH>;
};
regulators {
compatible = "simple-bus";
#address-cells = <1>;
#size-cells = <0>;
pinctrl-0 = <&pmx_usb_power_enable>;
pinctrl-names = "default";
usb_power_back1: regulator@1 {
compatible = "regulator-fixed";
reg = <1>;
regulator-name = "USB Power Back 1";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
enable-active-high;
regulator-always-on;
regulator-boot-on;
gpio = <&gpio0 15 GPIO_ACTIVE_HIGH>;
};
usb_power_back2: regulator@2 {
compatible = "regulator-fixed";
reg = <2>;
regulator-name = "USB Power Back 2";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
enable-active-high;
regulator-always-on;
regulator-boot-on;
gpio = <&gpio0 28 GPIO_ACTIVE_HIGH>;
};
usb_power_front: regulator@3 {
compatible = "regulator-fixed";
reg = <3>;
regulator-name = "USB Power Front";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
enable-active-high;
regulator-always-on;
regulator-boot-on;
gpio = <&gpio1 3 GPIO_ACTIVE_HIGH>;
};
};
};
&nand {
/* Total size : 512MB */
status = "okay";
pinctrl-0 = <&pmx_nand>;
partition@0 {
label = "u-boot";
reg = <0x0 0x100000>; /* 1MB */
read-only;
};
partition@100000 {
label = "uImage";
reg = <0x100000 0x1000000>; /* 16MB */
};
partition@1100000 {
label = "rootfs";
reg = <0x1100000 0x1EF00000>; /* 495MB */
};
};
&mdio {
status = "okay";
ethphy0: ethernet-phy@0 {
device_type = "ethernet-phy";
reg = <0>;
};
};
&eth0 {
status = "okay";
ethernet0-port@0 {
phy-handle = <&ethphy0>;
};
};