mirror of
https://github.com/torvalds/linux.git
synced 2026-07-27 17:47:41 +02:00
ARM: s3c: use gpio lookup table for LEDs
The crag6410 board is one of the last users of the gpio-led driver with plain gpio numbers. The driver has several ways to pass this information without using gpio numbers, using a lookup table is the easiest way. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Reviewed-by: Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com> Reviewed-by: Linus Walleij <linusw@kernel.org> Link: https://patch.msgid.link/20260427143546.3098519-1-arnd@kernel.org Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
This commit is contained in:
parent
254f49634e
commit
b64cbd3f5d
|
|
@ -779,46 +779,53 @@ static struct s3c_sdhci_platdata crag6410_hsmmc0_pdata = {
|
|||
static const struct gpio_led gpio_leds[] = {
|
||||
{
|
||||
.name = "d13:green:",
|
||||
.gpio = MMGPIO_GPIO_BASE + 0,
|
||||
.default_state = LEDS_GPIO_DEFSTATE_ON,
|
||||
},
|
||||
{
|
||||
.name = "d14:green:",
|
||||
.gpio = MMGPIO_GPIO_BASE + 1,
|
||||
.default_state = LEDS_GPIO_DEFSTATE_ON,
|
||||
},
|
||||
{
|
||||
.name = "d15:green:",
|
||||
.gpio = MMGPIO_GPIO_BASE + 2,
|
||||
.default_state = LEDS_GPIO_DEFSTATE_ON,
|
||||
},
|
||||
{
|
||||
.name = "d16:green:",
|
||||
.gpio = MMGPIO_GPIO_BASE + 3,
|
||||
.default_state = LEDS_GPIO_DEFSTATE_ON,
|
||||
},
|
||||
{
|
||||
.name = "d17:green:",
|
||||
.gpio = MMGPIO_GPIO_BASE + 4,
|
||||
.default_state = LEDS_GPIO_DEFSTATE_ON,
|
||||
},
|
||||
{
|
||||
.name = "d18:green:",
|
||||
.gpio = MMGPIO_GPIO_BASE + 5,
|
||||
.default_state = LEDS_GPIO_DEFSTATE_ON,
|
||||
},
|
||||
{
|
||||
.name = "d19:green:",
|
||||
.gpio = MMGPIO_GPIO_BASE + 6,
|
||||
.default_state = LEDS_GPIO_DEFSTATE_ON,
|
||||
},
|
||||
{
|
||||
.name = "d20:green:",
|
||||
.gpio = MMGPIO_GPIO_BASE + 7,
|
||||
.default_state = LEDS_GPIO_DEFSTATE_ON,
|
||||
},
|
||||
};
|
||||
|
||||
static struct gpiod_lookup_table crag_leds_table = {
|
||||
.dev_id = "leds-gpio",
|
||||
.table = {
|
||||
GPIO_LOOKUP_IDX("basic-mmio-gpio", 0, "cs", 0, GPIO_ACTIVE_LOW),
|
||||
GPIO_LOOKUP_IDX("basic-mmio-gpio", 1, "cs", 1, GPIO_ACTIVE_LOW),
|
||||
GPIO_LOOKUP_IDX("basic-mmio-gpio", 2, "cs", 2, GPIO_ACTIVE_LOW),
|
||||
GPIO_LOOKUP_IDX("basic-mmio-gpio", 3, "cs", 3, GPIO_ACTIVE_LOW),
|
||||
GPIO_LOOKUP_IDX("basic-mmio-gpio", 4, "cs", 4, GPIO_ACTIVE_LOW),
|
||||
GPIO_LOOKUP_IDX("basic-mmio-gpio", 5, "cs", 5, GPIO_ACTIVE_LOW),
|
||||
GPIO_LOOKUP_IDX("basic-mmio-gpio", 6, "cs", 6, GPIO_ACTIVE_LOW),
|
||||
GPIO_LOOKUP_IDX("basic-mmio-gpio", 7, "cs", 7, GPIO_ACTIVE_LOW),
|
||||
{ },
|
||||
},
|
||||
};
|
||||
|
||||
static const struct gpio_led_platform_data gpio_leds_pdata = {
|
||||
.leds = gpio_leds,
|
||||
.num_leds = ARRAY_SIZE(gpio_leds),
|
||||
|
|
@ -875,6 +882,7 @@ static void __init crag6410_machine_init(void)
|
|||
platform_add_devices(crag6410_devices, ARRAY_SIZE(crag6410_devices));
|
||||
platform_device_register_full(&crag6410_mmgpio_devinfo);
|
||||
|
||||
gpiod_add_lookup_table(&crag_leds_table);
|
||||
gpio_led_register_device(-1, &gpio_leds_pdata);
|
||||
|
||||
regulator_has_full_constraints();
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user