Linus, here is the pull request for I2C. Mostly usual driver updates and improvements. The changelog should give an idea. Standing out is the i2c-qup driver with lots of new capabilities and we also have now an i2c-demuxer. I'd especially like to welcome Peter Rosin as the i2c-mux maintainer. He has an interesting series for muxes in the queue and agreed to look after this part of the subsystem. Thank you, Peter, and welcome again! The octeon changes were applied pretty recently before the merge window. I am aware. They are the first (and relatively simple) patches of a larger overhaul to this driver. In case something goes wrong with them, they are easy to fix (or revert). The advantage I see is that they are out of the way, and I can concentrate on the next block of patches. I really would like to apply the overhaul in smaller batches to avoid regressions. And waiting a cycle for the introductory patches seemed too much of a delay for me. Please pull. Thanks, Wolfram The following changes since commit 388f7b1d6e8ca06762e2454d28d6c3c55ad0fe95: Linux 4.5-rc3 (2016-02-07 15:38:30 -0800) are available in the git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux.git i2c/for-next for you to fetch changes up to 886f6f8337dd506e9ae0e45ee13eef3a0ceebd03: i2c: octeon: Support I2C_M_RECV_LEN (2016-03-18 15:50:42 +0100) ---------------------------------------------------------------- Andy Shevchenko (2): MAINTAINERS: Mika and me are designated reviewers for I2C DESIGNWARE i2c: i801: sort IDs alphabetically Baruch Siach (1): i2c: designware: remove redundant lock David Daney (1): i2c: octeon: Support I2C_M_RECV_LEN Dmitriy Baranov (1): i2c: imx: remove extra spaces. Geert Uytterhoeven (1): dt-bindings: i2c: Spelling s/propoerty/property/ Jan Glauber (3): i2c: octeon: Cleanup kerneldoc comments i2c: octeon: Cleanup i2c-octeon driver i2c: octeon: Cleanup resource allocation code Jarkko Nikula (1): i2c: designware: Prevent runtime suspend during adapter registration Jean Delvare (4): i2c: designware-platform: Drop duplicate module information i2c: piix4: Support alternative port selection register i2c: piix4: Always use the same type for port i2c: piix4: Pre-shift the port number Liguo Zhang (1): i2c: mt65xx: add 4GB DMA mode support in i2c driver Masahiro Yamada (1): i2c: uniphier: add COMPILE_TEST option Peter Rosin (1): MAINTAINERS: add Peter Rosin as i2c mux maintainer Ray Jui (3): i2c: iproc: Add recovery mechanism in error case i2c: iproc: Fix typo in the driver i2c: iproc: Support larger TX transfer Shubhrajyoti Datta (2): i2c: xiic: Implement power management i2c: cadence: Fix the kernel-doc warnings Simon Horman (1): i2c: riic, sh_mobile, rcar: Use ARCH_RENESAS Sricharan R (5): i2c: qup: Change qup_wait_writeready function to use for all timeouts i2c: qup: Add V2 tags support i2c: qup: Transfer each i2c_msg in i2c_msgs without a stop bit i2c: qup: Add bam dma capabilities i2c: qup: Fix fifo handling after adding V2 support Sudip Mukherjee (1): i2c: do not use internal data from driver core Wolfram Sang (10): i2c: mux: demux-pinctrl: add driver i2c: i2c-boardinfo: sort includes i2c: i2c-core: sort includes i2c: i2c-dev: sort includes i2c: i2c-mux: sort includes i2c: i2c-smbus: sort includes i2c: i2c-stub: sort includes i2c: tegra: don't open code of_device_get_match_data() i2c: rcar: don't open code of_device_get_match_data() i2c: immediately mark ourselves as registered .../ABI/testing/sysfs-platform-i2c-demux-pinctrl | 23 + .../devicetree/bindings/i2c/i2c-demux-pinctrl.txt | 135 +++ Documentation/devicetree/bindings/i2c/i2c-imx.txt | 2 +- Documentation/devicetree/bindings/i2c/i2c-rcar.txt | 2 +- Documentation/devicetree/bindings/i2c/i2c-sirf.txt | 2 +- Documentation/devicetree/bindings/i2c/i2c-xiic.txt | 3 + MAINTAINERS | 14 +- drivers/i2c/busses/Kconfig | 10 +- drivers/i2c/busses/i2c-bcm-iproc.c | 177 ++-- drivers/i2c/busses/i2c-cadence.c | 14 +- drivers/i2c/busses/i2c-designware-baytrail.c | 5 - drivers/i2c/busses/i2c-designware-core.c | 22 +- drivers/i2c/busses/i2c-designware-core.h | 2 - drivers/i2c/busses/i2c-i801.c | 8 +- drivers/i2c/busses/i2c-imx.c | 12 +- drivers/i2c/busses/i2c-mt65xx.c | 42 + drivers/i2c/busses/i2c-octeon.c | 307 +++---- drivers/i2c/busses/i2c-piix4.c | 48 +- drivers/i2c/busses/i2c-qup.c | 977 ++++++++++++++++++++- drivers/i2c/busses/i2c-rcar.c | 2 +- drivers/i2c/busses/i2c-tegra.c | 4 +- drivers/i2c/busses/i2c-xiic.c | 88 +- drivers/i2c/i2c-boardinfo.c | 6 +- drivers/i2c/i2c-core.c | 39 +- drivers/i2c/i2c-dev.c | 14 +- drivers/i2c/i2c-mux.c | 8 +- drivers/i2c/i2c-smbus.c | 8 +- drivers/i2c/i2c-stub.c | 8 +- drivers/i2c/muxes/Kconfig | 9 + drivers/i2c/muxes/Makefile | 2 + drivers/i2c/muxes/i2c-demux-pinctrl.c | 272 ++++++ 31 files changed, 1893 insertions(+), 372 deletions(-) create mode 100644 Documentation/ABI/testing/sysfs-platform-i2c-demux-pinctrl create mode 100644 Documentation/devicetree/bindings/i2c/i2c-demux-pinctrl.txt create mode 100644 drivers/i2c/muxes/i2c-demux-pinctrl.c