Re: [PATCH v2 5/5] arm64: boot: dts: qcom: sc8280xp: Add in CAMCC for sc8280xp

From: Konrad Dybcio
Date: Mon Oct 02 2023 - 05:56:13 EST




On 10/1/23 01:01, Bryan O'Donoghue wrote:
On 30/09/2023 17:41, Konrad Dybcio wrote:


On 9/30/23 15:41, Bryan O'Donoghue wrote:
Add in CAMCC for sc8280xp. The sc8280xp Camera Clock Controller looks
similar to most of the sdmX, smX and now scX controllers.

Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@xxxxxxxxxx>
---
  arch/arm64/boot/dts/qcom/sc8280xp.dtsi | 16 ++++++++++++++++
  1 file changed, 16 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/sc8280xp.dtsi b/arch/arm64/boot/dts/qcom/sc8280xp.dtsi
index cad59af7ccef..ca43d038578b 100644
--- a/arch/arm64/boot/dts/qcom/sc8280xp.dtsi
+++ b/arch/arm64/boot/dts/qcom/sc8280xp.dtsi
@@ -8,6 +8,7 @@
  #include <dt-bindings/clock/qcom,gcc-sc8280xp.h>
  #include <dt-bindings/clock/qcom,gpucc-sc8280xp.h>
  #include <dt-bindings/clock/qcom,rpmh.h>
+#include <dt-bindings/clock/qcom,sc8280xp-camcc.h>
  #include <dt-bindings/clock/qcom,sc8280xp-lpasscc.h>
  #include <dt-bindings/interconnect/qcom,osm-l3.h>
  #include <dt-bindings/interconnect/qcom,sc8280xp.h>
@@ -3450,6 +3451,21 @@ usb_1_role_switch: endpoint {
              };
          };
+        camcc: clock-controller@ad00000 {
+            compatible = "qcom,sc8280xp-camcc";
+            reg = <0 0x0ad00000 0 0x20000>;
+            clocks = <&gcc GCC_CAMERA_AHB_CLK>,
+                 <&rpmhcc RPMH_CXO_CLK>,
+                 <&rpmhcc RPMH_CXO_CLK_A>,
+                 <&sleep_clk>;
+            clock-names = "iface", "bi_tcxo", "bi_tcxo_ao", "sleep_clk";
clock-names is now redundant :)

Reviewed-by: Konrad Dybcio <konrad.dybcio@xxxxxxxxxx>

Konrad

BTW.

Looking at the block diagram for the Camera, I see why Cam_CC_AHB is included in this list. Its not called out as a dependency in the clock tree but when you look at the block diagram you can see it gates the AHB bus to the CAM_CC block.
Yep, that's why using is as pm_clk for the clock controller makes sense

Konrad