[PATCH v2 1/4] arm64: dts: ti: k3-am62x: Enable AUDIO_REFCLKx

Andrew Davis afd at ti.com
Mon Aug 7 11:17:44 PDT 2023


On 8/7/23 12:43 PM, Nishanth Menon wrote:
> On 10:51-20230806, Francesco Dolcini wrote:
>> From: Jai Luthra <j-luthra at ti.com>
>>
>> On AM62-based SoCs the AUDIO_REFCLKx clocks can be used as an input to
>> external peripherals when configured through CTRL_MMR, so add the
>> clock nodes.
>>
>> Signed-off-by: Jai Luthra <j-luthra at ti.com>
>> Signed-off-by: Francesco Dolcini <francesco.dolcini at toradex.com>
>> ---
>> v2:
>>   - s/clock/clock-controller/ on audio refclk nodes name.
>> ---
>>   arch/arm64/boot/dts/ti/k3-am62-main.dtsi  | 18 ++++++++++++++++++
>>   arch/arm64/boot/dts/ti/k3-am62a-main.dtsi | 18 ++++++++++++++++++
>>   2 files changed, 36 insertions(+)
>>
>> diff --git a/arch/arm64/boot/dts/ti/k3-am62-main.dtsi b/arch/arm64/boot/dts/ti/k3-am62-main.dtsi
>> index ef90b2bc81eb..5f19ef46d44c 100644
>> --- a/arch/arm64/boot/dts/ti/k3-am62-main.dtsi
>> +++ b/arch/arm64/boot/dts/ti/k3-am62-main.dtsi
>> @@ -60,6 +60,24 @@ epwm_tbclk: clock-controller at 4130 {
>>   			reg = <0x4130 0x4>;
>>   			#clock-cells = <1>;
>>   		};
>> +
>> +		audio_refclk0: clock-controller at 82e0 {
>> +			compatible = "ti,am62-audio-refclk";
>> +			reg = <0x82e0 0x4>;
>> +			clocks = <&k3_clks 157 0>;
>> +			assigned-clocks = <&k3_clks 157 0>;
>> +			assigned-clock-parents = <&k3_clks 157 8>;
>> +			#clock-cells = <0>;
>> +		};
>> +
>> +		audio_refclk1: clock-controller at 82e4 {
>> +			compatible = "ti,am62-audio-refclk";
>> +			reg = <0x82e4 0x4>;
>> +			clocks = <&k3_clks 157 10>;
>> +			assigned-clocks = <&k3_clks 157 10>;
>> +			assigned-clock-parents = <&k3_clks 157 18>;
>> +			#clock-cells = <0>;
>> +		};
>>   	};
>>   
>>   	dmss: bus at 48000000 {
>> diff --git a/arch/arm64/boot/dts/ti/k3-am62a-main.dtsi b/arch/arm64/boot/dts/ti/k3-am62a-main.dtsi
>> index 3198af08fb9f..75ea7202e071 100644
>> --- a/arch/arm64/boot/dts/ti/k3-am62a-main.dtsi
>> +++ b/arch/arm64/boot/dts/ti/k3-am62a-main.dtsi
>> @@ -60,6 +60,24 @@ epwm_tbclk: clock-controller at 4130 {
>>   			reg = <0x4130 0x4>;
>>   			#clock-cells = <1>;
>>   		};
>> +
>> +		audio_refclk0: clock-controller at 82e0 {
>> +			compatible = "ti,am62-audio-refclk";
>> +			reg = <0x82e0 0x4>;
>> +			clocks = <&k3_clks 157 0>;
>> +			assigned-clocks = <&k3_clks 157 0>;
>> +			assigned-clock-parents = <&k3_clks 157 8>;
>> +			#clock-cells = <0>;
>> +		};
>> +
>> +		audio_refclk1: clock-controller at 82e4 {
>> +			compatible = "ti,am62-audio-refclk";
>> +			reg = <0x82e4 0x4>;
>> +			clocks = <&k3_clks 157 10>;
>> +			assigned-clocks = <&k3_clks 157 10>;
>> +			assigned-clock-parents = <&k3_clks 157 18>;
>> +			#clock-cells = <0>;
>> +		};
>>   	};
>>   
>>   	dmss: bus at 48000000 {
>> -- 
>> 2.25.1
>>
> 
> 
> Jeez what a bit of a mess here - looks like I will have to punt this
> series.
> 
> a) main_conf in arch/arm64/boot/dts/ti/k3-am62-main.dtsi is still
>    syscon, simple-mfd -> I had thought we have converted these already, but
>    apparently not.


Right, we are working on it, but have been blocked as the "phy_gmii_sel"
node used to require the parent to be a "syscon" node. This was fixed
by [0] but it is still only in -next. After that we can convert more
of these nodes.

[0] https://lore.kernel.org/lkml/20230713200957.134480-1-afd@ti.com/T/

Andrew

> b) we then have the yaml itself. Documentation/devicetree/bindings/mfd/ti,j721e-system-controller.yaml
>     it picks up clock-controller as ti,am654-ehrpwm-tbclk.yaml
>     but the actual binding is Documentation/devicetree/bindings/clock/ti,am62-audio-refclk.yaml
>     which is not enforced.
> 
> Jai: please sort this out before I can look at any of these audio
> enablement patches involving refclk.
> 
> 
> ALSO: please DONOT ignore dtbs_check warnings folks. it does show some
> real issues in either bindings or dts.
> 



More information about the linux-arm-kernel mailing list