1. 19 Nov, 2021 2 commits
    • Hans de Goede's avatar
      HID: input: Fix parsing of HID_CP_CONSUMER_CONTROL fields · 7fc48fd6
      Hans de Goede authored
      Fix parsing of HID_CP_CONSUMER_CONTROL fields which are not in
      the HID_CP_PROGRAMMABLEBUTTONS collection.
      
      Fixes: bcfa8d14 ("HID: input: Add support for Programmable Buttons")
      BugLink: https://bugzilla.redhat.com/show_bug.cgi?id=2018096
      Cc: Thomas Weißschuh <linux@weissschuh.net>
      Suggested-by: default avatarBenjamin Tissoires <btissoir@redhat.com>
      Signed-off-by: default avatarHans de Goede <hdegoede@redhat.com>
      Reviewed-By: default avatarThomas Weißschuh <linux@weissschuh.net>
      Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
      7fc48fd6
    • Michael Zaidman's avatar
      HID: ft260: fix i2c probing for hwmon devices · a94f61e6
      Michael Zaidman authored
      The below scenario causes the kernel NULL pointer dereference failure:
      1. sudo insmod hid-ft260.ko
      2. sudo modprobe lm75
      3. unplug USB hid-ft260
      4. plug USB hid-ft260
      
      [  +0.000006] Call Trace:
      [  +0.000004]  __i2c_smbus_xfer.part.0+0xd1/0x310
      [  +0.000007]  ? ft260_smbus_write+0x140/0x140 [hid_ft260]
      [  +0.000005]  __i2c_smbus_xfer+0x2b/0x80
      [  +0.000004]  i2c_smbus_xfer+0x61/0xf0
      [  +0.000005]  i2c_default_probe+0xf9/0x130
      [  +0.000004]  i2c_detect_address+0x84/0x160
      [  +0.000004]  ? kmem_cache_alloc_trace+0xf6/0x200
      [  +0.000009]  ? i2c_detect.isra.0+0x69/0x130
      [  +0.000005]  i2c_detect.isra.0+0xbf/0x130
      [  +0.000004]  ? __process_new_driver+0x30/0x30
      [  +0.000004]  __process_new_adapter+0x18/0x20
      [  +0.000004]  bus_for_each_drv+0x84/0xd0
      [  +0.000003]  i2c_register_adapter+0x1e4/0x400
      [  +0.000005]  i2c_add_adapter+0x5c/0x80
      [  +0.000004]  ft260_probe.cold+0x222/0x2e2 [hid_ft260]
      [  +0.000006]  hid_device_probe+0x10e/0x170 [hid]
      [  +0.000009]  really_probe+0xff/0x460
      [  +0.000004]  driver_probe_device+0xe9/0x160
      [  +0.000003]  __device_attach_driver+0x71/0xd0
      [  +0.000004]  ? driver_allows_async_probing+0x50/0x50
      [  +0.000004]  bus_for_each_drv+0x84/0xd0
      [  +0.000002]  __device_attach+0xde/0x1e0
      [  +0.000004]  device_initial_probe+0x13/0x20
      [  +0.000004]  bus_probe_device+0x8f/0xa0
      [  +0.000003]  device_add+0x333/0x5f0
      
      It happened when i2c core probed for the devices associated with the lm75
      driver by invoking 2c_detect()-->..-->ft260_smbus_write() from within the
      ft260_probe before setting the adapter data with i2c_set_adapdata().
      
      Moving the i2c_set_adapdata() before i2c_add_adapter() fixed the failure.
      Signed-off-by: default avatarMichael Zaidman <michael.zaidman@gmail.com>
      Signed-off-by: default avatarGermain Hebert <germain.hebert@ca.abb.com>
      Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
      a94f61e6
  2. 12 Nov, 2021 1 commit
  3. 11 Nov, 2021 1 commit
    • Arnd Bergmann's avatar
      HID: intel-ish-hid: fix module device-id handling · bf9167a8
      Arnd Bergmann authored
      A late addititon to the intel-ish-hid framework caused a build failure
      with clang, and introduced an ABI to the module loader that stops working
      if any driver ever needs to bind to more than one UUID:
      
      drivers/hid/intel-ish-hid/ishtp-fw-loader.c:1067:4: error: initializer element is not a compile-time constant
      
      Change the ishtp_device_id to have correct documentation and a driver_data
      field like all the other ones, and change the drivers to use the ID table
      as the primary identification in a way that works with all compilers
      and avoids duplciating the identifiers.
      
      Fixes: f155dfea ("platform/x86: isthp_eclite: only load for matching devices")
      Fixes: facfe0a4 ("platform/chrome: chros_ec_ishtp: only load for matching devices")
      Fixes: 0d0cccc0 ("HID: intel-ish-hid: hid-client: only load for matching devices")
      Fixes: 44e2a58c ("HID: intel-ish-hid: fw-loader: only load for matching devices")
      Fixes: cb1a2c68 ("HID: intel-ish-hid: use constants for modaliases")
      Fixes: fa443bc3 ("HID: intel-ish-hid: add support for MODULE_DEVICE_TABLE()")
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Reviewed-by: default avatarHans de Goede <hdegoede@redhat.com>
      [jkosina@suse.cz: fix ecl_ishtp_cl_driver.id initialization]
      [jkosina@suse.cz: fix conflict with already fixed kerneldoc]
      Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
      bf9167a8
  4. 10 Nov, 2021 3 commits
  5. 09 Nov, 2021 6 commits
  6. 05 Nov, 2021 14 commits
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid · 5af06603
      Linus Torvalds authored
      Pull HID updates from Jiri Kosina:
      
       - support for Nintendo Switch Pro Controllers and Joy-Cons (Daniel J.
         Ogorchock)
      
       - support for new revision of the NitroKey U2F device firmware (Andrej
         Shadura)
      
       - LED handling improvements for Sony Playstation5 controllers (Roderick
         Colenbrander)
      
       - support for Apple 2021 Magic Keyboard (Alex Henrie)
      
       - other assorted code cleanups and new device ID additions
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid: (41 commits)
        HID: nintendo: fix -Werror build
        HID: playstation: require multicolor LED functionality
        HID: u2fzero: properly handle timeouts in usb_submit_urb
        HID: u2fzero: clarify error check and length calculations
        HID: u2fzero: Support NitroKey U2F revision of the device
        HID: wacom: Make use of the helper function devm_add_action_or_reset()
        HID: wacom: Shrink critical section in `wacom_add_shared_data`
        HID: nintendo: prevent needless queueing of the rumble worker
        HID: nintendo: ratelimit subcommands and rumble
        HID: nintendo: improve rumble performance and stability
        HID: nintendo: add IMU support
        HID: nintendo: add support for reading user calibration
        HID: nintendo: add support for charging grip
        HID: nintendo: set controller uniq to MAC
        HID: nintendo: reduce device removal subcommand errors
        HID: nintendo: patch hw version for userspace HID mappings
        HID: nintendo: send subcommands after receiving input report
        HID: nintendo: improve subcommand reliability
        HID: nintendo: add rumble support
        HID: nintendo: add home led support
        ...
      5af06603
    • Linus Torvalds's avatar
      Merge tag 'pinctrl-v5.16-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl · 5a1bcbd9
      Linus Torvalds authored
      Pull pin control updates from Linus Walleij:
       "The most interesting aspect is that we now have initial support for
        the Apple pin controller as used in the M1 laptops and the iPhones
        which is a step forward for using Linux efficiently on this Apple
        silicon.
      
        Core changes:
      
         - Add infrastructure for per-parent interrupt data to support the
           Apple pin controller.
      
        New drivers:
      
         - New combined pin control and GPIO driver for the Apple SoC. This is
           used in all modern Apple silicon such as the M1 laptops but also in
           at least recent iPhone variants.
      
         - New subdriver for the Qualcomm SM6350
      
         - New subdriver for the Qualcomm QCM2290
      
         - New subdriver for the Qualcomm PM6350
      
         - New subdriver for the Uniphier NX1
      
         - New subdriver for the Samsung ExynosAutoV9
      
         - New subdriver for the Mediatek MT7986
      
         - New subdriver for the nVidia Tegra194
      
        Improvements:
      
         - Improve power management in the Mediatek driver.
      
         - Improvements to the Renesas internal consistency checker.
      
         - Convert the Rockchip pin control device tree bindings to YAML.
      
         - Finally convert the Qualcomm PMIC SSBI and SPMI MPP GPIO driver to
           use hierarchical interrupts.
      
         - Convert the Qualcomm PMIC MPP device tree bindings to YAML"
      
      * tag 'pinctrl-v5.16-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl: (55 commits)
        pinctrl: add pinctrl/GPIO driver for Apple SoCs
        dt-bindings: pinctrl: Add apple,npins property to apple,pinctrl
        dt-bindings: pinctrl: add #interrupt-cells to apple,pinctrl
        gpio: Allow per-parent interrupt data
        pinctrl: tegra: Fix warnings and error
        pinctrl: intel: Kconfig: Add configuration menu to Intel pin control
        pinctrl: tegra: Use correct offset for pin group
        pinctrl: core: fix possible memory leak in pinctrl_enable()
        pinctrl: bcm2835: Allow building driver as a module
        pinctrl: equilibrium: Fix function addition in multiple groups
        pinctrl: tegra: Add pinmux support for Tegra194
        pinctrl: tegra: include lpdr pin properties
        pinctrl: mediatek: add support for MT7986 SoC
        dt-bindings: pinctrl: update bindings for MT7986 SoC
        pinctrl: microchip sgpio: use reset driver
        dt-bindings: pinctrl: pinctrl-microchip-sgpio: Add reset binding
        dt-bindings: pinctrl: qcom,pmic-mpp: switch to #interrupt-cells
        pinctrl: qcom: spmi-mpp: add support for hierarchical IRQ chip
        pinctrl: qcom: spmi-mpp: hardcode IRQ counts
        pinctrl: qcom: ssbi-mpp: add support for hierarchical IRQ chip
        ...
      5a1bcbd9
    • Linus Torvalds's avatar
      Merge tag 'microblaze-v5.16' of git://git.monstr.eu/linux-2.6-microblaze · a51e4a1a
      Linus Torvalds authored
      Pull microblaze update from Michal Simek:
       "Remove unused devicetree properties. Sean is pushing one pwm driver
        and these ancient properties are going against agreed DT binding"
      
      * tag 'microblaze-v5.16' of git://git.monstr.eu/linux-2.6-microblaze:
        microblaze: timer: Remove unused properties
      a51e4a1a
    • Linus Torvalds's avatar
      Merge tag 'powerpc-5.16-1' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux · 5c0b0c67
      Linus Torvalds authored
      Pull powerpc updates from Michael Ellerman:
      
       - Enable STRICT_KERNEL_RWX for Freescale 85xx platforms.
      
       - Activate CONFIG_STRICT_KERNEL_RWX by default, while still allowing it
         to be disabled.
      
       - Add support for out-of-line static calls on 32-bit.
      
       - Fix oopses doing bpf-to-bpf calls when STRICT_KERNEL_RWX is enabled.
      
       - Fix boot hangs on e5500 due to stale value in ESR passed to
         do_page_fault().
      
       - Fix several bugs on pseries in handling of device tree cache
         information for hotplugged CPUs, and/or during partition migration.
      
       - Various other small features and fixes.
      
      Thanks to Alexey Kardashevskiy, Alistair Popple, Anatolij Gustschin,
      Andrew Donnellan, Athira Rajeev, Bixuan Cui, Bjorn Helgaas, Cédric Le
      Goater, Christophe Leroy, Daniel Axtens, Daniel Henrique Barboza, Denis
      Kirjanov, Fabiano Rosas, Frederic Barrat, Gustavo A.  R.  Silva, Hari
      Bathini, Jacques de Laval, Joel Stanley, Kai Song, Kajol Jain, Laurent
      Vivier, Leonardo Bras, Madhavan Srinivasan, Nathan Chancellor, Nathan
      Lynch, Naveen N.  Rao, Nicholas Piggin, Nick Desaulniers, Niklas
      Schnelle, Oliver O'Halloran, Rob Herring, Russell Currey, Srikar
      Dronamraju, Stan Johnson, Tyrel Datwyler, Uwe Kleine-König, Vasant
      Hegde, Wan Jiabing, and Xiaoming Ni,
      
      * tag 'powerpc-5.16-1' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux: (73 commits)
        powerpc/8xx: Fix Oops with STRICT_KERNEL_RWX without DEBUG_RODATA_TEST
        powerpc/32e: Ignore ESR in instruction storage interrupt handler
        powerpc/powernv/prd: Unregister OPAL_MSG_PRD2 notifier during module unload
        powerpc: Don't provide __kernel_map_pages() without ARCH_SUPPORTS_DEBUG_PAGEALLOC
        MAINTAINERS: Update powerpc KVM entry
        powerpc/xmon: fix task state output
        powerpc/44x/fsp2: add missing of_node_put
        powerpc/dcr: Use cmplwi instead of 3-argument cmpli
        KVM: PPC: Tick accounting should defer vtime accounting 'til after IRQ handling
        powerpc/security: Use a mutex for interrupt exit code patching
        powerpc/83xx/mpc8349emitx: Make mcu_gpiochip_remove() return void
        powerpc/fsl_booke: Fix setting of exec flag when setting TLBCAMs
        powerpc/book3e: Fix set_memory_x() and set_memory_nx()
        powerpc/nohash: Fix __ptep_set_access_flags() and ptep_set_wrprotect()
        powerpc/bpf: Fix write protecting JIT code
        selftests/powerpc: Use date instead of EPOCHSECONDS in mitigation-patching.sh
        powerpc/64s/interrupt: Fix check_return_regs_valid() false positive
        powerpc/boot: Set LC_ALL=C in wrapper script
        powerpc/64s: Default to 64K pages for 64 bit book3s
        Revert "powerpc/audit: Convert powerpc to AUDIT_ARCH_COMPAT_GENERIC"
        ...
      5c0b0c67
    • Linus Torvalds's avatar
      Merge tag 'mips_5.16' of git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux · a3f36773
      Linus Torvalds authored
      Pull MIPS updates from Thomas Bogendoerfer:
      
       - added printing of CPU options for /proc/cpuinfo
      
       - removed support for Netlogic SOCs
      
       - fixes and cleanup
      
      * tag 'mips_5.16' of git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux:
        MIPS: Cobalt: Explain GT64111 early PCI fixup
        mips: fix HUGETLB function without THP enabled
        mips: cm: Convert to bitfield API to fix out-of-bounds access
        MIPS: Remove NETLOGIC support
        MIPS: kernel: proc: add CPU option reporting
        MIPS: kernel: proc: use seq_puts instead of seq_printf
        MIPS: kernel: proc: fix trivial style errors
        MIPS: Fix assembly error from MIPSr2 code used within MIPS_ISA_ARCH_LEVEL
        MIPS: octeon: Remove unused functions
        MIPS: Loongson64: Add of_node_put() before break
        bcm47xx: Replace printk(KERN_ALERT ... pci_devname(dev)) with pci_alert()
        bcm47xx: Get rid of redundant 'else'
        MIPS: sni: Fix the build
        MIPS: Avoid macro redefinitions
        MIPS: loongson64: Fix no screen display during boot-up
        MIPS: loongson64: make CPU_LOONGSON64 depends on MIPS_FP_SUPPORT
      a3f36773
    • Jiri Kosina's avatar
      Merge branch 'for-5.16/xiaomi' into for-linus · 5a2506bb
      Jiri Kosina authored
      - proper support of Xiaomi Mi buttons (Ilya Skriblovsky)
      5a2506bb
    • Jiri Kosina's avatar
      Merge branch 'for-5.16/wacom' into for-linus · 3f81b3a3
      Jiri Kosina authored
      - improvement of device management handling (Cai Huoqing, Jason Gerecke)
      3f81b3a3
    • Jiri Kosina's avatar
      Merge branch 'for-5.16/u2fzero' into for-linus · a7c2b7ea
      Jiri Kosina authored
      - support for new revision of the NitroKey U2F device firmware
        (Andrej Shadura)
      a7c2b7ea
    • Jiri Kosina's avatar
      Merge branch 'for-5.16/nintendo' into for-linus · 0cc82d61
      Jiri Kosina authored
      - support for Nintendo Switch Pro Controllers and Joy-Cons (Daniel J. Ogorchock)
      0cc82d61
    • Jiri Kosina's avatar
      Merge branch 'for-5.16/playstation' into for-linus · a6be4c6c
      Jiri Kosina authored
      - LED handling improvements (Roderick Colenbrander)
      a6be4c6c
    • Jiri Kosina's avatar
      Merge branch 'for-5.16/core' into for-linus · b026277a
      Jiri Kosina authored
      - update to handle TransducerSerialNumber2 which has been recently
        added to the specification (Felipe Balbi)
      b026277a
    • Jiri Kosina's avatar
      Merge branch 'for-5.16/asus' into for-linus · 820e9906
      Jiri Kosina authored
      820e9906
    • Jiri Kosina's avatar
      Merge branch 'for-5.16/apple' into for-linus · b9865081
      Jiri Kosina authored
      - support for 2021 Magic Keyboard (Alex Henrie)
      - tidle key quirk handling improvement (Alex Henrie)
      b9865081
    • Jiri Kosina's avatar
      Merge branch 'for-5.16/amd-sfh' into for-linus · a6e757e3
      Jiri Kosina authored
      - code cleanups (Basavaraj Natikar, Christophe JAILLET)
      a6e757e3
  7. 04 Nov, 2021 13 commits
    • Linus Torvalds's avatar
      Merge tag 'hsi-for-5.16' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-hsi · d4439a11
      Linus Torvalds authored
      Pull HSI update from Sebastian Reichel:
       "cmt_speech: unmark comments as kernel-doc"
      
      * tag 'hsi-for-5.16' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-hsi:
        HSI: cmt_speech: unmark comments as kernel-doc
      d4439a11
    • Linus Torvalds's avatar
      Merge tag 'for-v5.16' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply · 72e65f7e
      Linus Torvalds authored
      Pull power supply and reset updates from Sebastian Reichel:
       "Miscellaneous small fixes and improvements all over the place.
      
        Nothing stands out in particular"
      
      * tag 'for-v5.16' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply: (30 commits)
        power: supply: bq25890: Fix initial setting of the F_CONV_RATE field
        power: supply: bq25890: Fix race causing oops at boot
        power: supply: bq27xxx: Fix kernel crash on IRQ handler register error
        power: bq25890: add return values to error messages
        power: supply: axp288-charger: Simplify axp288_get_charger_health()
        power: supply: axp288-charger: Remove unnecessary is_present and is_online helpers
        power: supply: axp288-charger: Add depends on IOSF_MBIO to Kconfig
        power: supply: ab8500_bmdata: Use standard phandle
        dt-bindings: power: supply: ab8500: Standard monitored-battery
        power: supply: axp288_charger: Fix missing mutex_init()
        power: supply: max17042_battery: Prevent int underflow in set_soc_threshold
        power: supply: max17042_battery: Clear status bits in interrupt handler
        MAINTAINERS: power: supply: max17040: add entry with reviewers
        MAINTAINERS: power: supply: max17042: add entry with reviewers
        power: supply: max17040: fix null-ptr-deref in max17040_probe()
        power: supply: rt5033_battery: Change voltage values to µV
        power: supply: axp288-charger: Optimize register reading method
        dt-bindings: power: Bindings for Samsung batteries
        power: supply: cpcap-battery: use device_get_match_data() to simplify code
        power: supply: max17042_battery: fix typo in MAX17042_IAvg_empty
        ...
      72e65f7e
    • Linus Torvalds's avatar
      Merge tag 'for-5.16/parisc-2' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux · c1e2e035
      Linus Torvalds authored
      Pull more parisc architecture fixes and updates from Helge Deller:
       "One build error fix and two optimizations:
      
         - Fix build error by moving the CPU field back into thread_info
           struct (Ard Biesheuvel)
      
         - Do not enable IRQs unconditionally at start of interrupt handler if
           they were disabled before (Sven Schnelle)
      
         - Keep interrupts enabled during cmpxchg and futex operations (Dave
           Anglin)"
      
      * tag 'for-5.16/parisc-2' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux:
        parisc: move CPU field back into thread_info
        parisc: Don't disable interrupts in cmpxchg and futex operations
        parisc: don't enable irqs unconditionally in handle_interruption()
      c1e2e035
    • Linus Torvalds's avatar
      Merge tag 'iommu-updates-v5.16' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu · 7e113d01
      Linus Torvalds authored
      Pull iommu updates from Joerg Roedel:
      
       - Intel IOMMU Updates fro Lu Baolu:
           - Dump DMAR translation structure when DMA fault occurs
           - An optimization in the page table manipulation code
           - Use second level for GPA->HPA translation
           - Various cleanups
      
       - Arm SMMU Updates from Will
           - Minor optimisations to SMMUv3 command creation and submission
           - Numerous new compatible string for Qualcomm SMMUv2 implementations
      
       - Fixes for the SWIOTLB based implemenation of dma-iommu code for
         untrusted devices
      
       - Add support for r8a779a0 to the Renesas IOMMU driver and DT matching
         code for r8a77980
      
       - A couple of cleanups and fixes for the Apple DART IOMMU driver
      
       - Make use of generic report_iommu_fault() interface in the AMD IOMMU
         driver
      
       - Various smaller fixes and cleanups
      
      * tag 'iommu-updates-v5.16' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu: (35 commits)
        iommu/dma: Fix incorrect error return on iommu deferred attach
        iommu/dart: Initialize DART_STREAMS_ENABLE
        iommu/dma: Use kvcalloc() instead of kvzalloc()
        iommu/tegra-smmu: Use devm_bitmap_zalloc when applicable
        iommu/dart: Use kmemdup instead of kzalloc and memcpy
        iommu/vt-d: Avoid duplicate removing in __domain_mapping()
        iommu/vt-d: Convert the return type of first_pte_in_page to bool
        iommu/vt-d: Clean up unused PASID updating functions
        iommu/vt-d: Delete dev_has_feat callback
        iommu/vt-d: Use second level for GPA->HPA translation
        iommu/vt-d: Check FL and SL capability sanity in scalable mode
        iommu/vt-d: Remove duplicate identity domain flag
        iommu/vt-d: Dump DMAR translation structure when DMA fault occurs
        iommu/vt-d: Do not falsely log intel_iommu is unsupported kernel option
        iommu/arm-smmu-qcom: Request direct mapping for modem device
        iommu: arm-smmu-qcom: Add compatible for QCM2290
        dt-bindings: arm-smmu: Add compatible for QCM2290 SoC
        iommu/arm-smmu-qcom: Add SM6350 SMMU compatible
        dt-bindings: arm-smmu: Add compatible for SM6350 SoC
        iommu/arm-smmu-v3: Properly handle the return value of arm_smmu_cmdq_build_cmd()
        ...
      7e113d01
    • Linus Torvalds's avatar
      Merge tag 'tty-5.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty · abfecb39
      Linus Torvalds authored
      Pull tty / serial driver updates from Greg KH:
       "Here is the big set of tty and serial driver updates for 5.16-rc1.
      
        Nothing major in here at all, just lots of tiny serial and tty driver
        updates for various reported things, and some good cleanups. These
        include:
      
         - more good tty api cleanups from Jiri
      
         - stm32 serial driver updates
      
         - softlockup fix for non-preempt systems under high serial load
      
         - rpmsg serial driver update
      
         - 8250 drivers updates and fixes
      
         - n_gsm line discipline fixes and updates as people are finally
           starting to use it.
      
        All of these have been in linux-next for a while now with no reported
        issues"
      
      * tag 'tty-5.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty: (86 commits)
        tty: Fix extra "not" in TTY_DRIVER_REAL_RAW description
        serial: cpm_uart: Protect udbg definitions by CONFIG_SERIAL_CPM_CONSOLE
        tty: rpmsg: Define tty name via constant string literal
        tty: rpmsg: Add pr_fmt() to prefix messages
        tty: rpmsg: Use dev_err_probe() in ->probe()
        tty: rpmsg: Unify variable used to keep an error code
        tty: rpmsg: Assign returned id to a local variable
        serial: stm32: push DMA RX data before suspending
        serial: stm32: terminate / restart DMA transfer at suspend / resume
        serial: stm32: rework RX dma initialization and release
        serial: 8250_pci: Remove empty stub pci_quatech_exit()
        serial: 8250_pci: Replace custom pci_match_id() implementation
        serial: xilinx_uartps: Fix race condition causing stuck TX
        serial: sunzilog: Mark sunzilog_putchar() __maybe_unused
        Revert "tty: hvc: pass DMA capable memory to put_chars()"
        Revert "virtio-console: remove unnecessary kmemdup()"
        serial: 8250_pci: Replace dev_*() by pci_*() macros
        serial: 8250_pci: Get rid of redundant 'else' keyword
        serial: 8250_pci: Refactor the loop in pci_ite887x_init()
        tty: add rpmsg driver
        ...
      abfecb39
    • Linus Torvalds's avatar
      Merge tag 'driver-core-5.16-rc1' of... · 95faf6ba
      Linus Torvalds authored
      Merge tag 'driver-core-5.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core
      
      Pull driver core updates from Greg KH:
       "Here is the big set of driver core changes for 5.16-rc1.
      
        All of these have been in linux-next for a while now with no reported
        problems.
      
        Included in here are:
      
         - big update and cleanup of the sysfs abi documentation files and
           scripts from Mauro. We are almost at the place where we can
           properly check that the running kernel's sysfs abi is documented
           fully.
      
         - firmware loader updates
      
         - dyndbg updates
      
         - kernfs cleanups and fixes from Christoph
      
         - device property updates
      
         - component fix
      
         - other minor driver core cleanups and fixes"
      
      * tag 'driver-core-5.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (122 commits)
        device property: Drop redundant NULL checks
        x86/build: Tuck away built-in firmware under FW_LOADER
        vmlinux.lds.h: wrap built-in firmware support under FW_LOADER
        firmware_loader: move struct builtin_fw to the only place used
        x86/microcode: Use the firmware_loader built-in API
        firmware_loader: remove old DECLARE_BUILTIN_FIRMWARE()
        firmware_loader: formalize built-in firmware API
        component: do not leave master devres group open after bind
        dyndbg: refine verbosity 1-4 summary-detail
        gpiolib: acpi: Replace custom code with device_match_acpi_handle()
        i2c: acpi: Replace custom function with device_match_acpi_handle()
        driver core: Provide device_match_acpi_handle() helper
        dyndbg: fix spurious vNpr_info change
        dyndbg: no vpr-info on empty queries
        dyndbg: vpr-info on remove-module complete, not starting
        device property: Add missed header in fwnode.h
        Documentation: dyndbg: Improve cli param examples
        dyndbg: Remove support for ddebug_query param
        dyndbg: make dyndbg a known cli param
        dyndbg: show module in vpr-info in dd-exec-queries
        ...
      95faf6ba
    • Linus Torvalds's avatar
      Merge tag 'char-misc-5.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc · 5c904c66
      Linus Torvalds authored
      Pull char/misc driver updates from Greg KH:
       "Here is the big set of char and misc and other tiny driver subsystem
        updates for 5.16-rc1.
      
        Loads of things in here, all of which have been in linux-next for a
        while with no reported problems (except for one called out below.)
      
        Included are:
      
         - habanana labs driver updates, including dma_buf usage, reviewed and
           acked by the dma_buf maintainers
      
         - iio driver update (going through this tree not staging as they
           really do not belong going through that tree anymore)
      
         - counter driver updates
      
         - hwmon driver updates that the counter drivers needed, acked by the
           hwmon maintainer
      
         - xillybus driver updates
      
         - binder driver updates
      
         - extcon driver updates
      
         - dma_buf module namespaces added (will cause a build error in arm64
           for allmodconfig, but that change is on its way through the drm
           tree)
      
         - lkdtm driver updates
      
         - pvpanic driver updates
      
         - phy driver updates
      
         - virt acrn and nitr_enclaves driver updates
      
         - smaller char and misc driver updates"
      
      * tag 'char-misc-5.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (386 commits)
        comedi: dt9812: fix DMA buffers on stack
        comedi: ni_usb6501: fix NULL-deref in command paths
        arm64: errata: Enable TRBE workaround for write to out-of-range address
        arm64: errata: Enable workaround for TRBE overwrite in FILL mode
        coresight: trbe: Work around write to out of range
        coresight: trbe: Make sure we have enough space
        coresight: trbe: Add a helper to determine the minimum buffer size
        coresight: trbe: Workaround TRBE errata overwrite in FILL mode
        coresight: trbe: Add infrastructure for Errata handling
        coresight: trbe: Allow driver to choose a different alignment
        coresight: trbe: Decouple buffer base from the hardware base
        coresight: trbe: Add a helper to pad a given buffer area
        coresight: trbe: Add a helper to calculate the trace generated
        coresight: trbe: Defer the probe on offline CPUs
        coresight: trbe: Fix incorrect access of the sink specific data
        coresight: etm4x: Add ETM PID for Kryo-5XX
        coresight: trbe: Prohibit trace before disabling TRBE
        coresight: trbe: End the AUX handle on truncation
        coresight: trbe: Do not truncate buffer on IRQ
        coresight: trbe: Fix handling of spurious interrupts
        ...
      5c904c66
    • Linus Torvalds's avatar
      Merge tag 'staging-5.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging · 5cd4dc44
      Linus Torvalds authored
      Pull staging driver updates from Greg KH:
       "Here is the big set of staging driver updates and cleanups for
        5.16-rc1.
      
        Overall we ended up removing a lot of code this time, a bit over
        20,000 lines are now gone thanks to a lot of cleanup work by many
        developers.
      
        Nothing huge in here functionality wise, just loads of cleanups:
      
         - r8188eu driver major cleanups and removal of unused and dead code
      
         - wlan-ng minor cleanups
      
         - fbtft driver cleanups
      
         - most driver cleanups
      
         - rtl8* drivers cleanups
      
         - rts5208 driver cleanups
      
         - vt6655 driver cleanups
      
         - vc04_services drivers cleanups
      
         - wfx cleanups on the way to almost getting this merged out of
           staging (it's close!)
      
         - tiny mips changes needed for the mt7621 drivers, they have been
           acked by the respective subsystem maintainers to go through this
           tree.
      
        All of these have been in linux-next for a while with no reported
        issues"
      
      * tag 'staging-5.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: (622 commits)
        staging: r8188eu: hal: remove goto statement and local variable
        staging: rtl8723bs: hal remove the assignment to itself
        staging: rtl8723bs: fix unmet dependency on CRYPTO for CRYPTO_LIB_ARC4
        staging: vchiq_core: get rid of typedef
        staging: fieldbus: anybus: reframe comment to avoid warning
        staging: r8188eu: fix missing unlock in rtw_resume()
        staging: r8188eu: core: remove the goto from rtw_IOL_accquire_xmit_frame
        staging: r8188eu: core: remove goto statement
        staging: vt6655: Rename `dwAL7230InitTable` array
        staging: vt6655: Rename `dwAL2230PowerTable` array
        staging: vt6655: Rename `dwAL7230InitTableAMode` array
        staging: vt6655: Rename `dwAL7230ChannelTable2` array
        staging: vt6655: Rename `dwAL7230ChannelTable1` array
        staging: vt6655: Rename `dwAL7230ChannelTable0` array
        staging: vt6655: Rename `dwAL2230ChannelTable1` array
        staging: vt6655: Rename `dwAL2230ChannelTable0` array
        staging: r8712u: fix control-message timeout
        staging: rtl8192u: fix control-message timeouts
        staging: mt7621-dts: add missing SPDX license to files
        staging: vchiq_core: fix quoted strings split across lines
        ...
      5cd4dc44
    • Linus Torvalds's avatar
      Merge tag 'usb-5.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · 048ff862
      Linus Torvalds authored
      Pull USB / Thunderbolt updates from Greg KH:
       "Here is the big set of USB and Thunderbolt driver updates for
        5.16-rc1.
      
        Nothing major in here, just lots of little cleanups and additions for
        new hardware, all of which have been in linux-next for a while with no
        reported problems.
      
        Included in here are:
      
         - tiny Thunderbolt driver updates
      
         - USB typec driver updates
      
         - USB serial driver updates
      
         - USB gadget driver updates
      
         - dwc2 and dwc3 controller driver updates
      
         - tiny USB host driver updates
      
         - minor USB driver fixes and updates
      
         - USB dts updates for various platforms"
      
      * tag 'usb-5.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (123 commits)
        usb: gadget: Mark USB_FSL_QE broken on 64-bit
        usb: gadget: f_mass_storage: Disable eps during disconnect
        usb: gadget: udc: core: Revise comments for USB ep enable/disable
        USB: serial: keyspan: fix memleak on probe errors
        USB: serial: cp210x: use usb_control_msg_recv() and usb_control_msg_send()
        USB: serial: ch314: use usb_control_msg_recv()
        USB: iowarrior: fix control-message timeouts
        Documentation: USB: fix example bulk-message timeout
        usb: dwc2: stm32mp15: set otg_rev
        usb: dwc2: add otg_rev and otg_caps information for gadget driver
        dt-bindings: usb: dwc2: adopt otg properties defined in usb-drd.yaml
        dt-bindings: usb: dwc2: Add reference to usb-drd.yaml
        usb: gadget: uvc: implement dwPresentationTime and scrSourceClock
        usb: gadget: uvc: use on returned header len in video_encode_isoc_sg
        usb:gadget: f_uac1: fixed sync playback
        Docs: usb: remove :c:func: for usb_register and usb_deregister
        Docs: usb: update struct usb_driver
        usb: gadget: configfs: change config attributes file operation
        usb: gadget: configfs: add cfg_to_gadget_info() helper
        usb: dwc3: Align DWC3_EP_* flag macros
        ...
      048ff862
    • Ard Biesheuvel's avatar
      parisc: move CPU field back into thread_info · 2a2e8202
      Ard Biesheuvel authored
      In commit 2214c0e7 ("parisc: Move thread_info into task struct")
      PA-RISC gained support for THREAD_INFO_IN_TASK while changes were
      already underway to keep the CPU field in thread_info rather than move
      it into task_struct when THREAD_INFO_IN_TASK is enabled. The result is a
      broken build for all PA-RISC configs that enable SMP.
      
      So let's partially revert that commit, and get rid of the ugly hack to
      get at the offset of task_struct::cpu without having to include
      linux/sched.h, and put the CPU field back where it was before.
      Reported-by: default avatarGuenter Roeck <linux@roeck-us.net>
      Fixes: bcf9033e ("sched: move CPU field back into thread_info if THREAD_INFO_IN_TASK=y")
      Signed-off-by: default avatarArd Biesheuvel <ardb@kernel.org>
      Signed-off-by: default avatarHelge Deller <deller@gmx.de>
      2a2e8202
    • Dave Anglin's avatar
      parisc: Don't disable interrupts in cmpxchg and futex operations · 7e992711
      Dave Anglin authored
      I no longer think interrupts can be disabled in the futex and cmpxchg
      operations because of COW breaks.  This not ideal but I suspect it's the
      best we can do.
      
      For the cmpxchg operations in syscall.S, we rely on the code to not
      schedule off the gateway page.  For the futex, I added code to disable
      preemption.
      
      So far, I haven't seen the warnings with the attached change but the
      change is only lightly tested.
      Signed-off-by: default avatarDave Anglin <dave.anglin@bell.net>
      Signed-off-by: default avatarHelge Deller <deller@gmx.de>
      7e992711
    • Sven Schnelle's avatar
      parisc: don't enable irqs unconditionally in handle_interruption() · 014966dc
      Sven Schnelle authored
      If the previous context had interrupts disabled, we should better
      keep them disabled. This was noticed in the unwinding code where
      a copy_from_kernel_nofault() triggered a page fault, and after
      the fixup by the page fault handler interrupts where suddenly
      enabled.
      Signed-off-by: default avatarSven Schnelle <svens@stackframe.org>
      Signed-off-by: default avatarHelge Deller <deller@gmx.de>
      014966dc
    • Linus Torvalds's avatar
      Merge tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux · 7ddb58cb
      Linus Torvalds authored
      Pull clk updates from Stephen Boyd:
       "The usual collection of clk driver updates and new driver additions.
        In terms of lines it's mainly Qualcomm and Mediatek code, supporting
        various SoCs and their multitude of clk controllers.
      
        New Drivers:
         - GCC and RPMcc support for Qualcomm QCM2290 SoCs
         - GCC support for Qualcomm MSM8994/MSM8992 SoCs
         - LPASSCC and CAMCC support for Qualcomm SC7280 SoCs
         - Support for Mediatek MT8195 SoCs
         - Initial clock driver for the Exynos850 SoC
         - Add i.MX8ULP clock driver and related bindings
      
        Updates:
         - Clock power management for new SAMA7G5 SoC
         - Updates to the master clock driver and sam9x60-pll to be able to
           use cpufreq-dt driver and avoid overclocking of CPU and MCK0
           domains while changing the frequency via DVFS
         - Use ARRAY_SIZE in qcom clk drivers
         - Remove some impractical fallback parent names in qcom clk drivers
         - Make Mediatek clk drivers tristate
         - Refactoring of the CPU clock code and conversion of Samsung
           Exynos5433 CPU clock driver to the platform driver
         - A few conversions to devm_platform_ioremap_resource()
         - Updates of the Samsung Kconfig help text
         - Update video path realted clocks for Amlogic meson8
         - Add SPI Multi I/O Bus and SDHI clocks and resets on Renesas RZ/G2L
         - Add SPI Multi I/O Bus (RPC) clocks on Renesas R-Car V3U
         - Add MediaLB clocks on Renesas R-Car H3, M3-W/W+, and M3-N
         - Remove unused helpers from i.MX specific clock header
         - Rework all i.MX clk based helpers to use clk_hw based ones
         - Rework i.MX gate/mux/divider wrappers
         - Rework imx_clk_hw_composite and imx_clk_hw_pll14xx wrappers
         - Update i.MX pllv4 and composite clocks to support i.MX8ULP
         - Disable i.MX7ULP composite clock during initialization
         - Add CLK_SET_RATE_NO_REPARENT flag to the i.MX7ULP composite
         - Disable the i.MX pfd when set pfdv2 clock rate
         - Add support for i.MX8ULP in pfdv2
         - Add the pcc reset controller support on i.MX8ULP
         - Fix the build break when clk-imx8ulp is built as module
         - Move csi_sel mux to correct base register in i.MX6UL clock drivr
         - Fix csi clk gate register in i.MX6UL clock driver
         - Fix build bug making CLK_IMX8ULP select MXC_CLK
         - Add TPU (PWM), and Z (Cortex-A76) clocks on Renesas R-Car V3U
         - Add Ethernet clocks on Renesas RZ/G2L
         - Move Rockchip to use module_platform_probe
         - Enable usage of Coresight related clocks on Rockchip rk3399"
      
      * tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux: (170 commits)
        clk: use clk_core_get_rate_recalc() in clk_rate_get()
        clk: at91: sama7g5: set low limit for mck0 at 32KHz
        clk: at91: sama7g5: remove prescaler part of master clock
        clk: at91: clk-master: add notifier for divider
        clk: at91: clk-sam9x60-pll: add notifier for div part of PLL
        clk: at91: clk-master: fix prescaler logic
        clk: at91: clk-master: mask mckr against layout->mask
        clk: at91: clk-master: check if div or pres is zero
        clk: at91: sam9x60-pll: use DIV_ROUND_CLOSEST_ULL
        clk: at91: pmc: add sama7g5 to the list of available pmcs
        clk: at91: clk-master: improve readability by using local variables
        clk: at91: clk-master: add register definition for sama7g5's master clock
        clk: at91: sama7g5: add securam's peripheral clock
        clk: at91: pmc: execute suspend/resume only for backup mode
        clk: at91: re-factor clocks suspend/resume
        clk: ux500: Add driver for the reset portions of PRCC
        dt-bindings: clock: u8500: Rewrite in YAML and extend
        clk: composite: Use rate_ops.determine_rate when also a mux is available
        clk: samsung: describe drivers in Kconfig
        clk: samsung: exynos5433: update apollo and atlas clock probing
        ...
      7ddb58cb