linux-arm-msm.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/6] clk: qcom: Add video clock controller and resets for X1E80100
@ 2025-07-01 17:28 Stephan Gerhold
  2025-07-01 17:28 ` [PATCH 1/6] dt-bindings: clock: qcom,sm8450-videocc: Document X1E80100 compatible Stephan Gerhold
                   ` (5 more replies)
  0 siblings, 6 replies; 17+ messages in thread
From: Stephan Gerhold @ 2025-07-01 17:28 UTC (permalink / raw)
  To: Bjorn Andersson
  Cc: Michael Turquette, Stephen Boyd, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Taniya Das, Jagadeesh Kona, Konrad Dybcio,
	Abel Vesa, Johan Hovold, Bryan O'Donoghue, Stefan Schmidt,
	linux-arm-msm, linux-clk, devicetree, linux-kernel

In preparation of adding iris (video acceleration) for Qualcomm X1E80100,
enable support for the video clock controller and additional needed reset
controls. Since iris in X1E is largely identical to SM8550, reuse the
existing videocc-sm8550 driver with slightly adjusted PLL frequencies and
adapt the reset definitions from the SM8550 GCC driver.

Signed-off-by: Stephan Gerhold <stephan.gerhold@linaro.org>
---
Stephan Gerhold (6):
      dt-bindings: clock: qcom,sm8450-videocc: Document X1E80100 compatible
      clk: qcom: videocc-sm8550: Allow building without SM8550/SM8560 GCC
      clk: qcom: videocc-sm8550: Add separate frequency tables for X1E80100
      dt-bindings: clock: qcom,x1e80100-gcc: Add missing video resets
      clk: qcom: gcc-x1e80100: Add missing video resets
      arm64: dts: qcom: x1e80100: Add videocc

 .../bindings/clock/qcom,sm8450-videocc.yaml        |  1 +
 arch/arm64/boot/dts/qcom/x1e80100.dtsi             | 15 +++++++++++
 drivers/clk/qcom/Kconfig                           |  3 +--
 drivers/clk/qcom/gcc-x1e80100.c                    |  2 ++
 drivers/clk/qcom/videocc-sm8550.c                  | 29 ++++++++++++++++++++++
 include/dt-bindings/clock/qcom,x1e80100-gcc.h      |  2 ++
 6 files changed, 50 insertions(+), 2 deletions(-)
---
base-commit: 0672fe83ed07387afb88653ab3b5dae4c84cf3ce
change-id: 20250701-x1e-videocc-10f1f2257463

Best regards,
-- 
Stephan Gerhold <stephan.gerhold@linaro.org>


^ permalink raw reply	[flat|nested] 17+ messages in thread

* [PATCH 1/6] dt-bindings: clock: qcom,sm8450-videocc: Document X1E80100 compatible
  2025-07-01 17:28 [PATCH 0/6] clk: qcom: Add video clock controller and resets for X1E80100 Stephan Gerhold
@ 2025-07-01 17:28 ` Stephan Gerhold
  2025-07-04 15:08   ` Bryan O'Donoghue
  2025-07-08 16:17   ` Rob Herring (Arm)
  2025-07-01 17:28 ` [PATCH 2/6] clk: qcom: videocc-sm8550: Allow building without SM8550/SM8560 GCC Stephan Gerhold
                   ` (4 subsequent siblings)
  5 siblings, 2 replies; 17+ messages in thread
From: Stephan Gerhold @ 2025-07-01 17:28 UTC (permalink / raw)
  To: Bjorn Andersson
  Cc: Michael Turquette, Stephen Boyd, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Taniya Das, Jagadeesh Kona, Konrad Dybcio,
	Abel Vesa, Johan Hovold, Bryan O'Donoghue, Stefan Schmidt,
	linux-arm-msm, linux-clk, devicetree, linux-kernel

X1E80100 videocc is largely identical to SM8550, but needs slightly
different PLL frequencies. Add a separate qcom,x1e80100-videocc compatible
to the existing schema used for SM8550.

Signed-off-by: Stephan Gerhold <stephan.gerhold@linaro.org>
---
 Documentation/devicetree/bindings/clock/qcom,sm8450-videocc.yaml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/clock/qcom,sm8450-videocc.yaml b/Documentation/devicetree/bindings/clock/qcom,sm8450-videocc.yaml
index 0d99178332cb99d3f02f50605e19b9b26e3ec807..fcd2727dae46711650fc8fe71221a06630040026 100644
--- a/Documentation/devicetree/bindings/clock/qcom,sm8450-videocc.yaml
+++ b/Documentation/devicetree/bindings/clock/qcom,sm8450-videocc.yaml
@@ -25,6 +25,7 @@ properties:
       - qcom,sm8475-videocc
       - qcom,sm8550-videocc
       - qcom,sm8650-videocc
+      - qcom,x1e80100-videocc
 
   clocks:
     items:

-- 
2.49.0


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [PATCH 2/6] clk: qcom: videocc-sm8550: Allow building without SM8550/SM8560 GCC
  2025-07-01 17:28 [PATCH 0/6] clk: qcom: Add video clock controller and resets for X1E80100 Stephan Gerhold
  2025-07-01 17:28 ` [PATCH 1/6] dt-bindings: clock: qcom,sm8450-videocc: Document X1E80100 compatible Stephan Gerhold
@ 2025-07-01 17:28 ` Stephan Gerhold
  2025-07-04 15:08   ` Bryan O'Donoghue
  2025-07-01 17:28 ` [PATCH 3/6] clk: qcom: videocc-sm8550: Add separate frequency tables for X1E80100 Stephan Gerhold
                   ` (3 subsequent siblings)
  5 siblings, 1 reply; 17+ messages in thread
From: Stephan Gerhold @ 2025-07-01 17:28 UTC (permalink / raw)
  To: Bjorn Andersson
  Cc: Michael Turquette, Stephen Boyd, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Taniya Das, Jagadeesh Kona, Konrad Dybcio,
	Abel Vesa, Johan Hovold, Bryan O'Donoghue, Stefan Schmidt,
	linux-arm-msm, linux-clk, devicetree, linux-kernel

From the build perspective, the videocc-sm8550 driver doesn't depend on
having one of the GCC drivers enabled. It builds just fine without the GCC
driver. In practice, it doesn't make much sense to have it enabled without
the GCC driver, but currently this extra dependency is inconsistent with
most of the other VIDEOCC entries in Kconfig. This can easily cause
confusion when you see the VIDEOCC options for some of the SoCs but not for
all of them.

Let's just drop the depends line to allow building the videocc driver
independent of the GCC selection. Compile testing with randconfig will also
benefit from keeping the dependencies minimal.

Signed-off-by: Stephan Gerhold <stephan.gerhold@linaro.org>
---
 drivers/clk/qcom/Kconfig | 1 -
 1 file changed, 1 deletion(-)

diff --git a/drivers/clk/qcom/Kconfig b/drivers/clk/qcom/Kconfig
index 36d6e6e1e7f0162d53f02f39125f4593517e0dba..26752bd79f508612347ce79fd3693359d4dd656d 100644
--- a/drivers/clk/qcom/Kconfig
+++ b/drivers/clk/qcom/Kconfig
@@ -1391,7 +1391,6 @@ config SM_VIDEOCC_8350
 config SM_VIDEOCC_8550
 	tristate "SM8550 Video Clock Controller"
 	depends on ARM64 || COMPILE_TEST
-	depends on SM_GCC_8550 || SM_GCC_8650
 	select QCOM_GDSC
 	help
 	  Support for the video clock controller on Qualcomm Technologies, Inc.

-- 
2.49.0


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [PATCH 3/6] clk: qcom: videocc-sm8550: Add separate frequency tables for X1E80100
  2025-07-01 17:28 [PATCH 0/6] clk: qcom: Add video clock controller and resets for X1E80100 Stephan Gerhold
  2025-07-01 17:28 ` [PATCH 1/6] dt-bindings: clock: qcom,sm8450-videocc: Document X1E80100 compatible Stephan Gerhold
  2025-07-01 17:28 ` [PATCH 2/6] clk: qcom: videocc-sm8550: Allow building without SM8550/SM8560 GCC Stephan Gerhold
@ 2025-07-01 17:28 ` Stephan Gerhold
  2025-07-04 15:24   ` Bryan O'Donoghue
  2025-07-01 17:28 ` [PATCH 4/6] dt-bindings: clock: qcom,x1e80100-gcc: Add missing video resets Stephan Gerhold
                   ` (2 subsequent siblings)
  5 siblings, 1 reply; 17+ messages in thread
From: Stephan Gerhold @ 2025-07-01 17:28 UTC (permalink / raw)
  To: Bjorn Andersson
  Cc: Michael Turquette, Stephen Boyd, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Taniya Das, Jagadeesh Kona, Konrad Dybcio,
	Abel Vesa, Johan Hovold, Bryan O'Donoghue, Stefan Schmidt,
	linux-arm-msm, linux-clk, devicetree, linux-kernel

X1E80100 videocc is identical to the one in SM8550, aside from slightly
different recommended PLL frequencies. Add the separate frequency tables
for that and apply them if the qcom,x1e80100-videocc compatible is used.

Signed-off-by: Stephan Gerhold <stephan.gerhold@linaro.org>
---
 drivers/clk/qcom/Kconfig          |  2 +-
 drivers/clk/qcom/videocc-sm8550.c | 29 +++++++++++++++++++++++++++++
 2 files changed, 30 insertions(+), 1 deletion(-)

diff --git a/drivers/clk/qcom/Kconfig b/drivers/clk/qcom/Kconfig
index 26752bd79f508612347ce79fd3693359d4dd656d..53bbdbe0725bd1b37ecd4c6b15b0d31676d9f548 100644
--- a/drivers/clk/qcom/Kconfig
+++ b/drivers/clk/qcom/Kconfig
@@ -1394,7 +1394,7 @@ config SM_VIDEOCC_8550
 	select QCOM_GDSC
 	help
 	  Support for the video clock controller on Qualcomm Technologies, Inc.
-	  SM8550 or SM8650 devices.
+	  SM8550 or SM8650 or X1E80100 devices.
 	  Say Y if you want to support video devices and functionality such as
 	  video encode/decode.
 
diff --git a/drivers/clk/qcom/videocc-sm8550.c b/drivers/clk/qcom/videocc-sm8550.c
index 3e5891b43ee404edc6c99bbf8f2583cb44df9e37..32a6505abe265472de4059c4a048f731fdbf1dfe 100644
--- a/drivers/clk/qcom/videocc-sm8550.c
+++ b/drivers/clk/qcom/videocc-sm8550.c
@@ -145,6 +145,16 @@ static const struct freq_tbl ftbl_video_cc_mvs0_clk_src_sm8650[] = {
 	{ }
 };
 
+static const struct freq_tbl ftbl_video_cc_mvs0_clk_src_x1e80100[] = {
+	F(576000000, P_VIDEO_CC_PLL0_OUT_MAIN, 1, 0, 0),
+	F(720000000, P_VIDEO_CC_PLL0_OUT_MAIN, 1, 0, 0),
+	F(1014000000, P_VIDEO_CC_PLL0_OUT_MAIN, 1, 0, 0),
+	F(1098000000, P_VIDEO_CC_PLL0_OUT_MAIN, 1, 0, 0),
+	F(1332000000, P_VIDEO_CC_PLL0_OUT_MAIN, 1, 0, 0),
+	F(1443000000, P_VIDEO_CC_PLL0_OUT_MAIN, 1, 0, 0),
+	{ }
+};
+
 static struct clk_rcg2 video_cc_mvs0_clk_src = {
 	.cmd_rcgr = 0x8000,
 	.mnd_width = 0,
@@ -177,6 +187,15 @@ static const struct freq_tbl ftbl_video_cc_mvs1_clk_src_sm8650[] = {
 	{ }
 };
 
+static const struct freq_tbl ftbl_video_cc_mvs1_clk_src_x1e80100[] = {
+	F(840000000, P_VIDEO_CC_PLL1_OUT_MAIN, 1, 0, 0),
+	F(1050000000, P_VIDEO_CC_PLL1_OUT_MAIN, 1, 0, 0),
+	F(1350000000, P_VIDEO_CC_PLL1_OUT_MAIN, 1, 0, 0),
+	F(1500000000, P_VIDEO_CC_PLL1_OUT_MAIN, 1, 0, 0),
+	F(1650000000, P_VIDEO_CC_PLL1_OUT_MAIN, 1, 0, 0),
+	{ }
+};
+
 static struct clk_rcg2 video_cc_mvs1_clk_src = {
 	.cmd_rcgr = 0x8018,
 	.mnd_width = 0,
@@ -559,12 +578,22 @@ static const struct qcom_cc_desc video_cc_sm8550_desc = {
 static const struct of_device_id video_cc_sm8550_match_table[] = {
 	{ .compatible = "qcom,sm8550-videocc" },
 	{ .compatible = "qcom,sm8650-videocc" },
+	{ .compatible = "qcom,x1e80100-videocc" },
 	{ }
 };
 MODULE_DEVICE_TABLE(of, video_cc_sm8550_match_table);
 
 static int video_cc_sm8550_probe(struct platform_device *pdev)
 {
+	if (of_device_is_compatible(pdev->dev.of_node, "qcom,x1e80100-videocc")) {
+		video_cc_pll0_config.l = 0x1e;
+		video_cc_pll0_config.alpha = 0x0000;
+		video_cc_pll1_config.l = 0x2b;
+		video_cc_pll1_config.alpha = 0xc000;
+		video_cc_mvs0_clk_src.freq_tbl = ftbl_video_cc_mvs0_clk_src_x1e80100;
+		video_cc_mvs1_clk_src.freq_tbl = ftbl_video_cc_mvs1_clk_src_x1e80100;
+	}
+
 	if (of_device_is_compatible(pdev->dev.of_node, "qcom,sm8650-videocc")) {
 		video_cc_pll0_config.l = 0x1e;
 		video_cc_pll0_config.alpha = 0xa000;

-- 
2.49.0


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [PATCH 4/6] dt-bindings: clock: qcom,x1e80100-gcc: Add missing video resets
  2025-07-01 17:28 [PATCH 0/6] clk: qcom: Add video clock controller and resets for X1E80100 Stephan Gerhold
                   ` (2 preceding siblings ...)
  2025-07-01 17:28 ` [PATCH 3/6] clk: qcom: videocc-sm8550: Add separate frequency tables for X1E80100 Stephan Gerhold
@ 2025-07-01 17:28 ` Stephan Gerhold
  2025-07-04 15:36   ` Bryan O'Donoghue
  2025-07-08 16:21   ` Rob Herring (Arm)
  2025-07-01 17:28 ` [PATCH 5/6] clk: qcom: gcc-x1e80100: " Stephan Gerhold
  2025-07-01 17:28 ` [PATCH 6/6] arm64: dts: qcom: x1e80100: Add videocc Stephan Gerhold
  5 siblings, 2 replies; 17+ messages in thread
From: Stephan Gerhold @ 2025-07-01 17:28 UTC (permalink / raw)
  To: Bjorn Andersson
  Cc: Michael Turquette, Stephen Boyd, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Taniya Das, Jagadeesh Kona, Konrad Dybcio,
	Abel Vesa, Johan Hovold, Bryan O'Donoghue, Stefan Schmidt,
	linux-arm-msm, linux-clk, devicetree, linux-kernel

Add the missing video resets that are needed for the iris video codec.

Signed-off-by: Stephan Gerhold <stephan.gerhold@linaro.org>
---
 include/dt-bindings/clock/qcom,x1e80100-gcc.h | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/include/dt-bindings/clock/qcom,x1e80100-gcc.h b/include/dt-bindings/clock/qcom,x1e80100-gcc.h
index 24ba9e2a5cf6c31e6e88c682e6bfcc60490d692d..710c340f24a57d799ac04650fbe9d4ea0f294bde 100644
--- a/include/dt-bindings/clock/qcom,x1e80100-gcc.h
+++ b/include/dt-bindings/clock/qcom,x1e80100-gcc.h
@@ -482,4 +482,6 @@
 #define GCC_USB_1_PHY_BCR					85
 #define GCC_USB_2_PHY_BCR					86
 #define GCC_VIDEO_BCR						87
+#define GCC_VIDEO_AXI0_CLK_ARES					88
+#define GCC_VIDEO_AXI1_CLK_ARES					89
 #endif

-- 
2.49.0


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [PATCH 5/6] clk: qcom: gcc-x1e80100: Add missing video resets
  2025-07-01 17:28 [PATCH 0/6] clk: qcom: Add video clock controller and resets for X1E80100 Stephan Gerhold
                   ` (3 preceding siblings ...)
  2025-07-01 17:28 ` [PATCH 4/6] dt-bindings: clock: qcom,x1e80100-gcc: Add missing video resets Stephan Gerhold
@ 2025-07-01 17:28 ` Stephan Gerhold
  2025-07-04 15:36   ` Bryan O'Donoghue
  2025-07-08 17:05   ` Konrad Dybcio
  2025-07-01 17:28 ` [PATCH 6/6] arm64: dts: qcom: x1e80100: Add videocc Stephan Gerhold
  5 siblings, 2 replies; 17+ messages in thread
From: Stephan Gerhold @ 2025-07-01 17:28 UTC (permalink / raw)
  To: Bjorn Andersson
  Cc: Michael Turquette, Stephen Boyd, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Taniya Das, Jagadeesh Kona, Konrad Dybcio,
	Abel Vesa, Johan Hovold, Bryan O'Donoghue, Stefan Schmidt,
	linux-arm-msm, linux-clk, devicetree, linux-kernel

Add the missing video resets that are needed for the iris video codec.
Adapted from gcc-sm8550.c (with adjusted addresses).

Signed-off-by: Stephan Gerhold <stephan.gerhold@linaro.org>
---
 drivers/clk/qcom/gcc-x1e80100.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/clk/qcom/gcc-x1e80100.c b/drivers/clk/qcom/gcc-x1e80100.c
index 3e44757e25d3245e455918e9474c978c8dacaa5e..301fc9fc32d8e6e1ddf59c1d3350d84f6c06e4b6 100644
--- a/drivers/clk/qcom/gcc-x1e80100.c
+++ b/drivers/clk/qcom/gcc-x1e80100.c
@@ -6674,6 +6674,8 @@ static const struct qcom_reset_map gcc_x1e80100_resets[] = {
 	[GCC_USB_1_PHY_BCR] = { 0x2a020 },
 	[GCC_USB_2_PHY_BCR] = { 0xa3020 },
 	[GCC_VIDEO_BCR] = { 0x32000 },
+	[GCC_VIDEO_AXI0_CLK_ARES] = { .reg = 0x32018, .bit = 2, .udelay = 1000 },
+	[GCC_VIDEO_AXI1_CLK_ARES] = { .reg = 0x32024, .bit = 2, .udelay = 1000 },
 };
 
 static const struct clk_rcg_dfs_data gcc_dfs_clocks[] = {

-- 
2.49.0


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [PATCH 6/6] arm64: dts: qcom: x1e80100: Add videocc
  2025-07-01 17:28 [PATCH 0/6] clk: qcom: Add video clock controller and resets for X1E80100 Stephan Gerhold
                   ` (4 preceding siblings ...)
  2025-07-01 17:28 ` [PATCH 5/6] clk: qcom: gcc-x1e80100: " Stephan Gerhold
@ 2025-07-01 17:28 ` Stephan Gerhold
  2025-07-04 15:37   ` Bryan O'Donoghue
  2025-07-08 17:01   ` Konrad Dybcio
  5 siblings, 2 replies; 17+ messages in thread
From: Stephan Gerhold @ 2025-07-01 17:28 UTC (permalink / raw)
  To: Bjorn Andersson
  Cc: Michael Turquette, Stephen Boyd, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Taniya Das, Jagadeesh Kona, Konrad Dybcio,
	Abel Vesa, Johan Hovold, Bryan O'Donoghue, Stefan Schmidt,
	linux-arm-msm, linux-clk, devicetree, linux-kernel

Add the video clock controller for X1E80100, similar to sm8550.dtsi. It
provides the needed clocks/power domains for the iris video codec.

Signed-off-by: Stephan Gerhold <stephan.gerhold@linaro.org>
---
 arch/arm64/boot/dts/qcom/x1e80100.dtsi | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/x1e80100.dtsi b/arch/arm64/boot/dts/qcom/x1e80100.dtsi
index a9a7bb676c6f8ac48a2e443d28efdc8c9b5e52c0..890eaaa40184a18bff54f2d750968112a2546d19 100644
--- a/arch/arm64/boot/dts/qcom/x1e80100.dtsi
+++ b/arch/arm64/boot/dts/qcom/x1e80100.dtsi
@@ -5,6 +5,7 @@
 
 #include <dt-bindings/clock/qcom,rpmh.h>
 #include <dt-bindings/clock/qcom,sc8280xp-lpasscc.h>
+#include <dt-bindings/clock/qcom,sm8450-videocc.h>
 #include <dt-bindings/clock/qcom,x1e80100-dispcc.h>
 #include <dt-bindings/clock/qcom,x1e80100-gcc.h>
 #include <dt-bindings/clock/qcom,x1e80100-gpucc.h>
@@ -5171,6 +5172,20 @@ usb_1_ss1_dwc3_ss: endpoint {
 			};
 		};
 
+		videocc: clock-controller@aaf0000 {
+			compatible = "qcom,x1e80100-videocc";
+			reg = <0 0x0aaf0000 0 0x10000>;
+			clocks = <&bi_tcxo_div2>,
+				 <&gcc GCC_QMIP_VIDEO_VCODEC_AHB_CLK>;
+			power-domains = <&rpmhpd RPMHPD_MMCX>,
+					<&rpmhpd RPMHPD_MXC>;
+			required-opps = <&rpmhpd_opp_low_svs>,
+					<&rpmhpd_opp_low_svs>;
+			#clock-cells = <1>;
+			#reset-cells = <1>;
+			#power-domain-cells = <1>;
+		};
+
 		mdss: display-subsystem@ae00000 {
 			compatible = "qcom,x1e80100-mdss";
 			reg = <0 0x0ae00000 0 0x1000>;

-- 
2.49.0


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* Re: [PATCH 1/6] dt-bindings: clock: qcom,sm8450-videocc: Document X1E80100 compatible
  2025-07-01 17:28 ` [PATCH 1/6] dt-bindings: clock: qcom,sm8450-videocc: Document X1E80100 compatible Stephan Gerhold
@ 2025-07-04 15:08   ` Bryan O'Donoghue
  2025-07-08 16:17   ` Rob Herring (Arm)
  1 sibling, 0 replies; 17+ messages in thread
From: Bryan O'Donoghue @ 2025-07-04 15:08 UTC (permalink / raw)
  To: Stephan Gerhold, Bjorn Andersson
  Cc: Michael Turquette, Stephen Boyd, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Taniya Das, Jagadeesh Kona, Konrad Dybcio,
	Abel Vesa, Johan Hovold, Stefan Schmidt, linux-arm-msm, linux-clk,
	devicetree, linux-kernel

On 01/07/2025 18:28, Stephan Gerhold wrote:
> X1E80100 videocc is largely identical to SM8550, but needs slightly
> different PLL frequencies. Add a separate qcom,x1e80100-videocc compatible
> to the existing schema used for SM8550.
> 
> Signed-off-by: Stephan Gerhold <stephan.gerhold@linaro.org>
> ---
>   Documentation/devicetree/bindings/clock/qcom,sm8450-videocc.yaml | 1 +
>   1 file changed, 1 insertion(+)
> 
> diff --git a/Documentation/devicetree/bindings/clock/qcom,sm8450-videocc.yaml b/Documentation/devicetree/bindings/clock/qcom,sm8450-videocc.yaml
> index 0d99178332cb99d3f02f50605e19b9b26e3ec807..fcd2727dae46711650fc8fe71221a06630040026 100644
> --- a/Documentation/devicetree/bindings/clock/qcom,sm8450-videocc.yaml
> +++ b/Documentation/devicetree/bindings/clock/qcom,sm8450-videocc.yaml
> @@ -25,6 +25,7 @@ properties:
>         - qcom,sm8475-videocc
>         - qcom,sm8550-videocc
>         - qcom,sm8650-videocc
> +      - qcom,x1e80100-videocc
>   
>     clocks:
>       items:
> 
Reviewed-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 2/6] clk: qcom: videocc-sm8550: Allow building without SM8550/SM8560 GCC
  2025-07-01 17:28 ` [PATCH 2/6] clk: qcom: videocc-sm8550: Allow building without SM8550/SM8560 GCC Stephan Gerhold
@ 2025-07-04 15:08   ` Bryan O'Donoghue
  0 siblings, 0 replies; 17+ messages in thread
From: Bryan O'Donoghue @ 2025-07-04 15:08 UTC (permalink / raw)
  To: Stephan Gerhold, Bjorn Andersson
  Cc: Michael Turquette, Stephen Boyd, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Taniya Das, Jagadeesh Kona, Konrad Dybcio,
	Abel Vesa, Johan Hovold, Stefan Schmidt, linux-arm-msm, linux-clk,
	devicetree, linux-kernel

On 01/07/2025 18:28, Stephan Gerhold wrote:
>  From the build perspective, the videocc-sm8550 driver doesn't depend on
> having one of the GCC drivers enabled. It builds just fine without the GCC
> driver. In practice, it doesn't make much sense to have it enabled without
> the GCC driver, but currently this extra dependency is inconsistent with
> most of the other VIDEOCC entries in Kconfig. This can easily cause
> confusion when you see the VIDEOCC options for some of the SoCs but not for
> all of them.
> 
> Let's just drop the depends line to allow building the videocc driver
> independent of the GCC selection. Compile testing with randconfig will also
> benefit from keeping the dependencies minimal.
> 
> Signed-off-by: Stephan Gerhold <stephan.gerhold@linaro.org>
> ---
>   drivers/clk/qcom/Kconfig | 1 -
>   1 file changed, 1 deletion(-)
> 
> diff --git a/drivers/clk/qcom/Kconfig b/drivers/clk/qcom/Kconfig
> index 36d6e6e1e7f0162d53f02f39125f4593517e0dba..26752bd79f508612347ce79fd3693359d4dd656d 100644
> --- a/drivers/clk/qcom/Kconfig
> +++ b/drivers/clk/qcom/Kconfig
> @@ -1391,7 +1391,6 @@ config SM_VIDEOCC_8350
>   config SM_VIDEOCC_8550
>   	tristate "SM8550 Video Clock Controller"
>   	depends on ARM64 || COMPILE_TEST
> -	depends on SM_GCC_8550 || SM_GCC_8650
>   	select QCOM_GDSC
>   	help
>   	  Support for the video clock controller on Qualcomm Technologies, Inc.
> 
Reviewed-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 3/6] clk: qcom: videocc-sm8550: Add separate frequency tables for X1E80100
  2025-07-01 17:28 ` [PATCH 3/6] clk: qcom: videocc-sm8550: Add separate frequency tables for X1E80100 Stephan Gerhold
@ 2025-07-04 15:24   ` Bryan O'Donoghue
  0 siblings, 0 replies; 17+ messages in thread
From: Bryan O'Donoghue @ 2025-07-04 15:24 UTC (permalink / raw)
  To: Stephan Gerhold, Bjorn Andersson
  Cc: Michael Turquette, Stephen Boyd, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Taniya Das, Jagadeesh Kona, Konrad Dybcio,
	Abel Vesa, Johan Hovold, Stefan Schmidt, linux-arm-msm, linux-clk,
	devicetree, linux-kernel

On 01/07/2025 18:28, Stephan Gerhold wrote:
> X1E80100 videocc is identical to the one in SM8550, aside from slightly
> different recommended PLL frequencies. Add the separate frequency tables
> for that and apply them if the qcom,x1e80100-videocc compatible is used.
> 
> Signed-off-by: Stephan Gerhold <stephan.gerhold@linaro.org>
> ---
>   drivers/clk/qcom/Kconfig          |  2 +-
>   drivers/clk/qcom/videocc-sm8550.c | 29 +++++++++++++++++++++++++++++
>   2 files changed, 30 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/clk/qcom/Kconfig b/drivers/clk/qcom/Kconfig
> index 26752bd79f508612347ce79fd3693359d4dd656d..53bbdbe0725bd1b37ecd4c6b15b0d31676d9f548 100644
> --- a/drivers/clk/qcom/Kconfig
> +++ b/drivers/clk/qcom/Kconfig
> @@ -1394,7 +1394,7 @@ config SM_VIDEOCC_8550
>   	select QCOM_GDSC
>   	help
>   	  Support for the video clock controller on Qualcomm Technologies, Inc.
> -	  SM8550 or SM8650 devices.
> +	  SM8550 or SM8650 or X1E80100 devices.
>   	  Say Y if you want to support video devices and functionality such as
>   	  video encode/decode.
>   
> diff --git a/drivers/clk/qcom/videocc-sm8550.c b/drivers/clk/qcom/videocc-sm8550.c
> index 3e5891b43ee404edc6c99bbf8f2583cb44df9e37..32a6505abe265472de4059c4a048f731fdbf1dfe 100644
> --- a/drivers/clk/qcom/videocc-sm8550.c
> +++ b/drivers/clk/qcom/videocc-sm8550.c
> @@ -145,6 +145,16 @@ static const struct freq_tbl ftbl_video_cc_mvs0_clk_src_sm8650[] = {
>   	{ }
>   };
>   
> +static const struct freq_tbl ftbl_video_cc_mvs0_clk_src_x1e80100[] = {
> +	F(576000000, P_VIDEO_CC_PLL0_OUT_MAIN, 1, 0, 0),
> +	F(720000000, P_VIDEO_CC_PLL0_OUT_MAIN, 1, 0, 0),
> +	F(1014000000, P_VIDEO_CC_PLL0_OUT_MAIN, 1, 0, 0),
> +	F(1098000000, P_VIDEO_CC_PLL0_OUT_MAIN, 1, 0, 0),
> +	F(1332000000, P_VIDEO_CC_PLL0_OUT_MAIN, 1, 0, 0),
> +	F(1443000000, P_VIDEO_CC_PLL0_OUT_MAIN, 1, 0, 0),
> +	{ }
> +};
> +
>   static struct clk_rcg2 video_cc_mvs0_clk_src = {
>   	.cmd_rcgr = 0x8000,
>   	.mnd_width = 0,
> @@ -177,6 +187,15 @@ static const struct freq_tbl ftbl_video_cc_mvs1_clk_src_sm8650[] = {
>   	{ }
>   };
>   
> +static const struct freq_tbl ftbl_video_cc_mvs1_clk_src_x1e80100[] = {
> +	F(840000000, P_VIDEO_CC_PLL1_OUT_MAIN, 1, 0, 0),
> +	F(1050000000, P_VIDEO_CC_PLL1_OUT_MAIN, 1, 0, 0),
> +	F(1350000000, P_VIDEO_CC_PLL1_OUT_MAIN, 1, 0, 0),
> +	F(1500000000, P_VIDEO_CC_PLL1_OUT_MAIN, 1, 0, 0),
> +	F(1650000000, P_VIDEO_CC_PLL1_OUT_MAIN, 1, 0, 0),
> +	{ }
> +};
> +
>   static struct clk_rcg2 video_cc_mvs1_clk_src = {
>   	.cmd_rcgr = 0x8018,
>   	.mnd_width = 0,
> @@ -559,12 +578,22 @@ static const struct qcom_cc_desc video_cc_sm8550_desc = {
>   static const struct of_device_id video_cc_sm8550_match_table[] = {
>   	{ .compatible = "qcom,sm8550-videocc" },
>   	{ .compatible = "qcom,sm8650-videocc" },
> +	{ .compatible = "qcom,x1e80100-videocc" },
>   	{ }
>   };
>   MODULE_DEVICE_TABLE(of, video_cc_sm8550_match_table);
>   
>   static int video_cc_sm8550_probe(struct platform_device *pdev)
>   {
> +	if (of_device_is_compatible(pdev->dev.of_node, "qcom,x1e80100-videocc")) {
> +		video_cc_pll0_config.l = 0x1e;
> +		video_cc_pll0_config.alpha = 0x0000;
> +		video_cc_pll1_config.l = 0x2b;
> +		video_cc_pll1_config.alpha = 0xc000;
> +		video_cc_mvs0_clk_src.freq_tbl = ftbl_video_cc_mvs0_clk_src_x1e80100;
> +		video_cc_mvs1_clk_src.freq_tbl = ftbl_video_cc_mvs1_clk_src_x1e80100;
> +	}
> +
>   	if (of_device_is_compatible(pdev->dev.of_node, "qcom,sm8650-videocc")) {
>   		video_cc_pll0_config.l = 0x1e;
>   		video_cc_pll0_config.alpha = 0xa000;
> 

Reviewed-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 5/6] clk: qcom: gcc-x1e80100: Add missing video resets
  2025-07-01 17:28 ` [PATCH 5/6] clk: qcom: gcc-x1e80100: " Stephan Gerhold
@ 2025-07-04 15:36   ` Bryan O'Donoghue
  2025-07-08 17:05   ` Konrad Dybcio
  1 sibling, 0 replies; 17+ messages in thread
From: Bryan O'Donoghue @ 2025-07-04 15:36 UTC (permalink / raw)
  To: Stephan Gerhold, Bjorn Andersson
  Cc: Michael Turquette, Stephen Boyd, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Taniya Das, Jagadeesh Kona, Konrad Dybcio,
	Abel Vesa, Johan Hovold, Stefan Schmidt, linux-arm-msm, linux-clk,
	devicetree, linux-kernel

On 01/07/2025 18:28, Stephan Gerhold wrote:
> Add the missing video resets that are needed for the iris video codec.
> Adapted from gcc-sm8550.c (with adjusted addresses).
> 
> Signed-off-by: Stephan Gerhold <stephan.gerhold@linaro.org>
> ---
>   drivers/clk/qcom/gcc-x1e80100.c | 2 ++
>   1 file changed, 2 insertions(+)
> 
> diff --git a/drivers/clk/qcom/gcc-x1e80100.c b/drivers/clk/qcom/gcc-x1e80100.c
> index 3e44757e25d3245e455918e9474c978c8dacaa5e..301fc9fc32d8e6e1ddf59c1d3350d84f6c06e4b6 100644
> --- a/drivers/clk/qcom/gcc-x1e80100.c
> +++ b/drivers/clk/qcom/gcc-x1e80100.c
> @@ -6674,6 +6674,8 @@ static const struct qcom_reset_map gcc_x1e80100_resets[] = {
>   	[GCC_USB_1_PHY_BCR] = { 0x2a020 },
>   	[GCC_USB_2_PHY_BCR] = { 0xa3020 },
>   	[GCC_VIDEO_BCR] = { 0x32000 },
> +	[GCC_VIDEO_AXI0_CLK_ARES] = { .reg = 0x32018, .bit = 2, .udelay = 1000 },
> +	[GCC_VIDEO_AXI1_CLK_ARES] = { .reg = 0x32024, .bit = 2, .udelay = 1000 },
>   };
>   
>   static const struct clk_rcg_dfs_data gcc_dfs_clocks[] = {
> 
Reviewed-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 4/6] dt-bindings: clock: qcom,x1e80100-gcc: Add missing video resets
  2025-07-01 17:28 ` [PATCH 4/6] dt-bindings: clock: qcom,x1e80100-gcc: Add missing video resets Stephan Gerhold
@ 2025-07-04 15:36   ` Bryan O'Donoghue
  2025-07-08 16:21   ` Rob Herring (Arm)
  1 sibling, 0 replies; 17+ messages in thread
From: Bryan O'Donoghue @ 2025-07-04 15:36 UTC (permalink / raw)
  To: Stephan Gerhold, Bjorn Andersson
  Cc: Michael Turquette, Stephen Boyd, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Taniya Das, Jagadeesh Kona, Konrad Dybcio,
	Abel Vesa, Johan Hovold, Stefan Schmidt, linux-arm-msm, linux-clk,
	devicetree, linux-kernel

On 01/07/2025 18:28, Stephan Gerhold wrote:
> Add the missing video resets that are needed for the iris video codec.
> 
> Signed-off-by: Stephan Gerhold <stephan.gerhold@linaro.org>
> ---
>   include/dt-bindings/clock/qcom,x1e80100-gcc.h | 2 ++
>   1 file changed, 2 insertions(+)
> 
> diff --git a/include/dt-bindings/clock/qcom,x1e80100-gcc.h b/include/dt-bindings/clock/qcom,x1e80100-gcc.h
> index 24ba9e2a5cf6c31e6e88c682e6bfcc60490d692d..710c340f24a57d799ac04650fbe9d4ea0f294bde 100644
> --- a/include/dt-bindings/clock/qcom,x1e80100-gcc.h
> +++ b/include/dt-bindings/clock/qcom,x1e80100-gcc.h
> @@ -482,4 +482,6 @@
>   #define GCC_USB_1_PHY_BCR					85
>   #define GCC_USB_2_PHY_BCR					86
>   #define GCC_VIDEO_BCR						87
> +#define GCC_VIDEO_AXI0_CLK_ARES					88
> +#define GCC_VIDEO_AXI1_CLK_ARES					89
>   #endif
> 
Reviewed-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 6/6] arm64: dts: qcom: x1e80100: Add videocc
  2025-07-01 17:28 ` [PATCH 6/6] arm64: dts: qcom: x1e80100: Add videocc Stephan Gerhold
@ 2025-07-04 15:37   ` Bryan O'Donoghue
  2025-07-08 17:01   ` Konrad Dybcio
  1 sibling, 0 replies; 17+ messages in thread
From: Bryan O'Donoghue @ 2025-07-04 15:37 UTC (permalink / raw)
  To: Stephan Gerhold, Bjorn Andersson
  Cc: Michael Turquette, Stephen Boyd, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Taniya Das, Jagadeesh Kona, Konrad Dybcio,
	Abel Vesa, Johan Hovold, Stefan Schmidt, linux-arm-msm, linux-clk,
	devicetree, linux-kernel

On 01/07/2025 18:28, Stephan Gerhold wrote:
> Add the video clock controller for X1E80100, similar to sm8550.dtsi. It
> provides the needed clocks/power domains for the iris video codec.
> 
> Signed-off-by: Stephan Gerhold <stephan.gerhold@linaro.org>
> ---
>   arch/arm64/boot/dts/qcom/x1e80100.dtsi | 15 +++++++++++++++
>   1 file changed, 15 insertions(+)
> 
> diff --git a/arch/arm64/boot/dts/qcom/x1e80100.dtsi b/arch/arm64/boot/dts/qcom/x1e80100.dtsi
> index a9a7bb676c6f8ac48a2e443d28efdc8c9b5e52c0..890eaaa40184a18bff54f2d750968112a2546d19 100644
> --- a/arch/arm64/boot/dts/qcom/x1e80100.dtsi
> +++ b/arch/arm64/boot/dts/qcom/x1e80100.dtsi
> @@ -5,6 +5,7 @@
>   
>   #include <dt-bindings/clock/qcom,rpmh.h>
>   #include <dt-bindings/clock/qcom,sc8280xp-lpasscc.h>
> +#include <dt-bindings/clock/qcom,sm8450-videocc.h>
>   #include <dt-bindings/clock/qcom,x1e80100-dispcc.h>
>   #include <dt-bindings/clock/qcom,x1e80100-gcc.h>
>   #include <dt-bindings/clock/qcom,x1e80100-gpucc.h>
> @@ -5171,6 +5172,20 @@ usb_1_ss1_dwc3_ss: endpoint {
>   			};
>   		};
>   
> +		videocc: clock-controller@aaf0000 {
> +			compatible = "qcom,x1e80100-videocc";
> +			reg = <0 0x0aaf0000 0 0x10000>;
> +			clocks = <&bi_tcxo_div2>,
> +				 <&gcc GCC_QMIP_VIDEO_VCODEC_AHB_CLK>;
> +			power-domains = <&rpmhpd RPMHPD_MMCX>,
> +					<&rpmhpd RPMHPD_MXC>;
> +			required-opps = <&rpmhpd_opp_low_svs>,
> +					<&rpmhpd_opp_low_svs>;
> +			#clock-cells = <1>;
> +			#reset-cells = <1>;
> +			#power-domain-cells = <1>;
> +		};
> +
>   		mdss: display-subsystem@ae00000 {
>   			compatible = "qcom,x1e80100-mdss";
>   			reg = <0 0x0ae00000 0 0x1000>;
> 
Reviewed-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 1/6] dt-bindings: clock: qcom,sm8450-videocc: Document X1E80100 compatible
  2025-07-01 17:28 ` [PATCH 1/6] dt-bindings: clock: qcom,sm8450-videocc: Document X1E80100 compatible Stephan Gerhold
  2025-07-04 15:08   ` Bryan O'Donoghue
@ 2025-07-08 16:17   ` Rob Herring (Arm)
  1 sibling, 0 replies; 17+ messages in thread
From: Rob Herring (Arm) @ 2025-07-08 16:17 UTC (permalink / raw)
  To: Stephan Gerhold
  Cc: Bjorn Andersson, Stephen Boyd, Michael Turquette, Taniya Das,
	Konrad Dybcio, linux-arm-msm, Abel Vesa, Jagadeesh Kona,
	Bryan O'Donoghue, linux-clk, Krzysztof Kozlowski, devicetree,
	linux-kernel, Conor Dooley, Stefan Schmidt, Johan Hovold


On Tue, 01 Jul 2025 19:28:33 +0200, Stephan Gerhold wrote:
> X1E80100 videocc is largely identical to SM8550, but needs slightly
> different PLL frequencies. Add a separate qcom,x1e80100-videocc compatible
> to the existing schema used for SM8550.
> 
> Signed-off-by: Stephan Gerhold <stephan.gerhold@linaro.org>
> ---
>  Documentation/devicetree/bindings/clock/qcom,sm8450-videocc.yaml | 1 +
>  1 file changed, 1 insertion(+)
> 

Acked-by: Rob Herring (Arm) <robh@kernel.org>


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 4/6] dt-bindings: clock: qcom,x1e80100-gcc: Add missing video resets
  2025-07-01 17:28 ` [PATCH 4/6] dt-bindings: clock: qcom,x1e80100-gcc: Add missing video resets Stephan Gerhold
  2025-07-04 15:36   ` Bryan O'Donoghue
@ 2025-07-08 16:21   ` Rob Herring (Arm)
  1 sibling, 0 replies; 17+ messages in thread
From: Rob Herring (Arm) @ 2025-07-08 16:21 UTC (permalink / raw)
  To: Stephan Gerhold
  Cc: Jagadeesh Kona, linux-arm-msm, devicetree, Michael Turquette,
	Bryan O'Donoghue, linux-kernel, Stefan Schmidt, Stephen Boyd,
	linux-clk, Taniya Das, Konrad Dybcio, Abel Vesa,
	Krzysztof Kozlowski, Johan Hovold, Bjorn Andersson, Conor Dooley


On Tue, 01 Jul 2025 19:28:36 +0200, Stephan Gerhold wrote:
> Add the missing video resets that are needed for the iris video codec.
> 
> Signed-off-by: Stephan Gerhold <stephan.gerhold@linaro.org>
> ---
>  include/dt-bindings/clock/qcom,x1e80100-gcc.h | 2 ++
>  1 file changed, 2 insertions(+)
> 

Acked-by: Rob Herring (Arm) <robh@kernel.org>


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 6/6] arm64: dts: qcom: x1e80100: Add videocc
  2025-07-01 17:28 ` [PATCH 6/6] arm64: dts: qcom: x1e80100: Add videocc Stephan Gerhold
  2025-07-04 15:37   ` Bryan O'Donoghue
@ 2025-07-08 17:01   ` Konrad Dybcio
  1 sibling, 0 replies; 17+ messages in thread
From: Konrad Dybcio @ 2025-07-08 17:01 UTC (permalink / raw)
  To: Stephan Gerhold, Bjorn Andersson
  Cc: Michael Turquette, Stephen Boyd, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Taniya Das, Jagadeesh Kona, Konrad Dybcio,
	Abel Vesa, Johan Hovold, Bryan O'Donoghue, Stefan Schmidt,
	linux-arm-msm, linux-clk, devicetree, linux-kernel

On 7/1/25 7:28 PM, Stephan Gerhold wrote:
> Add the video clock controller for X1E80100, similar to sm8550.dtsi. It
> provides the needed clocks/power domains for the iris video codec.
> 
> Signed-off-by: Stephan Gerhold <stephan.gerhold@linaro.org>
> ---
>  arch/arm64/boot/dts/qcom/x1e80100.dtsi | 15 +++++++++++++++
>  1 file changed, 15 insertions(+)
> 
> diff --git a/arch/arm64/boot/dts/qcom/x1e80100.dtsi b/arch/arm64/boot/dts/qcom/x1e80100.dtsi
> index a9a7bb676c6f8ac48a2e443d28efdc8c9b5e52c0..890eaaa40184a18bff54f2d750968112a2546d19 100644
> --- a/arch/arm64/boot/dts/qcom/x1e80100.dtsi
> +++ b/arch/arm64/boot/dts/qcom/x1e80100.dtsi
> @@ -5,6 +5,7 @@
>  
>  #include <dt-bindings/clock/qcom,rpmh.h>
>  #include <dt-bindings/clock/qcom,sc8280xp-lpasscc.h>
> +#include <dt-bindings/clock/qcom,sm8450-videocc.h>
>  #include <dt-bindings/clock/qcom,x1e80100-dispcc.h>
>  #include <dt-bindings/clock/qcom,x1e80100-gcc.h>
>  #include <dt-bindings/clock/qcom,x1e80100-gpucc.h>
> @@ -5171,6 +5172,20 @@ usb_1_ss1_dwc3_ss: endpoint {
>  			};
>  		};
>  
> +		videocc: clock-controller@aaf0000 {
> +			compatible = "qcom,x1e80100-videocc";
> +			reg = <0 0x0aaf0000 0 0x10000>;
> +			clocks = <&bi_tcxo_div2>,
> +				 <&gcc GCC_QMIP_VIDEO_VCODEC_AHB_CLK>;

This should be GCC_VIDEO_AHB_CLK, you can refer to it even if
we don't expose it through the clk framework on Linux (it's
enabled through magic writes instead)

Konrad

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 5/6] clk: qcom: gcc-x1e80100: Add missing video resets
  2025-07-01 17:28 ` [PATCH 5/6] clk: qcom: gcc-x1e80100: " Stephan Gerhold
  2025-07-04 15:36   ` Bryan O'Donoghue
@ 2025-07-08 17:05   ` Konrad Dybcio
  1 sibling, 0 replies; 17+ messages in thread
From: Konrad Dybcio @ 2025-07-08 17:05 UTC (permalink / raw)
  To: Stephan Gerhold, Bjorn Andersson
  Cc: Michael Turquette, Stephen Boyd, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Taniya Das, Jagadeesh Kona, Konrad Dybcio,
	Abel Vesa, Johan Hovold, Bryan O'Donoghue, Stefan Schmidt,
	linux-arm-msm, linux-clk, devicetree, linux-kernel

On 7/1/25 7:28 PM, Stephan Gerhold wrote:
> Add the missing video resets that are needed for the iris video codec.
> Adapted from gcc-sm8550.c (with adjusted addresses).

I don't think they changed

> 
> Signed-off-by: Stephan Gerhold <stephan.gerhold@linaro.org>
> ---
>  drivers/clk/qcom/gcc-x1e80100.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/drivers/clk/qcom/gcc-x1e80100.c b/drivers/clk/qcom/gcc-x1e80100.c
> index 3e44757e25d3245e455918e9474c978c8dacaa5e..301fc9fc32d8e6e1ddf59c1d3350d84f6c06e4b6 100644
> --- a/drivers/clk/qcom/gcc-x1e80100.c
> +++ b/drivers/clk/qcom/gcc-x1e80100.c
> @@ -6674,6 +6674,8 @@ static const struct qcom_reset_map gcc_x1e80100_resets[] = {
>  	[GCC_USB_1_PHY_BCR] = { 0x2a020 },
>  	[GCC_USB_2_PHY_BCR] = { 0xa3020 },
>  	[GCC_VIDEO_BCR] = { 0x32000 },
> +	[GCC_VIDEO_AXI0_CLK_ARES] = { .reg = 0x32018, .bit = 2, .udelay = 1000 },
> +	[GCC_VIDEO_AXI1_CLK_ARES] = { .reg = 0x32024, .bit = 2, .udelay = 1000 },

Hm, so this is actually gcc_video_axi0_clk (same reg), but the bit
indeed is described to pass on a reset signal to the hw block on
the other side

Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>

Konrad

^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2025-07-08 17:05 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-07-01 17:28 [PATCH 0/6] clk: qcom: Add video clock controller and resets for X1E80100 Stephan Gerhold
2025-07-01 17:28 ` [PATCH 1/6] dt-bindings: clock: qcom,sm8450-videocc: Document X1E80100 compatible Stephan Gerhold
2025-07-04 15:08   ` Bryan O'Donoghue
2025-07-08 16:17   ` Rob Herring (Arm)
2025-07-01 17:28 ` [PATCH 2/6] clk: qcom: videocc-sm8550: Allow building without SM8550/SM8560 GCC Stephan Gerhold
2025-07-04 15:08   ` Bryan O'Donoghue
2025-07-01 17:28 ` [PATCH 3/6] clk: qcom: videocc-sm8550: Add separate frequency tables for X1E80100 Stephan Gerhold
2025-07-04 15:24   ` Bryan O'Donoghue
2025-07-01 17:28 ` [PATCH 4/6] dt-bindings: clock: qcom,x1e80100-gcc: Add missing video resets Stephan Gerhold
2025-07-04 15:36   ` Bryan O'Donoghue
2025-07-08 16:21   ` Rob Herring (Arm)
2025-07-01 17:28 ` [PATCH 5/6] clk: qcom: gcc-x1e80100: " Stephan Gerhold
2025-07-04 15:36   ` Bryan O'Donoghue
2025-07-08 17:05   ` Konrad Dybcio
2025-07-01 17:28 ` [PATCH 6/6] arm64: dts: qcom: x1e80100: Add videocc Stephan Gerhold
2025-07-04 15:37   ` Bryan O'Donoghue
2025-07-08 17:01   ` Konrad Dybcio

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).