[PATCH 20/29] ARM: orion5x: convert edmini_v2 to DT pinctrl
Thomas Petazzoni
thomas.petazzoni at free-electrons.com
Sun Apr 13 07:39:57 PDT 2014
This commit converts the already partially DT-converted edmini_v2
platform to use the Device Tree for pinctrl.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni at free-electrons.com>
---
.../dts/orion5x-lacie-ethernet-disk-mini-v2.dts | 31 ++++++++++++++++++++++
arch/arm/mach-orion5x/edmini_v2-setup.c | 28 -------------------
2 files changed, 31 insertions(+), 28 deletions(-)
diff --git a/arch/arm/boot/dts/orion5x-lacie-ethernet-disk-mini-v2.dts b/arch/arm/boot/dts/orion5x-lacie-ethernet-disk-mini-v2.dts
index d66d2fa..eee42f7 100644
--- a/arch/arm/boot/dts/orion5x-lacie-ethernet-disk-mini-v2.dts
+++ b/arch/arm/boot/dts/orion5x-lacie-ethernet-disk-mini-v2.dts
@@ -29,12 +29,39 @@
<MBUS_ID(0x09, 0x00) 0 0xf2200000 0x800>;
internal-regs {
+ pinctrl at 10000 {
+ pinctrl-0 = <&pmx_rtc &pmx_power_led_ctrl>;
+ pinctrl-names = "default";
+
+ pmx_rtc: pmx-rtc {
+ marvell,pins = "mpp3";
+ marvell,function = "gpio";
+ };
+
+ pmx_power_led: pmx-power-led {
+ marvell,pins = "mpp16";
+ marvell,function = "gpio";
+ };
+
+ pmx_power_led_ctrl: pmx-power-led-ctrl {
+ marvell,pins = "mpp17";
+ marvell,function = "gpio";
+ };
+
+ pmx_power_button: pmx-power-button {
+ marvell,pins = "mpp18";
+ marvell,function = "gpio";
+ };
+ };
+
serial at 12000 {
clock-frequency = <166666667>;
status = "okay";
};
sata at 80000 {
+ pinctrl-0 = <&pmx_sata0 &pmx_sata1>;
+ pinctrl-names = "default";
status = "okay";
nr-ports = <2>;
};
@@ -43,6 +70,8 @@
gpio_keys {
compatible = "gpio-keys";
+ pinctrl-0 = <&pmx_power_button>;
+ pinctrl-names = "default";
#address-cells = <1>;
#size-cells = <0>;
button at 1 {
@@ -54,6 +83,8 @@
gpio_leds {
compatible = "gpio-leds";
+ pinctrl-0 = <&pmx_power_led>;
+ pinctrl-names = "default";
led at 1 {
label = "power:blue";
diff --git a/arch/arm/mach-orion5x/edmini_v2-setup.c b/arch/arm/mach-orion5x/edmini_v2-setup.c
index f66c1b2..c50469e 100644
--- a/arch/arm/mach-orion5x/edmini_v2-setup.c
+++ b/arch/arm/mach-orion5x/edmini_v2-setup.c
@@ -109,37 +109,9 @@ static struct i2c_board_info __initdata edmini_v2_i2c_rtc = {
/*****************************************************************************
* General Setup
****************************************************************************/
-static unsigned int edminiv2_mpp_modes[] __initdata = {
- MPP0_UNUSED,
- MPP1_UNUSED,
- MPP2_UNUSED,
- MPP3_GPIO, /* RTC interrupt */
- MPP4_UNUSED,
- MPP5_UNUSED,
- MPP6_UNUSED,
- MPP7_UNUSED,
- MPP8_UNUSED,
- MPP9_UNUSED,
- MPP10_UNUSED,
- MPP11_UNUSED,
- MPP12_SATA_LED, /* SATA 0 presence */
- MPP13_SATA_LED, /* SATA 1 presence */
- MPP14_SATA_LED, /* SATA 0 active */
- MPP15_SATA_LED, /* SATA 1 active */
- /* 16: Power LED control (0 = On, 1 = Off) */
- MPP16_GPIO,
- /* 17: Power LED control select (0 = CPLD, 1 = GPIO16) */
- MPP17_GPIO,
- /* 18: Power button status (0 = Released, 1 = Pressed) */
- MPP18_GPIO,
- MPP19_UNUSED,
- 0,
-};
void __init edmini_v2_init(void)
{
- orion5x_mpp_conf(edminiv2_mpp_modes);
-
/*
* Configure peripherals.
*/
--
1.8.3.2
More information about the linux-arm-kernel
mailing list