From 0867a4bce88cf52324410b227e053d00c7209c49 Mon Sep 17 00:00:00 2001 From: Andrew Lunn Date: Fri, 28 Dec 2012 15:08:49 +0100 Subject: [PATCH] ARM: Kirkwood: Convert NSA310 to use gpio-poweroff driver Remove the C code and add a Device Tree node for gpio-poweroff. Signed-off-by: Andrew Lunn Signed-off-by: Jason Cooper --- arch/arm/boot/dts/kirkwood-nsa310.dts | 5 ++++ arch/arm/mach-kirkwood/board-nsa310.c | 33 --------------------------- 2 files changed, 5 insertions(+), 33 deletions(-) diff --git a/arch/arm/boot/dts/kirkwood-nsa310.dts b/arch/arm/boot/dts/kirkwood-nsa310.dts index 2dc1d0929e89..85cce36491da 100644 --- a/arch/arm/boot/dts/kirkwood-nsa310.dts +++ b/arch/arm/boot/dts/kirkwood-nsa310.dts @@ -142,6 +142,11 @@ }; }; + gpio_poweroff { + compatible = "gpio-poweroff"; + gpios = <&gpio1 16 0>; + }; + regulators { compatible = "simple-bus"; #address-cells = <1>; diff --git a/arch/arm/mach-kirkwood/board-nsa310.c b/arch/arm/mach-kirkwood/board-nsa310.c index 891322b44633..cf2c78cf6513 100644 --- a/arch/arm/mach-kirkwood/board-nsa310.c +++ b/arch/arm/mach-kirkwood/board-nsa310.c @@ -11,14 +11,11 @@ #include #include #include -#include #include #include #include "common.h" #include "mpp.h" -#define NSA310_GPIO_POWER_OFF 48 - static unsigned int nsa310_mpp_config[] __initdata = { MPP12_GPIO, /* led esata green */ MPP13_GPIO, /* led esata red */ @@ -43,40 +40,10 @@ static struct i2c_board_info __initdata nsa310_i2c_info[] = { { I2C_BOARD_INFO("adt7476", 0x2e) }, }; -static void nsa310_power_off(void) -{ - gpio_set_value(NSA310_GPIO_POWER_OFF, 1); -} - -static int __init nsa310_gpio_request(unsigned int gpio, unsigned long flags, - const char *label) -{ - int err; - - err = gpio_request_one(gpio, flags, label); - if (err) - pr_err("NSA-310: can't setup GPIO%u (%s), err=%d\n", - gpio, label, err); - - return err; -} - -static void __init nsa310_gpio_init(void) -{ - int err; - - err = nsa310_gpio_request(NSA310_GPIO_POWER_OFF, GPIOF_OUT_INIT_LOW, - "Power Off"); - if (!err) - pm_power_off = nsa310_power_off; -} - void __init nsa310_init(void) { kirkwood_mpp_conf(nsa310_mpp_config); - nsa310_gpio_init(); - i2c_register_board_info(0, ARRAY_AND_SIZE(nsa310_i2c_info)); } -- 2.39.5