Re: [PATCH 04/13] dt-bindings: mailbox: qcom: Add clock-name optional property

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

 



On 1/17/19 07:44, Bjorn Andersson wrote:
> On Mon 17 Dec 01:46 PST 2018, Jorge Ramirez-Ortiz wrote:
> 
>> When the APCS clock is registered (platform dependent), it retrieves
>> its parent names from hardcoded values in the driver.
>>
>> The following commit allows the DT node to provide such clock names to
>> the platform data based clock driver therefore avoiding having to
>> explicitly embed those names in the clock driver source code.
>>
>> Co-developed-by: Niklas Cassel <niklas.cassel@xxxxxxxxxx>
>> Signed-off-by: Niklas Cassel <niklas.cassel@xxxxxxxxxx>
>> Signed-off-by: Jorge Ramirez-Ortiz <jorge.ramirez-ortiz@xxxxxxxxxx>
>> ---
>>  .../bindings/mailbox/qcom,apcs-kpss-global.txt      | 21 +++++++++++++++++++++
>>  1 file changed, 21 insertions(+)
>>
>> diff --git a/Documentation/devicetree/bindings/mailbox/qcom,apcs-kpss-global.txt b/Documentation/devicetree/bindings/mailbox/qcom,apcs-kpss-global.txt
>> index 1232fc9..f252439 100644
>> --- a/Documentation/devicetree/bindings/mailbox/qcom,apcs-kpss-global.txt
>> +++ b/Documentation/devicetree/bindings/mailbox/qcom,apcs-kpss-global.txt
>> @@ -23,6 +23,10 @@ platforms.
>>  	Value type: <phandle>
>>  	Definition: phandle to the input PLL, which feeds the APCS mux/divider
>>  
>> +       Usage: required if #clock-names property is present
>> +       Value type: <phandle array>
>> +	Definition: phandles to the two parent clocks of the clock driver.
> 
> I presume you meant to replace the existing definition of "clocks"?

I am sorry didn't reply to this earlier. Yes this is not very clear.

This is required as an extension to the apcs-msm8916.c driver also used
on the qcs404; since it is an extension, the previous definition should
still be applicable.

In the case of the msm8916 the #clock-names property is NOT necessary
(it would be ignored by the driver), so having it should not mean that
we need to have #clocks.

In the case of the qcs404, having clock-names means that we do need to
have #clocks (hence the additional if)

and not quite sure how to word this condition in the bindings..

I am going to post v2 with some updates and if required will post a v3
with more clarifications.

> 
> I think the purpose of "required if #clock-cells" comes from that
> meaning that it represents a clock-controller if #clock-cells is
> specified, in which case it requires the upstream clock(s).
> 
> Regards,
> Bjorn
> 
>> +
>>  - #mbox-cells:
>>  	Usage: required
>>  	Value type: <u32>
>> @@ -33,6 +37,12 @@ platforms.
>>  	Value type: <u32>
>>  	Definition: as described in clock.txt, must be 0
>>  
>> +- clock-names:
>> +	Usage: required if the platform data based clock driver needs to
>> +	retrieve the parent clock names from device tree.
>> +	This will requires two mandatory clocks to be defined.
>> +	Value type: <string-array>
>> +	Definition: must be "aux" and "pll"
>>  
>>  = EXAMPLE
>>  The following example describes the APCS HMSS found in MSM8996 and part of the
>> @@ -65,3 +75,14 @@ Below is another example of the APCS binding on MSM8916 platforms:
>>  		clocks = <&a53pll>;
>>  		#clock-cells = <0>;
>>  	};
>> +
>> +Below is another example of the APCS binding on QCS404 platforms:
>> +
>> +	apcs_glb: mailbox@b011000 {
>> +		compatible = "qcom,qcs404-apcs-apps-global", "syscon";
>> +		reg = <0x0b011000 0x1000>;
>> +		#mbox-cells = <1>;
>> +		clocks = <&gcc GCC_GPLL0_AO_OUT_MAIN>, <&apcs_hfpll>;
>> +		clock-names = "aux", "pll";
>> +		#clock-cells = <0>;
>> +	};
>> -- 
>> 2.7.4
>>
> 




[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux