Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b046f560 authored by Michael Walle's avatar Michael Walle Committed by Jason Cooper
Browse files

ARM: kirkwood: use gpio-fan DT binding on lsxl



Remove board specific gpio-fan driver registration. Moved into device tree.

Signed-off-by: default avatarMichael Walle <michael@walle.cc>
Signed-off-by: default avatarJason Cooper <jason@lakedaemon.net>
parent 1136b9d1
Loading
Loading
Loading
Loading
+11 −0
Original line number Diff line number Diff line
@@ -94,4 +94,15 @@
			gpios = <&gpio1 16 1>;
		};
	};

	gpio_fan {
		compatible = "gpio-fan";
		gpios = <&gpio0 19 1
		         &gpio0 18 1>;
		gpio-fan,speed-map = <0    3
		                      1500 2
		                      3250 1
		                      5000 0>;
		alarm-gpios = <&gpio1 8 0>;
	};
};
+0 −51
Original line number Diff line number Diff line
@@ -20,11 +20,6 @@
#include <linux/spi/spi.h>
#include <linux/mv643xx_eth.h>
#include <linux/gpio.h>
#include <linux/gpio-fan.h>
#include <linux/input.h>
#include <asm/mach-types.h>
#include <asm/mach/arch.h>
#include <mach/kirkwood.h>
#include "common.h"
#include "mpp.h"

@@ -53,51 +48,6 @@ static unsigned int lsxl_mpp_config[] __initdata = {
	0
};

#define LSXL_GPIO_FAN_HIGH	18
#define LSXL_GPIO_FAN_LOW	19
#define LSXL_GPIO_FAN_LOCK	40

static struct gpio_fan_alarm lsxl_alarm = {
	.gpio = LSXL_GPIO_FAN_LOCK,
};

static struct gpio_fan_speed lsxl_speeds[] = {
	{
		.rpm = 0,
		.ctrl_val = 3,
	}, {
		.rpm = 1500,
		.ctrl_val = 1,
	}, {
		.rpm = 3250,
		.ctrl_val = 2,
	}, {
		.rpm = 5000,
		.ctrl_val = 0,
	}
};

static int lsxl_gpio_list[] = {
	LSXL_GPIO_FAN_HIGH, LSXL_GPIO_FAN_LOW,
};

static struct gpio_fan_platform_data lsxl_fan_data = {
	.num_ctrl = ARRAY_SIZE(lsxl_gpio_list),
	.ctrl = lsxl_gpio_list,
	.alarm = &lsxl_alarm,
	.num_speed = ARRAY_SIZE(lsxl_speeds),
	.speed = lsxl_speeds,
};

static struct platform_device lsxl_fan_device = {
	.name = "gpio-fan",
	.id = -1,
	.num_resources = 0,
	.dev = {
		.platform_data = &lsxl_fan_data,
	},
};

/*
 * On the LS-XHL/LS-CHLv2, the shutdown process is following:
 * - Userland monitors key events until the power switch goes to off position
@@ -128,7 +78,6 @@ void __init lsxl_init(void)
	kirkwood_ehci_init();
	kirkwood_ge00_init(&lsxl_ge00_data);
	kirkwood_ge01_init(&lsxl_ge01_data);
	platform_device_register(&lsxl_fan_device);

	/* register power-off method */
	pm_power_off = lsxl_power_off;