Linus, here is the I2C pull request with the following main points: * I2C core now reports proper OF style module alias. I'd like to repeat the note from the commit msg here (Thanks, Javier!): === NOTE: This patch may break out-of-tree drivers that were relying on this behavior, and only had an I2C device ID table even when the device was registered via OF. There are no remaining drivers in mainline that do this, but out-of-tree drivers have to be fixed and define a proper OF device ID table to have module auto-loading working. === * new driver for the SynQuacer I2C controller * major refactoring of the QUP driver * the piix4 driver now uses request_muxed_region which should fix a long standing resource conflict with the sp5100_tco watchdog * a bunch of small core & driver improvements The patch touching sh-architecture doesn't have an ack, we tried for months to reach the maintainers. As I didn't want to block this improvement any further and the change is small, I applied it. I am still open for any discussion about it. Please pull. Thanks, Wolfram The following changes since commit c698ca5278934c0ae32297a8725ced2e27585d7f: Linux 4.16-rc6 (2018-03-18 17:48:42 -0700) are available in the git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux.git i2c/for-4.17 for you to fetch changes up to 0d676a6c439028b046610f7593f4ddb62680f1fb: i2c: add support for Socionext SynQuacer I2C controller (2018-04-04 20:33:03 +0200) ---------------------------------------------------------------- Abhishek Sahu (13): i2c: qup: fix copyrights and update to SPDX identifier i2c: qup: fixed releasing dma without flush operation completion i2c: qup: minor code reorganization for use_dma i2c: qup: remove redundant variables for BAM SG count i2c: qup: schedule EOT and FLUSH tags at the end of transfer i2c: qup: fix the transfer length for BAM RX EOT FLUSH tags i2c: qup: proper error handling for i2c error in BAM mode i2c: qup: use the complete transfer length to choose DMA mode i2c: qup: change completion timeout according to transfer length i2c: qup: fix buffer overflow for multiple msg of maximum xfer len i2c: qup: send NACK for last read sub transfers i2c: qup: reorganization of driver code to remove polling for qup v1 i2c: qup: reorganization of driver code to remove polling for qup v2 Ahbong Chang (1): i2c: fix parameter of trace_i2c_result Alexander Monakov (1): i2c: designware: suppress unneeded SDA hold time warnings Andrzej Hajda (1): i2c: exynos5: rework HSI2C_MASTER_ST_LOSE state handling Ard Biesheuvel (2): dt-bindings: i2c: add binding for Socionext SynQuacer I2C i2c: add support for Socionext SynQuacer I2C controller Chris Packham (4): sh: sh7785lcr: add GPIO lookup table for i2c controller reset i2c: pca-platform: unconditionally use devm_gpiod_get_optional i2c: pca-platform: use device_property_read_u32 i2c: pca-platform: drop gpio from platform data Colin Ian King (1): i2c-stm32f4: remove redundant initialization of pointer reg Davidlohr Bueso (1): i2c: Update i2c_trace_msg static key to modern api Dmitry Bazhenov (1): i2c: xlp9xx: return ENXIO on slave address NACK Geert Uytterhoeven (2): dt-bindings: i2c: sh_mobile: Document R-Car M3-N support dt-bindings: at24: add Renesas R1EX24128 George Cherian (3): i2c: xlp9xx: Handle transactions with I2C_M_RECV_LEN properly i2c: xlp9xx: Check for Bus state before every transfer i2c: xlp9xx: Handle NACK on DATA properly Gregory CLEMENT (2): i2c: mv64xxx: Apply errata delay only in standard mode MAINTAINERS: i2c-mv64xxx: update email address for Gregory CLEMENT Guenter Roeck (2): i2c: piix4: Use usleep_range() i2c: piix4: Use request_muxed_region Hiromitsu Yamasaki (1): i2c: rcar: fix mask value of prohibited bit Javier Martinez Canillas (1): i2c: core: report OF style module alias for devices registered via OF Jean Delvare (1): i2c: scmi: Use standard device message logging functions Lucas Stach (2): i2c: imx: use clk notifier for rate changes i2c: imx: avoid taking clk_prepare mutex in PM callbacks Moritz Fischer (1): i2c: xiic: Make suspend function names consistent Peter Rosin (3): i2c: add i2c_get_device_id() to get the standard i2c device id i2c: mux: pca954x: verify the device id of the pca984x chips dt-bindings: at24: add compatible for nxp,se97b Ulrich Hecht (2): dt-bindings: i2c: document R8A77995 bindings dt-bindings: at24: add bindings for Rohm BR24T01 Wolfram Sang (10): i2c: of: change log level of failed device creation i2c: of: make ref counting more visible i2c: of: rename variable to meet expectations i2c: of: remove duplicated check for valid address i2c: of: simplify reading the "reg" property i2c: reformat comments around i2c_smbus_xfer_emulated() Merge branch 'i2c-mux/for-next' of https://github.com/peda-r/i2c-mux into i2c/for-4.17 Merge tag 'at24-4.17-updates-for-wolfram' of git://git.kernel.org/.../brgl/linux into i2c/for-4.17 dt-bindings: i2c: document R8A77965 bindings i2c: make i2c_check_addr_validity() static with much appreciated quality assurance from ---------------------------------------------------------------- Adrian Fiergolski (2): (Test) i2c: mux: pca954x: verify the device id of the pca984x chips (Test) i2c: add i2c_get_device_id() to get the standard i2c device id Andy Gross (8): (Rev.) i2c: qup: send NACK for last read sub transfers (Rev.) i2c: qup: fix buffer overflow for multiple msg of maximum xfer len (Rev.) i2c: qup: change completion timeout according to transfer length (Rev.) i2c: qup: use the complete transfer length to choose DMA mode (Rev.) i2c: qup: fix the transfer length for BAM RX EOT FLUSH tags (Rev.) i2c: qup: remove redundant variables for BAM SG count (Rev.) i2c: qup: minor code reorganization for use_dma (Rev.) i2c: qup: fixed releasing dma without flush operation completion Andy Shevchenko (1): (Rev.) i2c: add support for Socionext SynQuacer I2C controller Austin Christ (6): (Rev.) i2c: qup: send NACK for last read sub transfers (Rev.) i2c: qup: use the complete transfer length to choose DMA mode (Rev.) i2c: qup: proper error handling for i2c error in BAM mode (Rev.) i2c: qup: remove redundant variables for BAM SG count (Rev.) i2c: qup: minor code reorganization for use_dma (Rev.) i2c: qup: fixed releasing dma without flush operation completion David Howells (2): (Rev.) i2c: Update i2c_trace_msg static key to modern api (Rev.) i2c: fix parameter of trace_i2c_result Dmitry Mastykin (1): (Test) i2c: core: report OF style module alias for devices registered via OF Geert Uytterhoeven (3): (Rev.) dt-bindings: i2c: document R8A77965 bindings (Rev.) dt-bindings: at24: add bindings for Rohm BR24T01 (Rev.) dt-bindings: i2c: document R8A77995 bindings Jan Glauber (2): (Rev.) i2c: xlp9xx: Handle NACK on DATA properly (Rev.) i2c: xlp9xx: Check for Bus state before every transfer Jean Delvare (2): (Rev.) i2c: piix4: Use request_muxed_region (Rev.) i2c: piix4: Use usleep_range() Peter Rosin (1): (Rev.) i2c: reformat comments around i2c_smbus_xfer_emulated() Philipp Zabel (2): (Rev.) i2c: imx: avoid taking clk_prepare mutex in PM callbacks (Rev.) i2c: imx: use clk notifier for rate changes Rafael J. Wysocki (1): (Rev.) i2c: scmi: Use standard device message logging functions Rob Herring (4): (Rev.) dt-bindings: i2c: add binding for Socionext SynQuacer I2C (Rev.) dt-bindings: at24: add bindings for Rohm BR24T01 (Rev.) dt-bindings: at24: add compatible for nxp,se97b (Rev.) dt-bindings: i2c: document R8A77995 bindings Simon Horman (2): (Rev.) dt-bindings: i2c: sh_mobile: Document R-Car M3-N support (Rev.) dt-bindings: i2c: document R8A77995 bindings Sricharan R (4): (Rev.) i2c: qup: reorganization of driver code to remove polling for qup v2 (Rev.) i2c: qup: reorganization of driver code to remove polling for qup v1 (Rev.) i2c: qup: proper error handling for i2c error in BAM mode (Rev.) i2c: qup: schedule EOT and FLUSH tags at the end of transfer Todd Poynor (1): (Rev.) i2c: fix parameter of trace_i2c_result Wolfram Sang (2): (Rev.) dt-bindings: at24: add bindings for Rohm BR24T01 (Rev.) i2c: add i2c_get_device_id() to get the standard i2c device id dann frazier (2): (Test) i2c: xlp9xx: Handle transactions with I2C_M_RECV_LEN properly (Test) i2c: xlp9xx: return ENXIO on slave address NACK Documentation/devicetree/bindings/eeprom/at24.txt | 4 + Documentation/devicetree/bindings/i2c/i2c-rcar.txt | 2 + .../devicetree/bindings/i2c/i2c-sh_mobile.txt | 1 + .../devicetree/bindings/i2c/i2c-synquacer.txt | 29 + MAINTAINERS | 9 +- arch/blackfin/mach-bf561/boards/acvilon.c | 1 - arch/sh/boards/board-sh7785lcr.c | 11 +- drivers/i2c/busses/Kconfig | 10 + drivers/i2c/busses/Makefile | 1 + drivers/i2c/busses/i2c-designware-master.c | 2 +- drivers/i2c/busses/i2c-exynos5.c | 63 +- drivers/i2c/busses/i2c-imx.c | 36 +- drivers/i2c/busses/i2c-mv64xxx.c | 8 +- drivers/i2c/busses/i2c-pca-platform.c | 34 +- drivers/i2c/busses/i2c-piix4.c | 61 +- drivers/i2c/busses/i2c-qup.c | 1481 ++++++++++++-------- drivers/i2c/busses/i2c-rcar.c | 4 +- drivers/i2c/busses/i2c-scmi.c | 35 +- drivers/i2c/busses/i2c-stm32f4.c | 2 +- drivers/i2c/busses/i2c-synquacer.c | 667 +++++++++ drivers/i2c/busses/i2c-xiic.c | 8 +- drivers/i2c/busses/i2c-xlp9xx.c | 78 +- drivers/i2c/i2c-core-base.c | 58 +- drivers/i2c/i2c-core-of.c | 30 +- drivers/i2c/i2c-core-smbus.c | 16 +- drivers/i2c/i2c-core.h | 1 - drivers/i2c/muxes/i2c-mux-pca954x.c | 55 +- include/linux/i2c-pca-platform.h | 3 - include/linux/i2c.h | 30 + 29 files changed, 1969 insertions(+), 771 deletions(-) create mode 100644 Documentation/devicetree/bindings/i2c/i2c-synquacer.txt create mode 100644 drivers/i2c/busses/i2c-synquacer.c
Attachment:
signature.asc
Description: PGP signature