Re: [PATCH] clk: samsung: fsd: Mark PLL_CAM_CSI as critical

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 20/09/2024 06:15, Inbaraj E wrote:
> 
> 
>> -----Original Message-----
>> From: Inbaraj E <inbaraj.e@xxxxxxxxxxx>
>> Sent: 20 September 2024 09:35
>> To: 'Krzysztof Kozlowski' <krzk@xxxxxxxxxx>; 'Stephen Boyd'
>> <sboyd@xxxxxxxxxx>; 'alim.akhtar@xxxxxxxxxxx'
>> <alim.akhtar@xxxxxxxxxxx>; 'cw00.choi@xxxxxxxxxxx'
>> <cw00.choi@xxxxxxxxxxx>; 'linux-clk@xxxxxxxxxxxxxxx' <linux-
>> clk@xxxxxxxxxxxxxxx>; 'linux-kernel@xxxxxxxxxxxxxxx' <linux-
>> kernel@xxxxxxxxxxxxxxx>; 'linux-samsung-soc@xxxxxxxxxxxxxxx' <linux-
>> samsung-soc@xxxxxxxxxxxxxxx>; 'mturquette@xxxxxxxxxxxx'
>> <mturquette@xxxxxxxxxxxx>; 's.nawrocki@xxxxxxxxxxx'
>> <s.nawrocki@xxxxxxxxxxx>
>> Cc: 'pankaj.dubey@xxxxxxxxxxx' <pankaj.dubey@xxxxxxxxxxx>;
>> 'gost.dev@xxxxxxxxxxx' <gost.dev@xxxxxxxxxxx>
>> Subject: RE: [PATCH] clk: samsung: fsd: Mark PLL_CAM_CSI as critical
>>
>>
>>
>>> -----Original Message-----
>>> From: Krzysztof Kozlowski <krzk@xxxxxxxxxx>
>>> Sent: 19 September 2024 17:33
>>> To: Inbaraj E <inbaraj.e@xxxxxxxxxxx>; 'Stephen Boyd'
>>> <sboyd@xxxxxxxxxx>; alim.akhtar@xxxxxxxxxxx;
>> cw00.choi@xxxxxxxxxxx;
>>> linux-clk@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx;
>>> linux-samsung- soc@xxxxxxxxxxxxxxx; mturquette@xxxxxxxxxxxx;
>>> s.nawrocki@xxxxxxxxxxx
>>> Cc: pankaj.dubey@xxxxxxxxxxx; gost.dev@xxxxxxxxxxx
>>> Subject: Re: [PATCH] clk: samsung: fsd: Mark PLL_CAM_CSI as critical
>>>
>>> On 19/09/2024 13:33, Inbaraj E wrote:
>>>>
>>>>
>>>>> -----Original Message-----
>>>>> From: Stephen Boyd <sboyd@xxxxxxxxxx>
>>>>> Sent: 19 September 2024 15:51
>>>>> To: Inbaraj E <inbaraj.e@xxxxxxxxxxx>; alim.akhtar@xxxxxxxxxxx;
>>>>> cw00.choi@xxxxxxxxxxx; krzk@xxxxxxxxxx; linux-clk@xxxxxxxxxxxxxxx;
>>>>> linux- kernel@xxxxxxxxxxxxxxx; linux-samsung-soc@xxxxxxxxxxxxxxx;
>>>>> mturquette@xxxxxxxxxxxx; s.nawrocki@xxxxxxxxxxx
>>>>> Cc: pankaj.dubey@xxxxxxxxxxx; gost.dev@xxxxxxxxxxx; Inbaraj E
>>>>> <inbaraj.e@xxxxxxxxxxx>
>>>>> Subject: Re: [PATCH] clk: samsung: fsd: Mark PLL_CAM_CSI as
>>>>> critical
>>>>>
>>>>> Quoting Inbaraj E (2024-09-17 03:10:16)
>>>>>> PLL_CAM_CSI is the parent clock for the ACLK and PCLK in the
>>>>>> CMU_CAM_CSI block. When we gate ACLK or PCLK, the clock
>> framework
>>>>> will
>>>>>> subsequently disables the parent clocks(PLL_CAM_CSI). Disabling
>>>>>> PLL_CAM_CSI is causing sytem level halt.
>>>>>>
>>>>>> It was observed on FSD SoC, when we gate the ACLK and PCLK during
>>>>>> CSI stop streaming through pm_runtime_put system is getting halted.
>>>>>> So marking PLL_CAM_CSI as critical to prevent disabling.
>>>>>>
>>>>>> Signed-off-by: Inbaraj E <inbaraj.e@xxxxxxxxxxx>
>>>>>> ---
>>>>>
>>>>> Please add a fixes tag. Although this is likely a band-aid fix
>>>>> because marking something critical leaves it enabled forever.
>>>>
>>>> Sure, will add fixes tag. As per HW manual, this PLL_CAM_CSI is
>>>> supplying clock even for CMU SFR access of CSI block, so we can't
>>>> gate this.
>>>
>>> Hm, I am not so sure. The CMU driver should just take appropriate clock.
>>> Sprinkling CLK_CRITICAL looks as substitute of missing clock handling/
>>
>> As per HW design, PLL_CAM_CSI is responsible for suppling clock to CSI SFR,
>> CMU SFR and some internal block of CAM_CSI. In this some of the clock is not
>> handled by any driver but it is required for CSI to work properly. For example
>> CSI NOC clock. So this is the reason we are marking PLL_CAM_CSI as critical.
>>
> 
> This is clock hierarchy for CMU_CAM_CSI block.
> 
> PLL_CAM_CSI -----> DIVIDER --------> CSI_SFR clock
> 			|
> 			|----> DIVIDER --------> CMU_SFR clock
> 			|
> 			|----> DIVIDER --------> CSI NOC clock. 
> 

And what is the problem in adding proper handling in the driver? You
just described case valid for 99% of SoC components.

Best regards,
Krzysztof





[Index of Archives]     [Linux SoC Development]     [Linux Rockchip Development]     [Linux for Synopsys ARC Processors]    
  • [Linux on Unisoc (RDA Micro) SoCs]     [Linux Actions SoC]     [Linux USB Development]     [Video for Linux]     [Linux Audio Users]     [Linux SCSI]     [Yosemite News]

  •   Powered by Linux