Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 07eb663b authored by Olof Johansson's avatar Olof Johansson
Browse files

Merge tag 'dt-3.13-5' of git://git.infradead.org/linux-mvebu into next/dt

From Jason Cooper:
 - add the Openblocks A7 board
 - add Netgear ReadyNAS 104 board

* tag 'dt-3.13-5' of git://git.infradead.org/linux-mvebu

:
  ARM: mvebu: Add Netgear ReadyNAS 104 board
  ARM: kirkwood: add support for OpenBlocks A7 platform

Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
parents ed76956f 45e8815f
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -96,18 +96,20 @@ dtb-$(CONFIG_ARCH_KIRKWOOD) += kirkwood-cloudbox.dtb \
	kirkwood-ns2mini.dtb \
	kirkwood-nsa310.dtb \
	kirkwood-nsa310a.dtb \
	kirkwood-openblocks_a6.dtb \
	kirkwood-openblocks_a7.dtb \
	kirkwood-sheevaplug.dtb \
	kirkwood-sheevaplug-esata.dtb \
	kirkwood-topkick.dtb \
	kirkwood-ts219-6281.dtb \
	kirkwood-ts219-6282.dtb \
	kirkwood-openblocks_a6.dtb
	kirkwood-ts219-6282.dtb
dtb-$(CONFIG_ARCH_MARCO) += marco-evb.dtb
dtb-$(CONFIG_ARCH_MSM) += msm8660-surf.dtb \
	msm8960-cdp.dtb
dtb-$(CONFIG_ARCH_MVEBU) += armada-370-db.dtb \
	armada-370-mirabox.dtb \
	armada-370-netgear-rn102.dtb \
	armada-370-netgear-rn104.dtb \
	armada-370-rd.dtb \
	armada-xp-axpwifiap.dtb \
	armada-xp-db.dtb \
+193 −0
Original line number Diff line number Diff line
/*
 * Device Tree file for NETGEAR ReadyNAS 104
 *
 * Copyright (C) 2013, Arnaud EBALARD <arno@natisbad.org>
 *
 * 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.
 */

/dts-v1/;

#include "armada-370.dtsi"

/ {
	model = "NETGEAR ReadyNAS 104";
	compatible = "netgear,readynas-104", "marvell,armada370", "marvell,armada-370-xp";

	chosen {
		bootargs = "console=ttyS0,115200 earlyprintk";
	};

	memory {
		device_type = "memory";
		reg = <0x00000000 0x20000000>; /* 512 MB */
	};

	soc {
		ranges = <MBUS_ID(0xf0, 0x01) 0 0xd0000000 0x100000
			  MBUS_ID(0x01, 0xe0) 0 0xfff00000 0x100000>;

		pcie-controller {
			status = "okay";

			/* Connected to FL1009 USB 3.0 controller */
			pcie@1,0 {
				/* Port 0, Lane 0 */
				status = "okay";
			};

			/* Connected to Marvell 88SE9215 SATA controller */
			pcie@2,0 {
				/* Port 1, Lane 0 */
				status = "okay";
			};
		};

		internal-regs {
			serial@12000 {
				clock-frequency = <200000000>;
				status = "okay";
			};

			pinctrl {
				poweroff: poweroff {
					marvell,pins = "mpp60";
					marvell,function = "gpio";
				};

				backup_key_pin: backup-key-pin {
					marvell,pins = "mpp52";
					marvell,function = "gpio";
				};

				power_key_pin: power-key-pin {
					marvell,pins = "mpp62";
					marvell,function = "gpio";
				};

				backup_led_pin: backup-led-pin {
					marvell,pins = "mpp63";
					marvell,function = "gpo";
				};

				power_led_pin: power-led-pin {
					marvell,pins = "mpp64";
					marvell,function = "gpio";
				};

				reset_key_pin: reset-key-pin {
					marvell,pins = "mpp65";
					marvell,function = "gpio";
				};
			};

			mdio {
				phy0: ethernet-phy@0 {
					reg = <0>;
				};

				phy1: ethernet-phy@1 {
					reg = <1>;
				};
			};

			ethernet@70000 {
				status = "okay";
				phy = <&phy0>;
				phy-mode = "rgmii-id";
			};

			ethernet@74000 {
				status = "okay";
				phy = <&phy1>;
				phy-mode = "rgmii-id";
			};

			usb@50000 {
				status = "okay";
			};

			i2c@11000 {
				compatible = "marvell,mv64xxx-i2c";
				clock-frequency = <100000>;
				status = "okay";

				g762: g762@3e {
					compatible = "gmt,g762";
					reg = <0x3e>;
					clocks = <&g762_clk>; /* input clock */
					fan_gear_mode = <0>;
					fan_startv = <1>;
					pwm_polarity = <0>;
				};
			};
		};
	};

	clocks {
	       #address-cells = <1>;
	       #size-cells = <0>;

	       g762_clk: fixedclk {
			 compatible = "fixed-clock";
			 #clock-cells = <0>;
			 clock-frequency = <8192>;
	       };
	};

	gpio_leds {
		compatible = "gpio-leds";
		pinctrl-0 = <&backup_led_pin &power_led_pin>;
		pinctrl-names = "default";

		blue_backup_led {
			label = "rn104:blue:backup";
			gpios = <&gpio1 31 0>;   /* GPIO 63 Active High */
			default-state = "off";
		};

		blue_power_led {
			label = "rn104:blue:pwr";
			gpios = <&gpio2 0 1>;    /* GPIO 64 Active Low */
			linux,default-trigger = "keep";
		};
	};

	gpio_keys {
		compatible = "gpio-keys";
		#address-cells = <1>;
		#size-cells = <0>;
		pinctrl-0 = <&backup_key_pin
			     &power_key_pin
			     &reset_key_pin>;
		pinctrl-names = "default";

		button@1 {
			label = "Backup Button";
			linux,code = <133>;     /* KEY_COPY */
			gpios = <&gpio1 20 1>;
		};

		button@2 {
			label = "Power Button";
			linux,code = <116>;     /* KEY_POWER */
			gpios = <&gpio1 30 0>;
		};

		button@3 {
			label = "Reset Button";
			linux,code = <0x198>;   /* KEY_RESTART */
			gpios = <&gpio2 1 1>;
		};
	};

	gpio_poweroff {
		compatible = "gpio-poweroff";
		pinctrl-0 = <&poweroff>;
		pinctrl-names = "default";
		gpios = <&gpio1 28 1>;
	};
};
+223 −0
Original line number Diff line number Diff line
/*
 * Device Tree file for OpenBlocks A7 board
 *
 * Copyright (C) 2013 Free Electrons
 *
 * Thomas Petazzoni <thomas.petazzoni@free-electrons.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 "kirkwood.dtsi"
#include "kirkwood-6282.dtsi"

/ {
	model = "Plat'Home OpenBlocksA7";
	compatible = "plathome,openblocks-a7", "marvell,kirkwood-88f6283", "marvell,kirkwood";

	memory {
		device_type = "memory";
		reg = <0x00000000 0x40000000>; /* 1 GB */
	};

	chosen {
		bootargs = "console=ttyS0,115200n8 earlyprintk";
	};

	ocp@f1000000 {
		serial@12000 {
			status = "ok";
			pinctrl-0 = <&pmx_uart0>;
			pinctrl-names = "default";
		};

		serial@12100 {
			status = "ok";
			pinctrl-0 = <&pmx_uart1>;
			pinctrl-names = "default";
		};

		sata@80000 {
			nr-ports = <1>;
			status = "okay";
		};

		i2c@11100 {
			status = "okay";
			pinctrl-0 = <&pmx_twsi1>;
			pinctrl-names = "default";

			s24c02: s24c02@50 {
				compatible = "24c02";
				reg = <0x50>;
			};
		};

		pinctrl: pinctrl@10000 {
			pinctrl-0 = <&pmx_dip_switches &pmx_gpio_header>;
			pinctrl-names = "default";

			pmx_uart0: pmx-uart0 {
				marvell,pins = "mpp10", "mpp11", "mpp15",
					"mpp16";
				marvell,function = "uart0";
			};

			pmx_uart1: pmx-uart1 {
				marvell,pins = "mpp13", "mpp14", "mpp8",
					"mpp9";
				marvell,function = "uart1";
			};

			pmx_sysrst: pmx-sysrst {
				marvell,pins = "mpp6";
				marvell,function = "sysrst";
			};

			pmx_dip_switches: pmx-dip-switches {
				marvell,pins = "mpp44", "mpp45", "mpp46", "mpp47";
				marvell,function = "gpio";
			};

			/*
			 * Accessible on connector J202. The MPP
			 * listed below are pin 1-7, pin 8 is unused,
			 * pin 9 is external reset input and pin 10 is
			 * ground.
			 */
			pmx_gpio_header: pmx-gpio-header {
				marvell,pins = "mpp17", "mpp7", "mpp29", "mpp28",
					       "mpp35", "mpp34", "mpp40";
				marvell,function = "gpio";
			};

			pmx_gpio_init: pmx-init {
				marvell,pins = "mpp38";
				marvell,function = "gpio";
			};

			pmx_usb_oc: pmx-usb-oc {
				marvell,pins = "mpp39";
				marvell,function = "gpio";
			};

			pmx_leds: pmx-leds {
				marvell,pins = "mpp41", "mpp42", "mpp43";
				marvell,function = "gpio";
			};

			pmx_ge1: pmx-ge1 {
				marvell,pins = "mpp20", "mpp21", "mpp22", "mpp23",
					       "mpp24", "mpp25", "mpp26", "mpp27",
					       "mpp30", "mpp31", "mpp32", "mpp33";
				marvell,function = "ge1";
			};
		};
	};

	gpio-leds {
		compatible = "gpio-leds";
		pinctrl-0 = <&pmx_leds>;
		pinctrl-names = "default";

		led-red {
			label = "obsa7:red:stat";
			gpios = <&gpio1 9 1>;
		};

		led-green {
			label = "obsa7:green:stat";
			gpios = <&gpio1 10 1>;
		};

		led-yellow {
			label = "obsa7:yellow:stat";
			gpios = <&gpio1 11 1>;
		};
        };

	gpio_keys {
		compatible = "gpio-keys";
		pinctrl-0 = <&pmx_gpio_init>;
		pinctrl-names = "default";
		#address-cells = <1>;
		#size-cells = <0>;

		button@1 {
			label = "Init Button";
			linux,code = <116>;
			gpios = <&gpio1 6 0>;
		};
	};
};

&nand {
	chip-delay = <25>;
	status = "okay";
	pinctrl-0 = <&pmx_nand>;
	pinctrl-names = "default";

	partition@0 {
		label = "uboot";
		reg = <0x0 0x1c0000>;
	};

	partition@1c0000 {
		label = "env";
		reg = <0x1c0000 0x2c0000>;
	};

	partition@480000 {
		label = "test";
		reg = <0x480000 0x160000>;
	};

	partition@5e0000 {
		label = "conf";
		reg = <0x5e0000 0x540000>;
	};

	partition@b20000 {
		label = "linux";
		reg = <0xb20000 0x3d40000>;
	};

	partition@4860000 {
		label = "user";
		reg = <0x4860000 0xb7a0000>;
	};
};

&mdio {
	status = "okay";

	ethphy0: ethernet-phy@0 {
		device_type = "ethernet-phy";
		reg = <0>;
	};

	ethphy1: ethernet-phy@1 {
		device_type = "ethernet-phy";
		reg = <1>;
	};
};

&eth0 {
	status = "okay";
	ethernet0-port@0 {
		phy-handle = <&ethphy0>;
	};
};

&eth1 {
	status = "okay";
	pinctrl-0 = <&pmx_ge1>;
	pinctrl-names = "default";
	ethernet1-port@0 {
		phy-handle = <&ethphy1>;
	};
};