1. 16 Oct, 2023 7 commits
    • Arnd Bergmann's avatar
      Merge tag 'ffa-updates-6.7' of... · d3cd3b55
      Arnd Bergmann authored
      Merge tag 'ffa-updates-6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/sudeep.holla/linux into soc/drivers
      
      Arm FF-A updates for v6.7
      
      The main addition is the initial support for the notifications and
      memory transaction descriptor changes added in FF-A v1.1 specification.
      
      The notification mechanism enables a requester/sender endpoint to notify
      a service provider/receiver endpoint about an event with non-blocking
      semantics. A notification is akin to the doorbell between two endpoints
      in a communication protocol that is based upon the doorbell/mailbox
      mechanism.
      
      The framework is responsible for the delivery of the notification from
      the ender to the receiver without blocking the sender. The receiver
      endpoint relies on the OS scheduler for allocation of CPU cycles to
      handle a notification.
      
      OS is referred as the receiver’s scheduler in the context of notifications.
      The framework is responsible for informing the receiver’s scheduler that
      the receiver must be run since it has a pending notification.
      
      The series also includes support for the new format of memory transaction
      descriptors introduced in v1.1 specification.
      
      Apart from the main additions, it includes minor fixes to re-enable FF-A
      drivers usage of 32bit mode of messaging and kernel warning due to the
      missing assignment of IDR allocation ID to the FFA device. It also adds
      emitting 'modalias' to the base attribute of FF-A devices.
      
      * tag 'ffa-updates-6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/sudeep.holla/linux:
        firmware: arm_ffa: Upgrade the driver version to v1.1
        firmware: arm_ffa: Update memory descriptor to support v1.1 format
        firmware: arm_ffa: Switch to using ffa_mem_desc_offset() accessor
        KVM: arm64: FFA: Remove access of endpoint memory access descriptor array
        firmware: arm_ffa: Simplify the computation of transmit and fragment length
        firmware: arm_ffa: Add notification handling mechanism
        firmware: arm_ffa: Add interface to send a notification to a given partition
        firmware: arm_ffa: Add interfaces to request notification callbacks
        firmware: arm_ffa: Add schedule receiver callback mechanism
        firmware: arm_ffa: Initial support for scheduler receiver interrupt
        firmware: arm_ffa: Implement the NOTIFICATION_INFO_GET interface
        firmware: arm_ffa: Implement the FFA_NOTIFICATION_GET interface
        firmware: arm_ffa: Implement the FFA_NOTIFICATION_SET interface
        firmware: arm_ffa: Implement the FFA_RUN interface
        firmware: arm_ffa: Implement the notification bind and unbind interface
        firmware: arm_ffa: Implement notification bitmap create and destroy interfaces
        firmware: arm_ffa: Update the FF-A command list with v1.1 additions
        firmware: arm_ffa: Emit modalias for FF-A devices
        firmware: arm_ffa: Allow the FF-A drivers to use 32bit mode of messaging
        firmware: arm_ffa: Assign the missing IDR allocation ID to the FFA device
      
      Link: https://lore.kernel.org/r/20231010124354.1620064-1-sudeep.holla@arm.comSigned-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      d3cd3b55
    • Arnd Bergmann's avatar
      Merge tag 'scmi-updates-6.7' of... · d1debb7b
      Arnd Bergmann authored
      Merge tag 'scmi-updates-6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/sudeep.holla/linux into soc/drivers
      
      Arm SCMI updates for v6.7
      
      Main additions this time include:
      
      1. SCMI v3.2 clock configuration support:
         This helps to retrieve the enabled state of a clock as well as allow
         to set OEM specific clock configurations.
      
      2. Support for generic performance scaling(DVFS):
         The current SCMI DVFS support is limited to the CPUs in the kernel.
         This extension enables it to used for all kind of devices and not
         only for the CPUs. It updates the SCMI cpufreq to utilize the power
         domain bindings. It also adds a more generic SCMI performance domain
         based on the genpd framework that as be used for all the non-CPU
         devices.
      
      3. Extend the generic performance scaling(DVFS) support for firmware
         driver OPPs:
         Consumer drivers for devices that are attached to the SCMI performance
         domain can't make use of the current OPP library to scale performance
         as the OPPs are firmware driven and often obtained from the firmware
         rather than the device tree. These changes extend the generic OPP
         and genpd PM domain frameworks to identify and utilise these firmware
         driven OPPs.
      
      4. SCMI v3.2 clock parent support:
         This enables the support for discovering and changing parent clocks
         and extending the SCMI clk driver to use the same.
      
      5. Qualcom SMC/HVC transport support:
         The Qualcomm virtual platforms require capability id in the hypervisor
         call to identify which doorbell to assert when supporting multiple
         SMC/HVC based SCMI transport channels. Extra parameter is added to
         support the same and the same is obtained at the fixed address in the
         shared memory which is initialised by the firmware.
      
      6. Move the existing SCMI power domain driver under drivers/pmdomain
      
      Apart from the above main changes, it also include couple of minor fixes
      and cosmetic reworks.
      
      * tag 'scmi-updates-6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/sudeep.holla/linux: (37 commits)
        firmware: arm_scmi: Add qcom smc/hvc transport support
        dt-bindings: arm: Add new compatible for smc/hvc transport for SCMI
        firmware: arm_scmi: Convert u32 to unsigned long to align with arm_smccc_1_1_invoke()
        clk: scmi: Add support for clock {set,get}_parent
        firmware: arm_scmi: Add support for clock parents
        clk: scmi: Free scmi_clk allocated when the clocks with invalid info are skipped
        firmware: arm_scpi: Use device_get_match_data()
        firmware: arm_scmi: Add generic OPP support to the SCMI performance domain
        firmware: arm_scmi: Specify the performance level when adding an OPP
        firmware: arm_scmi: Simplify error path in scmi_dvfs_device_opps_add()
        OPP: Extend support for the opp-level beyond required-opps
        OPP: Switch to use dev_pm_domain_set_performance_state()
        OPP: Extend dev_pm_opp_data with a level
        OPP: Add dev_pm_opp_add_dynamic() to allow more flexibility
        PM: domains: Implement the ->set_performance_state() callback for genpd
        PM: domains: Introduce dev_pm_domain_set_performance_state()
        firmware: arm_scmi: Rename scmi_{msg_,}clock_config_{get,set}_{2,21}
        firmware: arm_scmi: Do not use !! on boolean when setting msg->flags
        firmware: arm_scmi: Move power-domain driver to the pmdomain dir
        pmdomain: arm: Add the SCMI performance domain
        ...
      
      Link: https://lore.kernel.org/r/20231010124347.1620040-1-sudeep.holla@arm.comSigned-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      d1debb7b
    • Arnd Bergmann's avatar
      Merge tag 'vexpress-update-6.7' of... · 765e4aa6
      Arnd Bergmann authored
      Merge tag 'vexpress-update-6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/sudeep.holla/linux into soc/drivers
      
      Arm Vexpress updates for v6.7
      
      Just a single update to use __counted_by annotation in config bus driver
      in preparation to the upcoming versions of the toolchains(GCC and Clang)
      with __counted_by attribute.
      
      * tag 'vexpress-update-6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/sudeep.holla/linux:
        bus: vexpress-config: Annotate struct vexpress_syscfg_func with __counted_by
      
      Link: https://lore.kernel.org/r/20231010124339.1620012-1-sudeep.holla@arm.comSigned-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      765e4aa6
    • Arnd Bergmann's avatar
      Merge tag 'v6.6-next-soc' of... · 0aefb041
      Arnd Bergmann authored
      Merge tag 'v6.6-next-soc' of https://git.kernel.org/pub/scm/linux/kernel/git/matthias.bgg/linux into soc/drivers
      
      MediaTek drivers updates for v6.7
      
      - Added support for Smart Voltage Scaling (SVS) on the MT8188 SoC
      
      * tag 'v6.6-next-soc' of https://git.kernel.org/pub/scm/linux/kernel/git/matthias.bgg/linux:
        soc: mediatek: svs: Add support for voltage bins
        soc: mediatek: svs: Add support for MT8188 SoC
        dt-bindings: soc: mediatek: add mt8188 svs dt-bindings
      
      Link: https://lore.kernel.org/r/d25ccd90-277a-fd05-8605-f7d1d129d4fa@gmail.comSigned-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      0aefb041
    • Arnd Bergmann's avatar
      Merge tag 'renesas-drivers-for-v6.7-tag1' of... · 8c15065c
      Arnd Bergmann authored
      Merge tag 'renesas-drivers-for-v6.7-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel into soc/drivers
      
      Renesas driver updates for v6.7
      
        - Identify the new RZ/G3S SoC,
        - Miscellaneous fixes and improvements.
      
      * tag 'renesas-drivers-for-v6.7-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel:
        soc: renesas: Kconfig: Remove blank line before ARCH_R9A07G043 help text
        soc: renesas: renesas-soc: Remove blank lines
        soc: renesas: Identify RZ/G3S SoC
      
      Link: https://lore.kernel.org/r/cover.1695985423.git.geert+renesas@glider.beSigned-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      8c15065c
    • Arnd Bergmann's avatar
      Merge tag 'platform-remove-void-soc-for-6.7-rc' of... · 4d822032
      Arnd Bergmann authored
      Merge tag 'platform-remove-void-soc-for-6.7-rc' of https://git.pengutronix.de/git/ukl/linux into soc/drivers
      
      Convert drivers/soc to struct platform_driver::remove_new()
      
      This PR contains the patches I sent in the series available at
      https://lore.kernel.org/all/20230925095532.1984344-1-u.kleine-koenig@pengutronix.de
      that were not yet picked up in next as of next-20231013.
      
      It converts all drivers below drivers/soc to let their remove callback
      return void. See commit 5c5a7680 ("platform: Provide a remove
      callback that returns no value") for the rationale.
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      4d822032
    • Uwe Kleine-König's avatar
      soc: samsung: exynos-chipid: Convert to platform remove callback returning void · 55fa358c
      Uwe Kleine-König authored
      The .remove() callback for a platform driver returns an int which makes
      many driver authors wrongly assume it's possible to do error handling by
      returning an error code. However the value returned is ignored (apart
      from emitting a warning) and this typically results in resource leaks.
      To improve here there is a quest to make the remove callback return
      void. In the first step of this quest all drivers are converted to
      .remove_new() which already returns void. Eventually after all drivers
      are converted, .remove_new() will be renamed to .remove().
      
      Trivially convert this driver from always returning zero in the remove
      callback to the void returning variant.
      Signed-off-by: default avatarUwe Kleine-König <u.kleine-koenig@pengutronix.de>
      Link: https://lore.kernel.org/r/20230925095532.1984344-32-u.kleine-koenig@pengutronix.deSigned-off-by: default avatarKrzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
      Link: https://lore.kernel.org/r/20231016072911.27148-2-krzysztof.kozlowski@linaro.orgSigned-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      55fa358c
  2. 14 Oct, 2023 12 commits
  3. 09 Oct, 2023 3 commits
  4. 08 Oct, 2023 8 commits
  5. 06 Oct, 2023 10 commits