[GIT PULL] Char/Misc driver patches for 4.13-rc1

From: Greg KH
Date: Mon Jul 03 2017 - 11:00:43 EST


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 <gregkh@xxxxxxxxxxxxxxxxxxx>

----------------------------------------------------------------
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