ARM: Kirkwood: Convert lsxl boards to pinctrl.
authorAndrew Lunn <andrew@lunn.ch>
Sat, 17 Nov 2012 16:00:53 +0000 (17:00 +0100)
committerJason Cooper <jason@lakedaemon.net>
Sat, 24 Nov 2012 02:58:30 +0000 (02:58 +0000)
Signed-off-by: Andrew Lunn <andrew@lunn.ch>
Tested-by: Michael Walle <michael@walle.cc>
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
arch/arm/boot/dts/kirkwood-lsxl.dtsi
arch/arm/mach-kirkwood/board-lsxl.c

index 32d302e..37d45c4 100644 (file)
@@ -1,4 +1,5 @@
 /include/ "kirkwood.dtsi"
+/include/ "kirkwood-6281.dtsi"
 
 / {
        chosen {
@@ -6,6 +7,71 @@
        };
 
        ocp@f1000000 {
+               pinctrl: pinctrl@10000 {
+
+                       pinctrl-0 = < &pmx_power_hdd &pmx_usb_vbus
+                                     &pmx_fan_low &pmx_fan_high
+                                     &pmx_led_function_red &pmx_led_alarm
+                                     &pmx_led_info &pmx_led_power
+                                     &pmx_fan_lock &pmx_button_function
+                                     &pmx_power_switch &pmx_power_auto_switch
+                                     &pmx_led_function_blue >;
+                       pinctrl-names = "default";
+
+                       pmx_power_hdd: pmx-power-hdd {
+                               marvell,pins = "mpp10";
+                               marvell,function = "gpo";
+                       };
+                       pmx_usb_vbus: pmx-usb-vbus {
+                               marvell,pins = "mpp11";
+                               marvell,function = "gpio";
+                       };
+                       pmx_fan_high: pmx-fan-high {
+                               marvell,pins = "mpp18";
+                               marvell,function = "gpo";
+                       };
+                       pmx_fan_low: pmx-fan-low {
+                               marvell,pins = "mpp19";
+                               marvell,function = "gpo";
+                       };
+                       pmx_led_function_blue: pmx-led-function-blue {
+                               marvell,pins = "mpp36";
+                               marvell,function = "gpio";
+                       };
+                       pmx_led_alarm: pmx-led-alarm {
+                               marvell,pins = "mpp37";
+                               marvell,function = "gpio";
+                       };
+                       pmx_led_info: pmx-led-info {
+                               marvell,pins = "mpp38";
+                               marvell,function = "gpio";
+                       };
+                       pmx_led_power: pmx-led-power {
+                               marvell,pins = "mpp39";
+                               marvell,function = "gpio";
+                       };
+                       pmx_fan_lock: pmx-fan-lock {
+                               marvell,pins = "mpp40";
+                               marvell,function = "gpio";
+                       };
+                       pmx_button_function: pmx-button-function {
+                               marvell,pins = "mpp41";
+                               marvell,function = "gpio";
+                       };
+                       pmx_power_switch: pmx-power-switch {
+                               marvell,pins = "mpp42";
+                               marvell,function = "gpio";
+                       };
+                       pmx_power_auto_switch: pmx-power-auto-switch {
+                               marvell,pins = "mpp43";
+                               marvell,function = "gpio";
+                       };
+                       pmx_led_function_red: pmx-led-function_red {
+                               marvell,pins = "mpp48";
+                               marvell,function = "gpio";
+                       };
+
+               };
                sata@80000 {
                        status = "okay";
                        nr-ports = <1>;
index f780e2e..d60cdab 100644 (file)
@@ -20,7 +20,6 @@
 #include <linux/spi/spi.h>
 #include <linux/mv643xx_eth.h>
 #include "common.h"
-#include "mpp.h"
 
 static struct mv643xx_eth_platform_data lsxl_ge00_data = {
        .phy_addr       = MV643XX_ETH_PHY_ADDR(0),
@@ -30,23 +29,6 @@ static struct mv643xx_eth_platform_data lsxl_ge01_data = {
        .phy_addr       = MV643XX_ETH_PHY_ADDR(8),
 };
 
-static unsigned int lsxl_mpp_config[] __initdata = {
-       MPP10_GPO,      /* HDD Power Enable */
-       MPP11_GPIO,     /* USB Vbus Enable */
-       MPP18_GPO,      /* FAN High Enable# */
-       MPP19_GPO,      /* FAN Low Enable# */
-       MPP36_GPIO,     /* Function Blue LED */
-       MPP37_GPIO,     /* Alarm LED */
-       MPP38_GPIO,     /* Info LED */
-       MPP39_GPIO,     /* Power LED */
-       MPP40_GPIO,     /* Fan Lock */
-       MPP41_GPIO,     /* Function Button */
-       MPP42_GPIO,     /* Power Switch */
-       MPP43_GPIO,     /* Power Auto Switch */
-       MPP48_GPIO,     /* Function Red LED */
-       0
-};
-
 /*
  * On the LS-XHL/LS-CHLv2, the shutdown process is following:
  * - Userland monitors key events until the power switch goes to off position
@@ -65,7 +47,6 @@ void __init lsxl_init(void)
        /*
         * Basic setup. Needs to be called early.
         */
-       kirkwood_mpp_conf(lsxl_mpp_config);
 
        kirkwood_ge00_init(&lsxl_ge00_data);
        kirkwood_ge01_init(&lsxl_ge01_data);