diff options
| -rw-r--r-- | arch/arm/mach-orion5x/mv2120-setup.c | 29 | 
1 files changed, 21 insertions, 8 deletions
| diff --git a/arch/arm/mach-orion5x/mv2120-setup.c b/arch/arm/mach-orion5x/mv2120-setup.c index 2bf8ec75e908..b7327a612835 100644 --- a/arch/arm/mach-orion5x/mv2120-setup.c +++ b/arch/arm/mach-orion5x/mv2120-setup.c @@ -8,6 +8,7 @@   * License, or (at your option) any later version.   */  #include <linux/gpio.h> +#include <linux/gpio/machine.h>  #include <linux/kernel.h>  #include <linux/init.h>  #include <linux/platform_device.h> @@ -139,34 +140,45 @@ static struct i2c_board_info __initdata mv2120_i2c_rtc = {  static struct gpio_led mv2120_led_pins[] = {  	{  		.name			= "mv2120:blue:health", -		.gpio			= 0,  	},  	{  		.name			= "mv2120:red:health", -		.gpio			= 1,  	},  	{  		.name			= "mv2120:led:bright", -		.gpio			= 4,  		.default_trigger	= "default-on",  	},  	{  		.name			= "mv2120:led:dimmed", -		.gpio			= 5,  	},  	{  		.name			= "mv2120:red:sata0", -		.gpio			= 8, -		.active_low		= 1,  	},  	{  		.name			= "mv2120:red:sata1", -		.gpio			= 9, -		.active_low		= 1,  	},  }; +static struct gpiod_lookup_table mv2120_leds_gpio_table = { +	.dev_id = "leds-gpio", +	.table = { +		GPIO_LOOKUP_IDX("orion_gpio0", 0, NULL, +				0, GPIO_ACTIVE_HIGH), +		GPIO_LOOKUP_IDX("orion_gpio0", 1, NULL, +				1, GPIO_ACTIVE_HIGH), +		GPIO_LOOKUP_IDX("orion_gpio0", 4, NULL, +				2, GPIO_ACTIVE_HIGH), +		GPIO_LOOKUP_IDX("orion_gpio0", 5, NULL, +				3, GPIO_ACTIVE_HIGH), +		GPIO_LOOKUP_IDX("orion_gpio0", 8, NULL, +				4, GPIO_ACTIVE_LOW), +		GPIO_LOOKUP_IDX("orion_gpio0", 9, NULL, +				5, GPIO_ACTIVE_LOW), +		{ }, +	}, +}; +  static struct gpio_led_platform_data mv2120_led_data = {  	.leds		= mv2120_led_pins,  	.num_leds	= ARRAY_SIZE(mv2120_led_pins), @@ -219,6 +231,7 @@ static void __init mv2120_init(void)  			gpio_free(MV2120_GPIO_RTC_IRQ);  	}  	i2c_register_board_info(0, &mv2120_i2c_rtc, 1); +	gpiod_add_lookup_table(&mv2120_leds_gpio_table);  	platform_device_register(&mv2120_leds);  	/* register mv2120 specific power-off method */ | 
