Konrad Dybcio
a0e0ec7424
clk: qcom: rcg2: Make hw_clk_ctrl toggleable
...
Certain SoCs use the HW_CLK_CTRL feature on some of the clocks they
host. This allows the clocks to be turned on automatically when a
downstream branch tries to change rate or config.
Make it togglable so that we can utilize this.
Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230517-topic-waipio-gpucc-v1-2-4f40e282af1d@linaro.org
2023-05-26 18:22:58 -07:00
Bjorn Andersson
6de1bd7405
Merge branch 'sm8450-sm8550-gpucc-binding' into clk-for-6.5
...
Bring GPUCC DeviceTree bindings for SM8450 and SM8550 in through a topic
branch to allow sharing it with the DeviceTree source tree as well.
2023-05-26 18:22:17 -07:00
Jagadeesh Kona
778af143ad
dt-bindings: clock: qcom: Add SM8550 graphics clock controller
...
Add device tree bindings for the graphics clock controller on
Qualcomm SM8550 platform.
Signed-off-by: Jagadeesh Kona <quic_jkona@quicinc.com >
Acked-by: Conor Dooley <conor.dooley@microchip.com >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230524181800.28717-2-quic_jkona@quicinc.com
2023-05-26 18:22:07 -07:00
Konrad Dybcio
63f4e4b6f5
dt-bindings: clock: Add Qcom SM8450 GPUCC
...
Add device tree bindings for the graphics clock controller on Qualcomm
Technology Inc's SM8450 SoCs.
Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org >
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230517-topic-waipio-gpucc-v1-1-4f40e282af1d@linaro.org
2023-05-26 18:22:04 -07:00
Dmitry Baryshkov
8fd492e77f
clk: qcom: mmcc-msm8974: use clk_rcg2_shared_ops for mdp_clk_src clock
...
The mdp_clk_src clock should not be turned off. Instead it should be
'parked' to the XO, as most of other mdp_clk_src clocks. Fix that by
using the clk_rcg2_shared_ops.
Fixes: d8b212014e ("clk: qcom: Add support for MSM8974's multimedia clock controller (MMCC)")
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org >
Tested-by: Luca Weiss <luca@z3ntu.xyz >
Acked-by: Konrad Dybcio <konrad.dybcio@linaro.org >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230507175335.2321503-1-dmitry.baryshkov@linaro.org
2023-05-26 13:42:46 -07:00
Kathiravan T
7510e80f4a
clk: qcom: ipq5332: fix the order of SLEEP_CLK and XO clock
...
The order of DT_SLEEP_CLK and DT_XO are swapped and it is incorrect.
Due to which the clocks for which the parent should be XO is having parent
as SLEEP_CLK and vice versa. So fix the same by re-ordering the entries.
Fixes: 3d89d52970 ("clk: qcom: add Global Clock controller (GCC) driver for IPQ5332 SoC")
Reported-by: Devi Priya <quic_devipriy@quicinc.com >
Signed-off-by: Kathiravan T <quic_kathirav@quicinc.com >
Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230417105607.4091-1-quic_kathirav@quicinc.com
2023-05-26 13:29:32 -07:00
Kathiravan T
81c1ef89a4
clk: qcom: ipq5332: fix the src parameter in ftbl_gcc_apss_axi_clk_src
...
480MHz is derived from P_GPLL4_OUT_AUX not from P_GPLL4_OUT_MAIN. Update
the freq_tbl with the correct src.
Fixes: 3d89d52970 ("clk: qcom: add Global Clock controller (GCC) driver for IPQ5332 SoC")
Reported-by: Manikanta Mylavarapu <quic_mmanikan@quicinc.com >
Signed-off-by: Kathiravan T <quic_kathirav@quicinc.com >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230417044342.9406-1-quic_kathirav@quicinc.com
2023-05-26 13:29:23 -07:00
Konrad Dybcio
63d56adf04
clk: qcom: dispcc-qcm2290: Fix GPLL0_OUT_DIV handling
...
GPLL0_OUT_DIV (.fw_name = "gcc_disp_gpll0_div_clk_src") was previously
made to reuse the same parent enum entry as GPLL0_OUT_MAIN
(.fw_name = "gcc_disp_gpll0_clk_src") in parent_map_2.
Resolve it by introducing its own entry in the parent enum and
correctly assigning it in disp_cc_parent_map_2[].
Fixes: cc517ea333 ("clk: qcom: Add display clock controller driver for QCM2290")
Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230412-topic-qcm_dispcc-v2-2-bce7dd512fe4@linaro.org
2023-05-26 13:26:03 -07:00
Konrad Dybcio
92dfee0fc8
clk: qcom: dispcc-qcm2290: Fix BI_TCXO_AO handling
...
BI_TCXO_AO (.fw_name = "bi_tcxo_ao") was previously made to reuse the
same parent enum entry as BI_TCXO (.fw_name = "bi_tcxo") in parent_map_2.
Resolve it by introducing its own entry in the parent enum and
correctly assigning it in disp_cc_parent_map_2[].
Fixes: cc517ea333 ("clk: qcom: Add display clock controller driver for QCM2290")
Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230412-topic-qcm_dispcc-v2-1-bce7dd512fe4@linaro.org
2023-05-26 13:26:02 -07:00
Robert Marko
349b5bed53
clk: qcom: ipq6018: fix networking resets
...
Networking resets in IPQ6018 all use bitmask as they require multiple
bits to be set and cleared instead of a single bit.
So, current networking resets have the same register and bit 0 set which
is clearly incorrect.
Fixes: d9db07f088 ("clk: qcom: Add ipq6018 Global Clock Controller support")
Signed-off-by: Robert Marko <robimarko@gmail.com >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230526190855.2941291-2-robimarko@gmail.com
2023-05-26 13:04:52 -07:00
Robert Marko
f4f0c8acee
clk: qcom: gcc-ipq6018: update UBI32 PLL
...
Update the UBI32 alpha PLL config to the latest values from the downstream
QCA 5.4 kernel.
Signed-off-by: Robert Marko <robimarko@gmail.com >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230526190855.2941291-1-robimarko@gmail.com
2023-05-26 13:04:52 -07:00
Devi Priya
20beb85f7a
clk: qcom: apss-ipq-pll: Add support for IPQ9574
...
Add the compatible and configuration values for A73 Huayra PLL found
on IPQ9574.
Co-developed-by: Praveenkumar I <quic_ipkumar@quicinc.com >
Signed-off-by: Praveenkumar I <quic_ipkumar@quicinc.com >
Signed-off-by: Devi Priya <quic_devipriy@quicinc.com >
Acked-by: Stephen Boyd <sboyd@kernel.org >
Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230406061314.10916-3-quic_devipriy@quicinc.com
2023-05-26 12:16:40 -07:00
Devi Priya
17035787e2
dt-bindings: clock: qcom,a53pll: add IPQ9574 compatible
...
IPQ9574 uses A73 PLL of type Huayra. Add the IPQ9574 A73 compatible to A53
bindings as the PLL properties match with that of A53.
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org >
Signed-off-by: Devi Priya <quic_devipriy@quicinc.com >
Acked-by: Stephen Boyd <sboyd@kernel.org >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230406061314.10916-2-quic_devipriy@quicinc.com
2023-05-26 12:16:40 -07:00
Krzysztof Kozlowski
7a52084ae1
dt-bindings: clock: qcom,gcc-sc7280: document CX power domain
...
The GCC clock controller needs CX power domain, at least according to
DTS:
sc7280-herobrine-crd-pro.dtb: clock-controller@100000: Unevaluated properties are not allowed ('power-domains' was unexpected)
Acked-by: Rob Herring <robh@kernel.org >
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230516105241.30091-3-krzysztof.kozlowski@linaro.org
2023-05-24 21:47:17 -07:00
Krzysztof Kozlowski
21a95637a3
dt-bindings: clock: qcom,gcc-sc7180: document CX power domain
...
The GCC clock controller needs CX power domain, at least according to
DTS:
sc7180-trogdor-pompom-r3.dtb: clock-controller@100000: Unevaluated properties are not allowed ('power-domains' was unexpected)
Acked-by: Rob Herring <robh@kernel.org >
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230516105241.30091-2-krzysztof.kozlowski@linaro.org
2023-05-24 21:47:17 -07:00
Krzysztof Kozlowski
2310ab77f1
dt-bindings: clock: qcom,gcc-sm8250: add missing bi_tcxo_ao clock
...
The initial SM8250 GCC driver added in commit 3e5770921a ("clk: qcom:
gcc: Add global clock controller driver for SM8250") already consumed it
on the clock. This fixes warnings like:
sm8250-xiaomi-elish-csot.dtb: clock-controller@100000: clock-names: ['bi_tcxo', 'bi_tcxo_ao', 'sleep_clk'] is too long
Fixes: 98394efb48 ("dt-bindings: clock: Add SM8250 GCC clock bindings")
Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org >
Acked-by: Rob Herring <robh@kernel.org >
Reviewed-by: Stephen Boyd <sboyd@kernel.org >
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org >
Reviewed-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230516105241.30091-1-krzysztof.kozlowski@linaro.org
2023-05-24 21:47:17 -07:00
Krzysztof Kozlowski
ab7f00379f
clk: qcom: restrict drivers per ARM/ARM64
...
There is no point to allow selecting clock controller drivers for
Qualcomm ARMv7 SoCs when building ARM64 kernel, and vice versa. This
makes kernel configuration more difficult as many do not remember the
Qualcomm SoCs model names/numbers. No features should be lost because:
1. There won't be a single image for ARMv7 and ARMv8/9 SoCs.
2. Newer ARMv8/9 SoCs won't be running in arm32 emulation mode.
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org >
Reviewed-by: Bjorn Andersson <andersson@kernel.org >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230514114711.18258-1-krzysztof.kozlowski@linaro.org
2023-05-24 21:47:17 -07:00
Imran Shaik
108cdc09b2
clk: qcom: Add GCC driver support for SDX75
...
Add Global Clock Controller (GCC) support for SDX75 platform.
Signed-off-by: Imran Shaik <quic_imrashai@quicinc.com >
Signed-off-by: Taniya Das <quic_tdas@quicinc.com >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230512122347.1219-6-quic_tdas@quicinc.com
2023-05-24 21:47:17 -07:00
Imran Shaik
1c2360ff58
clk: qcom: rpmh: Add RPMH clocks support for SDX75
...
Add support for RPMH clocks for SDX75 platform.
Signed-off-by: Imran Shaik <quic_imrashai@quicinc.com >
Signed-off-by: Taniya Das <quic_tdas@quicinc.com >
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230512122347.1219-5-quic_tdas@quicinc.com
2023-05-24 21:47:17 -07:00
Imran Shaik
379d72721b
dt-bindings: clock: qcom: Add RPMHCC for SDX75
...
Add compatible string for qcom RPMHCC for SDX75 platform.
Signed-off-by: Imran Shaik <quic_imrashai@quicinc.com >
Signed-off-by: Taniya Das <quic_tdas@quicinc.com >
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230512122347.1219-4-quic_tdas@quicinc.com
2023-05-24 21:47:17 -07:00
Imran Shaik
9092d1083a
clk: qcom: branch: Extend the invert logic for branch2 clocks
...
Add support to handle the invert logic for branch2 clocks.
Invert branch halt would indicate the clock ON when CLK_OFF
bit is '1' and OFF when CLK_OFF bit is '0'.
Signed-off-by: Imran Shaik <quic_imrashai@quicinc.com >
Signed-off-by: Taniya Das <quic_tdas@quicinc.com >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230512122347.1219-2-quic_tdas@quicinc.com
2023-05-24 21:47:17 -07:00
Bjorn Andersson
521302ca64
Merge branch '20230512122347.1219-3-quic_tdas@quicinc.com' into clk-for-6.5
...
Merge SDX75 Global Clock Controller DeviceTree binding through a topic
branch, to allow inclusion in DeviceTree source as well.
2023-05-24 21:47:17 -07:00
Luca Weiss
e9a2db5caf
clk: qcom: smd-rpm: conditionally enable scaling before doing handover
...
On older platforms like msm8226, msm8974 and msm8916 the driver in the
downstream kernel enables scaling first before doing the handover of the
clocks.
While this normally doesn't seem to cause noticeable problems, on
apq8026-asus-sparrow this causes the device to immediately reboot,
perhaps due to older rpm firmware that becomes unhappy.
On newer platforms the order has swapped and enabling scaling is done
after the handover, so let's introduce this behavior only conditionally
for msm8226 and msm8974 for now.
Signed-off-by: Luca Weiss <luca@z3ntu.xyz >
Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230506-rpmcc-scaling-handover-v1-1-374338a8dfd9@z3ntu.xyz
2023-05-24 21:47:17 -07:00
Christian Marangi
bbd899f534
clk: qcom: gcc-sdm660: drop redundant F define
...
The same exact F frequency table entry is defined in clk-rcg.h
Drop the redundant define to cleanup code.
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com >
Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230417174408.23722-2-ansuelsmth@gmail.com
2023-05-24 21:47:17 -07:00
Christian Marangi
923f7d678b
clk: qcom: gcc-ipq6018: drop redundant F define
...
The same exact F frequency table entry is defined in clk-rcg.h
Drop the redundant define to cleanup code.
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com >
Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230417174408.23722-1-ansuelsmth@gmail.com
2023-05-24 21:47:16 -07:00
Krzysztof Kozlowski
2f9b209646
dt-bindings: clock: qcom,gcc-msm8953: split to separate schema
...
The Qualcomm MSM8953 GCC clock controller has clock inputs, thus
existing gcc-other.yaml was not describing it fully. Move the binding
to its own schema file and document the clocks based on DTS. Add driver
contributors as its maintainers.
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org >
Acked-by: Rob Herring <robh@kernel.org >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230408143729.84097-1-krzysztof.kozlowski@linaro.org
2023-05-24 21:47:16 -07:00
Konrad Dybcio
7bf654a0d9
clk: qcom: gcc-qcm2290: Mark RCGs shared where applicable
...
The vast majority of shared RCGs were not marked as such. Fix it.
Fixes: 496d1a13d4 ("clk: qcom: Add Global Clock Controller driver for QCM2290")
Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org >
Acked-by: Shawn Guo <shawn.guo@linaro.org >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230403174807.345185-1-konrad.dybcio@linaro.org
2023-05-24 21:47:16 -07:00
Jagadeesh Kona
f53153a379
clk: qcom: videocc-sm8550: Add video clock controller driver for SM8550
...
Add support for the video clock controller for video clients to be able
to request for videocc clocks on SM8550 platform.
Co-developed-by: Taniya Das <quic_tdas@quicinc.com >
Signed-off-by: Taniya Das <quic_tdas@quicinc.com >
Signed-off-by: Jagadeesh Kona <quic_jkona@quicinc.com >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230524145203.13153-4-quic_jkona@quicinc.com
2023-05-24 21:47:16 -07:00
Jagadeesh Kona
c7d91f26f0
dt-bindings: clock: qcom: Add SM8550 video clock controller
...
Add compatible string for SM8550 video clock controller.
Signed-off-by: Jagadeesh Kona <quic_jkona@quicinc.com >
Acked-by: Conor Dooley <conor.dooley@microchip.com >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230524145203.13153-3-quic_jkona@quicinc.com
2023-05-24 21:47:16 -07:00
Jagadeesh Kona
34d54e5833
clk: qcom: clk-alpha-pll: Add support to configure PLL_TEST_CTL_U2
...
The lucid ole pll reuses lucid evo ops but it has an additional test
control register which is required to be programmed, add support to
program the same.
Signed-off-by: Jagadeesh Kona <quic_jkona@quicinc.com >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230524145203.13153-2-quic_jkona@quicinc.com
2023-05-24 21:47:16 -07:00
Taniya Das
441fe711be
clk: qcom: videocc-sm8450: Add video clock controller driver for SM8450
...
Add support for the video clock controller driver for peripheral clock
clients to be able to request for video cc clocks.
Signed-off-by: Taniya Das <quic_tdas@quicinc.com >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230524140656.7076-3-quic_tdas@quicinc.com
2023-05-24 21:47:16 -07:00
Bjorn Andersson
cc8d2cf5cd
Merge branch '20230524140656.7076-2-quic_tdas@quicinc.com' into HEAD
...
Merge the SM8450 Video Clock Controller DeviceTree binding through a
topic branch, in order to be able to use the introduced constants in
changes on DeviceTree source branch as well.
2023-05-24 21:47:16 -07:00
Konrad Dybcio
fd0b5b106f
clk: qcom: Introduce SM8350 VIDEOCC
...
Add support for the Video Clock Controller found on the SM8350 SoC.
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org >
Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230413-topic-lahaina_vidcc-v4-2-86c714a66a81@linaro.org
2023-05-24 21:47:16 -07:00
Bjorn Andersson
6d6a98aaa7
Merge branch '20230413-topic-lahaina_vidcc-v4-1-86c714a66a81@linaro.org' into HEAD
...
Merge the Video Clock Controller DeviceTree bindings through a topic
branch, in order to be able to use the introduced constants in the
DeviceTree source branch as well.
2023-05-24 21:46:48 -07:00
Konrad Dybcio
2aae5eaa94
dt-bindings: clock: Add SM8350 VIDEOCC
...
SM8350, like most recent higher-end chips has a separate clock
controller block just for the Venus IP. Document it.
The binding was separated as the driver, unlike the earlier ones, doesn't
expect clock-names to keep it easier to maintain.
Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org >
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230413-topic-lahaina_vidcc-v4-1-86c714a66a81@linaro.org
2023-05-24 21:46:09 -07:00
Taniya Das
1e910b2ba0
dt-bindings: clock: qcom: Add SM8450 video clock controller
...
Add device tree bindings for the video clock controller on Qualcomm
SM8450 platform.
Signed-off-by: Taniya Das <quic_tdas@quicinc.com >
Reviewed-by: Rob Herring <robh@kernel.org >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230524140656.7076-2-quic_tdas@quicinc.com
2023-05-24 21:43:04 -07:00
Imran Shaik
1c305ea86b
dt-bindings: clock: qcom: Add GCC clocks for SDX75
...
Add support for qcom global clock controller bindings for SDX75 platform.
Signed-off-by: Imran Shaik <quic_imrashai@quicinc.com >
Signed-off-by: Taniya Das <quic_tdas@quicinc.com >
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230512122347.1219-3-quic_tdas@quicinc.com
2023-05-24 21:02:36 -07:00
Mantas Pucka
56e5ae0116
clk: qcom: gcc-ipq6018: Use floor ops for sdcc clocks
...
SDCC clocks must be rounded down to avoid overclocking the controller.
Fixes: d9db07f088 ("clk: qcom: Add ipq6018 Global Clock Controller support")
Signed-off-by: Mantas Pucka <mantas@8devices.com >
Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/1682413909-24927-1-git-send-email-mantas@8devices.com
2023-05-24 19:39:24 -07:00
Konrad Dybcio
ffd853c2ea
clk: qcom: smd-rpm: Make BI_TCXO_AO critical
...
We should never let go of the active-only XO vote, as otherwise the
RPM may decide that there are no online users and it can be shut down,
resulting in a total, uncontrolled system collapse.
Guarantee this through adding the CLK_IS_CRITICAL flag.
Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org >
Tested-by: Matti Lehtimäki <matti.lehtimaki@gmail.com >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230501-topic-rpmcc_xo_a-v1-3-93f18e47b607@linaro.org
2023-05-24 19:35:27 -07:00
Konrad Dybcio
2dd117943f
clk: qcom: smd-rpm: Make DEFINE_CLK_SMD_RPM_BRANCH_A accept flags
...
In preparation for supporting keepalive clocks which can never be shut off
(as the platform would fall apart otherwise), make the
DEFINE_CLK_SMD_RPM_BRANCH_A macro accept clock flags for the active-only
clock.
Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org >
Tested-by: Matti Lehtimäki <matti.lehtimaki@gmail.com >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230501-topic-rpmcc_xo_a-v1-2-93f18e47b607@linaro.org
2023-05-24 19:35:27 -07:00
Konrad Dybcio
24abad6039
clk: qcom: smd-rpm_ Make __DEFINE_CLK_SMD_RPM_BRANCH_PREFIX accept flags
...
In preparation for supporting keepalive clocks which can never be shut off
(as the platform would fall apart otherwise), make the
__DEFINE_CLK_SMD_RPM_BRANCH_PREFIX macro accept clock flags for the
active-only clock.
Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org >
Tested-by: Matti Lehtimäki <matti.lehtimaki@gmail.com >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230501-topic-rpmcc_xo_a-v1-1-93f18e47b607@linaro.org
2023-05-24 19:35:26 -07:00
Konrad Dybcio
caa2347d02
clk: qcom: smd-rpm: Keep one rpm handle for all clocks
...
For no apparent reason (as there's just one RPM per SoC), all clocks
currently store a copy of a pointer to smd_rpm. Introduce a single,
global one to save up on space in each clk definition.
bloat-o-meter reports:
Total: Before=41887, After=40843, chg -2.49%
Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230501130400.107771-1-konrad.dybcio@linaro.org
2023-05-24 19:34:28 -07:00
Taniya Das
3e4d179532
clk: qcom: camcc-sc7180: Add parent dependency to all camera GDSCs
...
Camera titan top GDSC is a parent supply to all other camera GDSCs. Titan
top GDSC is required to be enabled before enabling any other camera GDSCs
and it should be disabled only after all other camera GDSCs are disabled.
Ensure this behavior by marking titan top GDSC as parent of all other
camera GDSCs.
Fixes: 15d09e830b ("clk: qcom: camcc: Add camera clock controller driver for SC7180")
Signed-off-by: Taniya Das <quic_tdas@quicinc.com >
Acked-by: Stephen Boyd <sboyd@kernel.org >
Reviewed-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230501142932.13049-1-quic_tdas@quicinc.com
2023-05-24 19:33:55 -07:00
Dmitry Baryshkov
853c064b57
clk: qcom: mmcc-msm8974: remove oxili_ocmemgx_clk
...
After the internal discussions, it looks like this clock is managed by
RPM itself. Linux kernel should not touch it on its own, as this causes
disagreement with RPM. Shutting down this clock causes the OCMEM<->GPU
interface to stop working, resulting in GPU hangchecks/timeouts.
Fixes: d8b212014e ("clk: qcom: Add support for MSM8974's multimedia clock controller (MMCC)")
Suggested-by: Konrad Dybcio <konrad.dybcio@linaro.org >
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org >
Tested-by: Luca Weiss <luca@z3ntu.xyz >
Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230508153319.2371645-1-dmitry.baryshkov@linaro.org
2023-05-24 19:29:33 -07:00
Kathiravan T
a30e62bf6b
clk: qcom: gcc: ipq5332: Use floor ops for SDCC clocks
...
SDCC clocks must be rounded down to avoid overclocking the controller.
Fixes: 3d89d52970 ("clk: qcom: add Global Clock controller (GCC) driver for IPQ5332 SoC")
Signed-off-by: Kathiravan T <quic_kathirav@quicinc.com >
Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230508163145.9678-1-quic_kathirav@quicinc.com
2023-05-24 19:29:09 -07:00
Bjorn Andersson
de6d1f0c49
dt-bindings: clock: qcom: Accept power-domains for GPUCC
...
In many designs the power-domains provided by the GPU clock controller
are powered by some GFX rail, add power-domains as a valid property to
allow this to be specified.
Signed-off-by: Bjorn Andersson <quic_bjorande@quicinc.com >
Acked-by: Konrad Dybcio <konrad.dybcio@linaro.org >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230523010348.63043-1-quic_bjorande@quicinc.com
2023-05-23 05:35:44 -07:00
Devi Priya
50205122b0
clk: qcom: gcc-ipq9574: constify struct clk_init_data
...
Make the clk_init_data struct constant.
Signed-off-by: Devi Priya <quic_devipriy@quicinc.com >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230425084010.15581-5-quic_devipriy@quicinc.com
2023-05-17 19:41:46 -07:00
Devi Priya
5439a5be03
clk: qcom: gcc-ipq9574: Clean up included headers
...
Some included headers aren't actually used anywhere, while other headers
with the declaration of functions and structures aren't directly included.
Get rid of the unused ones, and add the ones that should be included
directly.
Signed-off-by: Devi Priya <quic_devipriy@quicinc.com >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230425084010.15581-4-quic_devipriy@quicinc.com
2023-05-17 19:41:46 -07:00
Devi Priya
3f2c154e1b
dt-bindings: clock: qcom,ipq9574-gcc: Add maintainer
...
Add Bjorn andersson to the maintainer's list.
Signed-off-by: Devi Priya <quic_devipriy@quicinc.com >
Acked-by: Rob Herring <robh@kernel.org >
Signed-off-by: Bjorn Andersson <andersson@kernel.org >
Link: https://lore.kernel.org/r/20230425084010.15581-3-quic_devipriy@quicinc.com
2023-05-17 19:41:46 -07:00
Linus Torvalds
ac9a78681b
Linux 6.4-rc1
v6.4-rc1
2023-05-07 13:34:35 -07:00