linux-stable/arch/arm/boot/dts/kirkwood-topkick.dts
Thomas Petazzoni faf76128a8 arm: kirkwood: topkick: move pinmux configs to the right devices
When the pinmux mechanism was added in Kirkwood, the device driver
core was not yet providing the possibility of attaching pinmux
configurations to all devices, drivers had to do it explicitly, and
not all drivers were doing this.

Now that the driver core does that in a generic way, it makes sense to
attach the pinmux configuration to their corresponding devices.

This allows the pinctrl subsystem to show in debugfs to which device
is related which pins, for example:

pin 41 (PIN41): gpio-leds.1 mvebu-gpio:41 function gpio group mpp41
pin 42 (PIN42): gpio-leds.1 mvebu-gpio:42 function gpio group mpp42
pin 43 (PIN43): gpio-leds.1 mvebu-gpio:43 function gpio group mpp43

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: Andrew Lunn <andrew@lunn.ch>
Tested-By: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2013-05-27 15:34:00 +00:00

205 lines
3.9 KiB
Text

/dts-v1/;
/include/ "kirkwood.dtsi"
/include/ "kirkwood-6282.dtsi"
/ {
model = "Univeral Scientific Industrial Co. Topkick-1281P2";
compatible = "usi,topkick-1281P2", "usi,topkick", "marvell,kirkwood-88f6282", "marvell,kirkwood";
memory {
device_type = "memory";
reg = <0x00000000 0x10000000>;
};
chosen {
bootargs = "console=ttyS0,115200n8 earlyprintk";
};
ocp@f1000000 {
pinctrl: pinctrl@10000 {
/*
* Switch positions
*
* /-SW_LEFT(2)
* |
* | /-SW_IDLE
* | |
* | | /-SW_RIGHT
* | | |
* PS [L] [I] [R] LEDS
*/
pinctrl-0 = <&pmx_sw_left &pmx_sw_right
&pmx_sw_idle &pmx_sw_left2>;
pinctrl-names = "default";
pmx_led_disk_yellow: pmx-led-disk-yellow {
marvell,pins = "mpp21";
marvell,function = "gpio";
};
pmx_sata0_pwr_enable: pmx-sata0-pwr-enable {
marvell,pins = "mpp36";
marvell,function = "gpio";
};
pmx_led_sys_red: pmx-led-sys-red {
marvell,pins = "mpp37";
marvell,function = "gpio";
};
pmx_led_sys_blue: pmx-led-sys-blue {
marvell,pins = "mpp38";
marvell,function = "gpio";
};
pmx_led_wifi_green: pmx-led-wifi-green {
marvell,pins = "mpp39";
marvell,function = "gpio";
};
pmx_sw_left: pmx-sw-left {
marvell,pins = "mpp43";
marvell,function = "gpio";
};
pmx_sw_right: pmx-sw-right {
marvell,pins = "mpp44";
marvell,function = "gpio";
};
pmx_sw_idle: pmx-sw-idle {
marvell,pins = "mpp45";
marvell,function = "gpio";
};
pmx_sw_left2: pmx-sw-left2 {
marvell,pins = "mpp46";
marvell,function = "gpio";
};
pmx_led_wifi_yellow: pmx-led-wifi-yellow {
marvell,pins = "mpp48";
marvell,function = "gpio";
};
};
serial@12000 {
status = "ok";
pinctrl-0 = <&pmx_uart0>;
pinctrl-names = "default";
};
nand@3000000 {
status = "okay";
pinctrl-0 = <&pmx_nand>;
pinctrl-names = "default";
partition@0 {
label = "u-boot";
reg = <0x0000000 0x180000>;
};
partition@180000 {
label = "u-boot env";
reg = <0x0180000 0x20000>;
};
partition@200000 {
label = "uImage";
reg = <0x0200000 0x600000>;
};
partition@800000 {
label = "uInitrd";
reg = <0x0800000 0x1000000>;
};
partition@1800000 {
label = "rootfs";
reg = <0x1800000 0xe800000>;
};
};
sata@80000 {
status = "okay";
nr-ports = <1>;
};
i2c@11000 {
status = "ok";
pinctrl-0 = <&pmx_twsi0>;
pinctrl-names = "default";
};
mvsdio@90000 {
pinctrl-0 = <&pmx_sdio>;
pinctrl-names = "default";
status = "okay";
/* No CD or WP GPIOs */
broken-cd;
};
};
gpio-leds {
/*
* GPIO LED layout
*
* /-SYS_LED(2)
* |
* | /-DISK_LED
* | |
* | | /-WLAN_LED(2)
* | | |
* [SW] [*] [*] [*]
*/
compatible = "gpio-leds";
pinctrl-0 = <&pmx_led_disk_yellow &pmx_led_sys_red
&pmx_led_sys_blue &pmx_led_wifi_green
&pmx_led_wifi_yellow>;
pinctrl-names = "default";
disk {
label = "topkick:yellow:disk";
gpios = <&gpio0 21 1>;
linux,default-trigger = "ide-disk";
};
system2 {
label = "topkick:red:system";
gpios = <&gpio1 5 1>;
};
system {
label = "topkick:blue:system";
gpios = <&gpio1 6 1>;
default-state = "on";
};
wifi {
label = "topkick:green:wifi";
gpios = <&gpio1 7 1>;
};
wifi2 {
label = "topkick:yellow:wifi";
gpios = <&gpio1 16 1>;
};
};
regulators {
compatible = "simple-bus";
#address-cells = <1>;
#size-cells = <0>;
pinctrl-0 = <&pmx_sata0_pwr_enable>;
pinctrl-names = "default";
sata0_power: regulator@1 {
compatible = "regulator-fixed";
reg = <1>;
regulator-name = "SATA0 Power";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
enable-active-high;
regulator-always-on;
regulator-boot-on;
gpio = <&gpio1 4 0>;
};
};
};