[PATCH v2 0/7] arm: mach-snapdragon: Qualcomm clock driver cleanup

Sumit Garg sumit.garg at linaro.org
Thu Nov 2 13:25:18 CET 2023


Hi Caleb,

On Tue, 31 Oct 2023 at 03:53, Caleb Connolly <caleb.connolly at linaro.org> wrote:
>
> This series begins making some headway towards cleaning up Qualcomm
> platform support in u-boot. The following is a rough overview of the
> changes:
>
> * Move the Qualcomm clock drivers out of mach-snapdragon and into clk/qcom
> * Introduce per-platform clock driver configs to decouple Qualcomm platform
>   support from mach-snapdragon targets.
> * Add the IPQ4019 clock driver, removing it from mach-ipq40xx and introducing
>   the reset map.
> * Merge the qcom reset driver is into clk/qcom and rework it to be
>   compatible with upstream devicetrees.
> * A callback model is added so that multiple clock drivers can be
>   compiled in at once.
> * SDM845 gains support for enabling/disabling all gate clocks (CBC's) by
>   way of a new "gate_clk" abstraction.
> * Preperatory cleanup work is done to simplify the bringup process for
>   new platforms.
>
> Further details are included in each commit.
>
> The primary goal of this series is to prepare for enabling several new
> Qualcomm platforms in u-boot as well as additional peripherals, while
> minimising the amount of copy/pasted board-specific code.
>
> This series conflicts with a previous series introducing support for the
> Qualcomm RB2 board [1], I plan to resend this initial support pending
> acceptance of this series and several other cleanups.
>
> [1]: https://lore.kernel.org/u-boot/20230324080418.3856409-1-bhupesh.sharma@linaro.org/
>
> ---
> Changes in v2:
> * Added missing headers in clock-qcom.c for "fix rcg divider value"
>   patch
> * Use writel() instead of setbits_le32() in "fix rcg divider value"
>   patch to ensure that writes are propagated to hardware.
> * Adjust RCG configuration to be more similar to Linux
> * Remove sysmap headers and define macros directly in platform clock
>   code.
> * avoid renaming msm_* to qcom_* for now
> * only add relevant gate_clks for sdm845
> * Link to v1: https://lore.kernel.org/r/20231024-b4-qcom-clk-v1-0-9d96359b9a82@linaro.org
>
> ---
> Caleb Connolly (6):
>       clk/qcom: move from mach-snapdragon
>       clk/qcom: move ipq4019 driver from mach-ipq40xx
>       clk/qcom: sdm845: add register map for simple gate clocks
>       clk/qcom: use function pointers for enable and set_rate
>       clk/qcom: add mnd_width to clk_rcg_set_rate_mnd()
>       clk/qcom: fix rcg divider value
>
> Konrad Dybcio (1):
>       clk/qcom: handle resets and clocks in one device
>

This patch-set fails to apply on the u-boot mainline for me. Care to rebase?

-Sumit

>  arch/arm/Kconfig                                   |   2 +
>  arch/arm/dts/qcom-ipq4019.dtsi                     |  14 +-
>  arch/arm/dts/qcs404-evb.dts                        |  19 +-
>  arch/arm/mach-ipq40xx/Makefile                     |   1 -
>  arch/arm/mach-ipq40xx/clock-ipq4019.c              |  88 ------
>  arch/arm/mach-snapdragon/Kconfig                   |   4 +
>  arch/arm/mach-snapdragon/Makefile                  |   5 -
>  arch/arm/mach-snapdragon/clock-sdm845.c            |  98 -------
>  arch/arm/mach-snapdragon/clock-snapdragon.c        | 181 ------------
>  arch/arm/mach-snapdragon/clock-snapdragon.h        |  48 ----
>  .../mach-snapdragon/include/mach/sysmap-apq8016.h  |  39 ---
>  .../mach-snapdragon/include/mach/sysmap-apq8096.h  |  37 ---
>  .../mach-snapdragon/include/mach/sysmap-qcs404.h   |  88 ------
>  .../mach-snapdragon/include/mach/sysmap-sdm845.h   |  42 ---
>  board/qualcomm/dragonboard820c/dragonboard820c.c   |   6 +-
>  drivers/clk/Kconfig                                |   1 +
>  drivers/clk/Makefile                               |   1 +
>  drivers/clk/qcom/Kconfig                           |  52 ++++
>  drivers/clk/qcom/Makefile                          |  10 +
>  .../clk/qcom}/clock-apq8016.c                      |  60 +++-
>  .../clk/qcom}/clock-apq8096.c                      |  56 +++-
>  .../reset-qcom.c => clk/qcom/clock-ipq4019.c}      | 160 ++++-------
>  drivers/clk/qcom/clock-qcom.c                      | 309 +++++++++++++++++++++
>  drivers/clk/qcom/clock-qcom.h                      | 100 +++++++
>  .../clk/qcom}/clock-qcs404.c                       | 167 +++++++++--
>  drivers/clk/qcom/clock-sdm845.c                    | 190 +++++++++++++
>  drivers/reset/Kconfig                              |   7 -
>  drivers/reset/Makefile                             |   1 -
>  include/configs/dragonboard410c.h                  |   1 -
>  include/configs/dragonboard820c.h                  |   1 -
>  include/configs/dragonboard845c.h                  |   1 -
>  include/configs/qcs404-evb.h                       |   1 -
>  .../{qcom,ipq4019-gcc.h => qcom,gcc-ipq4019.h}     |  73 +++++
>  include/dt-bindings/reset/qcom,ipq4019-reset.h     |  92 ------
>  34 files changed, 1057 insertions(+), 898 deletions(-)
> ---
> base-commit: 30d01b582f2274eb8c808026c5fb4c33e9f2210d
>
> // Caleb (they/them)
>


More information about the U-Boot mailing list