diff options
Diffstat (limited to 'arch/arm/mach-s3c64xx/mach-crag6410-module.c')
| -rw-r--r-- | arch/arm/mach-s3c64xx/mach-crag6410-module.c | 28 | 
1 files changed, 22 insertions, 6 deletions
| diff --git a/arch/arm/mach-s3c64xx/mach-crag6410-module.c b/arch/arm/mach-s3c64xx/mach-crag6410-module.c index f00988705408..5aa472892465 100644 --- a/arch/arm/mach-s3c64xx/mach-crag6410-module.c +++ b/arch/arm/mach-s3c64xx/mach-crag6410-module.c @@ -9,6 +9,7 @@  #include <linux/interrupt.h>  #include <linux/i2c.h>  #include <linux/spi/spi.h> +#include <linux/gpio/machine.h>  #include <linux/mfd/wm831x/irq.h>  #include <linux/mfd/wm831x/gpio.h> @@ -206,9 +207,6 @@ static const struct i2c_board_info wm1277_devs[] = {  };  static struct arizona_pdata wm5102_reva_pdata = { -	.ldo1 = { -		.ldoena = S3C64XX_GPN(7), -	},  	.gpio_base = CODEC_GPIO_BASE,  	.irq_flags = IRQF_TRIGGER_HIGH,  	.micd_pol_gpio = CODEC_GPIO_BASE + 4, @@ -237,10 +235,16 @@ static struct spi_board_info wm5102_reva_spi_devs[] = {  	},  }; -static struct arizona_pdata wm5102_pdata = { -	.ldo1 = { -		.ldoena = S3C64XX_GPN(7), +static struct gpiod_lookup_table wm5102_reva_gpiod_table = { +	.dev_id = "spi0.1", /* SPI device name */ +	.table = { +		GPIO_LOOKUP("GPION", 7, +			    "wlf,ldoena", GPIO_ACTIVE_HIGH), +		{ },  	}, +}; + +static struct arizona_pdata wm5102_pdata = {  	.gpio_base = CODEC_GPIO_BASE,  	.irq_flags = IRQF_TRIGGER_HIGH,  	.micd_pol_gpio = CODEC_GPIO_BASE + 2, @@ -264,6 +268,15 @@ static struct spi_board_info wm5102_spi_devs[] = {  	},  }; +static struct gpiod_lookup_table wm5102_gpiod_table = { +	.dev_id = "spi0.1", /* SPI device name */ +	.table = { +		GPIO_LOOKUP("GPION", 7, +			    "wlf,ldo1ena", GPIO_ACTIVE_HIGH), +		{ }, +	}, +}; +  static struct spi_board_info wm5110_spi_devs[] = {  	[0] = {  		.modalias	= "wm5110", @@ -366,6 +379,9 @@ static int wlf_gf_module_probe(struct i2c_client *i2c,  					    rev == gf_mods[i].rev))  			break; +	gpiod_add_lookup_table(&wm5102_reva_gpiod_table); +	gpiod_add_lookup_table(&wm5102_gpiod_table); +  	if (i < ARRAY_SIZE(gf_mods)) {  		dev_info(&i2c->dev, "%s revision %d\n",  			 gf_mods[i].name, rev + 1); |