[PATCH 6/6] clk: qcom: Add support for Video Clock Controller on QCS8300

Imran Shaik posted 6 patches 1 month, 1 week ago
There is a newer version of this series
[PATCH 6/6] clk: qcom: Add support for Video Clock Controller on QCS8300
Posted by Imran Shaik 1 month, 1 week ago
Add support to the QCS8300 Video clock controller by extending
the SA8775P Video clock controller, which is mostly identical
but QCS8300 has minor difference.

Signed-off-by: Imran Shaik <quic_imrashai@quicinc.com>
---
 drivers/clk/qcom/videocc-sa8775p.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/clk/qcom/videocc-sa8775p.c b/drivers/clk/qcom/videocc-sa8775p.c
index bf5de411fd5d..d0494ba81f5f 100644
--- a/drivers/clk/qcom/videocc-sa8775p.c
+++ b/drivers/clk/qcom/videocc-sa8775p.c
@@ -524,6 +524,7 @@ static struct qcom_cc_desc video_cc_sa8775p_desc = {
 
 static const struct of_device_id video_cc_sa8775p_match_table[] = {
 	{ .compatible = "qcom,sa8775p-videocc" },
+	{ .compatible = "qcom,qcs8300-videocc" },
 	{ }
 };
 MODULE_DEVICE_TABLE(of, video_cc_sa8775p_match_table);
@@ -550,6 +551,9 @@ static int video_cc_sa8775p_probe(struct platform_device *pdev)
 	clk_lucid_evo_pll_configure(&video_pll0, regmap, &video_pll0_config);
 	clk_lucid_evo_pll_configure(&video_pll1, regmap, &video_pll1_config);
 
+	if (of_device_is_compatible(pdev->dev.of_node, "qcom,qcs8300-videocc"))
+		regmap_write(regmap, video_cc_mvs0c_div2_div_clk_src.reg, 2);
+
 	/* Keep some clocks always enabled */
 	qcom_branch_set_clk_en(regmap, 0x80ec); /* VIDEO_CC_AHB_CLK */
 	qcom_branch_set_clk_en(regmap, 0x8144); /* VIDEO_CC_SLEEP_CLK */

-- 
2.25.1
Re: [PATCH 6/6] clk: qcom: Add support for Video Clock Controller on QCS8300
Posted by Dmitry Baryshkov 1 month, 1 week ago
On Fri, Oct 18, 2024 at 04:42:34PM +0530, Imran Shaik wrote:
> Add support to the QCS8300 Video clock controller by extending
> the SA8775P Video clock controller, which is mostly identical
> but QCS8300 has minor difference.
> 
> Signed-off-by: Imran Shaik <quic_imrashai@quicinc.com>
> ---
>  drivers/clk/qcom/videocc-sa8775p.c | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/drivers/clk/qcom/videocc-sa8775p.c b/drivers/clk/qcom/videocc-sa8775p.c
> index bf5de411fd5d..d0494ba81f5f 100644
> --- a/drivers/clk/qcom/videocc-sa8775p.c
> +++ b/drivers/clk/qcom/videocc-sa8775p.c
> @@ -524,6 +524,7 @@ static struct qcom_cc_desc video_cc_sa8775p_desc = {
>  
>  static const struct of_device_id video_cc_sa8775p_match_table[] = {
>  	{ .compatible = "qcom,sa8775p-videocc" },
> +	{ .compatible = "qcom,qcs8300-videocc" },

Sorted, please.

>  	{ }
>  };
>  MODULE_DEVICE_TABLE(of, video_cc_sa8775p_match_table);
> @@ -550,6 +551,9 @@ static int video_cc_sa8775p_probe(struct platform_device *pdev)
>  	clk_lucid_evo_pll_configure(&video_pll0, regmap, &video_pll0_config);
>  	clk_lucid_evo_pll_configure(&video_pll1, regmap, &video_pll1_config);
>  

Comment?

> +	if (of_device_is_compatible(pdev->dev.of_node, "qcom,qcs8300-videocc"))
> +		regmap_write(regmap, video_cc_mvs0c_div2_div_clk_src.reg, 2);
> +
>  	/* Keep some clocks always enabled */
>  	qcom_branch_set_clk_en(regmap, 0x80ec); /* VIDEO_CC_AHB_CLK */
>  	qcom_branch_set_clk_en(regmap, 0x8144); /* VIDEO_CC_SLEEP_CLK */
> 
> -- 
> 2.25.1
> 

-- 
With best wishes
Dmitry
Re: [PATCH 6/6] clk: qcom: Add support for Video Clock Controller on QCS8300
Posted by Imran Shaik 1 month ago

On 10/18/2024 5:38 PM, Dmitry Baryshkov wrote:
> On Fri, Oct 18, 2024 at 04:42:34PM +0530, Imran Shaik wrote:
>> Add support to the QCS8300 Video clock controller by extending
>> the SA8775P Video clock controller, which is mostly identical
>> but QCS8300 has minor difference.
>>
>> Signed-off-by: Imran Shaik <quic_imrashai@quicinc.com>
>> ---
>>   drivers/clk/qcom/videocc-sa8775p.c | 4 ++++
>>   1 file changed, 4 insertions(+)
>>
>> diff --git a/drivers/clk/qcom/videocc-sa8775p.c b/drivers/clk/qcom/videocc-sa8775p.c
>> index bf5de411fd5d..d0494ba81f5f 100644
>> --- a/drivers/clk/qcom/videocc-sa8775p.c
>> +++ b/drivers/clk/qcom/videocc-sa8775p.c
>> @@ -524,6 +524,7 @@ static struct qcom_cc_desc video_cc_sa8775p_desc = {
>>   
>>   static const struct of_device_id video_cc_sa8775p_match_table[] = {
>>   	{ .compatible = "qcom,sa8775p-videocc" },
>> +	{ .compatible = "qcom,qcs8300-videocc" },
> 
> Sorted, please.
> 

Sure, I will fix this in next patch series.

>>   	{ }
>>   };
>>   MODULE_DEVICE_TABLE(of, video_cc_sa8775p_match_table);
>> @@ -550,6 +551,9 @@ static int video_cc_sa8775p_probe(struct platform_device *pdev)
>>   	clk_lucid_evo_pll_configure(&video_pll0, regmap, &video_pll0_config);
>>   	clk_lucid_evo_pll_configure(&video_pll1, regmap, &video_pll1_config);
>>   
> 
> Comment?
> 

Sure, I will update the comment details for qcs8300-videocc in next 
patch series.

Thanks,
Imran

>> +	if (of_device_is_compatible(pdev->dev.of_node, "qcom,qcs8300-videocc"))
>> +		regmap_write(regmap, video_cc_mvs0c_div2_div_clk_src.reg, 2);
>> +
>>   	/* Keep some clocks always enabled */
>>   	qcom_branch_set_clk_en(regmap, 0x80ec); /* VIDEO_CC_AHB_CLK */
>>   	qcom_branch_set_clk_en(regmap, 0x8144); /* VIDEO_CC_SLEEP_CLK */
>>
>> -- 
>> 2.25.1
>>
>