1. 29 Apr, 2024 10 commits
    • Arnd Bergmann's avatar
      Merge tag 'tee-ts-for-v6.10' of... · 40b561e5
      Arnd Bergmann authored
      Merge tag 'tee-ts-for-v6.10' of https://git.linaro.org/people/jens.wiklander/linux-tee into soc/drivers
      
      TEE driver for Trusted Services
      
      This introduces a TEE driver for Trusted Services [1].
      
      Trusted Services is a TrustedFirmware.org project that provides a
      framework for developing and deploying device Root of Trust services in
      FF-A [2] Secure Partitions. The project hosts the reference
      implementation of Arm Platform Security Architecture [3] for Arm
      A-profile devices.
      
      The FF-A Secure Partitions are accessible through the FF-A driver in
      Linux. However, the FF-A driver doesn't have a user space interface so
      user space clients currently cannot access Trusted Services. The goal of
      this TEE driver is to bridge this gap and make Trusted Services
      functionality accessible from user space.
      
      [1] https://www.trustedfirmware.org/projects/trusted-services/
      [2] https://developer.arm.com/documentation/den0077/
      [3] https://www.arm.com/architecture/security-features/platform-security
      
      * tag 'tee-ts-for-v6.10' of https://git.linaro.org/people/jens.wiklander/linux-tee:
        MAINTAINERS: tee: tstee: Add entry
        Documentation: tee: Add TS-TEE driver
        tee: tstee: Add Trusted Services TEE driver
        tee: optee: Move pool_op helper functions
        tee: Refactor TEE subsystem header files
      
      Link: https://lore.kernel.org/r/20240425073119.GA3261080@raydenSigned-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      40b561e5
    • Arnd Bergmann's avatar
      Merge tag 'optee-convert-platform-remove-callback-for-v6.10' of... · d9f843fb
      Arnd Bergmann authored
      Merge tag 'optee-convert-platform-remove-callback-for-v6.10' of https://git.linaro.org/people/jens.wiklander/linux-tee into soc/drivers
      
      OP-TEE Convert to platform remove callback returning void
      
      * tag 'optee-convert-platform-remove-callback-for-v6.10' of https://git.linaro.org/people/jens.wiklander/linux-tee:
        tee: optee: smc: Convert to platform remove callback returning void
      
      Link: https://lore.kernel.org/r/20240425072835.GA3258167@raydenSigned-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      d9f843fb
    • Arnd Bergmann's avatar
      Merge tag 'mtk-soc-for-v6.10' of... · d1734cfc
      Arnd Bergmann authored
      Merge tag 'mtk-soc-for-v6.10' of git://git.kernel.org/pub/scm/linux/kernel/git/mediatek/linux into soc/drivers
      
      MediaTek driver updates for v6.10
      
      This adds a much needed cleanup for the MediaTek CMDQ helper driver and
      also some more helper functions which will be used in drivers using the
      MediaTek Global Command Engine (GCE) HW.
      
      Also adds support for MT8188's VPPSYS mutex for MDP3 support, a new SoC
      in the mtk-socinfo driver and changes the marketing name for the pre
      existing MT8188 SoC.
      
      * tag 'mtk-soc-for-v6.10' of git://git.kernel.org/pub/scm/linux/kernel/git/mediatek/linux:
        soc: mediatek: mtk-socinfo: Correct the marketing name for MT8188GV
        soc: mediatek: mtk-socinfo: Add entry for MT8395AV/ZA Genio 1200
        soc: mediatek: mtk-mutex: Add support for MT8188 VPPSYS
        soc: mediatek: socinfo: Advertise about unknown MediaTek SoC
        soc: mediatek: cmdq: Don't log an error when gce-client-reg is not found
        soc: mediatek: mtk-cmdq: Add cmdq_pkt_acquire_event() function
        soc: mediatek: mtk-cmdq: Add cmdq_pkt_poll_addr() function
        soc: mediatek: mtk-cmdq: Add cmdq_pkt_mem_move() function
        soc: mediatek: mtk-cmdq: Add specific purpose register definitions for GCE
        soc: mediatek: cmdq: Refine cmdq_pkt_create() and cmdq_pkt_destroy()
        soc: mediatek: cmdq: Remove cmdq_pkt_flush_async() helper function
        soc: mediatek: cmdq: Add cmdq_pkt_eoc() helper function
        soc: mediatek: cmdq: Add cmdq_pkt_jump_rel() helper function
        soc: mediatek: cmdq: Rename cmdq_pkt_jump() to cmdq_pkt_jump_abs()
        soc: mediatek: cmdq: Add parameter shift_pa to cmdq_pkt_jump()
        soc: mediatek: cmdq: Fix typo of CMDQ_JUMP_RELATIVE
      
      Link: https://lore.kernel.org/r/20240429140245.238210-2-angelogioacchino.delregno@collabora.comSigned-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      d1734cfc
    • Arnd Bergmann's avatar
      Merge tag 'memory-controller-drv-6.10' of... · 75c0675f
      Arnd Bergmann authored
      Merge tag 'memory-controller-drv-6.10' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux-mem-ctrl into soc/drivers
      
      Memory controller drivers for v6.10
      
      Few cleanups:
      1. Correct module auto-loading - missing aliases in the module.
      2. Document bindings for the Samsung S5Pv210 SoC DMC memory controller.
      
      * tag 'memory-controller-drv-6.10' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux-mem-ctrl:
        memory: mtk-smi: fix module autoloading
        memory: brcmstb_memc: fix module autoloading
        dt-bindings: memory-controllers: add Samsung S5Pv210 SoC DMC
      
      Link: https://lore.kernel.org/r/20240428162001.28011-1-krzysztof.kozlowski@linaro.orgSigned-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      75c0675f
    • Arnd Bergmann's avatar
      Merge tag 'drivers-ti-sysc-for-v6.10-signed' of... · 75e4eadc
      Arnd Bergmann authored
      Merge tag 'drivers-ti-sysc-for-v6.10-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into soc/drivers
      
      Driver updates for ti-sysc
      
      A change to update the handling of no-reset-on-init quirk to make it init
      time only like it should be. And a change to add the missing copyrights.
      
      Also a series of changes to simplify the driver by dropping the old unused
      handling for interconnect targets tagged pm_runtime_irq_safe().
      
      These are all non-urgent changes and can be queued whenever suitable.
      
      * tag 'drivers-ti-sysc-for-v6.10-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
        bus: ti-sysc: Drop legacy idle quirk handling
        bus: ti-sysc: Drop legacy quirk handling for smartreflex
        bus: ti-sysc: Drop legacy quirk handling for uarts
        bus: ti-sysc: Add a description and copyrights
        bus: ti-sysc: Move check for no-reset-on-init
      
      Link: https://lore.kernel.org/r/pull-1714283210-549557@atomide.comSigned-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      75e4eadc
    • Arnd Bergmann's avatar
      Merge tag 'qcom-drivers-for-6.10' of... · 02c2c190
      Arnd Bergmann authored
      Merge tag 'qcom-drivers-for-6.10' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into soc/drivers
      
      Qualcomm driver updates for v6.10
      
      The Qualcomm SCM driver initialization order is improved, to avoid any
      potential for a client to find a half-initialized SCM instance.
      The handling of download mode bits is updated to not attempt
      QCOM_SCM_BOOT_SET_DLOAD_MODE if a io-address for the update is
      specified, and that path is changed to perform a read-modify-write to
      avoid updating unrelated bits.  Error handling is corrected in the
      peripheral authentication service (PAS) functions, to release
      interconnect bandwidth votes in the case of an error. An unwanted error
      print on allocation error is also removed from this code path.
      
      The QSEECOM allow list is marked __maybe_unused to avoid build warnings
      when built with !OF. The error handling related to the interconnect API
      is cleaned up to avoid handling the impossible IS_ERR() condition.
      
      initcall level is bumped to "core" for cmd-db and rpmh-rsc, as dependent
      drivers like regulators, interconnects and clocks are registered at this
      level.
      
      Another attempt is made to remove the strncpy() usage in cmd-db, this
      time with strtomem_pad() which has the correct characteristics.
      
      The bwmon regmap cache is changed to maple tree.
      
      After an attempt to add missing MODULE_DEVICE_TABLEs to debug drivers,
      the intention of not having them automatically load is documented.
      
      Operations on the pmic_glink client list is put under mutual exclusion,
      to avoid races when clients are being registered. pmic_glink client
      registered after the firmware notification arrived was not informed that
      the firmware was up, this is resolved.
      
      More DSPs and the apss subsystem is added to the Qualcomm sleep stats driver.
      
      Checks for in-flight regulator requests in the RPMh RSC driver is
      improved to deal with the fact that these occupy multiple registers, so
      it's insufficient to just to direct address comparison.
      
      The socinfo drivers learns about X1 Elite and SMB2360 PMIC.
      
      The maintainers entry is split between the linux-arm-msm list and
      subset that is maintained in the qcom-soc tree, to avoid some confusion
      about maintainership.
      
      * tag 'qcom-drivers-for-6.10' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux: (21 commits)
        soc: qcom: cmd-db: replace deprecated strncpy with strtomem
        soc: qcom: rpmh-rsc: Enhance check for VRM in-flight request
        firmware: qcom: scm: Modify only the download bits in TCSR register
        firmware: qcom: scm: Fix __scm and waitq completion variable initialization
        firmware: qcom: scm: Rework dload mode availability check
        firmware: qcom: scm: Remove redundant scm argument from qcom_scm_waitq_wakeup()
        firmware: qcom: scm: Remove log reporting memory allocation failure
        soc: qcom: pmic_glink: notify clients about the current state
        soc: qcom: pmic_glink: don't traverse clients list without a lock
        soc: qcom: mention intentionally broken module autoloading
        firmware: qcom: qcm: fix unused qcom_scm_qseecom_allowlist
        MAINTAINERS: Split Qualcomm SoC and linux-arm-msm entries
        soc: qcom: qcom_stats: Add DSPs and apss subsystem stats
        dt-bindings: soc: qcom: qcom,pmic-glink: document QCM6490 compatible
        soc: qcom: socinfo: Add SMB2360 PMIC
        soc: qcom: socinfo: Add X1E80100 SoC ID table entry
        dt-bindings: arm: qcom,ids: Add SoC ID for X1E80100
        soc: qcom: Update init level to core_initcall() for cmd-db and rpmh-rsc
        soc: qcom: icc-bwmon: Convert to use maple tree register cache
        firmware: qcom_scm: remove IS_ERR() checks from qcom_scm_bw_{en,dis}able()
        ...
      
      Link: https://lore.kernel.org/r/20240427160917.1431354-1-andersson@kernel.orgSigned-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      02c2c190
    • Arnd Bergmann's avatar
      Merge tag 'tegra-for-6.10-soc' of... · cc0739fe
      Arnd Bergmann authored
      Merge tag 'tegra-for-6.10-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into soc/drivers
      
      soc/tegra: Changes for v6.10-rc1
      
      This contains a single commit that adds a wake event for Ethernet for
      some devices.
      
      * tag 'tegra-for-6.10-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
        soc/tegra: pmc: Add EQOS wake event for Tegra194 and Tegra234
      
      Link: https://lore.kernel.org/r/20240426180519.3972626-1-thierry.reding@gmail.comSigned-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      cc0739fe
    • Arnd Bergmann's avatar
      Merge tag 'stm32-bus-firewall-for-v6.10-1' of... · 46671fd3
      Arnd Bergmann authored
      Merge tag 'stm32-bus-firewall-for-v6.10-1' of git://git.kernel.org/pub/scm/linux/kernel/git/atorgue/stm32 into soc/drivers
      
      STM32 Firewall bus for v6.10, round 1
      
      Highlights:
      ---------
      
      Introduce STM32 Firewall framework for STM32MP1x and STM32MP2x
      platforms. STM32MP1x(ETZPC) and STM32MP2x(RIFSC) Firewall controllers
      register to the framework to offer firewall services such as access
      granting.
      
      This series of patches is a new approach on the previous STM32 system
      bus, history is available here:
      https://lore.kernel.org/lkml/20230127164040.1047583/
      
      The need for such framework arises from the fact that there are now
      multiple hardware firewalls implemented across multiple products.
      Drivers are shared between different products, using the same code.
      When it comes to firewalls, the purpose mostly stays the same: Protect
      hardware resources. But the implementation differs, and there are
      multiple types of firewalls: peripheral, memory, ...
      
      Some hardware firewall controllers such as the RIFSC implemented on
      STM32MP2x platforms may require to take ownership of a resource before
      being able to use it, hence the requirement for firewall services to
      take/release the ownership of such resources.
      
      On the other hand, hardware firewall configurations are becoming
      more and more complex. These mecanisms prevent platform crashes
      or other firewall-related incoveniences by denying access to some
      resources.
      
      The stm32 firewall framework offers an API that is defined in
      firewall controllers drivers to best fit the specificity of each
      firewall.
      
      For every peripherals protected by either the ETZPC or the RIFSC, the
      firewall framework checks the firewall controlelr registers to see if
      the peripheral's access is granted to the Linux kernel. If not, the
      peripheral is configured as secure, the node is marked populated,
      so that the driver is not probed for that device.
      
      The firewall framework relies on the access-controller device tree
      binding. It is used by peripherals to reference a domain access
      controller. In this case a firewall controller. The bus uses the ID
      referenced by the access-controller property to know where to look
      in the firewall to get the security configuration for the peripheral.
      This allows a device tree description rather than a hardcoded peripheral
      table in the bus driver.
      
      The STM32 ETZPC device is responsible for filtering accesses based on
      security level, or co-processor isolation for any resource connected
      to it.
      
      The RIFSC is responsible for filtering accesses based on Compartment
      ID / security level / privilege level for any resource connected to
      it.
      
      * tag 'stm32-bus-firewall-for-v6.10-1' of git://git.kernel.org/pub/scm/linux/kernel/git/atorgue/stm32:
        bus: stm32_firewall: fix off by one in stm32_firewall_get_firewall()
        bus: etzpc: introduce ETZPC firewall controller driver
        bus: rifsc: introduce RIFSC firewall controller driver
        of: property: fw_devlink: Add support for "access-controller"
        firewall: introduce stm32_firewall framework
        dt-bindings: bus: document ETZPC
        dt-bindings: bus: document RIFSC
        dt-bindings: treewide: add access-controllers description
        dt-bindings: document generic access controllers
      
      Link: https://lore.kernel.org/r/7dc64226-5429-4ab7-a8c8-6053b12e3cf5@foss.st.comSigned-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      46671fd3
    • Arnd Bergmann's avatar
      Merge tag 'hisi-drivers-for-6.10' of https://github.com/hisilicon/linux-hisi into soc/drivers · 29a70200
      Arnd Bergmann authored
      HiSilicon driver updates for v6.10
      
      - Add the check for obtaining complete port attribute in the HCCS driver
      - Replace MAILBOX dependency with PCC for the HCCS driver
      
      * tag 'hisi-drivers-for-6.10' of https://github.com/hisilicon/linux-hisi:
        soc: hisilicon: kunpeng_hccs: replace MAILBOX dependency with PCC
        soc: hisilicon: kunpeng_hccs: Add the check for obtaining complete port attribute
      
      Link: https://lore.kernel.org/r/662A3EDE.5070708@hisilicon.comSigned-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      29a70200
    • Arnd Bergmann's avatar
      Merge tag 'renesas-drivers-for-v6.10-tag1' of... · 7ec7695d
      Arnd Bergmann authored
      Merge tag 'renesas-drivers-for-v6.10-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel into soc/drivers
      
      Renesas driver updates for v6.10
      
        - Identify the new RZ/V2H (R9A09G057) SoC,
        - Enable support for the TMU (Timer Unit) on R-Car Gen2 SoCs.
      
      * tag 'renesas-drivers-for-v6.10-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel:
        soc: renesas: Enable TMU support on R-Car Gen2
        soc: renesas: Add identification support for RZ/V2H SoC
      
      Link: https://lore.kernel.org/r/cover.1712915532.git.geert+renesas@glider.beSigned-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      7ec7695d
  2. 26 Apr, 2024 1 commit
  3. 25 Apr, 2024 9 commits
  4. 24 Apr, 2024 2 commits
  5. 23 Apr, 2024 16 commits
  6. 21 Apr, 2024 2 commits