1. 27 Apr, 2023 11 commits
    • Linus Torvalds's avatar
      Merge tag 'i2c-for-6.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux · 89555eeb
      Linus Torvalds authored
      Pull i2c updates from Wolfram Sang:
       "Mostly fixes for DTs or DT handling this time. And a few driver
        bugfixes"
      
      * tag 'i2c-for-6.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux: (28 commits)
        i2c: xiic: xiic_xfer(): Fix runtime PM leak on error path
        i2c: cadence: cdns_i2c_master_xfer(): Fix runtime PM leak on error path
        i2c: omap: Improve error reporting for problems during .remove()
        i2c: cadence: Add reset controller support
        dt-bindings: i2c: cadence: Document `resets` property
        i2c: mediatek: add support for MT7981 SoC
        dt-bindings: i2c: i2c-mt65xx: add MediaTek MT7981 SoC
        dt-bindings: i2c: Drop unneeded quotes
        i2c: brcmstb: use devm_platform_ioremap_resource_byname()
        i2c: cadence: Detect maximum transfer size
        i2c: cadence: Allow to specify the FIFO depth
        dt-bindings: i2c: cadence: Document `fifo-depth` property
        i2c: xiic: Use devm_platform_get_and_ioremap_resource()
        i2c: mpc: Use i2c-scl-clk-low-timeout-us i2c property
        i2c: mpc: Use of_property_read_u32 instead of of_get_property
        dt-bindings: i2c: mpc: Mark "fsl,timeout" as deprecated
        i2c: xiic: hide OF related data for COMPILE_TEST
        i2c: synquacer: mark OF related data as maybe unused
        dt-bindings: i2c: i2c-mt65xx: Add compatible for MT6795 Helio X10
        i2c: imx: Simplify using devm_clk_get_enabled()
        ...
      89555eeb
    • Linus Torvalds's avatar
      Merge tag 'for-linus-6.4-1' of https://github.com/cminyard/linux-ipmi · d91f6a73
      Linus Torvalds authored
      Pull IPMI updates from Corey Minyard:
       "Minor bug fixes for the IPMI driver
      
        There was a bug in the SSIF driver where in certain conditions it
        could stop working.
      
        Outside of that: spelling fixes, removing some dead code, re-adding a
        missing statistic increment, and removal of register_sysctl_table()"
      
      * tag 'for-linus-6.4-1' of https://github.com/cminyard/linux-ipmi:
        ipmi:ssif: Drop if blocks with always false condition
        ipmi: fix SSIF not responding under certain cond.
        ipmi:ssif: Add send_retries increment
        char:ipmi:Fix spelling mistake "asychronously" -> "asynchronously"
        ipmi: simplify sysctl registration
        ipmi: ASPEED_BT_IPMI_BMC: select REGMAP_MMIO instead of depending on it
      d91f6a73
    • Linus Torvalds's avatar
      Merge tag 'spi-v6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi · fc2e58b8
      Linus Torvalds authored
      Pull spi updates from Mark Brown:
       "A fairly standard release for SPI with the exception of a change to
        the API for specifying chip selects done in preparation for supporting
        devices with more than one chip select, this required some mechanical
        changes throughout the tree which have been cooking in -next happily
        for a while.
      
        There's also a new API to allow us to support TPM chips on half duplex
        controllers.
      
        Summary:
      
         - Refactoring in preparation for supporting multiple chip selects for
           a single device, needed by some flash devices, which required a
           change in the SPI device API visible throughout the tree
      
         - Support for hardware assisted interaction with SPI TPMs on half
           duplex controllers, implemented on nVidia Tedra210 QuadSPI
      
         - Optimisation for large transfers on fsl-cpm devices
      
         - Cleanups around device property use which fix some sisues with
           fwnode
      
         - Use of both void remove() and devm_platform_.*ioremap_resource()
      
         - Support for AMD Pensando Elba, Amlogic A1, Cadence device mode,
           Intel MetorLake-S and StarFive J7110 QuadSPI"
      
      * tag 'spi-v6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi: (185 commits)
        spi: bcm63xx: use macro DEFINE_SIMPLE_DEV_PM_OPS
        spi: tegra210-quad: Enable TPM wait polling
        spi: Add TPM HW flow flag
        spi: bcm63xx: remove PM_SLEEP based conditional compilation
        spi: cadence-quadspi: use macro DEFINE_SIMPLE_DEV_PM_OPS
        spi: spi-cadence: Add support for Slave mode
        spi: spi-cadence: Switch to spi_controller structure
        spi: cadence-quadspi: fix suspend-resume implementations
        spi: dw: Add support for AMD Pensando Elba SoC
        spi: dw: Add AMD Pensando Elba SoC SPI Controller
        spi: cadence-quadspi: Disable the SPI before reconfiguring
        spi: cadence-quadspi: Update the read timeout based on the length
        spi: spi-loopback-test: Add module param for iteration length
        spi: add support for Amlogic A1 SPI Flash Controller
        dt-bindings: spi: add Amlogic A1 SPI controller
        spi: fsl-spi: No need to check transfer length versus word size
        spi: fsl-spi: Change mspi_apply_cpu_mode_quirks() to void
        spi: fsl-cpm: Use 16 bit mode for large transfers with even size
        spi: fsl-spi: Re-organise transfer bits_per_word adaptation
        spi: fsl-spi: Fix CPM/QE mode Litte Endian
        ...
      fc2e58b8
    • Linus Torvalds's avatar
      Merge tag 'sound-6.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · 1c15ca4e
      Linus Torvalds authored
      Pull sound updates from Takashi Iwai:
       "At this time, it's an interesting mixture of changes for both old and
        new stuff. Majority of changes are about ASoC (lots of systematic
        changes for converting remove callbacks to void, and cleanups), while
        we got the fixes and the enhancements of very old PCI cards, too.
      
        Here are some highlights:
      
        ALSA/ASoC Core:
         - Continued effort of more ASoC core cleanups
         - Minor improvements for XRUN handling in indirect PCM helpers
         - Code refactoring of PCM core code
      
        ASoC:
         - Continued feature and simplification work on SOF, including
           addition of a no-DSP mode for bringup, HDA MLink and extensions to
           the IPC4 protocol
         - Hibernation support for CS35L45
         - More DT binding conversions
         - Support for Cirrus Logic CS35L56, Freescale QMC, Maxim MAX98363,
           nVidia systems with MAX9809x and RT5631, Realtek RT712, Renesas
           R-Car Gen4, Rockchip RK3588 and TI TAS5733
      
        ALSA:
         - Lots of works for legacy emu10k1 and ymfpci PCI drivers
         - PCM kselftest fixes and enhancements"
      
      * tag 'sound-6.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (586 commits)
        ALSA: emu10k1: use high-level I/O in set_filterQ()
        ALSA: emu10k1: use high-level I/O functions also during init
        ALSA: emu10k1: fix error handling in snd_audigy_i2c_volume_put()
        ALSA: emu10k1: don't stop DSP in _snd_emu10k1_{,audigy_}init_efx()
        ALSA: emu10k1: fix SNDRV_EMU10K1_IOCTL_SINGLE_STEP
        ALSA: emu10k1: skip Sound Blaster-specific hacks for E-MU cards
        ALSA: emu10k1: fixup DSP defines
        ALSA: emu10k1: pull in some register definitions from kX-project
        ALSA: emu10k1: remove some bogus defines
        ALSA: emu10k1: eliminate some unused defines
        ALSA: emu10k1: fix lineup of EMU_HANA_* defines
        ALSA: emu10k1: comment updates
        ALSA: emu10k1: fix snd_emu1010_fpga_read() input masking for rev2 cards
        ALSA: emu10k1: remove unused emu->pcm_playback_efx_substream field
        ALSA: emu10k1: remove unused `resume` parameter from snd_emu10k1_init()
        ALSA: emu10k1: minor optimizations
        ALSA: emu10k1: remove remaining cruft from snd_emu10k1_emu1010_init()
        ALSA: emu10k1: remove apparently pointless EMU_HANA_OPTION_CARDS reads
        ALSA: emu10k1: remove apparently pointless FPGA reads
        ALSA: emu10k1: stop doing weird things with HCFG in snd_emu10k1_emu1010_init()
        ...
      1c15ca4e
    • Linus Torvalds's avatar
      Merge tag 'pci-v6.4-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/pci/pci · 34b62f18
      Linus Torvalds authored
      Pull pci updates from Bjorn Helgaas:
       "Resource management:
      
         - Add pci_dev_for_each_resource() and pci_bus_for_each_resource()
           iterators
      
        PCIe native device hotplug:
      
         - Fix AB-BA deadlock between reset_lock and device_lock
      
        Power management:
      
         - Wait longer for devices to become ready after resume (as we do for
           reset) to accommodate Intel Titan Ridge xHCI devices
      
         - Extend D3hot delay for NVIDIA HDA controllers to avoid
           unrecoverable devices after a bus reset
      
        Error handling:
      
         - Clear PCIe Device Status after EDR since generic error recovery now
           only clears it when AER is native
      
        ASPM:
      
         - Work around Chromebook firmware defect that clobbers Capability
           list (including ASPM L1 PM Substates Cap) when returning from
           D3cold to D0
      
        Freescale i.MX6 PCIe controller driver:
      
         - Install imprecise external abort handler only when DT indicates
           PCIe support
      
        Freescale Layerscape PCIe controller driver:
      
         - Add ls1028a endpoint mode support
      
        Qualcomm PCIe controller driver:
      
         - Add SM8550 DT binding and driver support
      
         - Add SDX55 DT binding and driver support
      
         - Use bulk APIs for clocks of IP 1.0.0, 2.3.2, 2.3.3
      
         - Use bulk APIs for reset of IP 2.1.0, 2.3.3, 2.4.0
      
         - Add DT "mhi" register region for supported SoCs
      
         - Expose link transition counts via debugfs to help debug low power
           issues
      
         - Support system suspend and resume; reduce interconnect bandwidth
           and turn off clock and PHY if there are no active devices
      
         - Enable async probe by default to reduce boot time
      
        Miscellaneous:
      
         - Sort controller Kconfig entries by vendor"
      
      * tag 'pci-v6.4-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/pci/pci: (56 commits)
        PCI: xilinx: Drop obsolete dependency on COMPILE_TEST
        PCI: mobiveil: Sort Kconfig entries by vendor
        PCI: dwc: Sort Kconfig entries by vendor
        PCI: Sort controller Kconfig entries by vendor
        PCI: Use consistent controller Kconfig menu entry language
        PCI: xilinx-nwl: Add 'Xilinx' to Kconfig prompt
        PCI: hv: Add 'Microsoft' to Kconfig prompt
        PCI: meson: Add 'Amlogic' to Kconfig prompt
        PCI: Use of_property_present() for testing DT property presence
        PCI/PM: Extend D3hot delay for NVIDIA HDA controllers
        dt-bindings: PCI: qcom: Document msi-map and msi-map-mask properties
        PCI: qcom: Add SM8550 PCIe support
        dt-bindings: PCI: qcom: Add SM8550 compatible
        PCI: qcom: Add support for SDX55 SoC
        dt-bindings: PCI: qcom-ep: Fix the unit address used in example
        dt-bindings: PCI: qcom: Add SDX55 SoC
        dt-bindings: PCI: qcom: Update maintainers entry
        PCI: qcom: Enable async probe by default
        PCI: qcom: Add support for system suspend and resume
        PCI/PM: Drop pci_bridge_wait_for_secondary_bus() timeout parameter
        ...
      34b62f18
    • Linus Torvalds's avatar
      Merge tag 'devicetree-for-6.4-2' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux · cb6fe2ce
      Linus Torvalds authored
      Pull more devicetree updates from Rob Herring:
      
       - First part of DT header detangling dropping cpu.h from of_device.h
         and replacing some includes with forward declarations. A handful of
         drivers needed some adjustment to their includes as a result.
      
       - Refactor of_device.h to be used by bus drivers rather than various
         device drivers. This moves non-bus related functions out of
         of_device.h. The end goal is for of_platform.h and of_device.h to
         stop including each other.
      
       - Refactor open coded parsing of "ranges" in some bus drivers to use DT
         address parsing functions
      
       - Add some new address parsing functions of_property_read_reg(),
         of_range_count(), and of_range_to_resource() in preparation to
         convert more open coded parsing of DT addresses to use them.
      
       - Treewide clean-ups to use of_property_read_bool() and
         of_property_present() as appropriate. The ones here are the ones that
         didn't get picked up elsewhere.
      
      * tag 'devicetree-for-6.4-2' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux: (34 commits)
        bus: tegra-gmi: Replace of_platform.h with explicit includes
        hte: Use of_property_present() for testing DT property presence
        w1: w1-gpio: Use of_property_read_bool() for boolean properties
        virt: fsl: Use of_property_present() for testing DT property presence
        soc: fsl: Use of_property_present() for testing DT property presence
        sbus: display7seg: Use of_property_read_bool() for boolean properties
        sparc: Use of_property_read_bool() for boolean properties
        sparc: Use of_property_present() for testing DT property presence
        bus: mvebu-mbus: Remove open coded "ranges" parsing
        of/address: Add of_property_read_reg() helper
        of/address: Add of_range_count() helper
        of/address: Add support for 3 address cell bus
        of/address: Add of_range_to_resource() helper
        of: unittest: Add bus address range parsing tests
        of: Drop cpu.h include from of_device.h
        OPP: Adjust includes to remove of_device.h
        irqchip: loongson-eiointc: Add explicit include for cpuhotplug.h
        cpuidle: Adjust includes to remove of_device.h
        cpufreq: sun50i: Add explicit include for cpu.h
        cpufreq: Adjust includes to remove of_device.h
        ...
      cb6fe2ce
    • Linus Torvalds's avatar
      Merge tag 'devicetree-for-6.4-1' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux · d42b1c47
      Linus Torvalds authored
      Pull devicetree updates from Rob Herring:
       "Bindings:
      
         - Convert Qcom IOMMU, Amlogic timer, Freescale sec-v4.0, Toshiba
           TC358764 display bridge, Parade PS8622 display bridge, and Xilinx
           FPGA bindings to DT schema format
      
         - Add qdu1000 and sa8775p SoC support to Qcom PDC interrupt
           controller
      
         - Add MediaTek MT8365 UART and SYSIRQ bindings
      
         - Add Arm Cortex-A78C and X1C core compatibles
      
         - Add vendor prefix for Novatek
      
         - Remove bindings for stih415, sti416, stid127 platforms
      
         - Drop uneeded quotes in schema files. This is preparation for
           yamllint checking quoting for us.
      
         - Add missing (unevaluated|additional)Properties constraints on child
           node schemas
      
         - Clean-up schema comments formatting
      
         - Fix I2C and SPI node bus names in schema examples
      
         - Clean-up some display compatibles schema syntax
      
         - Fix incorrect references to lvds.yaml
      
         - Gather all cache controller bindings in a common directory
      
        DT core:
      
         - Convert unittest to new void .remove platform device hook
      
         - kerneldoc fixes for DT address of_pci_range_to_resource/
           of_address_to_resource functions"
      
      * tag 'devicetree-for-6.4-1' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux: (46 commits)
        dt-bindings: rng: Drop unneeded quotes
        dt-bindings: arm/soc: mediatek: Drop unneeded quotes
        dt-bindings: soc: qcom: Drop unneeded quotes
        dt-bindings: i2c: samsung: Fix 'deprecated' value
        dt-bindings: display: Fix lvds.yaml references
        dt-bindings: display: simplify compatibles syntax
        dt-bindings: display: mediatek: simplify compatibles syntax
        dt-bindings: drm/bridge: ti-sn65dsi86: Fix the video-interfaces.yaml references
        dt-bindings: timer: Drop unneeded quotes
        dt-bindings: interrupt-controller: qcom,pdc: document qcom,qdu1000-pdc
        dt-bindings: interrupt-controller: qcom-pdc: add compatible for sa8775p
        dt-bindings: reset: remove stih415/stih416 reset
        dt-bindings: net: dwmac: sti: remove stih415/sti416/stid127
        dt-bindings: irqchip: sti: remove stih415/stih416 and stid127
        dt-bindings: iommu: Convert QCOM IOMMU to YAML
        dt-bindings: irqchip: ti,sci-inta: Add optional power-domains property
        dt-bindings: Add missing (unevaluated|additional)Properties on child node schemas
        of: address: Reshuffle to remove forward declarations
        of: address: Fix documented return value of of_pci_range_to_resource()
        of: address: Document return value of of_address_to_resource()
        ...
      d42b1c47
    • Linus Torvalds's avatar
      Merge tag 'for-linus-iommufd' of git://git.kernel.org/pub/scm/linux/kernel/git/jgg/iommufd · 6df969b7
      Linus Torvalds authored
      Pull iommufd updates from Jason Gunthorpe:
       "Two series:
      
         - Reorganize how the hardware page table objects are managed,
           particularly their destruction flow. Increase the selftest test
           coverage in this area by creating a more complete mock iommu
           driver.
      
           This is preparation to add a replace operation for HWPT binding,
           which is done but waiting for the VFIO parts to complete so there
           is a user.
      
         - Split the iommufd support for "access" to make it two step -
           allocate an access then link it to an IOAS. Update VFIO and have
           VFIO always create an access even for the VFIO mdevs that never do
           DMA.
      
           This is also preperation for the replace VFIO series that will
           allow replace to work on access types as well.
      
        Three minor fixes:
      
         - Sykzaller found the selftest code didn't check for overflow when
           processing user VAs
      
         - smatch noted a .data item should have been static
      
         - Add a selftest that reproduces a syzkaller bug for batch carry
           already fixed in rc"
      
      * tag 'for-linus-iommufd' of git://git.kernel.org/pub/scm/linux/kernel/git/jgg/iommufd: (21 commits)
        iommufd/selftest: Cover domain unmap with huge pages and access
        iommufd/selftest: Set varaiable mock_iommu_device storage-class-specifier to static
        vfio: Check the presence for iommufd callbacks in __vfio_register_dev()
        vfio/mdev: Uses the vfio emulated iommufd ops set in the mdev sample drivers
        vfio-iommufd: Make vfio_iommufd_emulated_bind() return iommufd_access ID
        vfio-iommufd: No need to record iommufd_ctx in vfio_device
        iommufd: Create access in vfio_iommufd_emulated_bind()
        iommu/iommufd: Pass iommufd_ctx pointer in iommufd_get_ioas()
        iommufd/selftest: Catch overflow of uptr and length
        iommufd/selftest: Add a selftest for iommufd_device_attach() with a hwpt argument
        iommufd/selftest: Make selftest create a more complete mock device
        iommufd/selftest: Rename the remaining mock device_id's to stdev_id
        iommufd/selftest: Rename domain_id to hwpt_id for FIXTURE iommufd_mock_domain
        iommufd/selftest: Rename domain_id to stdev_id for FIXTURE iommufd_ioas
        iommufd/selftest: Rename the sefltest 'device_id' to 'stdev_id'
        iommufd: Make iommufd_hw_pagetable_alloc() do iopt_table_add_domain()
        iommufd: Move iommufd_device to iommufd_private.h
        iommufd: Move ioas related HWPT destruction into iommufd_hw_pagetable_destroy()
        iommufd: Consistently manage hwpt_item
        iommufd: Add iommufd_lock_obj() around the auto-domains hwpts
        ...
      6df969b7
    • Linus Torvalds's avatar
      Merge tag 'drm-next-2023-04-27' of git://anongit.freedesktop.org/drm/drm · 32f7ad0f
      Linus Torvalds authored
      Pull drm fixes from Dave Airlie:
       "A bit out of routine fixes pull for rc1.
      
        There's a build breakage on some platforms due to ttm, this has that
        fix + qaic uapi removal + minor panel fixes.
      
        ttm:
         - Fix TTM build on archs where PMD_SHIFT is not constant
      
        qaic:
         - Revert uAPI from accel/qaic
      
        panel:
         - Improve error handling in nt35950
         - Fix double unregister in otm8009a when removing the driver"
      
      * tag 'drm-next-2023-04-27' of git://anongit.freedesktop.org/drm/drm:
        drm/panel: novatek-nt35950: Only unregister DSI1 if it exists
        drm/panel: otm8009a: Set backlight parent to panel device
        drm/panel: novatek-nt35950: Improve error handling
        drm/ttm: revert "Reduce the number of used allocation orders for TTM pages"
        Revert "accel/qaic: Add mhi_qaic_cntl"
      32f7ad0f
    • Vlastimil Babka's avatar
      mm/mremap: fix vm_pgoff in vma_merge() case 3 · 7e775787
      Vlastimil Babka authored
      After upgrading build guests to v6.3, rpm started segfaulting for
      specific packages, which was bisected to commit 0503ea8f ("mm/mmap:
      remove __vma_adjust()"). rpm is doing many mremap() operations with file
      mappings of its db. The problem is that in vma_merge() case 3 (we merge
      with the next vma, expanding it downwards) vm_pgoff is not adjusted as
      it should when vm_start changes. As a result the rpm process most likely
      sees data from the wrong offset of the file. Fix the vm_pgoff
      calculation.
      
      For case 8 this is a non-functional change as the resulting vm_pgoff is
      the same.
      Reported-and-bisected-by: default avatarJiri Slaby <jirislaby@kernel.org>
      Reported-and-tested-by: default avatarFabian Vogt <fvogt@suse.com>
      Link: https://bugzilla.suse.com/show_bug.cgi?id=1210903
      Fixes: 0503ea8f ("mm/mmap: remove __vma_adjust()")
      Signed-off-by: default avatarVlastimil Babka <vbabka@suse.cz>
      Cc: <stable@vger.kernel.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      7e775787
    • Dave Airlie's avatar
      Merge tag 'drm-misc-next-fixes-2023-04-26' of... · cf03e295
      Dave Airlie authored
      Merge tag 'drm-misc-next-fixes-2023-04-26' of git://anongit.freedesktop.org/drm/drm-misc into drm-next
      
      drm-misc-next-fixes for v6.4-rc1:
      - Revert uAPI from accel/qaic.
      - Fix TTM build on archs where PMD_SHIFT is not constant.
      - Improve error handling in nt35950.
      - Fix double unregister in otm8009a when removing the driver.
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      From: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/45757de9-75d8-5b41-f1f9-562a7c4675b9@linux.intel.com
      cf03e295
  2. 26 Apr, 2023 29 commits
    • Linus Torvalds's avatar
      Merge tag 'net-next-6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next · 6e98b09d
      Linus Torvalds authored
      Pull networking updates from Paolo Abeni:
       "Core:
      
         - Introduce a config option to tweak MAX_SKB_FRAGS. Increasing the
           default value allows for better BIG TCP performances
      
         - Reduce compound page head access for zero-copy data transfers
      
         - RPS/RFS improvements, avoiding unneeded NET_RX_SOFTIRQ when
           possible
      
         - Threaded NAPI improvements, adding defer skb free support and
           unneeded softirq avoidance
      
         - Address dst_entry reference count scalability issues, via false
           sharing avoidance and optimize refcount tracking
      
         - Add lockless accesses annotation to sk_err[_soft]
      
         - Optimize again the skb struct layout
      
         - Extends the skb drop reasons to make it usable by multiple
           subsystems
      
         - Better const qualifier awareness for socket casts
      
        BPF:
      
         - Add skb and XDP typed dynptrs which allow BPF programs for more
           ergonomic and less brittle iteration through data and
           variable-sized accesses
      
         - Add a new BPF netfilter program type and minimal support to hook
           BPF programs to netfilter hooks such as prerouting or forward
      
         - Add more precise memory usage reporting for all BPF map types
      
         - Adds support for using {FOU,GUE} encap with an ipip device
           operating in collect_md mode and add a set of BPF kfuncs for
           controlling encap params
      
         - Allow BPF programs to detect at load time whether a particular
           kfunc exists or not, and also add support for this in light
           skeleton
      
         - Bigger batch of BPF verifier improvements to prepare for upcoming
           BPF open-coded iterators allowing for less restrictive looping
           capabilities
      
         - Rework RCU enforcement in the verifier, add kptr_rcu and enforce
           BPF programs to NULL-check before passing such pointers into kfunc
      
         - Add support for kptrs in percpu hashmaps, percpu LRU hashmaps and
           in local storage maps
      
         - Enable RCU semantics for task BPF kptrs and allow referenced kptr
           tasks to be stored in BPF maps
      
         - Add support for refcounted local kptrs to the verifier for allowing
           shared ownership, useful for adding a node to both the BPF list and
           rbtree
      
         - Add BPF verifier support for ST instructions in
           convert_ctx_access() which will help new -mcpu=v4 clang flag to
           start emitting them
      
         - Add ARM32 USDT support to libbpf
      
         - Improve bpftool's visual program dump which produces the control
           flow graph in a DOT format by adding C source inline annotations
      
        Protocols:
      
         - IPv4: Allow adding to IPv4 address a 'protocol' tag. Such value
           indicates the provenance of the IP address
      
         - IPv6: optimize route lookup, dropping unneeded R/W lock acquisition
      
         - Add the handshake upcall mechanism, allowing the user-space to
           implement generic TLS handshake on kernel's behalf
      
         - Bridge: support per-{Port, VLAN} neighbor suppression, increasing
           resilience to nodes failures
      
         - SCTP: add support for Fair Capacity and Weighted Fair Queueing
           schedulers
      
         - MPTCP: delay first subflow allocation up to its first usage. This
           will allow for later better LSM interaction
      
         - xfrm: Remove inner/outer modes from input/output path. These are
           not needed anymore
      
         - WiFi:
            - reduced neighbor report (RNR) handling for AP mode
            - HW timestamping support
            - support for randomized auth/deauth TA for PASN privacy
            - per-link debugfs for multi-link
            - TC offload support for mac80211 drivers
            - mac80211 mesh fast-xmit and fast-rx support
            - enable Wi-Fi 7 (EHT) mesh support
      
        Netfilter:
      
         - Add nf_tables 'brouting' support, to force a packet to be routed
           instead of being bridged
      
         - Update bridge netfilter and ovs conntrack helpers to handle IPv6
           Jumbo packets properly, i.e. fetch the packet length from
           hop-by-hop extension header. This is needed for BIT TCP support
      
         - The iptables 32bit compat interface isn't compiled in by default
           anymore
      
         - Move ip(6)tables builtin icmp matches to the udptcp one. This has
           the advantage that icmp/icmpv6 match doesn't load the
           iptables/ip6tables modules anymore when iptables-nft is used
      
         - Extended netlink error report for netdevice in flowtables and
           netdev/chains. Allow for incrementally add/delete devices to netdev
           basechain. Allow to create netdev chain without device
      
        Driver API:
      
         - Remove redundant Device Control Error Reporting Enable, as PCI core
           has already error reporting enabled at enumeration time
      
         - Move Multicast DB netlink handlers to core, allowing devices other
           then bridge to use them
      
         - Allow the page_pool to directly recycle the pages from safely
           localized NAPI
      
         - Implement lockless TX queue stop/wake combo macros, allowing for
           further code de-duplication and sanitization
      
         - Add YNL support for user headers and struct attrs
      
         - Add partial YNL specification for devlink
      
         - Add partial YNL specification for ethtool
      
         - Add tc-mqprio and tc-taprio support for preemptible traffic classes
      
         - Add tx push buf len param to ethtool, specifies the maximum number
           of bytes of a transmitted packet a driver can push directly to the
           underlying device
      
         - Add basic LED support for switch/phy
      
         - Add NAPI documentation, stop relaying on external links
      
         - Convert dsa_master_ioctl() to netdev notifier. This is a
           preparatory work to make the hardware timestamping layer selectable
           by user space
      
         - Add transceiver support and improve the error messages for CAN-FD
           controllers
      
        New hardware / drivers:
      
         - Ethernet:
            - AMD/Pensando core device support
            - MediaTek MT7981 SoC
            - MediaTek MT7988 SoC
            - Broadcom BCM53134 embedded switch
            - Texas Instruments CPSW9G ethernet switch
            - Qualcomm EMAC3 DWMAC ethernet
            - StarFive JH7110 SoC
            - NXP CBTX ethernet PHY
      
         - WiFi:
            - Apple M1 Pro/Max devices
            - RealTek rtl8710bu/rtl8188gu
            - RealTek rtl8822bs, rtl8822cs and rtl8821cs SDIO chipset
      
         - Bluetooth:
            - Realtek RTL8821CS, RTL8851B, RTL8852BS
            - Mediatek MT7663, MT7922
            - NXP w8997
            - Actions Semi ATS2851
            - QTI WCN6855
            - Marvell 88W8997
      
         - Can:
            - STMicroelectronics bxcan stm32f429
      
        Drivers:
      
         - Ethernet NICs:
            - Intel (1G, icg):
               - add tracking and reporting of QBV config errors
               - add support for configuring max SDU for each Tx queue
            - Intel (100G, ice):
               - refactor mailbox overflow detection to support Scalable IOV
               - GNSS interface optimization
            - Intel (i40e):
               - support XDP multi-buffer
            - nVidia/Mellanox:
               - add the support for linux bridge multicast offload
               - enable TC offload for egress and engress MACVLAN over bond
               - add support for VxLAN GBP encap/decap flows offload
               - extend packet offload to fully support libreswan
               - support tunnel mode in mlx5 IPsec packet offload
               - extend XDP multi-buffer support
               - support MACsec VLAN offload
               - add support for dynamic msix vectors allocation
               - drop RX page_cache and fully use page_pool
               - implement thermal zone to report NIC temperature
            - Netronome/Corigine:
               - add support for multi-zone conntrack offload
            - Solarflare/Xilinx:
               - support offloading TC VLAN push/pop actions to the MAE
               - support TC decap rules
               - support unicast PTP
      
         - Other NICs:
            - Broadcom (bnxt): enforce software based freq adjustments only on
              shared PHC NIC
            - RealTek (r8169): refactor to addess ASPM issues during NAPI poll
            - Micrel (lan8841): add support for PTP_PF_PEROUT
            - Cadence (macb): enable PTP unicast
            - Engleder (tsnep): add XDP socket zero-copy support
            - virtio-net: implement exact header length guest feature
            - veth: add page_pool support for page recycling
            - vxlan: add MDB data path support
            - gve: add XDP support for GQI-QPL format
            - geneve: accept every ethertype
            - macvlan: allow some packets to bypass broadcast queue
            - mana: add support for jumbo frame
      
         - Ethernet high-speed switches:
            - Microchip (sparx5): Add support for TC flower templates
      
         - Ethernet embedded switches:
            - Broadcom (b54):
               - configure 6318 and 63268 RGMII ports
            - Marvell (mv88e6xxx):
               - faster C45 bus scan
            - Microchip:
               - lan966x:
                  - add support for IS1 VCAP
                  - better TX/RX from/to CPU performances
               - ksz9477: add ETS Qdisc support
               - ksz8: enhance static MAC table operations and error handling
               - sama7g5: add PTP capability
            - NXP (ocelot):
               - add support for external ports
               - add support for preemptible traffic classes
            - Texas Instruments:
               - add CPSWxG SGMII support for J7200 and J721E
      
         - Intel WiFi (iwlwifi):
            - preparation for Wi-Fi 7 EHT and multi-link support
            - EHT (Wi-Fi 7) sniffer support
            - hardware timestamping support for some devices/firwmares
            - TX beacon protection on newer hardware
      
         - Qualcomm 802.11ax WiFi (ath11k):
            - MU-MIMO parameters support
            - ack signal support for management packets
      
         - RealTek WiFi (rtw88):
            - SDIO bus support
            - better support for some SDIO devices (e.g. MAC address from
              efuse)
      
         - RealTek WiFi (rtw89):
            - HW scan support for 8852b
            - better support for 6 GHz scanning
            - support for various newer firmware APIs
            - framework firmware backwards compatibility
      
         - MediaTek WiFi (mt76):
            - P2P support
            - mesh A-MSDU support
            - EHT (Wi-Fi 7) support
            - coredump support"
      
      * tag 'net-next-6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next: (2078 commits)
        net: phy: hide the PHYLIB_LEDS knob
        net: phy: marvell-88x2222: remove unnecessary (void*) conversions
        tcp/udp: Fix memleaks of sk and zerocopy skbs with TX timestamp.
        net: amd: Fix link leak when verifying config failed
        net: phy: marvell: Fix inconsistent indenting in led_blink_set
        lan966x: Don't use xdp_frame when action is XDP_TX
        tsnep: Add XDP socket zero-copy TX support
        tsnep: Add XDP socket zero-copy RX support
        tsnep: Move skb receive action to separate function
        tsnep: Add functions for queue enable/disable
        tsnep: Rework TX/RX queue initialization
        tsnep: Replace modulo operation with mask
        net: phy: dp83867: Add led_brightness_set support
        net: phy: Fix reading LED reg property
        drivers: nfc: nfcsim: remove return value check of `dev_dir`
        net: phy: dp83867: Remove unnecessary (void*) conversions
        net: ethtool: coalesce: try to make user settings stick twice
        net: mana: Check if netdev/napi_alloc_frag returns single page
        net: mana: Rename mana_refill_rxoob and remove some empty lines
        net: veth: add page_pool stats
        ...
      6e98b09d
    • Linus Torvalds's avatar
      Merge tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · b68ee1c6
      Linus Torvalds authored
      Pull SCSI updates from James Bottomley:
       "Updates to the usual drivers (megaraid_sas, scsi_debug, lpfc, target,
        mpi3mr, hisi_sas, arcmsr).
      
        The major core change is the constification of the host templates
        (which touches everything) along with other minor fixups and clean
        ups"
      
      * tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (207 commits)
        scsi: ufs: mcq: Use pointer arithmetic in ufshcd_send_command()
        scsi: ufs: mcq: Annotate ufshcd_inc_sq_tail() appropriately
        scsi: cxlflash: s/semahpore/semaphore/
        scsi: lpfc: Silence an incorrect device output
        scsi: mpi3mr: Use IRQ save variants of spinlock to protect chain frame allocation
        scsi: scsi_debug: Fix missing error code in scsi_debug_init()
        scsi: hisi_sas: Work around build failure in suspend function
        scsi: lpfc: Fix ioremap issues in lpfc_sli4_pci_mem_setup()
        scsi: mpt3sas: Fix an issue when driver is being removed
        scsi: mpt3sas: Remove HBA BIOS version in the kernel log
        scsi: target: core: Fix invalid memory access
        scsi: scsi_debug: Drop sdebug_queue
        scsi: scsi_debug: Only allow sdebug_max_queue be modified when no shosts
        scsi: scsi_debug: Use scsi_host_busy() in delay_store() and ndelay_store()
        scsi: scsi_debug: Use blk_mq_tagset_busy_iter() in stop_all_queued()
        scsi: scsi_debug: Use blk_mq_tagset_busy_iter() in sdebug_blk_mq_poll()
        scsi: scsi_debug: Dynamically allocate sdebug_queued_cmd
        scsi: scsi_debug: Use scsi_block_requests() to block queues
        scsi: scsi_debug: Protect block_unblock_all_queues() with mutex
        scsi: scsi_debug: Change shost list lock to a mutex
        ...
      b68ee1c6
    • Linus Torvalds's avatar
      Merge tag 'ata-6.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/dlemoal/libata · 36006b1d
      Linus Torvalds authored
      Pull ata updates from Damien Le Moal:
      
       - Many cleanups of the pata_parport driver and of its protocol modules
         (Ondrej)
      
       - Remove unused code (ata_id_xxx() functions) (Sergey)
      
       - Add Add UniPhier SATA controller DT bindings (Kunihiko)
      
       - Fix dependencies for the Freescale QorIQ AHCI SATA controller driver
         (Geert)
      
       - DT property handling improvements (Rob)
      
      * tag 'ata-6.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/dlemoal/libata: (57 commits)
        ata: pata_parport-bpck6: Declare mode_map as static
        ata: pata_parport-bpck6: Remove dependency on 64BIT
        ata: pata_parport-bpck6: reduce indents in bpck6_open
        ata: pata_parport-bpck6: delete ppc6lnx.c
        ata: pata_parport-bpck6: move defines and mode_map to bpck6.c
        ata: pata_parport-bpck6: move ppc6_wr_data_byte to bpck6.c and rename
        ata: pata_parport-bpck6: move ppc6_rd_data_byte to bpck6.c and rename
        ata: pata_parport-bpck6: move ppc6_send_cmd to bpck6.c and rename
        ata: pata_parport-bpck6: move ppc6_deselect to bpck6.c and rename
        ata: pata_parport-bpck6: merge ppc6_select into bpck6_open
        ata: pata_parport-bpck6: move ppc6_open to bpck6.c and rename
        ata: pata_parport-bpck6: move ppc6_wr_extout to bpck6.c and rename
        ata: pata_parport-bpck6: move ppc6_wait_for_fifo to bpck6.c and rename
        ata: pata_parport-bpck6: merge ppc6_wr_data_blk into bpck6_write_block
        ata: pata_parport-bpck6: merge ppc6_rd_data_blk into bpck6_read_block
        ata: pata_parport-bpck6: merge ppc6_wr_port16_blk into bpck6_write_block
        ata: pata_parport-bpck6: merge ppc6_rd_port16_blk into bpck6_read_block
        ata: pata_parport-bpck6: merge ppc6_wr_port into bpck6_write_regr
        ata: pata_parport-bpck6: merge ppc6_rd_port into bpck6_read_regr
        ata: pata_parport-bpck6: remove ppc6_close
        ...
      36006b1d
    • Linus Torvalds's avatar
      Merge tag 'for-6.4/dm-changes' of... · 48dc8100
      Linus Torvalds authored
      Merge tag 'for-6.4/dm-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm
      
      Pull device mapper updates from Mike Snitzer:
      
       - Split dm-bufio's rw_semaphore and rbtree. Offers improvements to
         dm-bufio's locking to allow increased concurrent IO -- particularly
         for read access for buffers already in dm-bufio's cache.
      
       - Also split dm-bio-prison-v1's spinlock and rbtree with comparable aim
         at improving concurrent IO (for the DM thinp target).
      
       - Both the dm-bufio and dm-bio-prison-v1 scaling of the number of locks
         and rbtrees used are managed by dm_num_hash_locks(). And the hash
         function used by both is dm_hash_locks_index().
      
       - Allow DM targets to require DISCARD, WRITE_ZEROES and SECURE_ERASE to
         be split at the target specified boundary (in terms of
         max_discard_sectors, max_write_zeroes_sectors and
         max_secure_erase_sectors respectively).
      
       - DM verity error handling fix for check_at_most_once on FEC.
      
       - Update DM verity target to emit audit events on verification failure
         and more.
      
       - DM core ->io_hints improvements needed in support of new discard
         support that is added to the DM "zero" and "error" targets.
      
       - Fix missing kmem_cache_destroy() call in initialization error path of
         both the DM integrity and DM clone targets.
      
       - A couple fixes for DM flakey, also add "error_reads" feature.
      
       - Fix DM core's resume to not lock FS when the DM map is NULL;
         otherwise initial table load can race with FS mount that takes
         superblock's ->s_umount rw_semaphore.
      
       - Various small improvements to both DM core and DM targets.
      
      * tag 'for-6.4/dm-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm: (40 commits)
        dm: don't lock fs when the map is NULL in process of resume
        dm flakey: add an "error_reads" option
        dm flakey: remove trailing space in the table line
        dm flakey: fix a crash with invalid table line
        dm ioctl: fix nested locking in table_clear() to remove deadlock concern
        dm: unexport dm_get_queue_limits()
        dm: allow targets to require splitting WRITE_ZEROES and SECURE_ERASE
        dm: add helper macro for simple DM target module init and exit
        dm raid: remove unused d variable
        dm: remove unnecessary (void*) conversions
        dm mirror: add DMERR message if alloc_workqueue fails
        dm: push error reporting down to dm_register_target()
        dm integrity: call kmem_cache_destroy() in dm_integrity_init() error path
        dm clone: call kmem_cache_destroy() in dm_clone_init() error path
        dm error: add discard support
        dm zero: add discard support
        dm table: allow targets without devices to set ->io_hints
        dm verity: emit audit events on verification failure and more
        dm verity: fix error handling for check_at_most_once on FEC
        dm: improve hash_locks sizing and hash function
        ...
      48dc8100
    • Linus Torvalds's avatar
      Merge tag 'for-6.4/block-2023-04-21' of git://git.kernel.dk/linux · 9dd6956b
      Linus Torvalds authored
      Pull block updates from Jens Axboe:
      
       - drbd patches, bringing us closer to unifying the out-of-tree version
         and the in tree one (Andreas, Christoph)
      
       - support for auto-quiesce for the s390 dasd driver (Stefan)
      
       - MD pull request via Song:
            - md/bitmap: Optimal last page size (Jon Derrick)
            - Various raid10 fixes (Yu Kuai, Li Nan)
            - md: add error_handlers for raid0 and linear (Mariusz Tkaczyk)
      
       - NVMe pull request via Christoph:
            - Drop redundant pci_enable_pcie_error_reporting (Bjorn Helgaas)
            - Validate nvmet module parameters (Chaitanya Kulkarni)
            - Fence TCP socket on receive error (Chris Leech)
            - Fix async event trace event (Keith Busch)
            - Minor cleanups (Chaitanya Kulkarni, zhenwei pi)
            - Fix and cleanup nvmet Identify handling (Damien Le Moal,
              Christoph Hellwig)
            - Fix double blk_mq_complete_request race in the timeout handler
              (Lei Yin)
            - Fix irq locking in nvme-fcloop (Ming Lei)
            - Remove queue mapping helper for rdma devices (Sagi Grimberg)
      
       - use structured request attribute checks for nbd (Jakub)
      
       - fix blk-crypto race conditions between keyslot management (Eric)
      
       - add sed-opal support for reading read locking range attributes
         (Ondrej)
      
       - make fault injection configurable for null_blk (Akinobu)
      
       - clean up the request insertion API (Christoph)
      
       - clean up the queue running API (Christoph)
      
       - blkg config helper cleanups (Tejun)
      
       - lazy init support for blk-iolatency (Tejun)
      
       - various fixes and tweaks to ublk (Ming)
      
       - remove hybrid polling. It hasn't really been useful since we got
         async polled IO support, and these days we don't support sync polled
         IO at all (Keith)
      
       - misc fixes, cleanups, improvements (Zhong, Ondrej, Colin, Chengming,
         Chaitanya, me)
      
      * tag 'for-6.4/block-2023-04-21' of git://git.kernel.dk/linux: (118 commits)
        nbd: fix incomplete validation of ioctl arg
        ublk: don't return 0 in case of any failure
        sed-opal: geometry feature reporting command
        null_blk: Always check queue mode setting from configfs
        block: ublk: switch to ioctl command encoding
        blk-mq: fix the blk_mq_add_to_requeue_list call in blk_kick_flush
        block, bfq: Fix division by zero error on zero wsum
        fault-inject: fix build error when FAULT_INJECTION_CONFIGFS=y and CONFIGFS_FS=m
        block: store bdev->bd_disk->fops->submit_bio state in bdev
        block: re-arrange the struct block_device fields for better layout
        md/raid5: remove unused working_disks variable
        md/raid10: don't call bio_start_io_acct twice for bio which experienced read error
        md/raid10: fix memleak of md thread
        md/raid10: fix memleak for 'conf->bio_split'
        md/raid10: fix leak of 'r10bio->remaining' for recovery
        md/raid10: don't BUG_ON() in raise_barrier()
        md: fix soft lockup in status_resync
        md: add error_handlers for raid0 and linear
        md: Use optimal I/O size for last bitmap page
        md: Fix types in sb writer
        ...
      9dd6956b
    • Linus Torvalds's avatar
      Merge tag 'for-6.4/io_uring-2023-04-21' of git://git.kernel.dk/linux · 5b9a7bb7
      Linus Torvalds authored
      Pull io_uring updates from Jens Axboe:
      
       - Cleanup of the io-wq per-node mapping, notably getting rid of it so
         we just have a single io_wq entry per ring (Breno)
      
       - Followup to the above, move accounting to io_wq as well and
         completely drop struct io_wqe (Gabriel)
      
       - Enable KASAN for the internal io_uring caches (Breno)
      
       - Add support for multishot timeouts. Some applications use timeouts to
         wake someone waiting on completion entries, and this makes it a bit
         easier to just have a recurring timer rather than needing to rearm it
         every time (David)
      
       - Support archs that have shared cache coloring between userspace and
         the kernel, and hence have strict address requirements for mmap'ing
         the ring into userspace. This should only be parisc/hppa. (Helge, me)
      
       - XFS has supported O_DIRECT writes without needing to lock the inode
         exclusively for a long time, and ext4 now supports it as well. This
         is true for the common cases of not extending the file size. Flag the
         fs as having that feature, and utilize that to avoid serializing
         those writes in io_uring (me)
      
       - Enable completion batching for uring commands (me)
      
       - Revert patch adding io_uring restriction to what can be GUP mapped or
         not. This does not belong in io_uring, as io_uring isn't really
         special in this regard. Since this is also getting in the way of
         cleanups and improvements to the GUP code, get rid of if (me)
      
       - A few series greatly reducing the complexity of registered resources,
         like buffers or files. Not only does this clean up the code a lot,
         the simplified code is also a LOT more efficient (Pavel)
      
       - Series optimizing how we wait for events and run task_work related to
         it (Pavel)
      
       - Fixes for file/buffer unregistration with DEFER_TASKRUN (Pavel)
      
       - Misc cleanups and improvements (Pavel, me)
      
      * tag 'for-6.4/io_uring-2023-04-21' of git://git.kernel.dk/linux: (71 commits)
        Revert "io_uring/rsrc: disallow multi-source reg buffers"
        io_uring: add support for multishot timeouts
        io_uring/rsrc: disassociate nodes and rsrc_data
        io_uring/rsrc: devirtualise rsrc put callbacks
        io_uring/rsrc: pass node to io_rsrc_put_work()
        io_uring/rsrc: inline io_rsrc_put_work()
        io_uring/rsrc: add empty flag in rsrc_node
        io_uring/rsrc: merge nodes and io_rsrc_put
        io_uring/rsrc: infer node from ctx on io_queue_rsrc_removal
        io_uring/rsrc: remove unused io_rsrc_node::llist
        io_uring/rsrc: refactor io_queue_rsrc_removal
        io_uring/rsrc: simplify single file node switching
        io_uring/rsrc: clean up __io_sqe_buffers_update()
        io_uring/rsrc: inline switch_start fast path
        io_uring/rsrc: remove rsrc_data refs
        io_uring/rsrc: fix DEFER_TASKRUN rsrc quiesce
        io_uring/rsrc: use wq for quiescing
        io_uring/rsrc: refactor io_rsrc_ref_quiesce
        io_uring/rsrc: remove io_rsrc_node::done
        io_uring/rsrc: use nospec'ed indexes
        ...
      5b9a7bb7
    • Linus Torvalds's avatar
      Merge tag 'f2fs-for-6.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs · 5c7ecada
      Linus Torvalds authored
      Pull f2fs update from Jaegeuk Kim:
       "In this round, we've mainly modified to support non-power-of-two zone
        size, which is not required for f2fs by design. In order to avoid arch
        dependency, we refactored the messy rb_entry structure shared across
        different extent_cache. In addition to the improvement, we've also
        fixed several subtle bugs and error cases.
      
        Enhancements:
         - support non-power-of-two zone size for zoned device
         - remove sharing the rb_entry structure in extent cache
         - refactor f2fs_gc to call checkpoint in urgent condition
         - support iopoll
      
        Bug fixes:
         - fix potential corruption when moving a directory
         - fix to avoid use-after-free for cached IPU bio
         - fix the folio private usage
         - avoid kernel warnings or panics in the cp_error case
         - fix to recover quota data correctly
         - fix some bugs in atomic operations
         - fix system crash due to lack of free space in LFS
         - fix null pointer panic in tracepoint in __replace_atomic_write_block
         - fix iostat lock protection
         - fix scheduling while atomic in decompression path
         - preserve direct write semantics when buffering is forced
         - fix to call f2fs_wait_on_page_writeback() in f2fs_write_raw_pages()"
      
      * tag 'f2fs-for-6.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs: (52 commits)
        f2fs: remove unnessary comment in __may_age_extent_tree
        f2fs: allocate node blocks for atomic write block replacement
        f2fs: use cow inode data when updating atomic write
        f2fs: remove power-of-two limitation of zoned device
        f2fs: allocate trace path buffer from names_cache
        f2fs: add has_enough_free_secs()
        f2fs: relax sanity check if checkpoint is corrupted
        f2fs: refactor f2fs_gc to call checkpoint in urgent condition
        f2fs: remove folio_detach_private() in .invalidate_folio and .release_folio
        f2fs: remove bulk remove_proc_entry() and unnecessary kobject_del()
        f2fs: support iopoll method
        f2fs: remove batched_trim_sections node description
        f2fs: fix to check return value of inc_valid_block_count()
        f2fs: fix to check return value of f2fs_do_truncate_blocks()
        f2fs: fix passing relative address when discard zones
        f2fs: fix potential corruption when moving a directory
        f2fs: add radix_tree_preload_end in error case
        f2fs: fix to recover quota data correctly
        f2fs: fix to check readonly condition correctly
        docs: f2fs: Correct instruction to disable checkpoint
        ...
      5c7ecada
    • Linus Torvalds's avatar
      Merge tag 'dlm-6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/linux-dlm · fbfaf03e
      Linus Torvalds authored
      Pull dlm updates from David Teigland:
      
       - Remove some unused features (related to lock timeouts) that have been
         previously scheduled for removal
      
       - Fix a bug where the pending callback flag would be incorrectly
         cleared, which could potentially result in missing a completion
         callback
      
       - Use an unbound workqueue for dlm socket handling so that socket
         operations can be processed with less delay
      
       - Fix possible lockspace join connection errors with large clusters
         (e.g. over 16 nodes) caused by a small socket backlog setting
      
       - Use atomic bit ops for internal flags to help avoid mistakes copying
         flag values from messages
      
       - Fix recently introduced bug where memory for lvb data could be
         unnecessarily allocated for a lock
      
      * tag 'dlm-6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/linux-dlm:
        fs: dlm: stop unnecessarily filling zero ms_extra bytes
        fs: dlm: switch lkb_sbflags to atomic ops
        fs: dlm: rsb hash table flag value to atomic ops
        fs: dlm: move internal flags to atomic ops
        fs: dlm: change dflags to use atomic bits
        fs: dlm: store lkb distributed flags into own value
        fs: dlm: remove DLM_IFL_LOCAL_MS flag
        fs: dlm: rename stub to local message flag
        fs: dlm: remove deprecated code parts
        DLM: increase socket backlog to avoid hangs with 16 nodes
        fs: dlm: add unbound flag to dlm_io workqueue
        fs: dlm: fix DLM_IFL_CB_PENDING gets overwritten
      fbfaf03e
    • Linus Torvalds's avatar
      Merge tag 'gfs2-v6.3-rc3-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/gfs2/linux-gfs2 · e0fcc9c6
      Linus Torvalds authored
      Pull gfs2 updates from Andreas Gruenbacher:
      
       - Fix revoke processing at unmount and on read-only remount
      
       - Refuse reading in inodes with an impossible indirect block height
      
       - Various minor cleanups
      
      * tag 'gfs2-v6.3-rc3-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/gfs2/linux-gfs2:
        gfs2: gfs2_ail_empty_gl no log flush on error
        gfs2: Issue message when revokes cannot be written
        gfs2: Perform second log flush in gfs2_make_fs_ro
        gfs2: return errors from gfs2_ail_empty_gl
        gfs2: Move variable assignment behind a null pointer check in inode_go_dump
        gfs2: Use gfs2_holder_initialized for jindex
        gfs2: Eliminate gfs2_trim_blocks
        gfs2: Fix inode height consistency check
        gfs2: Remove ghs[] from gfs2_unlink
        gfs2: Remove ghs[] from gfs2_link
        gfs2: Remove duplicate i_nlink check from gfs2_link()
      e0fcc9c6
    • Linus Torvalds's avatar
      Merge tag 'for-6.4-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux · 85d7ab24
      Linus Torvalds authored
      Pull btrfs updates from David Sterba:
       "Mostly core changes and cleanups, some notable fixes and two
        performance improvements in directory logging.
      
        The IO path cleanups are removing or refactoring old code, scrub main
        loop has been completely rewritten also refactoring old code.
      
        There are some changes to non-btrfs code, mostly trivial, the cgroup
        punt bio logic is only moved from generic code.
      
        Performance improvements:
      
         - improve logging changes in a directory during one transaction,
           avoid iterating over items and reduce lock contention (fsync time
           4x lower)
      
         - when logging directory entries during one transaction, reduce
           locking of subvolume trees by checking tree-log instead
           (improvement in throughput and latency for concurrent access to a
           subvolume)
      
        Notable fixes:
      
         - dev-replace:
            - properly honor read mode when requested to avoid reading from
              source device
            - target device won't be used for eventual read repair, this is
              unreliable for NODATASUM files
            - when there are unpaired (and unrepairable) metadata during
              replace, exit early with error and don't try to finish whole
              operation
      
         - scrub ioctl properly rejects unknown flags
      
         - fix global block reserve calculations
      
         - fix partial direct io write when there's a page fault in the
           middle, iomap will try to continue with partial request but the
           btrfs part did not match that, this can lead to zeros written
           instead of data
      
        Core changes:
      
         - io path:
            - continued cleanups and refactoring around bio handling
            - extent io submit path simplifications and cleanups
            - flush write path simplifications and cleanups
            - rework logic of passing sync mode of bio, with further cleanups
      
         - rewrite scrub code flow, restructure how the stripes are enumerated
           and verified in a more unified way
      
         - allow to set lower threshold for block group reclaim in debug mode
           to aid zoned mode testing
      
         - remove obsolete time-based delayed ref throttling logic when
           truncating items
      
         - DREW locks are not using percpu variables anymore
      
         - more warning fixes (-Wmaybe-uninitialized)
      
         - u64 division simplifications
      
         - error handling improvements
      
        Non-btrfs code changes:
      
         - push cgroup punt bio logic to btrfs code (there was no other user
           of that), the functionality can be now selected separately by
           BLK_CGROUP_PUNT_BIO
      
         - crc32c_impl removed after removing last uses in btrfs code
      
         - add btrfs_assertfail() to objtool table"
      
      * tag 'for-6.4-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux: (147 commits)
        btrfs: mark btrfs_assertfail() __noreturn
        btrfs: fix uninitialized variable warnings
        btrfs: use log root when iterating over index keys when logging directory
        btrfs: avoid iterating over all indexes when logging directory
        btrfs: dev-replace: error out if we have unrepaired metadata error during
        btrfs: remove pointless loop at btrfs_get_next_valid_item()
        btrfs: scrub: reject unsupported scrub flags
        btrfs: reinterpret async discard iops_limit=0 as no delay
        btrfs: set default discard iops_limit to 1000
        btrfs: remove unused raid56 functions which were dedicated for scrub
        btrfs: scrub: remove scrub_bio structure
        btrfs: scrub: remove scrub_block and scrub_sector structures
        btrfs: scrub: remove the old scrub recheck code
        btrfs: scrub: remove the old writeback infrastructure
        btrfs: scrub: remove scrub_parity structure
        btrfs: scrub: use scrub_stripe to implement RAID56 P/Q scrub
        btrfs: scrub: switch scrub_simple_mirror() to scrub_stripe infrastructure
        btrfs: scrub: introduce helper to queue a stripe for scrub
        btrfs: scrub: introduce error reporting functionality for scrub_stripe
        btrfs: scrub: introduce a writeback helper for scrub_stripe
        ...
      85d7ab24
    • Linus Torvalds's avatar
      Merge tag 'fs_for_v6.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs · 94fc0792
      Linus Torvalds authored
      Pull ext2, reiserfs, udf, and quota updates from Jan Kara:
       "A couple of small fixes and cleanups for ext2, udf, reiserfs, and
        quota.
      
        The biggest change is making CONFIG_PRINT_QUOTA_WARNING depend on
        BROKEN with an outlook for removing it completely in an year or so"
      
      * tag 'fs_for_v6.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:
        quota: mark PRINT_QUOTA_WARNING as BROKEN
        quota: update Kconfig comment
        reiserfs: remove unused iter variable
        quota: Use register_sysctl_init() for registering fs_dqstats_table
        reiserfs: remove unused sched_count variable
        ext2: remove redundant assignment to pointer end
        quota: make dquot_set_dqinfo return errors from ->write_info
        quota: fixup *_write_file_info() to return proper error code
        quota: simplify two-level sysctl registration for fs_dqstats_table
        udf: use wrapper i_blocksize() in udf_discard_prealloc()
        udf: Use folios in udf_adinicb_writepage()
        ext2: Check block size validity during mount
        ext2: Correct maximum ext2 filesystem block size
      94fc0792
    • Linus Torvalds's avatar
      Merge tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4 · 0cfcde1f
      Linus Torvalds authored
      Pull ext4 updates from Ted Ts'o:
       "There are a number of major cleanups in ext4 this cycle:
      
         - The data=journal writepath has been significantly cleaned up and
           simplified, and reduces a large number of data=journal special
           cases by Jan Kara.
      
         - Ojaswin Muhoo has replaced linked list used to track extents that
           have been used for inode preallocation with a red-black tree in the
           multi-block allocator. This improves performance for workloads
           which do a large number of random allocating writes.
      
         - Thanks to Kemeng Shi for a lot of cleanup and bug fixes in the
           multi-block allocator.
      
         - Matthew wilcox has converted the code paths for reading and writing
           ext4 pages to use folios.
      
         - Jason Yan has continued to factor out ext4_fill_super() into
           smaller functions for improve ease of maintenance and
           comprehension.
      
         - Josh Triplett has created an uapi header for ext4 userspace API's"
      
      * tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (105 commits)
        ext4: Add a uapi header for ext4 userspace APIs
        ext4: remove useless conditional branch code
        ext4: remove unneeded check of nr_to_submit
        ext4: move dax and encrypt checking into ext4_check_feature_compatibility()
        ext4: factor out ext4_block_group_meta_init()
        ext4: move s_reserved_gdt_blocks and addressable checking into ext4_check_geometry()
        ext4: rename two functions with 'check'
        ext4: factor out ext4_flex_groups_free()
        ext4: use ext4_group_desc_free() in ext4_put_super() to save some duplicated code
        ext4: factor out ext4_percpu_param_init() and ext4_percpu_param_destroy()
        ext4: factor out ext4_hash_info_init()
        Revert "ext4: Fix warnings when freezing filesystem with journaled data"
        ext4: Update comment in mpage_prepare_extent_to_map()
        ext4: Simplify handling of journalled data in ext4_bmap()
        ext4: Drop special handling of journalled data from ext4_quota_on()
        ext4: Drop special handling of journalled data from ext4_evict_inode()
        ext4: Fix special handling of journalled data from extent zeroing
        ext4: Drop special handling of journalled data from extent shifting operations
        ext4: Drop special handling of journalled data from ext4_sync_file()
        ext4: Commit transaction before writing back pages in data=journal mode
        ...
      0cfcde1f
    • Linus Torvalds's avatar
      Merge tag 'fsverity-for-linus' of git://git.kernel.org/pub/scm/fs/fsverity/linux · c3558a6b
      Linus Torvalds authored
      Pull fsverity updates from Eric Biggers:
       "Several cleanups and fixes for fs/verity/, including a couple minor
        fixes to the changes in 6.3 that added support for Merkle tree block
        sizes less than the page size"
      
      * tag 'fsverity-for-linus' of git://git.kernel.org/pub/scm/fs/fsverity/linux:
        fsverity: reject FS_IOC_ENABLE_VERITY on mode 3 fds
        fsverity: explicitly check for buffer overflow in build_merkle_tree()
        fsverity: use WARN_ON_ONCE instead of WARN_ON
        fs-verity: simplify sysctls with register_sysctl()
        fs/buffer.c: use b_folio for fsverity work
      c3558a6b
    • Linus Torvalds's avatar
      Merge tag 'fscrypt-for-linus' of git://git.kernel.org/pub/scm/fs/fscrypt/linux · dbe0e78d
      Linus Torvalds authored
      Pull fscrypt updates from Eric Biggers:
       "A few cleanups for fs/crypto/, and another patch to prepare for the
        upcoming CephFS encryption support"
      
      * tag 'fscrypt-for-linus' of git://git.kernel.org/pub/scm/fs/fscrypt/linux:
        fscrypt: optimize fscrypt_initialize()
        fscrypt: use WARN_ON_ONCE instead of WARN_ON
        fscrypt: new helper function - fscrypt_prepare_lookup_partial()
        fs/buffer.c: use b_folio for fscrypt work
      dbe0e78d
    • Linus Torvalds's avatar
      Merge tag 'v6.4-p1' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 · 733f7e9c
      Linus Torvalds authored
      Pull crypto updates from Herbert Xu:
       "API:
         - Total usage stats now include all that returned errors (instead of
           just some)
         - Remove maximum hash statesize limit
         - Add cloning support for hmac and unkeyed hashes
         - Demote BUG_ON in crypto_unregister_alg to a WARN_ON
      
        Algorithms:
         - Use RIP-relative addressing on x86 to prepare for PIE build
         - Add accelerated AES/GCM stitched implementation on powerpc P10
         - Add some test vectors for cmac(camellia)
         - Remove failure case where jent is unavailable outside of FIPS mode
           in drbg
         - Add permanent and intermittent health error checks in jitter RNG
      
        Drivers:
         - Add support for 402xx devices in qat
         - Add support for HiSTB TRNG
         - Fix hash concurrency issues in stm32
         - Add OP-TEE firmware support in caam"
      
      * tag 'v6.4-p1' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (139 commits)
        i2c: designware: Add doorbell support for Mendocino
        i2c: designware: Use PCI PSP driver for communication
        powerpc: Move Power10 feature PPC_MODULE_FEATURE_P10
        crypto: p10-aes-gcm - Remove POWER10_CPU dependency
        crypto: testmgr - Add some test vectors for cmac(camellia)
        crypto: cryptd - Add support for cloning hashes
        crypto: cryptd - Convert hash to use modern init_tfm/exit_tfm
        crypto: hmac - Add support for cloning
        crypto: hash - Add crypto_clone_ahash/shash
        crypto: api - Add crypto_clone_tfm
        crypto: api - Add crypto_tfm_get
        crypto: x86/sha - Use local .L symbols for code
        crypto: x86/crc32 - Use local .L symbols for code
        crypto: x86/aesni - Use local .L symbols for code
        crypto: x86/sha256 - Use RIP-relative addressing
        crypto: x86/ghash - Use RIP-relative addressing
        crypto: x86/des3 - Use RIP-relative addressing
        crypto: x86/crc32c - Use RIP-relative addressing
        crypto: x86/cast6 - Use RIP-relative addressing
        crypto: x86/cast5 - Use RIP-relative addressing
        ...
      733f7e9c
    • Linus Torvalds's avatar
      Merge tag 'flex-array-transformations-6.4-rc1' of... · 98f99e67
      Linus Torvalds authored
      Merge tag 'flex-array-transformations-6.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gustavoars/linux
      
      Pull flexible-array updates from Gustavo Silva:
       "Transform more zero-length and one-element arrays into C99
        flexible-array members"
      
      * tag 'flex-array-transformations-6.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gustavoars/linux:
        uapi: net: ipv6: Replace fake flex-array with flex-array member
        drm/vmwgfx: Replace one-element array with flexible-array member
        ASoC: uapi: Replace zero-length arrays with __DECLARE_FLEX_ARRAY() helper
      98f99e67
    • Paolo Abeni's avatar
      net: phy: hide the PHYLIB_LEDS knob · 9b78d919
      Paolo Abeni authored
      commit 4bb7aac7 ("net: phy: fix circular LEDS_CLASS dependencies")
      solved a build failure, but introduces a new config knob with a default
      'y' value: PHYLIB_LEDS.
      
      The latter is against the current new config policy. The exception
      was raised to allow the user to catch bad configurations without led
      support.
      
      Anyway the current definition of PHYLIB_LEDS does not fit the above
      goal: if LEDS_CLASS is disabled, the new config will be available
      only with PHYLIB disabled, too.
      
      Hide the mentioned config, to preserve the randconfig testing done so
      far, while respecting the mentioned policy.
      Suggested-by: default avatarAndrew Lunn <andrew@lunn.ch>
      Suggested-by: default avatarArnd Bergmann <arnd@arndb.de>
      Signed-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
      Link: https://lore.kernel.org/r/d82489be8ed911c383c3447e9abf469995ccf39a.1682496488.git.pabeni@redhat.comSigned-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
      9b78d919
    • Paolo Abeni's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net · c248b27c
      Paolo Abeni authored
      No conflicts.
      Signed-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
      c248b27c
    • Linus Torvalds's avatar
      Merge tag 'pm-6.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 0cfd8703
      Linus Torvalds authored
      Pull power management updates from Rafael Wysocki:
       "These update several cpufreq drivers and the cpufreq core, add sysfs
        interface for exposing the time really spent in the platform low-power
        state during suspend-to-idle, update devfreq (core and drivers) and
        the pm-graph suite of tools and clean up code.
      
        Specifics:
      
         - Fix the frequency unit in cpufreq_verify_current_freq checks()
           Sanjay Chandrashekara)
      
         - Make mode_state_machine in amd-pstate static (Tom Rix)
      
         - Make the cpufreq core require drivers with target_index() to set
           freq_table (Viresh Kumar)
      
         - Fix typo in the ARM_BRCMSTB_AVS_CPUFREQ Kconfig entry (Jingyu Wang)
      
         - Use of_property_read_bool() for boolean properties in the pmac32
           cpufreq driver (Rob Herring)
      
         - Make the cpufreq sysfs interface return proper error codes on
           obviously invalid input (qinyu)
      
         - Add guided autonomous mode support to the AMD P-state driver (Wyes
           Karny)
      
         - Make the Intel P-state driver enable HWP IO boost on all server
           platforms (Srinivas Pandruvada)
      
         - Add opp and bandwidth support to tegra194 cpufreq driver (Sumit
           Gupta)
      
         - Use of_property_present() for testing DT property presence (Rob
           Herring)
      
         - Remove MODULE_LICENSE in non-modules (Nick Alcock)
      
         - Add SM7225 to cpufreq-dt-platdev blocklist (Luca Weiss)
      
         - Optimizations and fixes for qcom-cpufreq-hw driver (Krzysztof
           Kozlowski, Konrad Dybcio, and Bjorn Andersson)
      
         - DT binding updates for qcom-cpufreq-hw driver (Konrad Dybcio and
           Bartosz Golaszewski)
      
         - Updates and fixes for mediatek driver (Jia-Wei Chang and
           AngeloGioacchino Del Regno)
      
         - Use of_property_present() for testing DT property presence in the
           cpuidle code (Rob Herring)
      
         - Drop unnecessary (void *) conversions from the PM core (Li zeming)
      
         - Add sysfs files to represent time spent in a platform sleep state
           during suspend-to-idle and make AMD and Intel PMC drivers use them
           Mario Limonciello)
      
         - Use of_property_present() for testing DT property presence (Rob
           Herring)
      
         - Add set_required_opps() callback to the 'struct opp_table', to make
           the code paths cleaner (Viresh Kumar)
      
         - Update the pm-graph siute of utilities to v5.11 with the following
           changes:
             * New script which allows users to install the latest pm-graph
               from the upstream github repo.
             * Update all the dmesg suspend/resume PM print formats to be able
               to process recent timelines using dmesg only.
             * Add ethtool output to the log for the system's ethernet device
               if ethtool exists.
             * Make the tool more robustly handle events where mangled dmesg
               or ftrace outputs do not include all the requisite data.
      
         - Make the sleepgraph utility recognize "CPU killed" messages (Xueqin
           Luo)
      
         - Remove unneeded SRCU selection in Kconfig because it's always set
           from devfreq core (Paul E. McKenney)
      
         - Drop of_match_ptr() macro from exynos-bus.c because this driver is
           always using the DT table for driver probe (Krzysztof Kozlowski)
      
         - Use the preferred of_property_present() instead of the low-level
           of_get_property() on exynos-bus.c (Rob Herring)
      
         - Use devm_platform_get_and_ioream_resource() in exyno-ppmu.c (Yang
           Li)"
      
      * tag 'pm-6.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (44 commits)
        platform/x86/intel/pmc: core: Report duration of time in HW sleep state
        platform/x86/intel/pmc: core: Always capture counters on suspend
        platform/x86/amd: pmc: Report duration of time in hw sleep state
        PM: Add sysfs files to represent time spent in hardware sleep state
        cpufreq: use correct unit when verify cur freq
        cpufreq: tegra194: add OPP support and set bandwidth
        cpufreq: amd-pstate: Make varaiable mode_state_machine static
        PM: core: Remove unnecessary (void *) conversions
        cpufreq: drivers with target_index() must set freq_table
        PM / devfreq: exynos-ppmu: Use devm_platform_get_and_ioremap_resource()
        OPP: Move required opps configuration to specialized callback
        OPP: Handle all genpd cases together in _set_required_opps()
        cpufreq: qcom-cpufreq-hw: Revert adding cpufreq qos
        dt-bindings: cpufreq: cpufreq-qcom-hw: Add QCM2290
        dt-bindings: cpufreq: cpufreq-qcom-hw: Sanitize data per compatible
        dt-bindings: cpufreq: cpufreq-qcom-hw: Allow just 1 frequency domain
        cpufreq: Add SM7225 to cpufreq-dt-platdev blocklist
        cpufreq: qcom-cpufreq-hw: fix double IO unmap and resource release on exit
        cpufreq: mediatek: Raise proc and sram max voltage for MT7622/7623
        cpufreq: mediatek: raise proc/sram max voltage for MT8516
        ...
      0cfd8703
    • Linus Torvalds's avatar
      Merge tag 'acpi-6.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 793582ff
      Linus Torvalds authored
      Pull ACPI updates from Rafael Wysocki:
       "These update the ACPICA code in the kernel to upstream revision
        20230331, fix the ACPI SBS driver and the evaluation of the _PDC
        method on Xen dom0 in the ACPI processor driver, update the ACPI
        driver for Intel SoCs and clean up code in multiple places.
      
        Specifics:
      
         - Update the ACPICA code in the kernel to upstream revision 20230331
           including the following changes:
             * Delete bogus node_array array of pointers from AEST table
               (Jessica Clarke)
             * Add support for trace buffer extension in GICC to the ACPI MADT
               parser (Xiongfeng Wang)
             * Add missing macro ACPI_FUNCTION_TRACE() for
               acpi_ns_repair_HID() (Xiongfeng Wang)
             * Add missing tables to astable (Pedro Falcato)
             * Add support for 64 bit loong_arch compilation to ACPICA (Huacai
               Chen)
             * Add support for ASPT table in disassembler to ACPICA (Jeremi
               Piotrowski)
             * Add support for Arm's MPAM ACPI table version 2 (Hesham
               Almatary)
             * Update all copyrights/signons in ACPICA to 2023 (Bob Moore)
             * Add support for ClockInput resource (v6.5) (Niyas Sait)
             * Add RISC-V INTC interrupt controller definition to the list of
               supported interrupt controllers for MADT (Sunil V L)
             * Add structure definitions for the RISC-V RHCT ACPI table (Sunil
               V L)
             * Address several cases in which the ACPICA code might lead to
               undefined behavior (Tamir Duberstein)
             * Make ACPICA code support flexible arrays properly (Kees Cook)
             * Check null return of ACPI_ALLOCATE_ZEROED in
               acpi_db_display_objects() (void0red)
             * Add os specific support for Zephyr RTOS to ACPICA (Najumon)
             * Update version to 20230331 (Bob Moore)
      
         - Fix evaluating the _PDC ACPI control method when running as Xen
           dom0 (Roger Pau Monne)
      
         - Use platform devices to load ACPI PPC and PCC drivers (Petr Pavlu)
      
         - Check for null return of devm_kzalloc() in fch_misc_setup() (Kang
           Chen)
      
         - Log a message if enable_irq_wake() fails for the ACPI SCI (Simon
           Gaiser)
      
         - Initialize the correct IOMMU fwspec while parsing ACPI VIOT
           (Jean-Philippe Brucker)
      
         - Amend indentation and prefix error messages with FW_BUG in the ACPI
           SPCR parsing code (Andy Shevchenko)
      
         - Enable ACPI sysfs support for CCEL records (Kuppuswamy
           Sathyanarayanan)
      
         - Make the APEI error injection code warn on invalid arguments when
           explicitly indicated by platform (Shuai Xue)
      
         - Add CXL error types to the error injection code in APEI (Tony Luck)
      
         - Refactor acpi_data_prop_read_single() (Andy Shevchenko)
      
         - Fix two issues in the ACPI SBS driver (Armin Wolf)
      
         - Replace ternary operator with min_t() in the generic ACPI thermal
           zone driver (Jiangshan Yi)
      
         - Ensure that ACPI notify handlers are not running after removal and
           clean up code in acpi_sb_notify() (Rafael Wysocki)
      
         - Remove register_backlight_delay module option and code and remove
           quirks for false-positive backlight control support advertised on
           desktop boards (Hans de Goede)
      
         - Replace irqdomain.h include with struct declarations in ACPI
           headers and update several pieces of code previously including of.h
           implicitly through those headers (Rob Herring)
      
         - Fix acpi_evaluate_dsm_typed() redefinition error (Kiran K)
      
         - Update the pm_profile sysfs attribute documentation (Rafael
           Wysocki)
      
         - Add 80862289 ACPI _HID for second PWM controller on Cherry Trail to
           the ACPI driver for Intel SoCs (Hans de Goede)"
      
      * tag 'acpi-6.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (64 commits)
        ACPI: LPSS: Add 80862289 ACPI _HID for second PWM controller on Cherry Trail
        ACPI: bus: Ensure that notify handlers are not running after removal
        ACPI: bus: Add missing braces to acpi_sb_notify()
        ACPI: video: Remove desktops without backlight DMI quirks
        ACPI: video: Remove register_backlight_delay module option and code
        ACPI: Replace irqdomain.h include with struct declarations
        fpga: lattice-sysconfig-spi: Add explicit include for of.h
        tpm: atmel: Add explicit include for of.h
        virtio-mmio: Add explicit include for of.h
        pata: ixp4xx: Add explicit include for of.h
        ata: pata_macio: Add explicit include of irqdomain.h
        serial: 8250_tegra: Add explicit include for of.h
        net: rfkill-gpio: Add explicit include for of.h
        staging: iio: resolver: ad2s1210: Add explicit include for of.h
        iio: adc: ad7292: Add explicit include for of.h
        ACPICA: Update version to 20230331
        ACPICA: add os specific support for Zephyr RTOS
        ACPICA: ACPICA: check null return of ACPI_ALLOCATE_ZEROED in acpi_db_display_objects
        ACPICA: acpi_resource_irq: Replace 1-element arrays with flexible array
        ACPICA: acpi_madt_oem_data: Fix flexible array member definition
        ...
      793582ff
    • Linus Torvalds's avatar
      Merge tag 'thermal-6.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 5e0ca0bf
      Linus Torvalds authored
      Pull thermal control updates from Rafael Wysocki:
       "These mostly continue to prepare the thermal control subsystem for
        using unified representation of trip points, which includes cleanups,
        code refactoring and similar and update several drivers (for other
        reasons), which includes new hardware support.
      
        Specifics:
      
         - Add a thermal zone 'devdata' accessor and modify several drivers to
           use it (Daniel Lezcano)
      
         - Prevent drivers from using the 'device' internal thermal zone
           structure field directly (Daniel Lezcano)
      
         - Clean up the hwmon thermal driver (Daniel Lezcano)
      
         - Add thermal zone id accessor and thermal zone type accessor and
           prevent drivers from using thermal zone fields directly (Daniel
           Lezcano)
      
         - Clean up the acerhdf and tegra thermal drivers (Daniel Lezcano)
      
         - Add lower bound check for sysfs input to the x86_pkg_temp_thermal
           Intel thermal driver (Zhang Rui)
      
         - Add more thermal zone device encapsulation: prevent setting
           structure field directly, access the sensor device instead the
           thermal zone's device for trace, relocate the traces in
           drivers/thermal (Daniel Lezcano)
      
         - Use the generic trip point for the i.MX and remove the
           get_trip_temp ops (Daniel Lezcano)
      
         - Use the devm_platform_ioremap_resource() in the Hisilicon driver
           (Yang Li)
      
         - Remove R-Car H3 ES1.* handling as public has only access to the ES2
           version and the upstream support for the ES1 has been shutdown
           (Wolfram Sang)
      
         - Add a delay after initializing the bank in order to let the time to
           the hardware to initialze itself before reading the temperature
           (Amjad Ouled-Ameur)
      
         - Add MT8365 support (Amjad Ouled-Ameur)
      
         - Preparational cleanup and DT bindings for RK3588 support (Sebastian
           Reichel)
      
         - Add driver support for RK3588 (Finley Xiao)
      
         - Use devm_reset_control_array_get_exclusive() for the Rockchip
           driver (Ye Xingchen)
      
         - Detect power gated thermal zones and return -EAGAIN when reading
           the temperature (Mikko Perttunen)
      
         - Remove thermal_bind_params structure as it is unused (Zhang Rui)
      
         - Drop unneeded quotes in DT bindings allowing to run yamllint (Rob
           Herring)
      
         - Update the power allocator documentation according to the thermal
           trace relocation (Lukas Bulwahn)
      
         - Fix sensor 1 interrupt status bitmask for the Mediatek LVTS sensor
           (Chen-Yu Tsai)
      
         - Use the dev_err_probe() helper in the Amlogic driver (Ye Xingchen)
      
         - Add AP domain support to LVTS thermal controllers for mt8195
           (Balsam CHIHI)
      
         - Remove buggy call to thermal_of_zone_unregister() (Daniel Lezcano)
      
         - Make thermal_of_zone_[un]register() private to the thermal OF code
           (Daniel Lezcano)
      
         - Create a private copy of the thermal zone device parameters
           structure when registering a thermal zone (Daniel Lezcano)
      
         - Fix a kernel NULL pointer dereference in thermal_hwmon (Zhang Rui)
      
         - Revert recent message adjustment in thermal_hwmon (Rafael Wysocki)
      
         - Use of_property_present() for testing DT property presence in
           thermal control code (Rob Herring)
      
         - Clean up thermal_list_lock locking in the thermal core (Rafael
           Wysocki)
      
         - Add DLVR support for RFIM control in the int340x Intel thermal
           driver (Srinivas Pandruvada)"
      
      * tag 'thermal-6.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (55 commits)
        thermal: intel: int340x: Add DLVR support for RFIM control
        thermal/core: Alloc-copy-free the thermal zone parameters structure
        thermal/of: Unexport unused OF functions
        thermal/drivers/bcm2835: Remove buggy call to thermal_of_zone_unregister
        thermal/drivers/mediatek/lvts_thermal: Add AP domain for mt8195
        dt-bindings: thermal: mediatek: Add AP domain to LVTS thermal controllers for mt8195
        thermal: amlogic: Use dev_err_probe()
        thermal/drivers/mediatek/lvts_thermal: Fix sensor 1 interrupt status bitmask
        MAINTAINERS: adjust entry in THERMAL/POWER_ALLOCATOR after header movement
        dt-bindings: thermal: Drop unneeded quotes
        thermal/core: Remove thermal_bind_params structure
        thermal/drivers/tegra-bpmp: Handle offline zones
        thermal/drivers/rockchip: use devm_reset_control_array_get_exclusive()
        dt-bindings: rockchip-thermal: Support the RK3588 SoC compatible
        thermal/drivers/rockchip: Support RK3588 SoC in the thermal driver
        thermal/drivers/rockchip: Support dynamic sized sensor array
        thermal/drivers/rockchip: Simplify channel id logic
        thermal/drivers/rockchip: Use dev_err_probe
        thermal/drivers/rockchip: Simplify clock logic
        thermal/drivers/rockchip: Simplify getting match data
        ...
      5e0ca0bf
    • Linus Torvalds's avatar
      Merge tag 'hwmon-for-v6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging · 4173cf6f
      Linus Torvalds authored
      Pull hwmon updates from Guenter Roeck:
       "New drivers
      
         - Driver for Acbel FSB032 power supply
      
         - Driver for StarFive JH71x0 temperature sensor
      
        Added support to existing drivers:
      
         - aquacomputer_d5next: Support for Aquacomputer Aquastream XT
      
         - nct6775: Added various ASUS boards to list of boards supporting WMI
      
         - asus-ec-sensors: ROG STRIX Z390-F GAMING, ProArt B550-Creator,
      
        Notable improvements:
      
         - Regulator event and sysfs notification support for PMBus drivers
      
        Notable cleanup:
      
         - Constified pointers to hwmon_channel_info
      
        .. and various other minor bug fixes and improvements"
      
      * tag 'hwmon-for-v6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging: (131 commits)
        hwmon: lochnagar: Remove the unneeded include <linux/i2c.h>
        hwmon: (pmbus/fsp-3y) Fix functionality bitmask in FSP-3Y YM-2151E
        hwmon: (adt7475) Use device_property APIs when configuring polarity
        hwmon: (aquacomputer_d5next) Add support for Aquacomputer Aquastream XT
        hwmon: (it87) Disable/enable SMBus access for IT8622E chipset
        hwmon: (it87) Add calls to smbus_enable/smbus_disable as required
        hwmon: (it87) Test for error in it87_update_device
        hwmon: (it87) Disable SMBus access for environmental controller registers.
        docs: hwmon: Add documentaion for acbel-fsg032 PSU
        hwmon: (pmbus/acbel-fsg032) Add Acbel power supply
        dt-bindings: trivial-devices: Add acbel,fsg032
        dt-bindings: vendor-prefixes: Add prefix for acbel
        hwmon: (sfctemp) Simplify error message
        hwmon: (pmbus/ibm-cffps) Use default debugfs attributes and lock function
        hwmon: (pmbus/core) Add lock and unlock functions
        hwmon: (pmbus/core) Request threaded interrupt with IRQF_ONESHOT
        hwmon: (nct6775) update ASUS WMI monitoring list A620/B760/W790
        hwmon: ina2xx: add optional regulator support
        dt-bindings: hwmon: ina2xx: add supply property
        dt-bindings: hwmon: pwm-fan: Convert to DT schema
        ...
      4173cf6f
    • Linus Torvalds's avatar
      Merge tag 'rproc-v6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/remoteproc/linux · 3361e9a4
      Linus Torvalds authored
      Pull remoteproc updates from Bjorn Andersson:
      
       - Unnecessary type casts from the 'void *' rproc->priv pointer are
         dropped throughout the subsystem.
      
       - A kernel-doc error is corrected in the Mediatek SCPI IPI
         implementation
      
       - The firmware loading onto the IMX DSP remote processors is reworked
         to avoid non-32bit memory operations. A module parameter is
         introduced to assist development of firmware without communication
         abilities in place. Error paths in imx_dsp_rproc_mbox_alloc() is
         cleaned up
      
       - The cluster configuration handling in the TI K3 R5 driver is
         corrected and support for the single-R5 core found in the TI AM62x
         SoC family is introduced
      
       - The TI PRU driver device- to virtual-address translation is updated
         to avoid compiler warning about the unsigned device-address always
         being larger than 0
      
       - The ST remoteproc driver is transitioned to use of_property_present()
      
       - Issues with kicks arriving after the STM32 remote processor has been
         shut down are mitigated by checking the processor's state before
         handling them.
      
       - Support for mailbox channels for communication with the remote
         processors are added to the Xilinx R5 remoteproc driver. The naming
         of carveouts are corrected and their parsing is reworked. For this a
         couple of fixes targeting the mailbox subsystem are picked up here as
         well.
      
       - Reference counting of of_nodes are corrected in the ST, STM32, RCAR
         and IMX remoteproc drivers
      
      * tag 'rproc-v6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/remoteproc/linux: (24 commits)
        remoteproc: st: Use of_property_present() for testing DT property presence
        dt-bindings: remoteproc: Drop unneeded quotes
        remoteproc: imx_dsp_rproc: Fix kernel test robot sparse warning
        remoteproc: imx_dsp_rproc: Improve exception handling in imx_dsp_rproc_mbox_alloc()
        remoteproc: pru: Remove always true check positive unsigned value
        dt-bindings: remoteproc: stm32-rproc: Typo fix
        remoteproc: stm32_rproc: Add mutex protection for workqueue
        remoteproc: Remove unnecessary (void*) conversions
        remoteproc: imx_dsp_rproc: Call of_node_put() on iteration error
        remoteproc: imx_rproc: Call of_node_put() on iteration error
        remoteproc: rcar_rproc: Call of_node_put() on iteration error
        remoteproc: st: Call of_node_put() on iteration error
        remoteproc: stm32: Call of_node_put() on iteration error
        remoteproc: k3-r5: Use separate compatible string for TI AM62x SoC family
        dt-bindings: remoteproc: ti: Add new compatible for AM62 SoC family
        remoteproc: k3-r5: Simplify cluster mode setting usage
        remoteproc/mtk_scpi_ipi: Fix one kernel-doc comment
        remoteproc: xilinx: Add mailbox channels for rpmsg
        drivers: remoteproc: xilinx: Fix carveout names
        mailbox: zynqmp: Fix typo in IPI documentation
        ...
      3361e9a4
    • Linus Torvalds's avatar
      Merge tag 'rpmsg-v6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/remoteproc/linux · fe89e9b1
      Linus Torvalds authored
      Pull rpmsg updates from Bjorn Andersson:
       "The remove functions of the Qualcomm SMD and GLINK RPM platform
        drivers are transitioned to the new void returning prototype. Likewise
        is qcom_smd_unregister_edge() transitioned to void, as it
        unconditionally returned 0.
      
        An assumption about the ordering of the intent request acknowledgement
        and advertisement of a new intent in the GLINK implementation is
        corrected. Faulty error handling is corrected is improved in the TX
        path, and duplicated code, in the same path, is cleaned up"
      
      * tag 'rpmsg-v6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/remoteproc/linux:
        rpmsg: glink: Consolidate TX_DATA and TX_DATA_CONT
        rpmsg: glink: Propagate TX failures in intentless mode as well
        rpmsg: glink: Wait for intent, not just request ack
        rpmsg: glink: Transition intent request signaling to wait queue
        rpmsg: qcom_smd: Convert to platform remove callback returning void
        rpmsg: qcom_glink_rpm: Convert to platform remove callback returning void
        rpmsg: qcom_smd: Make qcom_smd_unregister_edge() return void
      fe89e9b1
    • Linus Torvalds's avatar
      Merge tag 'mmc-v6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc · c5c06e27
      Linus Torvalds authored
      Pull MMC updates from Ulf Hansson:
       "MMC core:
         - Allow an invalid regulator in mmc_regulator_set_ocr()
         - Log about empty non-removable slots
         - Add helpers to enable/disable the vqmmc regulator
      
        MMC host:
         - mtk-sd: Add support for the mt8365 variant
         - renesas_sdhi: Remove support for R-Car H3 ES1.* variants
         - sdhci_am654: Add power management support
         - sdhci-cadence: Add support for eMMC hardware reset
         - sdhci-cadence: Add support for AMD Pensando Elba variant
         - sdhci-msm: Add support for the IPQ5018 variant
         - sdhci-msm: Add support for the QCM2290 variant
         - sdhci-of-arasan: Skip setting clock delay for 400KHz
         - sdhci-of-arasan: Add support for the Xilinx Versal Net variant
         - sdhci-of-arasan: Remove Intel Thunder Bay SOC support
         - sdhci-of-arasan: Add support to request the "gate" clock
         - sdhci-of-dwcmshc: Properly determine max clock on Rockchip
         - sdhci-of-esdhc: Fix quirk to ignore command inhibit for data
         - sdhci-pci-o2micro: Fix SDR50 mode timing issue
      
        MEMSTICK:
         - r592: Fix use-after-free bug in r592_remove due to race condition"
      
      * tag 'mmc-v6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc: (40 commits)
        dt-bindings: mmc: sdhci-msm: Document the IPQ5018 compatible
        mmc: vub300: remove unreachable code
        mmc: sdhci-cadence: Support mmc hardware reset
        mmc: sdhci-cadence: Add AMD Pensando Elba SoC support
        mmc: sdhci-cadence: Support device specific init during probe
        mmc: sdhci-cadence: Enable device specific override of writel()
        dt-bindings: mmc: cdns: Add AMD Pensando Elba SoC
        mmc: core: Remove unused macro mmc_req_rel_wr
        mmc: sdhci-of-arasan: Skip setting clock delay for 400KHz
        mmc: sdhci-of-arasan: Add support for eMMC5.1 on Xilinx Versal Net platform
        dt-bindings: mmc: arasan,sdci: Add Xilinx Versal Net compatible
        mmc: sdhci_am654: Add support for PM suspend/resume
        mmc: core: remove unnecessary (void*) conversions
        dt-bindings: mmc: fsl-imx-esdhc: ref sdhci-common.yaml
        mmc: sdhci-of-esdhc: fix quirk to ignore command inhibit for data
        mmc: core: Log about empty non-removable slots
        dt-bindings: mmc: fujitsu: Add Socionext Synquacer
        mmc: sdricoh_cs: remove unused sdricoh_readw function
        dt-bindings: mmc: Remove bindings for Intel Thunder Bay SoC"
        mmc: sdhci-of-arasan: Remove Intel Thunder Bay SOC support
        ...
      c5c06e27
    • Linus Torvalds's avatar
      Merge tag 'mtd/for-6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux · eb8322d7
      Linus Torvalds authored
      Pull mtd updates from Miquel Raynal:
       "Core MTD changes:
         - dt-bindings: Drop unneeded quotes
         - mtdblock: Tolerate corrected bit-flips
         - Use of_property_read_bool() for boolean properties
         - Avoid magic values
         - Avoid printing error messages on probe deferrals
         - Prepare mtd_otp_nvmem_add() to handle -EPROBE_DEFER
         - Fix error path for nvmem provider
         - Fix nvmem error reporting
         - Provide unique name for nvmem device
      
        MTD device changes:
         - lpddr_cmds: Remove unused words variable
         - bcm63xxpart: Remove MODULE_LICENSE in non-modules
      
        SPI NOR core changes:
         - Introduce Read While Write support for flashes featuring several
           banks
         - Set the 4-Byte Address Mode method based on SFDP data
         - Allow post_sfdp hook to return errors
         - Parse SCCR MC table and introduce support for multi-chip devices
      
        SPI NOR manufacturer drivers changes:
         - macronix: Add support for mx25uw51245g with RWW
         - spansion:
            - Determine current address mode at runtime as it can be changed
              in a non-volatile way and differ from factory defaults or from
              what SFDP advertises.
            - Enable JFFS2 write buffer mode for few ECC'd NOR flashes:
              S25FS256T, s25hx and s28hx
            - Add support for s25hl02gt and s25hs02gt
      
        Raw NAND core changes:
         - Convert to platform remove callback returning void
         - Fix spelling mistake waifunc() -> waitfunc()
      
        Raw NAND controller driver changes:
         - imx: Remove unused is_imx51_nfc and imx53_nfc functions
         - omap2: Drop obsolete dependency on COMPILE_TEST
         - orion: Use devm_platform_ioremap_resource()
         - qcom:
            - Use of_property_present() for testing DT property presence
            - Use devm_platform_get_and_ioremap_resource()
         - stm32_fmc2: Depends on ARCH_STM32 instead of MACH_STM32MP157
         - tmio: Remove reference to config MTD_NAND_TMIO in the parsers
      
        Raw NAND manufacturer driver changes:
         - hynix: Fix up bit 0 of sdr_timing_mode
      
        SPI-NAND changes:
         - Add support for ESMT F50x1G41LB"
      
      * tag 'mtd/for-6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux: (55 commits)
        mtd: nand: Convert to platform remove callback returning void
        mtd: onenand: omap2: Drop obsolete dependency on COMPILE_TEST
        mtd: spi-nor: spansion: Add support for s25hl02gt and s25hs02gt
        mtd: spi-nor: spansion: Add a new ->ready() hook for multi-chip device
        mtd: spi-nor: spansion: Rework cypress_nor_quad_enable_volatile() for multi-chip device support
        mtd: spi-nor: spansion: Rework cypress_nor_get_page_size() for multi-chip device support
        mtd: spi-nor: sfdp: Add support for SCCR map for multi-chip device
        mtd: spi-nor: Extract volatile register offset from SCCR map
        mtd: spi-nor: Allow post_sfdp hook to return errors
        mtd: spi-nor: spansion: Rename method to cypress_nor_get_page_size
        mtd: spi-nor: spansion: Enable JFFS2 write buffer for S25FS256T
        mtd: spi-nor: spansion: Enable JFFS2 write buffer for Infineon s25hx SEMPER flash
        mtd: spi-nor: spansion: Enable JFFS2 write buffer for Infineon s28hx SEMPER flash
        mtd: spi-nor: spansion: Determine current address mode
        mtd: spi-nor: core: Introduce spi_nor_set_4byte_addr_mode()
        mtd: spi-nor: core: Update flash's current address mode when changing address mode
        mtd: spi-nor: Stop exporting spi_nor_restore()
        mtd: spi-nor: Set the 4-Byte Address Mode method based on SFDP data
        mtd: spi-nor: core: Make spi_nor_set_4byte_addr_mode_brwr public
        mtd: spi-nor: core: Update name and description of spi_nor_set_4byte_addr_mode
        ...
      eb8322d7
    • Linus Torvalds's avatar
      Merge tag 'gpio-updates-for-v6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux · 2c96606a
      Linus Torvalds authored
      Pull gpio updates from Bartosz Golaszewski:
       "We have some new drivers, significant refactoring of existing intel
        platforms, lots of improvements all around, mass conversion to using
        immutable irqchips by drivers that had not been converted individually
        yet and some changes in the core library code.
      
        Summary:
      
        New drivers:
         - add a driver for the Loongson GPIO controller
         - add a driver for the fxl6408 I2C GPIO expander
         - add a GPIO module containing code common for Intel Elkhart Lake and
           Merrifield platforms
         - add a driver for the Intel Elkhart Lake platform reusing the code
           from the intel tangier library
      
        GPIOLIB core:
         - GPIO ACPI improvements
         - simplify gpiochip_add_data_with_keys() fwnode handling
         - cleanup header inclusions (remove unneeded ones, order the rest
           alphabetically)
         - remove duplicate code (reuse krealloc() instead of open-coding it,
           drop a duplicated check in gpiod_find_and_request())
         - reshuffle the code to remove unnecessary forward declarations
         - coding style cleanups and improvements
         - add a helper for accessing device fwnodes
         - small updates in docs
      
        Driver improvements:
         - convert all remaining GPIO irqchip drivers to using immutable
           irqchips
         - drop unnecessary of_match_ptr() macro expansions
         - shrink the code in gpio-merrifield significantly by reusing the
           code from gpio-tangier + minor tweaks to the driver code
         - remove MODULE_LICENSE() from drivers that can only be built-in
         - add device-tree support to gpio-loongson1
         - use new regmap features in gpio-104-dio-48e and gpio-pcie-idio-24
         - minor tweaks and fixes to gpio-xra1403, gpio-sim, gpio-tegra194,
           gpio-omap, gpio-aspeed, gpio-raspberrypi-exp
         - shrink code in gpio-ich and gpio-pxa
         - Kconfig tweak for gpio-pmic-eic-sprd"
      
      * tag 'gpio-updates-for-v6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux: (99 commits)
        gpio: gpiolib: Simplify gpiochip_add_data_with_key() fwnode
        gpiolib: Add gpiochip_set_data() helper
        gpiolib: Move gpiochip_get_data() higher in the code
        gpiolib: Check array_info for NULL only once in gpiod_get_array()
        gpiolib: Replace open coded krealloc()
        gpiolib: acpi: Add a ignore wakeup quirk for Clevo NL5xNU
        gpiolib: acpi: Move ACPI device NULL check to acpi_get_driver_gpio_data()
        gpiolib: acpi: use the fwnode in acpi_gpiochip_find()
        gpio: mm-lantiq: Fix typo in the newly added header filename
        sh: mach-x3proto: Add missing #include <linux/gpio/driver.h>
        powerpc/40x: Add missing select OF_GPIO_MM_GPIOCHIP
        gpio: xlp: Convert to immutable irq_chip
        gpio: xilinx: Convert to immutable irq_chip
        gpio: xgs-iproc: Convert to immutable irq_chip
        gpio: visconti: Convert to immutable irq_chip
        gpio: tqmx86: Convert to immutable irq_chip
        gpio: thunderx: Convert to immutable irq_chip
        gpio: stmpe: Convert to immutable irq_chip
        gpio: siox: Convert to immutable irq_chip
        gpio: rda: Convert to immutable irq_chip
        ...
      2c96606a
    • Linus Torvalds's avatar
      Merge tag 'regulator-v6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator · d8495579
      Linus Torvalds authored
      Pull regulator updates from Mark Brown:
       "A fairly quiet release, there were some cleanup and a couple of new
        devices but the biggest change was converting most of the drivers to
        use asynchronous probe. This allows us to ramp up multiple regulators
        in parallel during boot which can have a noticable impact on modern
        systems.
      
        Summary:
      
         - Update of drivers to PROBE_PREFER_ASYNCHRONOUS to mitigate issues
           with ramp times slowing down boots.
      
         - Convert to void remove callbacks.
      
         - Support for voltage monitoring on DA9063
      
         - Support for Qualcomm PMC8180 and PMM8654au, Richtek RT4803 and
           RT5739, Rockchip RK860x"
      
      * tag 'regulator-v6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator: (46 commits)
        regulator: dt-bindings: qcom,rpmh: Combine PM6150L and PM8150L if-then
        regulator: core: Make regulator_lock_two() logic easier to follow
        regulator: dt-bindings: qcom,rpmh: Correct PM8550 family supplies
        regulator: stm32-pwr: fix of_iomap leak
        dt-bindings: mfd: dlg,da9063: document voltage monitoring
        regulator: da9063: implement setter for voltage monitoring
        regulator: da9063: add voltage monitoring registers
        regulator: fan53555: Add support for RK860X
        regulator: fan53555: Use dev_err_probe
        regulator: fan53555: Improve vsel_mask computation
        regulator: fan53555: Make use of the bit macros
        regulator: fan53555: Remove unused *_SLEW_SHIFT definitions
        regulator: dt-bindings: fcs,fan53555: Add support for RK860X
        regulator: qcom_smd: Add MP5496 S1 regulator
        regulator: qcom_smd: Add s1 sub-node to mp5496 regulator
        regulator: qcom,rpmh: add compatible for pmm8654au RPMH
        regulator: qcom-rpmh: add support for pmm8654au regulators
        regulator: core: Avoid lockdep reports when resolving supplies
        regulator: core: Consistently set mutex_owner when using ww_mutex_lock_slow()
        regulator: dt-bindings: qcom,rpmh: Add compatible for PMC8180
        ...
      d8495579
    • Linus Torvalds's avatar
      Merge tag 'regmap-v6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap · f5468bec
      Linus Torvalds authored
      Pull regmap updates from Mark Brown:
       "This is a much bigger change for regmap than is normal, the main
        things being the addition of some KUnit coverage and a maple tree
        based register cache which longer term is likely to replace the rbtree
        cache except possibly for very small register maps.
      
        While it's complete overkill for most applications the code for maple
        trees is there and there are some larger, sparser devices where the
        data structure is a better fit.
      
        The maple tree support is still a work in progress but already useful,
        there's some conversions of drivers ready to go after the merge
        window.
      
        Summary:
      
         - Support for shifting register addresses up as well as down, there's
           a use cases with memory mapped MDIO.
      
         - Refactoring of the type configuration in regmap-irq to allow access
           to driver data in the handler, needed by some GPIO devices.
      
         - Some initial KUnit coverage, the bulk of the driver facing API is
           covered but there's holes and things like the data marshalling for
           bytestream buses are just not covered in the slightest.
      
         - Removal of the compressed cache type, it had zero users and was
           getting in the way of KUnit.
      
         - Addition of a maple tree based register cache, there's more work to
           do but it's already useful for some devices with a flatter data
           structure than rbtree and getting to use all the optimisation work
           Liam is doing"
      
      * tag 'regmap-v6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap:
        regmap: allow upshifting register addresses before performing operations
        regmap: Pass irq_drv_data as a parameter for set_type_config()
        regmap: Use mas_walk() instead of mas_find()
        regmap: Fix double unlock in the maple cache
        regmap: Add maple tree based register cache
        regmap: Factor out single value register syncing
        regmap: Add some basic kunit tests
        regmap: Add RAM backed register map
        regmap: Removed compressed cache support
        regmap: Support paging for buses with reg_read()/reg_write()
        regmap: Clarify error for unknown cache types
        regmap: Handle sparse caches in the default sync
        regmap: add a helper to translate the register address
        regmap: cache: Silence checkpatch warning
        regmap: cache: Return error in cache sync operations for REGCACHE_NONE
        regmap-irq: Place kernel doc of struct regmap_irq_chip in order
        regmap-irq: Add no_status support
        regmap: sdw: Remove 8-bit value size restriction
        regmap: sdw: Update misleading comment
      f5468bec