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

Commit 9adad788 authored by Simon Horman's avatar Simon Horman
Browse files

ARM: shmobile: ape6evm: Add GPIO LEDs



The board has 6 LEDs connected to GPIOs. Add a led-gpio device to
support them.

Acked-by: default avatarKuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: default avatarSimon Horman <horms+renesas@verge.net.au>
parent 5c6db1a4
Loading
Loading
Loading
Loading
+37 −0
Original line number Original line Diff line number Diff line
@@ -39,6 +39,40 @@
#include <asm/mach-types.h>
#include <asm/mach-types.h>
#include <asm/mach/arch.h>
#include <asm/mach/arch.h>


/* LEDS */
static struct gpio_led ape6evm_leds[] = {
	{
		.name		= "gnss-en",
		.gpio		= 28,
		.default_state	= LEDS_GPIO_DEFSTATE_OFF,
	}, {
		.name		= "nfc-nrst",
		.gpio		= 126,
		.default_state	= LEDS_GPIO_DEFSTATE_OFF,
	}, {
		.name		= "gnss-nrst",
		.gpio		= 132,
		.default_state	= LEDS_GPIO_DEFSTATE_OFF,
	}, {
		.name		= "bt-wakeup",
		.gpio		= 232,
		.default_state	= LEDS_GPIO_DEFSTATE_OFF,
	}, {
		.name		= "strobe",
		.gpio		= 250,
		.default_state	= LEDS_GPIO_DEFSTATE_OFF,
	}, {
		.name		= "bbresetout",
		.gpio		= 288,
		.default_state	= LEDS_GPIO_DEFSTATE_OFF,
	},
};

static __initdata struct gpio_led_platform_data ape6evm_leds_pdata = {
	.leds		= ape6evm_leds,
	.num_leds	= ARRAY_SIZE(ape6evm_leds),
};

/* GPIO KEY */
/* GPIO KEY */
#define GPIO_KEY(c, g, d, ...) \
#define GPIO_KEY(c, g, d, ...) \
	{ .code = c, .gpio = g, .desc = d, .active_low = 1 }
	{ .code = c, .gpio = g, .desc = d, .active_low = 1 }
@@ -195,6 +229,9 @@ static void __init ape6evm_add_standard_devices(void)
	platform_device_register_data(&platform_bus, "gpio-keys", -1,
	platform_device_register_data(&platform_bus, "gpio-keys", -1,
				      &ape6evm_keys_pdata,
				      &ape6evm_keys_pdata,
				      sizeof(ape6evm_keys_pdata));
				      sizeof(ape6evm_keys_pdata));
	platform_device_register_data(&platform_bus, "leds-gpio", -1,
				      &ape6evm_leds_pdata,
				      sizeof(ape6evm_leds_pdata));
}
}


static const char *ape6evm_boards_compat_dt[] __initdata = {
static const char *ape6evm_boards_compat_dt[] __initdata = {