1. 03 May, 2023 1 commit
    • Rafael J. Wysocki's avatar
      Merge branch 'thermal-core' · 53389edd
      Rafael J. Wysocki authored
      Merge additional thermal core and ACPI thermal changes for 6.4-rc1:
      
       - Clean up the step-wise thermal governor (Zhang Rui).
      
       - Introduce thermal_zone_device() for accessing the device field of
         struct thermal_zone_device and two drivers use it (Daniel Lezcano).
      
       - Clean up the ACPI thermal driver a bit (Daniel Lezcano).
      
       - Delete the thermal driver for Intel Menlow platforms that is not
         expected to have any users (Rafael Wysocki).
      
      * thermal-core:
        thermal: intel: menlow: Get rid of this driver
        ACPI: thermal: Move to dedicated function sysfs extra attr creation
        ACPI: thermal: Use thermal_zone_device()
        thermal: intel: pch_thermal: Use thermal driver device to write a trace
        thermal: core: Encapsulate tz->device field
        thermal: gov_step_wise: Adjust code logic to match comment
        thermal: gov_step_wise: Delete obsolete comment
      53389edd
  2. 27 Apr, 2023 8 commits
  3. 26 Apr, 2023 18 commits
    • Krzysztof Kozlowski's avatar
    • Rob Herring's avatar
      thermal/drivers/mediatek: Use of_address_to_resource() · f0fb67c2
      Rob Herring authored
      Replace of_get_address() and of_translate_address() calls with single
      call to of_address_to_resource().
      Signed-off-by: default avatarRob Herring <robh@kernel.org>
      Reviewed-by: default avatarAngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
      Signed-off-by: default avatarDaniel Lezcano <daniel.lezcano@linaro.org>
      Link: https://lore.kernel.org/r/20230319163231.226738-1-robh@kernel.org
      f0fb67c2
    • Kang Chen's avatar
      thermal/drivers/mediatek: Change clk_prepare_enable to devm_clk_get_enabled in mtk_thermal_probe · a3e9a9a5
      Kang Chen authored
      Use devm_clk_get_enabled to do automatic resource management.
      Meanwhile, remove error handling labels in the probe function and
      the whole remove function.
      Signed-off-by: default avatarKang Chen <void0red@hust.edu.cn>
      Reviewed-by: default avatarDongliang Mu <dzm91@hust.edu.cn>
      Signed-off-by: default avatarDaniel Lezcano <daniel.lezcano@linaro.org>
      Link: https://lore.kernel.org/r/20230419020749.621257-2-void0red@hust.edu.cn
      a3e9a9a5
    • Kang Chen's avatar
      thermal/drivers/mediatek: Use devm_of_iomap to avoid resource leak in mtk_thermal_probe · f05c7b7d
      Kang Chen authored
      Smatch reports:
      1. mtk_thermal_probe() warn: 'apmixed_base' from of_iomap() not released.
      2. mtk_thermal_probe() warn: 'auxadc_base' from of_iomap() not released.
      
      The original code forgets to release iomap resource when handling errors,
      fix it by switch to devm_of_iomap.
      
      Fixes: 89945047 ("thermal: mediatek: Add tsensor support for V2 thermal system")
      Signed-off-by: default avatarKang Chen <void0red@hust.edu.cn>
      Reviewed-by: default avatarDongliang Mu <dzm91@hust.edu.cn>
      Reviewed-by: default avatarAngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
      Signed-off-by: default avatarDaniel Lezcano <daniel.lezcano@linaro.org>
      Link: https://lore.kernel.org/r/20230419020749.621257-1-void0red@hust.edu.cn
      f05c7b7d
    • AngeloGioacchino Del Regno's avatar
      thermal/drivers/mediatek: Add temperature constraints to validate read · 47cbb046
      AngeloGioacchino Del Regno authored
      The AUXADC thermal v1 allows reading temperature range between -20°C to
      150°C and any value out of this range is invalid.
      
      Add new definitions for MT8173_TEMP_{MIN_MAX} and a new small helper
      mtk_thermal_temp_is_valid() to check if new readings are in range: if
      not, we tell to the API that the reading is invalid by returning
      THERMAL_TEMP_INVALID.
      
      It was chosen to introduce the helper function because, even though this
      temperature range is realistically ok for all, it comes from a downstream
      kernel driver for version 1, but here we also support v2 and v3 which may
      may have wider constraints.
      Signed-off-by: default avatarAngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
      Signed-off-by: default avatarDaniel Lezcano <daniel.lezcano@linaro.org>
      Link: https://lore.kernel.org/r/20230419061146.22246-3-angelogioacchino.delregno@collabora.com
      47cbb046
    • AngeloGioacchino Del Regno's avatar
      Revert "thermal/drivers/mediatek: Add delay after thermal banks initialization" · 0a677eea
      AngeloGioacchino Del Regno authored
      Some more testing revealed that this commit introduces a regression on some
      MT8173 Chromebooks and at least on one MT6795 Sony Xperia M5 smartphone due
      to the delay being apparently variable and machine specific.
      
      Another solution would be to delay for a bit more (~70ms) but this is not
      feasible for two reasons: first of all, we're adding an even bigger delay
      in a probe function; second, some machines need less, some may need even
      more, making the msleep at probe solution highly suboptimal.
      
      This reverts commit 10debf8c.
      
      Fixes: 10debf8c ("thermal/drivers/mediatek: Add delay after thermal banks initialization")
      Reported-by: default avatar"kernelci.org bot" <bot@kernelci.org>
      Signed-off-by: default avatarAngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
      Signed-off-by: default avatarDaniel Lezcano <daniel.lezcano@linaro.org>
      Link: https://lore.kernel.org/r/20230419061146.22246-2-angelogioacchino.delregno@collabora.com
      0a677eea
    • Chenggang Wang's avatar
      thermal/drivers/cpuidle_cooling: Delete unmatched comments · 2912d341
      Chenggang Wang authored
      The function no longer returns a value, synchronize the comments.
      
      Signed-off-by: wangchenggang@vivo.com
      Acked-by: default avatarViresh Kumar <viresh.kumar@linaro.org>
      Signed-off-by: default avatarDaniel Lezcano <daniel.lezcano@linaro.org>
      Link: https://lore.kernel.org/r/1681789108-28130-1-git-send-email-wangchenggang@vivo.com
      2912d341
    • Marijn Suijten's avatar
      dt-bindings: thermal: Use generic ADC node name in examples · d9f7eeaf
      Marijn Suijten authored
      Update the examples to reflect a future requirement for the generic
      `channel` node name on ADC channel nodes, while conveying the board name
      of the channel in a label instead.
      Signed-off-by: default avatarMarijn Suijten <marijn.suijten@somainline.org>
      Acked-by: default avatarKrzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
      Signed-off-by: default avatarDaniel Lezcano <daniel.lezcano@linaro.org>
      Link: https://lore.kernel.org/r/20230410202917.247666-4-marijn.suijten@somainline.org
      d9f7eeaf
    • Stefan Wahren's avatar
      dt-bindings: imx-thermal: Add imx6sll and imx6ul compatible · a8a23307
      Stefan Wahren authored
      Currently the dtbs_check for imx6 generates warnings like this:
      
      ['fsl,imx6sll-tempmon', 'fsl,imx6sx-tempmon'] is too long
      
      So add them to the devicetree binding.
      Signed-off-by: default avatarStefan Wahren <stefan.wahren@i2se.com>
      Reviewed-by: default avatarKrzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
      Signed-off-by: default avatarDaniel Lezcano <daniel.lezcano@linaro.org>
      Link: https://lore.kernel.org/r/20230410205803.45853-4-stefan.wahren@i2se.com
      a8a23307
    • 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
  4. 25 Apr, 2023 13 commits
    • Linus Torvalds's avatar
      Merge tag 'platform-drivers-x86-v6.4-1' of... · 088e0c18
      Linus Torvalds authored
      Merge tag 'platform-drivers-x86-v6.4-1' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86
      
      Pull x86 platform driver updates from Hans de Goede:
      
       -  AMD PMC and PMF drivers:
          - Numerous bugfixes
      
       -  Intel Speed Select Technology (ISST):
          - TPMI (Topology Aware Register and PM Capsule Interface) support
            for ISST support on upcoming processor models
          - Various other improvements / new hw support
          - tools/intel-speed-select: TPMI support + other improvements
      
       -  Intel In Field Scan (IFS):
          - Add Array Bist test support
      
       -  New drivers:
          - intel_bytcrc_pwrsrc Crystal Cove PMIC pwrsrc / reset-reason driver
          - lenovo-ymc Yoga Mode Control driver for reporting SW_TABLET_MODE
          - msi-ec Driver for MSI laptop EC features like battery charging limits
      
       -  apple-gmux:
          - Support for new MMIO based models (T2 Macs)
          - Honor acpi_backlight= auto-detect-code + kernel cmdline option
            to switch between gmux and apple_bl backlight drivers and remove
            own custom handling for this
      
       -  x86-android-tablets: Refactor / cleanup + new hw support
      
       -  Miscellaneous other cleanups / fixes
      
      * tag 'platform-drivers-x86-v6.4-1' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86: (178 commits)
        platform/x86: x86-android-tablets: Add accelerometer support for Yoga Tablet 2 1050/830 series
        platform/x86: x86-android-tablets: Add "yogabook-touch-kbd-digitizer-switch" pdev for Lenovo Yoga Book
        platform/x86: x86-android-tablets: Add Wacom digitizer info for Lenovo Yoga Book
        platform/x86: x86-android-tablets: Update Yoga Book HiDeep touchscreen comment
        platform/x86: thinkpad_acpi: Fix Embedded Controller access on X380 Yoga
        platform/x86/intel/sdsi: Change mailbox timeout
        platform/x86/intel/pmt: Ignore uninitialized entries
        platform/x86: amd: pmc: provide user message where s0ix is not supported
        platform/x86/amd: pmc: Fix memory leak in amd_pmc_stb_debugfs_open_v2()
        mlxbf-bootctl: Add sysfs file for BlueField boot fifo
        platform/x86: amd: pmc: Remove __maybe_unused from amd_pmc_suspend_handler()
        platform/x86/intel/pmc/mtl: Put GNA/IPU/VPU devices in D3
        platform/x86/amd: pmc: Move out of BIOS SMN pair for STB init
        platform/x86/amd: pmc: Utilize SMN index 0 for driver probe
        platform/x86/amd: pmc: Move idlemask check into `amd_pmc_idlemask_read`
        platform/x86/amd: pmc: Don't dump data after resume from s0i3 on picasso
        platform/x86/amd: pmc: Hide SMU version and program attributes for Picasso
        platform/x86/amd: pmc: Don't try to read SMU version on Picasso
        platform/x86/amd/pmf: Move out of BIOS SMN pair for driver probe
        platform/x86: intel-uncore-freq: Add client processors
        ...
      088e0c18
    • Linus Torvalds's avatar
      Merge tag 'tag-chrome-platform-for-v6.4' of... · 07d971ab
      Linus Torvalds authored
      Merge tag 'tag-chrome-platform-for-v6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/chrome-platform/linux
      
      Pull chrome platform updates from Tzung-Bi Shih:
       "Improvements:
      
         - Replace fake flexible arrays with flexible-array member
      
        Misc:
      
         - Minor cleanups and fixes"
      
      * tag 'tag-chrome-platform-for-v6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/chrome-platform/linux:
        platform/chrome: wilco_ec: remove return value check of debugfs_create_dir()
        platform/chrome: cros_ec_debugfs: fix kernel-doc warning
        platform/chrome: cros_ec: Separate logic for getting panic info
        platform/chrome: cros_typec_switch: Add missing fwnode_handle_put()
        platform/chrome: cros_ec: remove unneeded label and if-condition
        platform/chrome: Replace fake flexible arrays with flexible-array member
      07d971ab
    • Linus Torvalds's avatar
      Merge tag 'media/v6.4-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media · 4ea95696
      Linus Torvalds authored
      Pull media updates from Mauro Carvalho Chehab:
      
       - Removal of some old unused sensor drivers: ad9389b, m5mols, mt9m032,
         mt9t001, noon010pc30, s5k6aa, sr030pc30 and vs6624
      
       - New i.MX8 image sensor interface driver
      
       - Some new RC keymaps
      
       - lots of cleanups at atomisp driver to make it support standard
         features present on other webcam drivers
      
       - the cx18 and saa7146 now uses VB2
      
       - lots of cleanups and driver improvements
      
      * tag 'media/v6.4-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (460 commits)
        media: ov5670: Fix probe on ACPI
        media: nxp: imx8-isi: Remove 300ms sleep after enabling channel
        media: nxp: imx8-isi: Replace udelay() with fsleep()
        media: nxp: imx8-isi: Drop partial support for i.MX8QM and i.MX8QXP
        media: nxp: Add i.MX8 ISI driver
        media: dt-bindings: media: Add i.MX8 ISI DT bindings
        media: atomisp: gmin_platform: Add Lenovo Ideapad Miix 310 gmin_vars
        media: atomisp: gmin_platform: Make DMI quirks take precedence over the _DSM table
        media: atomisp: Remove struct atomisp_sub_device index field
        media: atomisp: Drop support for streaming from 2 sensors at once
        media: atomisp: Remove atomisp_try_fmt() call from atomisp_set_fmt()
        media: atomisp: Remove unused ATOM_ISP_MAX_WIDTH_TMP and ATOM_ISP_MAX_HEIGHT_TMP
        media: atomisp: Remove snr_mbus_fmt local var from atomisp_try_fmt()
        media: atomisp: Remove custom V4L2_CID_FMT_AUTO control
        media: atomisp: Remove continuous mode related code from atomisp_set_fmt()
        media: atomisp: Remove duplicate atomisp_[start|stop]_streaming() prototypes
        media: atomisp: gc0310: Switch over to ACPI powermanagement
        media: atomisp: gc0310: Use devm_kzalloc() for data struct
        media: atomisp: gc0310: Add runtime-pm support
        media: atomisp: gc0310: Delay power-on till streaming is started
        ...
      4ea95696
    • Linus Torvalds's avatar
      Merge tag 'drm-next-2023-04-24' of git://anongit.freedesktop.org/drm/drm · c8cc58e2
      Linus Torvalds authored
      Pull drm updates from Dave Airlie:
       "There is a new Qualcomm accel driver for their QAIC, dma-fence got a
        deadline feature added, lots of refactoring around fbdev emulation,
        and the usual pre-release hw enablements from AMD and Intel and fixes
        everywhere.
      
        New drivers:
         - add QAIC acceleration driver
      
        dma-buf:
         - constify kobj_type structs
         - Reject prime DMA-Buf attachment if get_sg_table is missing.
      
        fbdev:
         - cmdline parser fixes
         - implement fbdev emulation for GEM DMA drivers
         - always use shadow buffer in fbdev emulation helpers
      
        dma-fence:
         - add deadline hint to fences
         - signal private stub fence
      
        core:
         - improve DisplayID 2.0 and EDID parsing
         - add gem eviction function + callback
         - prep to convert shmem helper to GEM resv lock
         - move suballocator from radeon/amdgpu to core for Xe
         - HPD polling fixes
         - Documentation improvements
         - Add atomic enable_plane callback
         - use tgid instead of pid for client tracking
         - DP: Add SDP Error Detection Configuration Register
         - Add prime import/export to vram-helper
         - use pci aperture helpers in more drivers
      
        panel:
         - Radxa 8/10HD support
         - Samsung AMD495QA01 support
         - Elida KD50T048A
         - Sony TD4353
         - Novatek NT36523
         - STARRY 2081101QFH032011-53G
         - B133UAN01.0
         - AUO NE135FBM-N41
      
        i915:
         - More MTL enabling
         - fix s/r problems with MEI/PXP
         - Implement fb_dirty for PSR,FBC,DRRS fixes
         - Fix eDP+DSI dual panel systems
         - Fix issue #6333: "list_add corruption" and full system lockup from
           performance monitoring
         - Don't use stolen memory or BAR for ring buffers on LLC platforms
         - Make sure DSM size has correct 1MiB granularity on Gen12+
         - Whitelist COMMON_SLICE_CHICKEN3 for UMD access on Gen12+
         - Add engine TLB invalidation for Meteorlake
         - Fix GSC races on driver load/unload on Meteorlake+
         - Make kobj_type structures constant
         - Move fd_install after last use of fence
         - wm/vblank refactoring
         - display code refactoring
         - Create GSC submission targeting HDCP and PXP usages on MTL+
         - Enable HDCP2.x via GSC CS
         - Fix context runtime accounting on sysfs fdinfo for heavy workloads
         - Use i915 instead of dev_priv insied the file_priv structure
         - Replace fake flex-array with flexible-array member
      
        amdgpu:
         - Make kobj structures const
         - Generalize dmabuf import to work with KFD
         - Add capped/uncapped workload handling for supported APUs
         - Expose additional memory stats via fdinfo
         - Register vga_switcheroo for apple-gmux
         - Initial NBIO7.9, GC 9.4.3, GFXHUB 1.2, MMHUB 1.8 support
         - Initial DC FAM infrastructure
         - Link DC backlight to connector device rather than PCI device
         - Add sysfs nodes for secondary VCN clocks
      
        amdkfd:
         - Make kobj structures const
         - Support for exporting buffers via dmabuf
         - Multi-VMA page migration fixes
         - initial GC 9.4.3 support
      
        radeon:
         - iMac fix
         - convert to client based fbdev emulation
      
        habanalabs:
         - Add opcodes to the CS ioctl to allow user to stall/resume specific
           engines inside Gaudi2.
         - INFO ioctl the amount of device memory that the driver and f/w
           reserve for themselves.
         - INFO ioctl a bit-mask of the available rotator engines
         - INFO ioctl the register's address of the f/w that should be used to
           trigger interrupts
         - INFO ioctl two new opcodes to fetch information on h/w and f/w
           events
         - Enable graceful reset mechanism for compute-reset.
         - Align to the latest firmware specs.
         - Enforce the release order of the compute device and dma-buf.
      
        msm:
         - UBWC decoder programming rework
         - SM8550, SM8450 bindings update
         - uapi C++ fix
         - a3xx and a4xx devfreq support
         - GPU and GEM updates to avoid allocations which could trigger
           reclaim (shrinker) in fence signaling path
         - dma-fence deadline hint support and wait-boost
         - a640/650 speed bin support
      
        cirrus:
         - convert to regular atomic helpers
         - add damage clipping
      
        mediatek:
         - 10-bit overlay support
         - mt8195 support
         - Only trigger DRM HPD events if bridge is attached
         - Change the aux retries times when receiving AUX_DEFER
      
        rockchip:
         - add 4K support
      
        vc4:
         - use drm_gem_objects
      
        virtio:
         - allow KMS support to be disabled
         - add damage clipping
      
        vmwgfx:
         - buffer object lifetime fixes
      
        exynos:
         - move MIPI DSI driver to drm bridge for iMX sharing
         - use kernel fbdev emulation
      
        panfrost:
         - add support for mali MT81xx devices
         - add speed binning support
      
        lima:
         - add usage stats
      
        tegra:
         - fbdev client conversion
      
        vkms:
         - Add primary plane positioning support"
      
      * tag 'drm-next-2023-04-24' of git://anongit.freedesktop.org/drm/drm: (1495 commits)
        drm/i915/dp_mst: Fix active port PLL selection for secondary MST streams
        drm/exynos: Implement fbdev emulation as in-kernel client
        drm/exynos: Initialize fbdev DRM client
        drm/exynos: Remove fb_helper from struct exynos_drm_private
        drm/exynos: Remove struct exynos_drm_fbdev
        drm/exynos: Remove exynos_gem from struct exynos_drm_fbdev
        drm/i915: Fix memory leaks in i915 selftests
        drm/i915: Make intel_get_crtc_new_encoder() less oopsy
        drm/i915/gt: Avoid out-of-bounds access when loading HuC
        drm/amdgpu: add some basic elements for multiple XCD case
        drm/amdgpu: move vmhub out of amdgpu_ring_funcs (v4)
        Revert "drm/amdgpu: enable ras for mp0 v13_0_10 on SRIOV"
        drm/amdgpu: add common ip block for GC 9.4.3
        drm/amd/display: Add logging when DP link training Clock recovery is Successful
        drm/amdgpu: add common early init support for GC 9.4.3
        drm/amdgpu: switch to v9_4_3 gfx_funcs callbacks for GC 9.4.3
        drm/amd/display: Add logging when setting DP sink power state fails
        drm/amdkfd: Add gfx_target_version for GC 9.4.3
        drm/amdkfd: Enable HW_UPDATE_RPTR on GC 9.4.3
        drm/amdgpu: reserve the old gc_11_0_*_mes.bin
        ...
      c8cc58e2
    • Linus Torvalds's avatar
      Merge tag 'slab-for-6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/vbabka/slab · 736b378b
      Linus Torvalds authored
      Pull slab updates from Vlastimil Babka:
       "The main change is naturally the SLOB removal. Since its deprecation
        in 6.2 I've seen no complaints so hopefully SLUB_(TINY) works well for
        everyone and we can proceed.
      
        Besides the code cleanup, the main immediate benefit will be allowing
        kfree() family of function to work on kmem_cache_alloc() objects,
        which was incompatible with SLOB. This includes kfree_rcu() which had
        no kmem_cache_free_rcu() counterpart yet and now it shouldn't be
        necessary anymore.
      
        Besides that, there are several small code and comment improvements
        from Thomas, Thorsten and Vernon"
      
      * tag 'slab-for-6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/vbabka/slab:
        mm/slab: document kfree() as allowed for kmem_cache_alloc() objects
        mm/slob: remove slob.c
        mm/slab: remove CONFIG_SLOB code from slab common code
        mm, pagemap: remove SLOB and SLQB from comments and documentation
        mm, page_flags: remove PG_slob_free
        mm/slob: remove CONFIG_SLOB
        mm/slub: fix help comment of SLUB_DEBUG
        mm: slub: make kobj_type structure constant
        slab: Adjust comment after refactoring of gfp.h
      736b378b
    • Linus Torvalds's avatar
      Merge tag 'livepatching-for-6.4' of... · 11704531
      Linus Torvalds authored
      Merge tag 'livepatching-for-6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/livepatching/livepatching
      
      Pull livepatching updates from Petr Mladek:
      
       - Code and documentation cleanup
      
      * tag 'livepatching-for-6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/livepatching/livepatching:
        livepatch: Make kobj_type structures constant
        livepatch: fix ELF typos
      11704531
    • Linus Torvalds's avatar
      Merge tag 'printk-for-6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/printk/linux · 7ec85f3e
      Linus Torvalds authored
      Pull printk updates from Petr Mladek:
      
       - Code cleanup and dead code removal
      
      * tag 'printk-for-6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/printk/linux:
        printk: Remove obsoleted check for non-existent "user" object
        lib/vsprintf: Use isodigit() for the octal number check
        Remove orphaned CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT
      7ec85f3e
    • Linus Torvalds's avatar
      Merge tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux · df45da57
      Linus Torvalds authored
      Pull arm64 updates from Will Deacon:
       "ACPI:
      
         - Improve error reporting when failing to manage SDEI on AGDI device
           removal
      
        Assembly routines:
      
         - Improve register constraints so that the compiler can make use of
           the zero register instead of moving an immediate #0 into a GPR
      
         - Allow the compiler to allocate the registers used for CAS
           instructions
      
        CPU features and system registers:
      
         - Cleanups to the way in which CPU features are identified from the
           ID register fields
      
         - Extend system register definition generation to handle Enum types
           when defining shared register fields
      
         - Generate definitions for new _EL2 registers and add new fields for
           ID_AA64PFR1_EL1
      
         - Allow SVE to be disabled separately from SME on the kernel
           command-line
      
        Tracing:
      
         - Support for "direct calls" in ftrace, which enables BPF tracing for
           arm64
      
        Kdump:
      
         - Don't bother unmapping the crashkernel from the linear mapping,
           which then allows us to use huge (block) mappings and reduce TLB
           pressure when a crashkernel is loaded.
      
        Memory management:
      
         - Try again to remove data cache invalidation from the coherent DMA
           allocation path
      
         - Simplify the fixmap code by mapping at page granularity
      
         - Allow the kfence pool to be allocated early, preventing the rest of
           the linear mapping from being forced to page granularity
      
        Perf and PMU:
      
         - Move CPU PMU code out to drivers/perf/ where it can be reused by
           the 32-bit ARM architecture when running on ARMv8 CPUs
      
         - Fix race between CPU PMU probing and pKVM host de-privilege
      
         - Add support for Apple M2 CPU PMU
      
         - Adjust the generic PERF_COUNT_HW_BRANCH_INSTRUCTIONS event
           dynamically, depending on what the CPU actually supports
      
         - Minor fixes and cleanups to system PMU drivers
      
        Stack tracing:
      
         - Use the XPACLRI instruction to strip PAC from pointers, rather than
           rolling our own function in C
      
         - Remove redundant PAC removal for toolchains that handle this in
           their builtins
      
         - Make backtracing more resilient in the face of instrumentation
      
        Miscellaneous:
      
         - Fix single-step with KGDB
      
         - Remove harmless warning when 'nokaslr' is passed on the kernel
           command-line
      
         - Minor fixes and cleanups across the board"
      
      * tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux: (72 commits)
        KVM: arm64: Ensure CPU PMU probes before pKVM host de-privilege
        arm64: kexec: include reboot.h
        arm64: delete dead code in this_cpu_set_vectors()
        arm64/cpufeature: Use helper macro to specify ID register for capabilites
        drivers/perf: hisi: add NULL check for name
        drivers/perf: hisi: Remove redundant initialized of pmu->name
        arm64/cpufeature: Consistently use symbolic constants for min_field_value
        arm64/cpufeature: Pull out helper for CPUID register definitions
        arm64/sysreg: Convert HFGITR_EL2 to automatic generation
        ACPI: AGDI: Improve error reporting for problems during .remove()
        arm64: kernel: Fix kernel warning when nokaslr is passed to commandline
        perf/arm-cmn: Fix port detection for CMN-700
        arm64: kgdb: Set PSTATE.SS to 1 to re-enable single-step
        arm64: move PAC masks to <asm/pointer_auth.h>
        arm64: use XPACLRI to strip PAC
        arm64: avoid redundant PAC stripping in __builtin_return_address()
        arm64/sme: Fix some comments of ARM SME
        arm64/signal: Alloc tpidr2 sigframe after checking system_supports_tpidr2()
        arm64/signal: Use system_supports_tpidr2() to check TPIDR2
        arm64/idreg: Don't disable SME when disabling SVE
        ...
      df45da57
    • Linus Torvalds's avatar
      Merge tag 'asm-generic-6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic · 53b5e72b
      Linus Torvalds authored
      Pull asm-generic updates from Arnd Bergmann:
       "These are various cleanups, fixing a number of uapi header files to no
        longer reference CONFIG_* symbols, and one patch that introduces the
        new CONFIG_HAS_IOPORT symbol for architectures that provide working
        inb()/outb() macros, as a preparation for adding driver dependencies
        on those in the following release"
      
      * tag 'asm-generic-6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic:
        Kconfig: introduce HAS_IOPORT option and select it as necessary
        scripts: Update the CONFIG_* ignore list in headers_install.sh
        pktcdvd: Remove CONFIG_CDROM_PKTCDVD_WCACHE from uapi header
        Move bp_type_idx to include/linux/hw_breakpoint.h
        Move ep_take_care_of_epollwakeup() to fs/eventpoll.c
        Move COMPAT_ATM_ADDPARTY to net/atm/svc.c
      53b5e72b
    • Linus Torvalds's avatar
      Merge tag 'soc-dt-6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · d53c3eaa
      Linus Torvalds authored
      Pull ARM SoC devicetree updates from Arnd Bergmann:
       "The devicetree changes overall are again dominated by the Qualcomm
        Snapdragon platform that weighs in at over 300 changesets, but there
        are many updates across other platforms as well, notably Mediatek,
        NXP, Rockchips, Renesas, TI, Samsung and ST Microelectronics. These
        all add new features for existing machines, as well as new machines
        and SoCs.
      
        The newly added SoCs are:
      
         - Allwinner T113-s, an Cortex-A7 based variant of the RISC-V based D1
           chip.
      
         - StarFive JH7110, a RISC-V SoC based on the Sifive U74 core like its
           JH7100 predecessor, but with additional CPU cores and a GPU.
      
         - Apple M2 as used in current Macbook Air/Pro and Mac Mini gets
           added, with comparable support as its M1 predecessor.
      
         - Unisoc UMS512 (Tiger T610) is a midrange smartphone SoC
      
         - Qualcomm IPQ5332 and IPQ9574 are Wi-Fi 7 networking SoCs, based on
           the Cortex-A53 and Cortex-A73 cores, respectively.
      
         - Qualcomm sa8775p is an automotive SoC derived from the Snapdragon
           family.
      
        Including the initial board support for the added SoC platforms, there
        are 52 new machines. The largest group are 19 boards industrial
        embedded boards based on the NXP i.MX6 (32-bit) and i.MX8 (64-bit)
        families.
      
        Others include:
      
         - Two boards based on the Allwinner f1c200s ultra-low-cost chip
      
         - Three 'Banana Pi' variants based on the Amlogic g12b (A311D, S922X)
           SoC.
      
         - The Gl.Inet mv1000 router based on Marvell Armada 3720
      
         - A Wifi/LTE Dongle based on Qualcomm msm8916
      
         - Two robotics boards based on Qualcomm QRB chips
      
         - Three Snapdragon based phones made by Xiaomi
      
         - Five developments boards based on various Rockchip SoCs, including
           the rk3588s-khadas-edge2 and a few NanoPi models
      
         - The AM625 Beagleplay industrial SBC
      
        Another 14 machines get removed: both boards for the obsolete 'oxnas'
        platform, three boards for the Renesas r8a77950 SoC that were only for
        pre-production chips, and various chromebook models based on the
        Qualcomm Sc7180 'trogdor' design that were never part of products"
      
      * tag 'soc-dt-6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (836 commits)
        arm64: dts: rockchip: Add support for volume keys to rk3399-pinephone-pro
        arm64: dts: rockchip: Add vdd_cpu_big regulators to rk3588-rock-5b
        arm64: dts: rockchip: Use generic name for es8316 on Pinebook Pro and Rock 5B
        arm64: dts: rockchip: Drop RTC clock-frequency on rk3588-rock-5b
        arm64: dts: apple: t8112: Add PWM controller
        arm64: dts: apple: t600x: Add PWM controller
        arm64: dts: apple: t8103: Add PWM controller
        arm64: dts: rockchip: Add pinctrl gpio-ranges for rk356x
        ARM: dts: nomadik: Replace deprecated spi-gpio properties
        ARM: dts: aspeed-g6: Add UDMA node
        ARM: dts: aspeed: greatlakes: add mctp device
        ARM: dts: aspeed: greatlakes: Add gpio names
        ARM: dts: aspeed: p10bmc: Change power supply info
        arm64: dts: mediatek: mt6795-xperia-m5: Add Bosch BMM050 Magnetometer
        arm64: dts: mediatek: mt6795-xperia-m5: Add Bosch BMA255 Accelerometer
        arm64: dts: mediatek: mt6795: Add tertiary PWM node
        arm64: dts: rockchip: add panel to Anbernic RG353 series
        dt-bindings: arm: Add Data Modul i.MX8M Plus eDM SBC
        dt-bindings: arm: fsl: Add chargebyte Tarragon
        dt-bindings: vendor-prefixes: add chargebyte
        ...
      d53c3eaa
    • Linus Torvalds's avatar
      Merge tag 'soc-defconfig-6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · 672d2dae
      Linus Torvalds authored
      Pull ARM SoC defconfig updates from Arnd Bergmann:
       "Most of the changes just enable additional device drivers that were
        added or that are often used on major platforms.
      
        The virtconfig added last time now disables additional drivers to
        shrink kernels for virtual machines.
      
        The obsolete oxnas_v6_defconfig file is removed in turn"
      
      * tag 'soc-defconfig-6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (33 commits)
        ARM: config: Update Vexpress defconfig
        arm64: defconfig: enable building the nvmem-reboot-mode module
        arm64: defconfig: Enable TI ADC driver
        arm64: defconfig: Enable TI TSCADC driver
        arm64: defconfig: Enable security accelerator driver for TI K3 SoCs
        arm64: defconfig: Enable crypto test module
        ARM: multi_v7_defconfig: Add OPTEE support
        ARM: configs: Update U8500 defconfig
        ARM: imx_v4_v5_defconfig: Build CONFIG_IMX_SDMA as module
        arm64: defconfig: Enable IPQ9574 SoC base configs
        ARM: imx_v6_v7_defconfig: Enable Tarragon peripheral drivers
        arm64: defconfig: Enable ARM CoreSight PMU driver
        arm64: defconfig: remove duplicate TYPEC_UCSI & QCOM_PMIC_GLINK
        ARM: configs: remove oxnas_v6_defconfig
        arm64: defconfig: Enable audio drivers for AM62-SK
        arm64: defconfig: Enable drivers for BeaglePlay
        ARM: imx_v6_v7_defconfig: Select CONFIG_DRM_I2C_NXP_TDA998X
        arm64: defconfig: Enable Virtio RNG driver as built in
        arm64: defconfig: Enable CAN PHY transceiver driver
        arm64: defconfig: add PMIC GLINK modules
        ...
      672d2dae
    • Linus Torvalds's avatar
      Merge tag 'soc-drivers-6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · a9070477
      Linus Torvalds authored
      Pull ARM SoC driver updates from Arnd Bergmann:
       "The most notable updates this time are for Qualcomm Snapdragon
        platforms. The Inline-Crypto-Engine gets a new DT binding and driver,
        and a number of drivers now support additional Snapdragon variants, in
        particular the rsc, scm, geni, bwm, glink and socinfo, while the llcc
        (edac) and rpm drivers get notable functionality updates.
      
        Updates on other platforms include:
      
         - Various updates to the Mediatek mutex and mmsys drivers, including
           support for the Helio X10 SoC
      
         - Support for unidirectional mailbox channels in Arm SCMI firmware
      
         - Support for per cpu asynchronous notification in OP-TEE firmware
      
         - Minor updates for memory controller drivers.
      
         - Minor updates for Renesas, TI, Amlogic, Apple, Broadcom, Tegra,
           Allwinner, Versatile Express, Canaan, Microchip, Mediatek and i.MX
           SoC drivers, mainly updating the use of MODULE_LICENSE() macros and
           obsolete DT driver interfaces"
      
      * tag 'soc-drivers-6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (165 commits)
        soc: ti: smartreflex: Simplify getting the opam_sr pointer
        bus: vexpress-config: Add explicit of_platform.h include
        soc: mediatek: Kconfig: Add MTK_CMDQ dependency to MTK_MMSYS
        memory: mtk-smi: mt8365: Add SMI Support
        dt-bindings: memory-controllers: mediatek,smi-larb: add mt8365
        dt-bindings: memory-controllers: mediatek,smi-common: add mt8365
        memory: tegra: read values from correct device
        dt-bindings: crypto: Add Qualcomm Inline Crypto Engine
        soc: qcom: Make the Qualcomm UFS/SDCC ICE a dedicated driver
        dt-bindings: firmware: document Qualcomm QCM2290 SCM
        soc: qcom: rpmh-rsc: Support RSC v3 minor versions
        soc: qcom: smd-rpm: Use GFP_ATOMIC in write path
        soc/tegra: fuse: Remove nvmem root only access
        soc/tegra: cbb: tegra194: Use of_address_count() helper
        soc/tegra: cbb: Remove MODULE_LICENSE in non-modules
        ARM: tegra: Remove MODULE_LICENSE in non-modules
        soc/tegra: flowctrl: Use devm_platform_get_and_ioremap_resource()
        soc: tegra: cbb: Drop empty platform remove function
        firmware: arm_scmi: Add support for unidirectional mailbox channels
        dt-bindings: firmware: arm,scmi: Support mailboxes unidirectional channels
        ...
      a9070477
    • Linus Torvalds's avatar
      Merge tag 'soc-arm-6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · 18032df5
      Linus Torvalds authored
      Pull ARM SoC updates from Arnd Bergmann:
       "The Oxford Semiconductor OX810/OX820 'Oxnas' platform gets retired
        after the ARM11MPcore processor keeps causing problems in certain
        corner cases. OX820 was the only remaining SoC with this core after
        CNS3xxx got retired, and its driver support was never completely
        merged upstream. The Arm 'Realview' reference platform still supports
        ARM11MPCore in principle, but this was never a product, and the CPU
        support will get cleaned up later on.
      
        Another series updates the mv78xx0 platform, which has been similarly
        neglected for a while, but should work properly again now.
      
        The other changes are minor cleanups across platforms, mostly
        converting code to more modern interfaces for DT nodes and removing
        some more code as a follow-up to the large-scale platform removal in
        linux-6.3"
      
      * tag 'soc-arm-6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (28 commits)
        ARM: mv78xx0: fix entries for gpios, buttons and usb ports
        ARM: mv78xx0: add code to enable XOR and CRYPTO engines on mv78xx0
        ARM: mv78xx0: set the correct driver for the i2c RTC
        ARM: mv78xx0: adjust init logic for ts-wxl to reflect single core dev
        soc: fsl: Use of_property_present() for testing DT property presence
        ARM: pxa: Use of_property_read_bool() for boolean properties
        firmware: turris-mox-rwtm: make kobj_type structure constant
        ARM: oxnas: remove OXNAS support
        ARM: sh-mobile: Use of_cpu_node_to_id() to read CPU node 'reg'
        ARM: OMAP2+: hwmod: Use kzalloc for allocating only one element
        ARM: OMAP2+: Remove the unneeded result variable
        ARM: OMAP2+: fix repeated words in comments
        ARM: OMAP2+: remove obsolete config OMAP3_SDRC_AC_TIMING
        ARM: OMAP2+: Use of_address_to_resource()
        ARM: OMAP2+: Use of_property_read_bool() for boolean properties
        ARM: omap1: remove redundant variables err
        ARM: omap1: Kconfig: Fix indentation
        ARM: bcm: Use of_address_to_resource()
        ARM: mstar: remove unused config MACH_MERCURY
        ARM: spear: remove obsolete config MACH_SPEAR600
        ...
      18032df5