The following changes since commit 32c1431eea4881a6b17bd7c639315010aeefa452:
Linux 4.12-rc5 (2017-06-11 16:48:20 -0700) are available in the git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc.git/ tags/char-misc-4.13-rc1 for you to fetch changes up to cbbdc6082917a92da0fc07cee255111de16ed64a: misc: apds990x: Use sysfs_match_string() helper (2017-06-13 16:03:22 +0200) ---------------------------------------------------------------- Char/Misc patches for 4.13-rc1 Here is the "big" char/misc driver patchset for 4.13-rc1. Lots of stuff in here, a large thunderbolt update, w1 driver header reorg, the new mux driver subsystem, google firmware driver updates, and a raft of other smaller things. Full details in the shortlog. All of these have been in linux-next for a while with the only reported issue being a merge problem with this tree and the jc-docs tree in the w1 documentation area. The fix should be obvious for what to do when it happens, if not, we can send a follow-up patch for it afterward. Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> ---------------------------------------------------------------- Abhijeet Dharmapurikar (10): spmi: pmic_arb: block access of invalid read and writes spmi: pmic-arb: rename spmi_pmic_arb_dev to spmi_pmic_arb spmi: pmic-arb: fix inconsistent use of apid and chan spmi: pmic-arb: optimize table lookups spmi: pmic-arb: cleanup unrequested irqs spmi: pmic-arb: fix missing interrupts spmi: pmic-arb: clear the latched status of the interrupt spmi: pmic_arb: use appropriate flow handler spmi: pmic-arb: check apid enabled before calling the handler spmi: pmic_arb: add support for PMIC bus arbiter v3 Alex Ng (1): Tools: hv: vss: Thaw the filesystem and continue if freeze call has timed out Alexander Usyskin (2): mei: make mei_cl_bus_rescan static mei: drop unreachable code in mei_start Andrew F. Davis (3): w1: Organize driver source to natural/common order w1: Add subsystem kernel public interface DocBook: w1: Update W1 file locations and names in DocBook Andrey Smirnov (1): nvmem: core: Call put_device() in nvmem_unregister() Andy Shevchenko (2): vmbus: Reuse uuid_le_to_bin() helper misc: apds990x: Use sysfs_match_string() helper Arnd Bergmann (1): mux: adg792a: always require I2C support Arvind Yadav (1): memory: ti-aemif: Handle return value of clk_prepare_enable Chenbo Feng (1): config: android-base: add CGROUP_BPF Christopher Bostic (10): drivers/fsi: Set up links for slave communication drivers/fsi: Set slave SMODE to init communication drivers/fsi: Add master unscan drivers/fsi: Add documentation for GPIO bindings drivers/fsi: Add client driver register utilities drivers/fsi: Document FSI master sysfs files in ABI drivers/fsi: Add GPIO based FSI master drivers/fsi: Add SCOM FSI client device driver drivers/fsi: Add hub master support drivers/fsi: Add module license to core driver Colin Ian King (2): goldfish_pipe: make pipe_dev static thunderbolt: fix spelling mistake: "missmatch" -> "mismatch" Dave Gerlach (1): misc: sram-exec: Use aligned fncpy instead of memcpy Dmitry Torokhov (5): firmware: vpd: use kdtrndup when copying section key firmware: vpd: use kasprintf() when forming name of 'raw' attribute firmware: vpd: do not clear statically allocated data firmware: vpd: remove platform driver Revert "firmware: vpd: remove platform driver" Finley Xiao (1): nvmem: rockchip-efuse: add support for rk322x-efuse Greg Kroah-Hartman (4): Merge 4.12-rc2 into char-misc-next config: android-base: add CONFIG_IKCONFIG option config: android-base: add CONFIG_MODULES option Merge 4.12-rc5 into char-misc-next Heiner Kallweit (1): nvmem: core: add locking to nvmem_find_cell Jeff Vander Stoep (1): config: android-recommended: enable fstack-protector-strong Jeremy Kerr (14): drivers/fsi: Add fsi master definition drivers/fsi: Add slave definition drivers/fsi: Add empty master scan lib: Add crc4 module drivers/fsi: Add slave & master read/write APIs drivers/fsi: Implement slave initialisation drivers/fsi: scan slaves & register devices drivers/fsi: Add device read/write/peek API drivers/fsi: Add sysfs files for FSI master & slave accesses drivers/fsi: expose direct-access slave API drivers/fsi: Add tracepoints for low-level operations drivers/fsi: Add error handling for slave drivers/fsi/gpio: Add tracepoints for GPIO master drivers/fsi: Use asynchronous slave mode Jim Harris (1): uio/uio_pci_generic: don't fail probe if pdev->irq == NULL Johan Hovold (1): nvmem: core: fix leaks on registration errors Julius Werner (3): firmware: google: memconsole: Make memconsole interface more flexible firmware: google: memconsole: Adapt to new coreboot ring buffer format firmware: google: memconsole: Prevent overrun attack on coreboot console K. Y. Srinivasan (5): Drivers: hv: vmbus: Fix error code returned by vmbus_post_msg() Drivers: hv: util: Make hv_poll_channel() a little more efficient Drivers: hv: vmbus: Fix rescind handling Drivers: hv: vmbus: Get the current time from the current clocksource drivers: hv: vmbus: Increase the time between retries in vmbus_post_msg() Kiran Gunda (1): spmi: spmi-pmic-arb: enable the SPMI interrupt as a wakeup source Leo Yan (10): coresight: tmc: minor fix for output log coresight: use const for device_node structures coresight: bindings for CPU debug module doc: Add documentation for Coresight CPU debug doc: Add coresight_cpu_debug.enable to kernel-parameters.txt MAINTAINERS: update file entries for Coresight subsystem coresight: refactor with function of_coresight_get_cpu coresight: add support for CPU debug module arm64: dts: hi6220: register debug module arm64: dts: qcom: msm8916: Add debug unit Long Li (1): HV: properly delay KVP packets when negotiation is in progress Lukas Wunner (1): thunderbolt: Refactor and fix parsing of port drom entries Markus Elfring (4): ipack: Delete an error message for a failed memory allocation in ipack_device_read_id() ipack: Improve a size determination in ipack_bus_register() coresight: etb10: Delete an error message for a failed memory allocation in etb_probe() coresight: etb10: Fix a typo in a comment line Max Shi (1): config: android-base: disable CONFIG_USELIB and CONFIG_FHANDLE Michael Kelley (1): Drivers: hv: vmbus: Close timing hole that can corrupt per-cpu page Mika Westerberg (26): thunderbolt: Use const buffer pointer in write operations thunderbolt: No need to read UID of the root switch on resume thunderbolt: Do not try to read UID if DROM offset is read as 0 thunderbolt: Do not warn about newer DROM versions thunderbolt: Add MSI-X support thunderbolt: Rework capability handling thunderbolt: Allow passing NULL to tb_ctl_free() thunderbolt: Introduce thunderbolt bus and connection manager thunderbolt: Convert switch to a device thunderbolt: Fail switch adding operation if reading DROM fails thunderbolt: Do not fail if DROM data CRC32 is invalid thunderbolt: Read vendor and device name from DROM thunderbolt: Move control channel messages to tb_msgs.h thunderbolt: Expose get_route() to other files thunderbolt: Expose make_header() to other files thunderbolt: Let the connection manager handle all notifications thunderbolt: Rework control channel to be more reliable thunderbolt: Add new Thunderbolt PCI IDs thunderbolt: Add support for NHI mailbox thunderbolt: Store Thunderbolt generation in the switch structure thunderbolt: Add support for DMA configuration based mailbox thunderbolt: Do not touch the hardware if the NHI is gone on resume thunderbolt: Add support for Internal Connection Manager (ICM) thunderbolt: Add support for host and device NVM firmware upgrade thunderbolt: Add documentation how Thunderbolt bus can be used MAINTAINERS: Add maintainers for Thunderbolt driver Oza Pawandeep (1): nvmem: correct Broadcom OTP controller driver writes Peter Rosin (11): devres: trivial whitespace fix dt-bindings: document devicetree bindings for mux-controllers and gpio-mux mux: minimal mux subsystem mux: gpio: add mux controller driver for gpio based multiplexers iio: inkern: api for manipulating ext_info of iio channels dt-bindings: iio: io-channel-mux: document io-channel-mux bindings iio: multiplexer: new iio category and iio-mux driver dt-bindings: i2c: i2c-mux: document general purpose i2c-mux bindings i2c: i2c-mux-gpmux: new driver dt-bindings: mux-adg792a: document devicetree bindings for ADG792A/G mux mux: adg792a: add mux controller driver for ADG792A/G Philipp Zabel (2): dt-bindings: add mmio-based syscon mux controller DT bindings mux: mmio-based syscon mux controller Robert Lippert (1): drivers/misc: add Aspeed LPC snoop driver Roberto Pereira (1): config: android-base: disable CONFIG_NFSD and CONFIG_NFS_FS Robin Murphy (1): coresight: tmc: Configure DMA mask appropriately Sami Tolvanen (2): config: android-recommended: enable CONFIG_ARM64_SW_TTBR0_PAN config: android-recommended: enable CONFIG_CPU_SW_DOMAIN_PAN Stefan Hajnoczi (1): vhost/vsock: use static minor number Suzuki K Poulose (4): coresight: Disable the path only when the source is disabled coresight: Fix reference count for software sources coresight: etm_perf: Fix using uninitialised work coresight: of_get_coresight_platform_data: Add missing of_node_put Tomas Winkler (2): mei: hw: fix a spelling mistake mei: validate the message header only in first fragment. Vincent Legoll (1): drivers: pps: Make PPS into a menuconfig to ease disabling Vitaly Kuznetsov (3): tools: hv: properly handle long paths hv_utils: drop .getcrosststamp() support from PTP driver hv_utils: fix TimeSync work on pre-TimeSync-v4 hosts Wei Yongjun (1): auxdisplay: Convert list_for_each to entry variant Wolfram Sang (2): misc: apds990x: move header file out of I2C realm misc: bh1770glc: move header file out of I2C realm Documentation/ABI/testing/sysfs-bus-fsi | 38 + Documentation/ABI/testing/sysfs-bus-thunderbolt | 110 ++ Documentation/ABI/testing/sysfs-class-mux | 16 + Documentation/DocBook/w1.tmpl | 18 +- Documentation/admin-guide/devices.txt | 4 +- Documentation/admin-guide/index.rst | 1 + Documentation/admin-guide/kernel-parameters.txt | 7 + Documentation/admin-guide/thunderbolt.rst | 199 ++++ .../bindings/arm/coresight-cpu-debug.txt | 49 + .../devicetree/bindings/fsi/fsi-master-gpio.txt | 24 + .../devicetree/bindings/i2c/i2c-mux-gpmux.txt | 99 ++ .../bindings/iio/multiplexer/io-channel-mux.txt | 39 + .../devicetree/bindings/mux/adi,adg792a.txt | 75 ++ Documentation/devicetree/bindings/mux/gpio-mux.txt | 69 ++ Documentation/devicetree/bindings/mux/mmio-mux.txt | 60 + .../devicetree/bindings/mux/mux-controller.txt | 157 +++ .../devicetree/bindings/nvmem/rockchip-efuse.txt | 1 + Documentation/driver-model/devres.txt | 7 +- Documentation/trace/coresight-cpu-debug.txt | 175 +++ MAINTAINERS | 22 + arch/arm64/boot/dts/hisilicon/hi6220.dtsi | 64 ++ arch/arm64/boot/dts/qcom/msm8916.dtsi | 32 + arch/x86/include/asm/mshyperv.h | 1 - drivers/Kconfig | 2 + drivers/Makefile | 1 + drivers/auxdisplay/panel.c | 5 +- drivers/firmware/google/memconsole-coreboot.c | 54 +- drivers/firmware/google/memconsole-x86-legacy.c | 18 +- drivers/firmware/google/memconsole.c | 14 +- drivers/firmware/google/memconsole.h | 7 +- drivers/firmware/google/vpd.c | 39 +- drivers/fsi/Kconfig | 26 + drivers/fsi/Makefile | 3 + drivers/fsi/fsi-core.c | 841 ++++++++++++++ drivers/fsi/fsi-master-gpio.c | 604 ++++++++++ drivers/fsi/fsi-master-hub.c | 327 ++++++ drivers/fsi/fsi-master.h | 43 + drivers/fsi/fsi-scom.c | 263 +++++ drivers/hv/channel.c | 8 +- drivers/hv/channel_mgmt.c | 69 +- drivers/hv/connection.c | 11 +- drivers/hv/hv.c | 9 +- drivers/hv/hv_kvp.c | 14 +- drivers/hv/hv_util.c | 164 +-- drivers/hv/hyperv_vmbus.h | 11 + drivers/hv/vmbus_drv.c | 80 +- drivers/hwtracing/coresight/Kconfig | 14 + drivers/hwtracing/coresight/Makefile | 1 + drivers/hwtracing/coresight/coresight-cpu-debug.c | 700 ++++++++++++ drivers/hwtracing/coresight/coresight-etb10.c | 7 +- drivers/hwtracing/coresight/coresight-etm-perf.c | 3 +- drivers/hwtracing/coresight/coresight-tmc-etf.c | 25 +- drivers/hwtracing/coresight/coresight-tmc.c | 7 + drivers/hwtracing/coresight/coresight.c | 34 +- drivers/hwtracing/coresight/of_coresight.c | 47 +- drivers/i2c/muxes/Kconfig | 13 + drivers/i2c/muxes/Makefile | 1 + drivers/i2c/muxes/i2c-mux-gpmux.c | 173 +++ drivers/iio/Kconfig | 1 + drivers/iio/Makefile | 1 + drivers/iio/inkern.c | 60 + drivers/iio/multiplexer/Kconfig | 18 + drivers/iio/multiplexer/Makefile | 6 + drivers/iio/multiplexer/iio-mux.c | 459 ++++++++ drivers/ipack/ipack.c | 3 +- drivers/memory/ti-aemif.c | 5 +- drivers/misc/Kconfig | 8 + drivers/misc/Makefile | 1 + drivers/misc/apds990x.c | 16 +- drivers/misc/aspeed-lpc-snoop.c | 261 +++++ drivers/misc/bh1770glc.c | 2 +- drivers/misc/mei/bus.c | 2 +- drivers/misc/mei/hw.h | 2 +- drivers/misc/mei/init.c | 6 - drivers/misc/mei/interrupt.c | 26 +- drivers/misc/mei/mei_dev.h | 1 - drivers/misc/sram-exec.c | 27 +- drivers/mux/Kconfig | 59 + drivers/mux/Makefile | 8 + drivers/mux/mux-adg792a.c | 157 +++ drivers/mux/mux-core.c | 547 +++++++++ drivers/mux/mux-gpio.c | 114 ++ drivers/mux/mux-mmio.c | 141 +++ drivers/nvmem/bcm-ocotp.c | 4 +- drivers/nvmem/core.c | 22 +- drivers/nvmem/rockchip-efuse.c | 4 + drivers/platform/goldfish/goldfish_pipe.c | 2 +- drivers/power/supply/ds2760_battery.c | 2 +- drivers/power/supply/ds2780_battery.c | 2 +- drivers/power/supply/ds2781_battery.c | 2 +- drivers/pps/Kconfig | 12 +- drivers/pps/clients/Kconfig | 6 +- drivers/pps/generators/Kconfig | 3 +- drivers/spmi/spmi-pmic-arb.c | 608 ++++++---- drivers/thunderbolt/Kconfig | 13 +- drivers/thunderbolt/Makefile | 2 +- drivers/thunderbolt/cap.c | 169 +-- drivers/thunderbolt/ctl.c | 665 +++++++---- drivers/thunderbolt/ctl.h | 105 +- drivers/thunderbolt/dma_port.c | 524 +++++++++ drivers/thunderbolt/dma_port.h | 34 + drivers/thunderbolt/domain.c | 456 ++++++++ drivers/thunderbolt/eeprom.c | 121 +- drivers/thunderbolt/icm.c | 1089 ++++++++++++++++++ drivers/thunderbolt/nhi.c | 306 ++++- drivers/thunderbolt/nhi.h | 93 +- drivers/thunderbolt/nhi_regs.h | 27 + drivers/thunderbolt/switch.c | 1178 ++++++++++++++++++-- drivers/thunderbolt/tb.c | 240 ++-- drivers/thunderbolt/tb.h | 251 ++++- drivers/thunderbolt/tb_msgs.h | 260 +++++ drivers/thunderbolt/tb_regs.h | 50 +- drivers/thunderbolt/tunnel_pci.c | 17 +- drivers/uio/uio_pci_generic.c | 20 +- drivers/vhost/vsock.c | 4 +- drivers/w1/masters/ds1wm.c | 3 +- drivers/w1/masters/ds2482.c | 48 +- drivers/w1/masters/ds2490.c | 36 +- drivers/w1/masters/matrox_w1.c | 43 +- drivers/w1/masters/mxc_w1.c | 3 +- drivers/w1/masters/omap_hdq.c | 60 +- drivers/w1/masters/w1-gpio.c | 3 +- drivers/w1/slaves/w1_bq27000.c | 15 +- drivers/w1/slaves/w1_ds2405.c | 5 +- drivers/w1/slaves/w1_ds2406.c | 12 +- drivers/w1/slaves/w1_ds2408.c | 15 +- drivers/w1/slaves/w1_ds2413.c | 14 +- drivers/w1/slaves/w1_ds2423.c | 8 +- drivers/w1/slaves/w1_ds2431.c | 8 +- drivers/w1/slaves/w1_ds2433.c | 14 +- drivers/w1/slaves/w1_ds2438.c | 5 +- drivers/w1/slaves/w1_ds2760.c | 18 +- drivers/w1/slaves/w1_ds2780.c | 9 +- drivers/w1/slaves/w1_ds2781.c | 9 +- drivers/w1/slaves/w1_ds28e04.c | 14 +- drivers/w1/slaves/w1_smem.c | 17 +- drivers/w1/slaves/w1_therm.c | 26 +- drivers/w1/w1.c | 22 +- drivers/w1/w1_family.c | 8 +- drivers/w1/w1_family.h | 98 -- drivers/w1/w1_int.c | 6 +- drivers/w1/w1_int.h | 27 - drivers/w1/w1_internal.h | 87 ++ drivers/w1/w1_io.c | 2 +- drivers/w1/w1_netlink.c | 2 +- drivers/w1/w1_netlink.h | 2 +- include/dt-bindings/mux/mux.h | 16 + include/linux/coresight.h | 10 +- include/linux/crc4.h | 8 + include/linux/fsi.h | 35 +- include/linux/iio/consumer.h | 37 + include/linux/miscdevice.h | 1 + include/linux/mux/consumer.h | 32 + include/linux/mux/driver.h | 108 ++ include/linux/{i2c => platform_data}/apds990x.h | 0 include/linux/{i2c => platform_data}/bh1770glc.h | 0 include/linux/sram.h | 8 +- {drivers/w1 => include/linux}/w1.h | 114 +- include/trace/events/fsi.h | 127 +++ include/trace/events/fsi_master_gpio.h | 68 ++ kernel/configs/android-base.config | 11 +- kernel/configs/android-recommended.config | 5 +- lib/Kconfig | 8 + lib/Makefile | 1 + lib/crc4.c | 46 + tools/hv/hv_kvp_daemon.c | 44 +- tools/hv/hv_vss_daemon.c | 4 +- 167 files changed, 12819 insertions(+), 1630 deletions(-) create mode 100644 Documentation/ABI/testing/sysfs-bus-fsi create mode 100644 Documentation/ABI/testing/sysfs-bus-thunderbolt create mode 100644 Documentation/ABI/testing/sysfs-class-mux create mode 100644 Documentation/admin-guide/thunderbolt.rst create mode 100644 Documentation/devicetree/bindings/arm/coresight-cpu-debug.txt create mode 100644 Documentation/devicetree/bindings/fsi/fsi-master-gpio.txt create mode 100644 Documentation/devicetree/bindings/i2c/i2c-mux-gpmux.txt create mode 100644 Documentation/devicetree/bindings/iio/multiplexer/io-channel-mux.txt create mode 100644 Documentation/devicetree/bindings/mux/adi,adg792a.txt create mode 100644 Documentation/devicetree/bindings/mux/gpio-mux.txt create mode 100644 Documentation/devicetree/bindings/mux/mmio-mux.txt create mode 100644 Documentation/devicetree/bindings/mux/mux-controller.txt create mode 100644 Documentation/trace/coresight-cpu-debug.txt create mode 100644 drivers/fsi/fsi-master-gpio.c create mode 100644 drivers/fsi/fsi-master-hub.c create mode 100644 drivers/fsi/fsi-master.h create mode 100644 drivers/fsi/fsi-scom.c create mode 100644 drivers/hwtracing/coresight/coresight-cpu-debug.c create mode 100644 drivers/i2c/muxes/i2c-mux-gpmux.c create mode 100644 drivers/iio/multiplexer/Kconfig create mode 100644 drivers/iio/multiplexer/Makefile create mode 100644 drivers/iio/multiplexer/iio-mux.c create mode 100644 drivers/misc/aspeed-lpc-snoop.c create mode 100644 drivers/mux/Kconfig create mode 100644 drivers/mux/Makefile create mode 100644 drivers/mux/mux-adg792a.c create mode 100644 drivers/mux/mux-core.c create mode 100644 drivers/mux/mux-gpio.c create mode 100644 drivers/mux/mux-mmio.c create mode 100644 drivers/thunderbolt/dma_port.c create mode 100644 drivers/thunderbolt/dma_port.h create mode 100644 drivers/thunderbolt/domain.c create mode 100644 drivers/thunderbolt/icm.c create mode 100644 drivers/thunderbolt/tb_msgs.h delete mode 100644 drivers/w1/w1_family.h delete mode 100644 drivers/w1/w1_int.h create mode 100644 drivers/w1/w1_internal.h create mode 100644 include/dt-bindings/mux/mux.h create mode 100644 include/linux/crc4.h create mode 100644 include/linux/mux/consumer.h create mode 100644 include/linux/mux/driver.h rename include/linux/{i2c => platform_data}/apds990x.h (100%) rename include/linux/{i2c => platform_data}/bh1770glc.h (100%) rename {drivers/w1 => include/linux}/w1.h (76%) create mode 100644 include/trace/events/fsi.h create mode 100644 include/trace/events/fsi_master_gpio.h create mode 100644 lib/crc4.c