[PULL REQUEST] i2c for 4.10
From: Wolfram Sang
Date: Thu Dec 15 2016 - 15:35:56 EST
Linus,
here is the first pull request from I2C for 4.10, including:
* the first series of making i2c_device_id optional instead of mandatory
(in favor of alternatives like of_device_id). This involves adding a
new probe callback (probe_new) which removes some peculiarities I2C had
for a long time now. The new probe is matching the other subsystems
now and the old one will be removed once all users are converted. It
is expected to take a while but there is ongoing interest in that.
* SMBus Host Notify introduced 4.9 got refactored. They are now using
interrupts instead of the alert callback which solves multiple issues.
* new drivers for iMX LowPower I2C, Mellanox CPLD and its I2C mux
* significant refactoring for bcm2835 driver
* usual set of driver updates and improvements
Thanks,
Wolfram
The following changes since commit bc33b0ca11e3df467777a4fa7639ba488c9d4911:
Linux 4.9-rc4 (2016-11-05 16:23:36 -0700)
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux.git i2c/for-4.10
for you to fetch changes up to 6eb89ef029fe22aee518a9dc75b9ee5d6ef9b3fe:
i2c: fsl-lpi2c: read lpi2c fifo size in probe() (2016-12-11 23:06:39 +0100)
----------------------------------------------------------------
Alexander Stein (2):
i2c: designware: Consolidate default functionality bits
i2c: designware-pcidrv: Add 10bit address feature to medfield/merrifield
Benjamin Tissoires (6):
i2c: i801: store and restore the SLVCMD register at load and unload
i2c: i801: minor formatting issues
i2c: i801: use BIT() macro for bits definition
i2c: i801: use the BIT() macro for FEATURES_* also
i2c: i801: remove SMBNTFDDAT reads as they always seem to return 0
i2c: use an IRQ to report Host Notify events, not alert
Gao Pan (3):
dt-bindings: i2c: imx-lpi2c: add devicetree bindings
i2c: imx-lpi2c: add low power i2c bus driver
i2c: fsl-lpi2c: read lpi2c fifo size in probe()
Jan Glauber (2):
i2c: octeon: thunderx: TWSI software reset in recovery
i2c: octeon: thunderx: Remove double-check after interrupt
Jan Kotas (1):
i2c: cadence: Allow Cadence I2C to be selected for Cadence Xtensa CPUs
Jarkko Nikula (1):
i2c: designware: Allow reduce bus speed by "clock-frequency" property
Julia Lawall (1):
i2c: constify i2c_adapter_quirks structures
Lee Jones (7):
i2c: Add pointer dereference protection to i2c_match_id()
i2c: Add the ability to match device to compatible string without an of_node
i2c: Match using traditional OF methods, then by vendor-less compatible strings
i2c: Make I2C ID tables non-mandatory for DT'ed devices
i2c: Export i2c_match_id() for direct use by device drivers
i2c: Provide a temporary .probe_new() call-back type
mfd: 88pm860x: Move over to new I2C device .probe() call
Masahiro Yamada (2):
i2c: uniphier: rename jump label to follow coding style guideline
i2c: uniphier-f: rename jump label to follow coding style guideline
Naveen Kaje (2):
i2c: qup: add ACPI support
i2c: qup: support SMBus block read
Noralf TrÃnnes (7):
i2c: bcm2835: Fix hang for writing messages larger than 16 bytes
i2c: bcm2835: Protect against unexpected TXW/RXR interrupts
i2c: bcm2835: Use dev_dbg logging on transfer errors
i2c: bcm2835: Can't support I2C_M_IGNORE_NAK
i2c: bcm2835: Add support for Repeated Start Condition
i2c: bcm2835: Support i2c-dev ioctl I2C_TIMEOUT
i2c: bcm2835: Add support for dynamic clock
Paul Gortmaker (1):
i2c: i2c-pxa-pci; make explicitly non-modular
Peter Rosin (1):
i2c: i2c-mux-gpio: update mux with gpiod_set_array_value_cansleep
Romain Perier (3):
dt-bindings: i2c: pxa: Update the documentation for the Armada 3700
i2c: pxa: Add definition of fast and high speed modes via the regs layout
i2c: pxa: Add support for the I2C units found in Armada 3700
Simon Horman (2):
i2c: rcar: Add per-Generation fallback bindings
i2c: sh_mobile: Add per-Generation fallback bindings
Tanmay Jagdale (1):
i2c: xlp9xx: ACPI support for I2C clients
Tin Huynh (1):
i2c: designware: Implement support for SMBus block read and write
Vadim Pasternak (2):
i2c: mux: mellanox: add driver
i2c: mlxcpld: add master driver for mellanox systems
tnhuynh@xxxxxxx (1):
i2c: mux: pca954x: Add ACPI support for pca954x
.../devicetree/bindings/i2c/i2c-imx-lpi2c.txt | 20 +
Documentation/devicetree/bindings/i2c/i2c-pxa.txt | 1 +
Documentation/devicetree/bindings/i2c/i2c-rcar.txt | 32 +-
.../devicetree/bindings/i2c/i2c-sh_mobile.txt | 17 +-
Documentation/i2c/busses/i2c-mlxcpld | 47 ++
Documentation/i2c/smbus-protocol | 12 +-
MAINTAINERS | 9 +
drivers/i2c/Kconfig | 1 +
drivers/i2c/busses/Kconfig | 25 +-
drivers/i2c/busses/Makefile | 2 +
drivers/i2c/busses/i2c-axxia.c | 2 +-
drivers/i2c/busses/i2c-bcm-iproc.c | 2 +-
drivers/i2c/busses/i2c-bcm2835.c | 218 ++++---
drivers/i2c/busses/i2c-designware-core.c | 46 +-
drivers/i2c/busses/i2c-designware-core.h | 8 +
drivers/i2c/busses/i2c-designware-pcidrv.c | 10 +-
drivers/i2c/busses/i2c-designware-platdrv.c | 23 +-
drivers/i2c/busses/i2c-dln2.c | 2 +-
drivers/i2c/busses/i2c-i801.c | 123 ++--
drivers/i2c/busses/i2c-imx-lpi2c.c | 652 +++++++++++++++++++++
drivers/i2c/busses/i2c-mlxcpld.c | 504 ++++++++++++++++
drivers/i2c/busses/i2c-octeon-core.c | 46 +-
drivers/i2c/busses/i2c-pxa-pci.c | 32 +-
drivers/i2c/busses/i2c-pxa.c | 26 +-
drivers/i2c/busses/i2c-qup.c | 122 +++-
drivers/i2c/busses/i2c-rcar.c | 5 +-
drivers/i2c/busses/i2c-sh_mobile.c | 4 +-
drivers/i2c/busses/i2c-uniphier-f.c | 6 +-
drivers/i2c/busses/i2c-uniphier.c | 6 +-
drivers/i2c/busses/i2c-viperboard.c | 2 +-
drivers/i2c/busses/i2c-xlp9xx.c | 1 +
drivers/i2c/i2c-core.c | 197 ++++++-
drivers/i2c/i2c-smbus.c | 102 ----
drivers/i2c/muxes/Kconfig | 11 +
drivers/i2c/muxes/Makefile | 1 +
drivers/i2c/muxes/i2c-mux-gpio.c | 18 +-
drivers/i2c/muxes/i2c-mux-mlxcpld.c | 220 +++++++
drivers/i2c/muxes/i2c-mux-pca954x.c | 28 +-
drivers/mfd/88pm860x-core.c | 5 +-
include/linux/i2c-smbus.h | 27 -
include/linux/i2c.h | 26 +-
include/linux/i2c/mlxcpld.h | 52 ++
42 files changed, 2264 insertions(+), 429 deletions(-)
create mode 100644 Documentation/devicetree/bindings/i2c/i2c-imx-lpi2c.txt
create mode 100644 Documentation/i2c/busses/i2c-mlxcpld
create mode 100644 drivers/i2c/busses/i2c-imx-lpi2c.c
create mode 100644 drivers/i2c/busses/i2c-mlxcpld.c
create mode 100644 drivers/i2c/muxes/i2c-mux-mlxcpld.c
create mode 100644 include/linux/i2c/mlxcpld.h
Attachment:
signature.asc
Description: PGP signature