diff options
author | Chris Packham <chris.packham@alliedtelesis.co.nz> | 2017-07-05 13:13:55 +0300 |
---|---|---|
committer | Wolfram Sang <wsa@the-dreams.de> | 2018-03-24 15:25:55 +0300 |
commit | df0d32348aa81208a0037b959dc23c4739439c02 (patch) | |
tree | 76e1d6c839a9a78cf897d288fa0c837409802b4d /arch/sh/boards | |
parent | 7545c7dba169c4c29ba5f6ab8706267a84c0febe (diff) | |
download | linux-df0d32348aa81208a0037b959dc23c4739439c02.tar.xz |
sh: sh7785lcr: add GPIO lookup table for i2c controller reset
Define the GPIO connected to the PCA9564 using a GPIO lookup table. This
will allow the i2c-pca-platform driver to use the device managed APIs to
lookup the gpio instead of using platform_data.
Signed-off-by: Chris Packham <chris.packham@alliedtelesis.co.nz>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
Diffstat (limited to 'arch/sh/boards')
-rw-r--r-- | arch/sh/boards/board-sh7785lcr.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/arch/sh/boards/board-sh7785lcr.c b/arch/sh/boards/board-sh7785lcr.c index 2c4771ee84cd..caec1ebffb09 100644 --- a/arch/sh/boards/board-sh7785lcr.c +++ b/arch/sh/boards/board-sh7785lcr.c @@ -25,6 +25,7 @@ #include <linux/io.h> #include <linux/clk.h> #include <linux/errno.h> +#include <linux/gpio/machine.h> #include <mach/sh7785lcr.h> #include <cpu/sh7785.h> #include <asm/heartbeat.h> @@ -243,6 +244,14 @@ static struct resource i2c_resources[] = { }, }; +static struct gpiod_lookup_table i2c_gpio_table = { + .dev_id = "i2c.0", + .table = { + GPIO_LOOKUP("pfc-sh7757", 0, "reset-gpios", GPIO_ACTIVE_LOW), + { }, + }, +}; + static struct i2c_pca9564_pf_platform_data i2c_platform_data = { .gpio = 0, .i2c_clock_speed = I2C_PCA_CON_330kHz, @@ -283,6 +292,7 @@ static int __init sh7785lcr_devices_setup(void) i2c_device.num_resources = ARRAY_SIZE(i2c_proto_resources); } + gpiod_add_lookup_table(&i2c_gpio_table); return platform_add_devices(sh7785lcr_devices, ARRAY_SIZE(sh7785lcr_devices)); } |