Re: [PATCH v2 4/8] arm64: dts: qcom: sc7280: audioreach: Update VA/RX/TX macro clock nodes

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

 



On 05/01/2023 14:37, Srinivasa Rao Mandadapu wrote:
> Update VA, RX and TX macro and lpass_tlmm clock properties and
> enable them.
> 
> Signed-off-by: Srinivasa Rao Mandadapu <quic_srivasam@xxxxxxxxxxx>
> Tested-by: Mohammad Rafi Shaik <quic_mohs@xxxxxxxxxxx>
> ---
>  .../qcom/sc7280-herobrine-audioreach-wcd9385.dtsi  | 62 ++++++++++++++++++++++
>  1 file changed, 62 insertions(+)
> 
> diff --git a/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi b/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi
> index e1fe56c..8c55753 100644
> --- a/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi
> +++ b/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi
> @@ -8,6 +8,10 @@
>  
>  #include <dt-bindings/sound/qcom,q6afe.h>
>  
> +/delete-node/ &lpass_rx_macro;
> +/delete-node/ &lpass_tx_macro;
> +/delete-node/ &lpass_va_macro;
> +
>  /{
>  	/* BOARD-SPECIFIC TOP LEVEL NODES */
>  	sound: sound {
> @@ -107,3 +111,61 @@
>  		};
>  	};
>  };
> +
> +&soc {
> +	lpass_rx_macro: codec@3200000 {

These should be properties of DTSI. The SoC either has them or not. It's
not conditional or dual-setup...

> +		compatible = "qcom,sc7280-lpass-rx-macro";
> +		reg = <0 0x03200000 0 0x1000>;
> +
> +		pinctrl-names = "default";
> +		pinctrl-0 = <&lpass_rx_swr_clk>, <&lpass_rx_swr_data>;
> +
> +		clocks = <&q6prmcc LPASS_CLK_ID_TX_CORE_MCLK LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
> +			 <&q6prmcc LPASS_CLK_ID_TX_CORE_NPL_MCLK  LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
> +			 <&q6prmcc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
> +			 <&q6prmcc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
> +			 <&lpass_va_macro>;
> +
> +		clock-names = "mclk", "npl", "macro", "dcodec", "fsgen";
> +
> +		#clock-cells = <0>;
> +		#sound-dai-cells = <1>;
> +	};

/home/krzk/dev/linux/linux/out/arch/arm64/boot/dts/qcom/sc7280-crd-r3.dtb:
codec@3370000: clock-names: 'oneOf' conditional failed, one must be fixed:
	['mclk', 'macro', 'dcodec'] is too long
	'core' was expected
	From schema:
/home/krzk/dev/linux/linux/Documentation/devicetree/bindings/sound/qcom,lpass-va-macro.yaml
/home/krzk/dev/linux/linux/out/arch/arm64/boot/dts/qcom/sc7280-crd-r3.dtb:
codec@3370000: Unevaluated properties are not allowed ('clock-names' was
unexpected)
	From schema:
/home/krzk/dev/linux/linux/Documentation/devicetree/bindings/sound/qcom,lpass-va-macro.yaml
/home/krzk/dev/linux/linux/out/arch/arm64/boot/dts/qcom/sc7280-crd-r3.dtb:
audio@3987000: clocks: [[218, 4], [221, 12], [221, 11], [221, 6], [221,
8], [223, 8], [223, 5], [223, 6], [223, 7], [218, 10]] is too long
	From schema:
/home/krzk/dev/linux/linux/Documentation/devicetree/bindings/sound/qcom,lpass-cpu.yaml
/home/krzk/dev/linux/linux/out/arch/arm64/boot/dts/qcom/sc7280-crd-r3.dtb:
audio@3987000: clock-names: 'oneOf' conditional failed, one must be fixed:
	['aon_cc_audio_hm_h', 'audio_cc_ext_mclk0',
'core_cc_sysnoc_mport_core', 'core_cc_ext_if0_ibit',
'core_cc_ext_if1_ibit', 'audio_cc_codec_mem', 'audio_cc_codec_mem0',
'audio_cc_codec_mem1', 'audio_cc_codec_mem2', 'aon_cc_va_mem0'] is too long
	'core_cc_sysnoc_mport_core' was expected
	'audio_cc_codec_mem' was expected
	'audio_cc_codec_mem0' was expected
	'audio_cc_codec_mem1' was expected
	'audio_cc_codec_mem2' was expected
	'aon_cc_va_mem0' was expected
	From schema:
/home/krzk/dev/linux/linux/Documentation/devicetree/bindings/sound/qcom,lpass-cpu.yaml

I posted recently several fixes, so some of the warnings might be
skipped. But I think you did not test this at all...

> +
> +	lpass_tx_macro: codec@3220000 {
> +		compatible = "qcom,sc7280-lpass-tx-macro";
> +		reg = <0 0x03220000 0 0x1000>;
> +
> +		pinctrl-names = "default";
> +		pinctrl-0 = <&lpass_tx_swr_clk>, <&lpass_tx_swr_data>;
> +
> +		clocks = <&q6prmcc LPASS_CLK_ID_TX_CORE_MCLK LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
> +			 <&q6prmcc LPASS_CLK_ID_TX_CORE_NPL_MCLK  LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
> +			 <&q6prmcc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
> +			 <&q6prmcc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
> +			 <&lpass_va_macro>;
> +
> +		clock-names = "mclk", "npl", "macro", "dcodec", "fsgen";
> +
> +		#clock-cells = <0>;
> +		#sound-dai-cells = <1>;
> +

Drop blank line

> +	};
> +
> +	lpass_va_macro: codec@3370000 {
> +		compatible = "qcom,sc7280-lpass-va-macro";
> +		reg = <0 0x03370000 0 0x1000>;
> +
> +		pinctrl-0 = <&lpass_dmic01_clk>, <&lpass_dmic01_data>;
> +		pinctrl-names = "default";
> +
> +		clocks = <&q6prmcc LPASS_CLK_ID_TX_CORE_MCLK LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
> +			 <&q6prmcc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
> +			 <&q6prmcc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>;
> +
> +		clock-names = "mclk", "macro", "dcodec";
> +
> +		#clock-cells = <0>;
> +		#sound-dai-cells = <1>;
> +	};
> +};

Best regards,
Krzysztof




[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