diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2017-11-14 20:52:21 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2017-11-14 20:52:21 -0500 |
commit | 4008e6a9bcee2f3b61bb11951de0fb0ed764cb91 (patch) | |
tree | e7e3202d6d156acb57845a1824c9a8249f288c53 /arch/arm/mach-sa1100 | |
parent | 6aa2f9441f1ef21f10c41f45e6453b135e9cd736 (diff) | |
parent | d82e99a6f9b38cb1a044b4cd979bd49fd3f67cd2 (diff) |
Merge branch 'i2c/for-4.15' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/wsa/linux
Pull i2c updates from Wolfram Sang:
"This contains two bigger than usual tree-wide changes this time. They
all have proper acks, caused no merge conflicts in linux-next where
they have been for a while. They are namely:
- to-gpiod conversion of the i2c-gpio driver and its users (touching
arch/* and drivers/mfd/*)
- adding a sbs-manager based on I2C core updates to SMBus alerts
(touching drivers/power/*)
Other notable changes:
- i2c_boardinfo can now carry a dev_name to be used when the device
is created. This is because some devices in ACPI world need fixed
names to find the regulators.
- the designware driver got a long discussed overhaul of its PM
handling. img-scb and davinci got PM support, too.
- at24 driver has way better OF support. And it has a new maintainer.
Thanks Bartosz for stepping up!
The rest is regular driver updates and fixes"
* 'i2c/for-4.15' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/wsa/linux: (55 commits)
ARM: sa1100: simpad: Correct I2C GPIO offsets
i2c: aspeed: Deassert reset in probe
eeprom: at24: Add OF device ID table
MAINTAINERS: new maintainer for AT24 driver
i2c: nuc900: remove platform_data, too
i2c: thunderx: Remove duplicate NULL check
i2c: taos-evm: Remove duplicate NULL check
i2c: Make i2c_unregister_device() NULL-aware
i2c: xgene-slimpro: Support v2
i2c: mpc: remove useless variable initialization
i2c: omap: Trigger bus recovery in lockup case
i2c: gpio: Add support for named gpios in DT
dt-bindings: i2c: i2c-gpio: Add support for named gpios
i2c: gpio: Local vars in probe
i2c: gpio: Augment all boardfiles to use open drain
i2c: gpio: Enforce open drain through gpiolib
gpio: Make it possible for consumers to enforce open drain
i2c: gpio: Convert to use descriptors
power: supply: sbs-message: fix some code style issues
power: supply: sbs-battery: remove unchecked return var
...
Diffstat (limited to 'arch/arm/mach-sa1100')
-rw-r--r-- | arch/arm/mach-sa1100/simpad.c | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/arch/arm/mach-sa1100/simpad.c b/arch/arm/mach-sa1100/simpad.c index e8d25a7bbcb8..7d4feb8a49ac 100644 --- a/arch/arm/mach-sa1100/simpad.c +++ b/arch/arm/mach-sa1100/simpad.c | |||
@@ -17,6 +17,7 @@ | |||
17 | #include <linux/mtd/partitions.h> | 17 | #include <linux/mtd/partitions.h> |
18 | #include <linux/io.h> | 18 | #include <linux/io.h> |
19 | #include <linux/gpio/driver.h> | 19 | #include <linux/gpio/driver.h> |
20 | #include <linux/gpio/machine.h> | ||
20 | 21 | ||
21 | #include <mach/hardware.h> | 22 | #include <mach/hardware.h> |
22 | #include <asm/setup.h> | 23 | #include <asm/setup.h> |
@@ -324,9 +325,17 @@ static struct platform_device simpad_gpio_leds = { | |||
324 | /* | 325 | /* |
325 | * i2c | 326 | * i2c |
326 | */ | 327 | */ |
328 | static struct gpiod_lookup_table simpad_i2c_gpiod_table = { | ||
329 | .dev_id = "i2c-gpio", | ||
330 | .table = { | ||
331 | GPIO_LOOKUP_IDX("gpio", 21, NULL, 0, | ||
332 | GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN), | ||
333 | GPIO_LOOKUP_IDX("gpio", 25, NULL, 1, | ||
334 | GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN), | ||
335 | }, | ||
336 | }; | ||
337 | |||
327 | static struct i2c_gpio_platform_data simpad_i2c_data = { | 338 | static struct i2c_gpio_platform_data simpad_i2c_data = { |
328 | .sda_pin = GPIO_GPIO21, | ||
329 | .scl_pin = GPIO_GPIO25, | ||
330 | .udelay = 10, | 339 | .udelay = 10, |
331 | .timeout = HZ, | 340 | .timeout = HZ, |
332 | }; | 341 | }; |
@@ -381,6 +390,7 @@ static int __init simpad_init(void) | |||
381 | ARRAY_SIZE(simpad_flash_resources)); | 390 | ARRAY_SIZE(simpad_flash_resources)); |
382 | sa11x0_register_mcp(&simpad_mcp_data); | 391 | sa11x0_register_mcp(&simpad_mcp_data); |
383 | 392 | ||
393 | gpiod_add_lookup_table(&simpad_i2c_gpiod_table); | ||
384 | ret = platform_add_devices(devices, ARRAY_SIZE(devices)); | 394 | ret = platform_add_devices(devices, ARRAY_SIZE(devices)); |
385 | if(ret) | 395 | if(ret) |
386 | printk(KERN_WARNING "simpad: Unable to register mq200 framebuffer device"); | 396 | printk(KERN_WARNING "simpad: Unable to register mq200 framebuffer device"); |