[PATCH 4/4] ARM: Kirkwood: Convert LSXL to restart-poweroff driver.
Michael Walle
michael at walle.cc
Fri Dec 28 14:16:59 EST 2012
Am Freitag 28 Dezember 2012, 13:25:12 schrieb Andrew Lunn:
> Add a device tree node and remove the C code.
>
> Signed-off-by: Andrew Lunn <andrew at lunn.ch>
> ---
> arch/arm/boot/dts/kirkwood-lsxl.dtsi | 4 ++++
> arch/arm/mach-kirkwood/Kconfig | 1 +
> arch/arm/mach-kirkwood/board-lsxl.c | 16 ----------------
> 3 files changed, 5 insertions(+), 16 deletions(-)
>
> diff --git a/arch/arm/boot/dts/kirkwood-lsxl.dtsi
> b/arch/arm/boot/dts/kirkwood-lsxl.dtsi index 37d45c4..996c7fe 100644
> --- a/arch/arm/boot/dts/kirkwood-lsxl.dtsi
> +++ b/arch/arm/boot/dts/kirkwood-lsxl.dtsi
> @@ -172,6 +172,10 @@
> alarm-gpios = <&gpio1 8 0>;
> };
>
> + restart_poweroff {
> + compatible = "restart-poweroff";
> + };
> +
> regulators {
> compatible = "simple-bus";
> #address-cells = <1>;
> diff --git a/arch/arm/mach-kirkwood/Kconfig
> b/arch/arm/mach-kirkwood/Kconfig index bb4de9c..432bee0 100644
> --- a/arch/arm/mach-kirkwood/Kconfig
> +++ b/arch/arm/mach-kirkwood/Kconfig
> @@ -119,6 +119,7 @@ config MACH_GOFLEXNET_DT
> config MACH_LSXL_DT
> bool "Buffalo Linkstation LS-XHL, LS-CHLv2 (Flattened Device Tree)"
> select ARCH_KIRKWOOD_DT
> + select POWER_RESET_RESTART
> help
> Say 'Y' here if you want your kernel to support the
> Buffalo Linkstation LS-XHL & LS-CHLv2 devices, using
> diff --git a/arch/arm/mach-kirkwood/board-lsxl.c
> b/arch/arm/mach-kirkwood/board-lsxl.c index 4ec8b7a..3483952 100644
> --- a/arch/arm/mach-kirkwood/board-lsxl.c
> +++ b/arch/arm/mach-kirkwood/board-lsxl.c
> @@ -25,19 +25,6 @@ static struct mv643xx_eth_platform_data lsxl_ge01_data =
> { .phy_addr = MV643XX_ETH_PHY_ADDR(8),
> };
>
> -/*
> - * On the LS-XHL/LS-CHLv2, the shutdown process is following:
> - * - Userland monitors key events until the power switch goes to off
> position - * - The board reboots
> - * - U-boot starts and goes into an idle mode waiting for the user
> - * to move the switch to ON position
> - *
> - */
> -static void lsxl_power_off(void)
> -{
> - kirkwood_restart('h', NULL);
> -}
> -
> void __init lsxl_init(void)
> {
> /*
> @@ -46,7 +33,4 @@ void __init lsxl_init(void)
>
> kirkwood_ge00_init(&lsxl_ge00_data);
> kirkwood_ge01_init(&lsxl_ge01_data);
> -
> - /* register power-off method */
> - pm_power_off = lsxl_power_off;
> }
Tested-by: Michael Walle <michael at walle.cc>
Sort of, device_shutdown() is blocking on my board (seems to be some kind of
issue with orion-ehci), but that has nothing to do with this patch :)
More information about the linux-arm-kernel
mailing list