mvebu dt changes for v3.15 (incremental round #2)
- mvebu - add audio for Armada 370 DB - enable Armada 370/XP watchdog - kirkwood - convert board rd88f6281 - add board rd88f6192 - dove enable watchdog -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.22 (GNU/Linux) iQIcBAABAgAGBQJTCDw/AAoJEP45WPkGe8ZnMtwP/2LhvbKUiYqxQAVI8wPtuTt7 xSeQ/JFuctIY6BAjutfU+Vi4iQGjFNMy6SJVRNQKevbpZbgYnEmJua1/BHtieTYR vNTkoUSQiN5DlKkI3dh2FxOT4FsHFx7OaAsxKDWIHPtvaNHHAxq20RHgkbdPjlBx pAPpF0lvsoBEtpwPgKrLhKvO84EvD4tXaCMkx0xr1K3AAbEGJ+UxbWii21K3B7fL RMCPhQF0xrJ8zTND6KVdZnZ1pzsDFviBHe33ts8hAIXy8oOPyMGR9dns4mzds7vq mWdaL0mTzcKif2utwhr9UujEmtEu/m0ZgROMAn6kgTX3hTl8qPbUmDRVqME346aF eJA517gPKSuhEzrCpfRk94V0USsy7m2d37qwdlccICx9tOTdNg1u7cYOFCh0aHSW WRG+47x+lDDALnhnTNpRy5UtF/QQSA67QFRy2Ls44zHn7vl19ynwnP88BLWsHFJr 9gJ+b9W9ibmH1ZTJoZhfWTffPcXTu6Cv/tIB6XMGMkFaK5hY1LspyunuWZipdhBj fZls0GRr7fMPa8KSBwEcIpM9W0QyWT0qOxlgXG2CnxrEZRsncHOKL7GAh4GCNCU8 WnXs1+HB6XQR3pd2Zdbw5GCmTTITlHqbNQUvLYBQkcAOFNui5BuJcrx4tpNQLZqi RQ2dXD5NdMoI+NOXxX0g =F2YM -----END PGP SIGNATURE----- Merge tag 'mvebu-dt-3.15-2' of git://git.infradead.org/linux-mvebu into next/dt Merge "mvebu dt changes for v3.15 (incremental round #2)" from Jason Cooper: - mvebu - add audio for Armada 370 DB - enable Armada 370/XP watchdog - kirkwood - convert board rd88f6281 - add board rd88f6192 - dove enable watchdog * tag 'mvebu-dt-3.15-2' of git://git.infradead.org/linux-mvebu: ARM: dove: Enable Dove watchdog in the devicetree ARM: kirkwood: Add RSTOUT 'reg' entry to devicetree ARM: mvebu: Enable Armada 370/XP watchdog in the devicetree ARM: Kirkwood: convert rd88f6281-setup.c to DT. ARM: Kirkwood: Add DT description of rd88f6192. ARM: mvebu: enable S/PDIF audio in Armada 370 DB Device Tree ARM: mvebu: add audio support to Armada 370 DB ARM: mvebu: add I2C0 muxing option for Armada 370 SoC ARM: mvebu: add audio I2S controller to Armada 370 Device Tree Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
commit
c58181eb74
@ -113,6 +113,9 @@ dtb-$(CONFIG_ARCH_KIRKWOOD) += kirkwood-b3.dtb \
|
||||
kirkwood-nsa310a.dtb \
|
||||
kirkwood-openblocks_a6.dtb \
|
||||
kirkwood-openblocks_a7.dtb \
|
||||
kirkwood-rd88f6192.dtb \
|
||||
kirkwood-rd88f6281-a0.dtb \
|
||||
kirkwood-rd88f6281-a1.dtb \
|
||||
kirkwood-sheevaplug.dtb \
|
||||
kirkwood-sheevaplug-esata.dtb \
|
||||
kirkwood-topkick.dtb \
|
||||
|
@ -64,6 +64,22 @@
|
||||
phy-mode = "rgmii-id";
|
||||
};
|
||||
|
||||
i2c@11000 {
|
||||
pinctrl-0 = <&i2c0_pins>;
|
||||
pinctrl-names = "default";
|
||||
status = "okay";
|
||||
audio_codec: audio-codec@4a {
|
||||
compatible = "cirrus,cs42l51";
|
||||
reg = <0x4a>;
|
||||
};
|
||||
};
|
||||
|
||||
audio-controller@30000 {
|
||||
pinctrl-0 = <&i2s_pins2>;
|
||||
pinctrl-names = "default";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
mvsdio@d4000 {
|
||||
pinctrl-0 = <&sdio_pins1>;
|
||||
pinctrl-names = "default";
|
||||
@ -80,6 +96,30 @@
|
||||
broken-cd;
|
||||
};
|
||||
|
||||
pinctrl {
|
||||
/*
|
||||
* These pins might be muxed as I2S by
|
||||
* the bootloader, but it conflicts
|
||||
* with the real I2S pins that are
|
||||
* muxed using i2s_pins. We must mux
|
||||
* those pins to a function other than
|
||||
* I2S.
|
||||
*/
|
||||
pinctrl-0 = <&hog_pins1 &hog_pins2>;
|
||||
pinctrl-names = "default";
|
||||
|
||||
hog_pins1: hog-pins1 {
|
||||
marvell,pins = "mpp6", "mpp8", "mpp10",
|
||||
"mpp12", "mpp13";
|
||||
marvell,function = "gpio";
|
||||
};
|
||||
|
||||
hog_pins2: hog-pins2 {
|
||||
marvell,pins = "mpp5", "mpp7", "mpp9";
|
||||
marvell,function = "gpo";
|
||||
};
|
||||
};
|
||||
|
||||
usb@50000 {
|
||||
status = "okay";
|
||||
};
|
||||
@ -112,10 +152,26 @@
|
||||
/* Port 0, Lane 0 */
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
pcie@2,0 {
|
||||
/* Port 1, Lane 0 */
|
||||
status = "okay";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
sound {
|
||||
compatible = "marvell,a370db-audio";
|
||||
marvell,audio-controller = <&audio_controller>;
|
||||
marvell,audio-codec = <&audio_codec &spdif_out &spdif_in>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
spdif_out: spdif-out {
|
||||
compatible = "linux,spdif-dit";
|
||||
};
|
||||
|
||||
spdif_in: spdif-in {
|
||||
compatible = "linux,spdif-dir";
|
||||
};
|
||||
};
|
||||
|
@ -199,6 +199,10 @@
|
||||
interrupts = <37>, <38>, <39>, <40>, <5>, <6>;
|
||||
};
|
||||
|
||||
watchdog@20300 {
|
||||
reg = <0x20300 0x34>, <0x20704 0x4>;
|
||||
};
|
||||
|
||||
usb@50000 {
|
||||
compatible = "marvell,orion-ehci";
|
||||
reg = <0x50000 0x500>;
|
||||
|
@ -132,6 +132,25 @@
|
||||
"mpp51", "mpp52", "mpp53";
|
||||
marvell,function = "sd0";
|
||||
};
|
||||
|
||||
i2c0_pins: i2c0-pins {
|
||||
marvell,pins = "mpp2", "mpp3";
|
||||
marvell,function = "i2c0";
|
||||
};
|
||||
|
||||
i2s_pins1: i2s-pins1 {
|
||||
marvell,pins = "mpp5", "mpp6", "mpp7",
|
||||
"mpp8", "mpp9", "mpp10",
|
||||
"mpp12", "mpp13";
|
||||
marvell,function = "audio";
|
||||
};
|
||||
|
||||
i2s_pins2: i2s-pins2 {
|
||||
marvell,pins = "mpp49", "mpp47", "mpp50",
|
||||
"mpp59", "mpp57", "mpp61",
|
||||
"mpp62", "mpp60", "mpp58";
|
||||
marvell,function = "audio";
|
||||
};
|
||||
};
|
||||
|
||||
gpio0: gpio@18100 {
|
||||
@ -196,6 +215,20 @@
|
||||
clocks = <&coreclk 2>;
|
||||
};
|
||||
|
||||
watchdog@20300 {
|
||||
compatible = "marvell,armada-370-wdt";
|
||||
clocks = <&coreclk 2>;
|
||||
};
|
||||
|
||||
audio_controller: audio-controller@30000 {
|
||||
compatible = "marvell,armada370-audio";
|
||||
reg = <0x30000 0x4000>;
|
||||
interrupts = <93>;
|
||||
clocks = <&gateclk 0>;
|
||||
clock-names = "internal";
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
usb@50000 {
|
||||
clocks = <&coreclk 0>;
|
||||
};
|
||||
|
@ -111,6 +111,12 @@
|
||||
clock-names = "nbclk", "fixed";
|
||||
};
|
||||
|
||||
watchdog@20300 {
|
||||
compatible = "marvell,armada-xp-wdt";
|
||||
clocks = <&coreclk 2>, <&refclk>;
|
||||
clock-names = "nbclk", "fixed";
|
||||
};
|
||||
|
||||
armada-370-xp-pmsu@22000 {
|
||||
compatible = "marvell,armada-370-xp-pmsu";
|
||||
reg = <0x22100 0x400>, <0x20800 0x20>;
|
||||
|
@ -210,6 +210,14 @@
|
||||
clocks = <&core_clk 0>;
|
||||
};
|
||||
|
||||
watchdog@20300 {
|
||||
compatible = "marvell,orion-wdt";
|
||||
reg = <0x20300 0x28>, <0x20108 0x4>;
|
||||
interrupt-parent = <&bridge_intc>;
|
||||
interrupts = <3>;
|
||||
clocks = <&core_clk 0>;
|
||||
};
|
||||
|
||||
crypto: crypto-engine@30000 {
|
||||
compatible = "marvell,orion-crypto";
|
||||
reg = <0x30000 0x10000>,
|
||||
|
112
arch/arm/boot/dts/kirkwood-rd88f6192.dts
Normal file
112
arch/arm/boot/dts/kirkwood-rd88f6192.dts
Normal file
@ -0,0 +1,112 @@
|
||||
/*
|
||||
* Marvell RD88F6192 Board descrition
|
||||
*
|
||||
* Andrew Lunn <andrew@lunn.ch>
|
||||
*
|
||||
* 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.
|
||||
*
|
||||
* This file contains the definitions that are common between the three
|
||||
* variants of the Marvell Kirkwood Development Board.
|
||||
*/
|
||||
/dts-v1/;
|
||||
|
||||
#include "kirkwood.dtsi"
|
||||
#include "kirkwood-6192.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Marvell RD88F6192 reference design";
|
||||
compatible = "marvell,rd88f6192", "marvell,kirkwood-88f6192", "marvell,kirkwood";
|
||||
|
||||
memory {
|
||||
device_type = "memory";
|
||||
reg = <0x00000000 0x20000000>;
|
||||
};
|
||||
|
||||
chosen {
|
||||
bootargs = "console=ttyS0,115200n8";
|
||||
};
|
||||
|
||||
mbus {
|
||||
pcie-controller {
|
||||
status = "okay";
|
||||
|
||||
pcie@1,0 {
|
||||
status = "okay";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
ocp@f1000000 {
|
||||
pinctrl: pinctrl@10000 {
|
||||
pinctrl-0 = <&pmx_usb_power>;
|
||||
pinctrl-names = "default";
|
||||
|
||||
pmx_usb_power: pmx-usb-power {
|
||||
marvell,pins = "mpp10";
|
||||
marvell,function = "gpo";
|
||||
};
|
||||
};
|
||||
|
||||
serial@12000 {
|
||||
status = "okay";
|
||||
|
||||
};
|
||||
|
||||
spi@10600 {
|
||||
status = "okay";
|
||||
pinctrl-0 = <&pmx_spi>;
|
||||
pinctrl-names = "default";
|
||||
|
||||
m25p128@0 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
compatible = "st,m25p128";
|
||||
reg = <0>;
|
||||
spi-max-frequency = <20000000>;
|
||||
mode = <0>;
|
||||
};
|
||||
};
|
||||
|
||||
sata@80000 {
|
||||
status = "okay";
|
||||
nr-ports = <2>;
|
||||
};
|
||||
};
|
||||
|
||||
regulators {
|
||||
compatible = "simple-bus";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
pinctrl-0 = <&pmx_usb_power>;
|
||||
pinctrl-names = "default";
|
||||
|
||||
usb_power: regulator@0 {
|
||||
compatible = "regulator-fixed";
|
||||
reg = <0>;
|
||||
regulator-name = "USB VBUS";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
enable-active-high;
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
gpio = <&gpio0 10 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&mdio {
|
||||
status = "okay";
|
||||
|
||||
ethphy0: ethernet-phy@8 {
|
||||
reg = <8>;
|
||||
};
|
||||
};
|
||||
|
||||
ð0 {
|
||||
status = "okay";
|
||||
ethernet0-port@0 {
|
||||
phy-handle = <ðphy0>;
|
||||
};
|
||||
};
|
26
arch/arm/boot/dts/kirkwood-rd88f6281-a0.dts
Normal file
26
arch/arm/boot/dts/kirkwood-rd88f6281-a0.dts
Normal file
@ -0,0 +1,26 @@
|
||||
/*
|
||||
* Marvell RD88F6181 A0 Board descrition
|
||||
*
|
||||
* Andrew Lunn <andrew@lunn.ch>
|
||||
*
|
||||
* 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.
|
||||
*
|
||||
* This file contains the definitions for the board with the A0 variant of
|
||||
* the SoC. The ethernet switch does not have a "wan" port.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
#include "kirkwood-rd88f6281.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Marvell RD88f6281 Reference design, with A0 SoC";
|
||||
compatible = "marvell,rd88f6281-a0", "marvell,rd88f6281","marvell,kirkwood-88f6281", "marvell,kirkwood";
|
||||
|
||||
dsa@0 {
|
||||
switch@0 {
|
||||
reg = <10 0>; /* MDIO address 10, switch 0 in tree */
|
||||
};
|
||||
};
|
||||
};
|
31
arch/arm/boot/dts/kirkwood-rd88f6281-a1.dts
Normal file
31
arch/arm/boot/dts/kirkwood-rd88f6281-a1.dts
Normal file
@ -0,0 +1,31 @@
|
||||
/*
|
||||
* Marvell RD88F6181 A1 Board descrition
|
||||
*
|
||||
* Andrew Lunn <andrew@lunn.ch>
|
||||
*
|
||||
* 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.
|
||||
*
|
||||
* This file contains the definitions for the board with the A1 variant of
|
||||
* the SoC. The ethernet switch has a "wan" port.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include "kirkwood-rd88f6281.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Marvell RD88f6281 Reference design, with A1 SoC";
|
||||
compatible = "marvell,rd88f6281-a1", "marvell,rd88f6281","marvell,kirkwood-88f6281", "marvell,kirkwood";
|
||||
|
||||
dsa@0 {
|
||||
switch@0 {
|
||||
reg = <0 0>; /* MDIO address 0, switch 0 in tree */
|
||||
port@4 {
|
||||
reg = <4>;
|
||||
label = "wan";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
152
arch/arm/boot/dts/kirkwood-rd88f6281.dtsi
Normal file
152
arch/arm/boot/dts/kirkwood-rd88f6281.dtsi
Normal file
@ -0,0 +1,152 @@
|
||||
/*
|
||||
* Marvell RD88F6181 Common Board descrition
|
||||
*
|
||||
* Andrew Lunn <andrew@lunn.ch>
|
||||
*
|
||||
* 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.
|
||||
*
|
||||
* This file contains the definitions that are common between the two
|
||||
* variants of the Marvell Kirkwood Development Board.
|
||||
*/
|
||||
|
||||
#include "kirkwood.dtsi"
|
||||
#include "kirkwood-6281.dtsi"
|
||||
|
||||
/ {
|
||||
memory {
|
||||
device_type = "memory";
|
||||
reg = <0x00000000 0x20000000>;
|
||||
};
|
||||
|
||||
chosen {
|
||||
bootargs = "console=ttyS0,115200n8";
|
||||
};
|
||||
|
||||
mbus {
|
||||
pcie-controller {
|
||||
status = "okay";
|
||||
|
||||
pcie@1,0 {
|
||||
status = "okay";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
ocp@f1000000 {
|
||||
pinctrl: pinctrl@10000 {
|
||||
pinctrl-0 = <&pmx_sdio_cd>;
|
||||
pinctrl-names = "default";
|
||||
|
||||
pmx_sdio_cd: pmx-sdio-cd {
|
||||
marvell,pins = "mpp28";
|
||||
marvell,function = "gpio";
|
||||
};
|
||||
};
|
||||
|
||||
serial@12000 {
|
||||
status = "okay";
|
||||
|
||||
};
|
||||
|
||||
sata@80000 {
|
||||
status = "okay";
|
||||
nr-ports = <2>;
|
||||
};
|
||||
mvsdio@90000 {
|
||||
pinctrl-0 = <&pmx_sdio &pmx_sdio_cd>;
|
||||
pinctrl-names = "default";
|
||||
status = "okay";
|
||||
cd-gpios = <&gpio0 28 GPIO_ACTIVE_HIGH>;
|
||||
/* No WP GPIO */
|
||||
};
|
||||
};
|
||||
|
||||
dsa@0 {
|
||||
compatible = "marvell,dsa";
|
||||
#address-cells = <2>;
|
||||
#size-cells = <0>;
|
||||
|
||||
dsa,ethernet = <ð0>;
|
||||
dsa,mii-bus = <ðphy1>;
|
||||
|
||||
switch@0 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
port@0 {
|
||||
reg = <0>;
|
||||
label = "lan1";
|
||||
};
|
||||
|
||||
port@1 {
|
||||
reg = <1>;
|
||||
label = "lan2";
|
||||
};
|
||||
|
||||
port@2 {
|
||||
reg = <2>;
|
||||
label = "lan3";
|
||||
};
|
||||
|
||||
port@3 {
|
||||
reg = <3>;
|
||||
label = "lan4";
|
||||
};
|
||||
|
||||
port@5 {
|
||||
reg = <5>;
|
||||
label = "cpu";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&nand {
|
||||
status = "okay";
|
||||
|
||||
partition@0 {
|
||||
label = "u-boot";
|
||||
reg = <0x0000000 0x100000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@100000 {
|
||||
label = "uImage";
|
||||
reg = <0x0100000 0x200000>;
|
||||
};
|
||||
|
||||
partition@300000 {
|
||||
label = "data";
|
||||
reg = <0x0300000 0x500000>;
|
||||
};
|
||||
};
|
||||
|
||||
&mdio {
|
||||
status = "okay";
|
||||
|
||||
ethphy0: ethernet-phy@0 {
|
||||
reg = <0>;
|
||||
};
|
||||
|
||||
ethphy1: ethernet-phy@ff {
|
||||
reg = <0xff>; /* No PHY attached */
|
||||
speed = <1000>;
|
||||
duple = <1>;
|
||||
};
|
||||
};
|
||||
|
||||
ð0 {
|
||||
status = "okay";
|
||||
ethernet0-port@0 {
|
||||
phy-handle = <ðphy0>;
|
||||
};
|
||||
};
|
||||
|
||||
ð1 {
|
||||
status = "okay";
|
||||
ethernet1-port@0 {
|
||||
phy-handle = <ðphy1>;
|
||||
};
|
||||
};
|
@ -178,7 +178,7 @@
|
||||
|
||||
wdt: watchdog-timer@20300 {
|
||||
compatible = "marvell,orion-wdt";
|
||||
reg = <0x20300 0x28>;
|
||||
reg = <0x20300 0x28>, <0x20108 0x4>;
|
||||
interrupt-parent = <&bridge_intc>;
|
||||
interrupts = <3>;
|
||||
clocks = <&gate_clk 7>;
|
||||
|
Loading…
x
Reference in New Issue
Block a user