On 11/01/2023 08:16, Hardevsinh Palaniya wrote: > From: Hardevsinh Palaniya <hardevsinh.palaniya@xxxxxxxxxxxxxxxxx> > Date: Sat, 7 Jan 2023 17:08:28 +0530 > Subject: [PATCH] Support for MAX98090/91 codec in iMX8MM evk Use subject prefixes matching the subsystem (which you can get for example with `git log --oneline -- DIRECTORY_OR_FILE` on the directory your patch is touching). > > - Adding node for MAX98090/91 in dts imx8mm-evk.dtsi > - Adding tristate option in <sound/soc/codecs/Kconfig> > > Signed-off-by: Hardevsinh Palaniya <hardevsinh.palaniya@xxxxxxxxxxxxxxxxx> Your CC list insane. Use get_maintainers.pl. > > diff --git a/arch/arm64/boot/dts/freescale/imx8mm-evk.dtsi b/arch/arm64/boot/dts/freescale/imx8mm-evk.dtsi > index e0b604ac0da4..58ff63cbc930 100644 > --- a/arch/arm64/boot/dts/freescale/imx8mm-evk.dtsi > +++ b/arch/arm64/boot/dts/freescale/imx8mm-evk.dtsi > @@ -132,6 +132,32 @@ simple-audio-card,codec { > clocks = <&clk IMX8MM_CLK_SAI3_ROOT>; > }; > }; > + > + sound-max98090 { > + compatible = "simple-audio-card"; > + simple-audio-card,name = "max98090-audio"; > + simple-audio-card,format = "i2s"; > + simple-audio-card,frame-master = <&cpudai>; > + simple-audio-card,bitclock-master = <&cpudai>; > + simple-audio-card,widgets = "Speakers", "Speakers"; > + simple-audio-card,routing = > + "Speakers", "SPKR", > + "Speakers", "SPKL", > + "IN1", "MICBIAS", > + "MIC1","IN1", > + "MIC2","IN1"; > + > + cpudai: simple-audio-card,cpu { > + sound-dai = <&sai5>; > + dai-tdm-slot-num = <2>; > + dai-tdm-slot-width = <32>; > + }; > + > + simple-audio-card,codec { > + sound-dai = <&max98090>; > + clocks = <&clk IMX8MM_CLK_SAI5_ROOT>; > + }; > + }; > }; > > &A53_0 { > @@ -339,6 +365,14 @@ &i2c3 { > pinctrl-0 = <&pinctrl_i2c3>; > status = "okay"; > > + max98090: max98090@10 { Node names should be generic. https://devicetree-specification.readthedocs.io/en/latest/chapter2-devicetree-basics.html#generic-names-recommendation > + #sound-dai-cells = <0>; > + compatible = "maxim,max98090"; compatible is first, then reg. > + reg = <0x10>; > + clocks = <&clk IMX8MM_CLK_SAI5_ROOT>; > + clock-names = "mclk"; > + }; > + > pca6416: gpio@20 { > compatible = "ti,tca6416"; > reg = <0x20>; > @@ -391,6 +425,20 @@ &sai3 { > status = "okay"; > }; > > +&sai5 { > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_sai5>; > + assigned-clocks = <&clk IMX8MM_CLK_SAI5>; > + assigned-clock-parents = <&clk IMX8MM_AUDIO_PLL1_OUT>; > + assigned-clock-rates = <24576000>; > + clocks = <&clk IMX8MM_CLK_SAI5_IPG>, <&clk IMX8MM_CLK_DUMMY>, > + <&clk IMX8MM_CLK_SAI5_ROOT>, <&clk IMX8MM_CLK_DUMMY>, > + <&clk IMX8MM_CLK_DUMMY>, <&clk IMX8MM_AUDIO_PLL1_OUT>, > + <&clk IMX8MM_AUDIO_PLL2_OUT>; > + clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3", "pll8k", "pll11k"; > + status = "okay"; > +}; > + > &snvs_pwrkey { > status = "okay"; > }; > @@ -552,6 +600,16 @@ MX8MM_IOMUXC_SAI3_TXD_SAI3_TX_DATA0 0xd6 > >; > }; > > + pinctrl_sai5: sai5grp { > + fsl,pins = < > + MX8MM_IOMUXC_SAI5_MCLK_SAI5_MCLK 0xd6 > + MX8MM_IOMUXC_SAI5_RXD2_SAI5_TX_BCLK 0xd6 > + MX8MM_IOMUXC_SAI5_RXD1_SAI5_TX_SYNC 0xd6 > + MX8MM_IOMUXC_SAI5_RXD0_SAI5_RX_DATA0 0xd6 > + MX8MM_IOMUXC_SAI5_RXD3_SAI5_TX_DATA0 0xd6 > + >; > + } > + > pinctrl_typec1: typec1grp { > fsl,pins = < > MX8MM_IOMUXC_SD1_STROBE_GPIO2_IO11 0x159 > diff --git a/sound/soc/codecs/Kconfig b/sound/soc/codecs/Kconfig > index 0f9d71490075..efef2df362a4 100644 > --- a/sound/soc/codecs/Kconfig > +++ b/sound/soc/codecs/Kconfig > @@ -1009,7 +1009,7 @@ config SND_SOC_MAX98088 > depends on I2C > > config SND_SOC_MAX98090 > - tristate > + tristate "Maxim MAX98090/1, Stereo Audio Codec" No, code cannot be mixed with DTS. This is unrelated and not explained in commit msg. > depends on I2C > > config SND_SOC_MAX98095 > -- > 2.25.1 Best regards, Krzysztof