Re: [PATCH 03/13] arm64: dts: qcom: msm8916: Add common msm8916-modem-qdsp6.dtsi

From: Konrad Dybcio
Date: Tue Sep 26 2023 - 14:49:37 EST


On 26.09.2023 18:51, Stephan Gerhold wrote:
> Most MSM8916/MSM8939 devices use very similar setups for the modem,
> because most of the device-specific details are abstracted by the modem
> firmware. There are several definitions (status switches, DAI links
> etc) that will be exactly the same for every board.
>
> Introduce a common msm8916-modem-qdsp6.dtsi include that can be used to
> simplify enabling the modem for such devices. By default the
> digital/analog codec in the SoC/PMIC is used, but boards can define
> additional codecs using the templates for Secondary and Quaternary
> MI2S.
>
> Signed-off-by: Stephan Gerhold <stephan@xxxxxxxxxxx>
> ---
I'd rather see at least one usage so that you aren't introducing
effectively non-compiled code..

> arch/arm64/boot/dts/qcom/msm8916-modem-qdsp6.dtsi | 163 ++++++++++++++++++++++
> 1 file changed, 163 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/qcom/msm8916-modem-qdsp6.dtsi b/arch/arm64/boot/dts/qcom/msm8916-modem-qdsp6.dtsi
> new file mode 100644
> index 000000000000..ddd74d428406
> --- /dev/null
> +++ b/arch/arm64/boot/dts/qcom/msm8916-modem-qdsp6.dtsi
> @@ -0,0 +1,163 @@
> +// SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause)
> +/*
> + * msm8916-modem-qdsp6.dtsi describes the typical modem setup on MSM8916 devices
> + * (or similar SoCs) with audio routed via the QDSP6 services provided by the
> + * modem firmware. The digital/analog codec in the SoC/PMIC is used by default,
> + * but boards can define additional codecs using the templates for Secondary and
> + * Quaternary MI2S.
> + */
> +
> +#include <dt-bindings/sound/qcom,q6afe.h>
> +#include <dt-bindings/sound/qcom,q6asm.h>
> +
> +&apr {
> + status = "okay";
> +};
> +
> +&bam_dmux {
> + status = "okay";
> +};
> +
> +&bam_dmux_dma {
> + status = "okay";
> +};
> +
> +&lpass {
> + status = "reserved"; /* Controlled by QDSP6 */
> +};
> +
> +&lpass_codec {
> + status = "okay";
> +};
Any reason for it to stay disabled?

> +
> +&mba_mem {
> + status = "okay";
> +};
> +
> +&mpss {
> + status = "okay";
> +};
> +
> +&mpss_mem {
> + status = "okay";
> +};
> +
> +&pm8916_codec {
> + status = "okay";
> +};
Ditto

[...]

> + multimedia1-dai-link {
> + link-name = "MultiMedia1";
Newline before last property and subnodes, please

[...]

> + sound_dai_secondary: mi2s-secondary-dai-link {
> + link-name = "Secondary MI2S";
> + status = "disabled"; /* Needs extra codec configuration */
Hmm.. Potential good user of /omit-if-no-ref/?

Konrad