Message ID | 20240226-audio-i350-v1-0-4fa1cea1667f@baylibre.com (mailing list archive) |
---|---|
Headers | show |
Series | Add audio support for the MediaTek Genio 350-evk board | expand |
Il 26/02/24 15:01, Alexandre Mergnat ha scritto: > This serie aim to add the following audio support for the Genio 350-evk: > - Playback > - 2ch Headset Jack (Earphone) > - 1ch Line-out Jack (Speaker) > - 8ch HDMI Tx > - Capture > - 1ch DMIC (On-board Digital Microphone) > - 1ch AMIC (On-board Analogic Microphone) > - 1ch Headset Jack (External Analogic Microphone) > > Of course, HDMI playback need the MT8365 display patches [1] and a DTS > change documented in "mediatek,mt8365-mt6357.yaml". > > [1]: https://lore.kernel.org/all/20231023-display-support-v1-0-5c860ed5c33b@baylibre.com/ > > Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com> Actually, I am cooking a series (I'm finishing the testing....) that brings quite a bit of cleanups in MTK ASoC, including the commonization of the machine driver probe, with the dai-link DT nodes, and which also modernizes most of the existing drivers to use that instead. If you wait for a day or two, your mt8365-mt6357.c driver's probe function can be shrunk to ~3 lines or something like that.. very easily :-) Cheers, Angelo > --- > Alexandre Mergnat (15): > ASoC: dt-bindings: mediatek,mt8365-afe: Add audio afe document > ASoC: dt-bindings: mediatek,mt8365-mt6357: Add audio sound card document > dt-bindings: mfd: mediatek: Add codec property for MT6357 PMIC > ASoC: mediatek: mt8365: Add common header > SoC: mediatek: mt8365: support audio clock control > ASoC: mediatek: mt8365: Add I2S DAI support > ASoC: mediatek: mt8365: Add ADDA DAI support > ASoC: mediatek: mt8365: Add DMIC DAI support > ASoC: mediatek: mt8365: Add PCM DAI support > ASoC: mediatek: mt8365: Add platform driver > ASoC: mediatek: Add MT8365 support > arm64: defconfig: enable mt8365 sound > arm64: dts: mediatek: add mt6357 audio codec support > arm64: dts: mediatek: add afe support for mt8365 SoC > arm64: dts: mediatek: add audio support for mt8365-evk > > Fabien Parent (1): > mfd: mt6397-core: register mt6357 sound codec > > Nicolas Belin (2): > ASoc: mediatek: mt8365: Add a specific soundcard for EVK > ASoC: codecs: mt6357: add MT6357 codec > > .../devicetree/bindings/mfd/mediatek,mt6357.yaml | 11 + > .../bindings/sound/mediatek,mt8365-afe.yaml | 164 ++ > .../bindings/sound/mediatek,mt8365-mt6357.yaml | 127 ++ > arch/arm64/boot/dts/mediatek/mt6357.dtsi | 6 +- > arch/arm64/boot/dts/mediatek/mt8365-evk.dts | 95 +- > arch/arm64/boot/dts/mediatek/mt8365.dtsi | 47 +- > arch/arm64/configs/defconfig | 2 + > drivers/mfd/mt6397-core.c | 3 + > sound/soc/codecs/Kconfig | 7 + > sound/soc/codecs/Makefile | 2 + > sound/soc/codecs/mt6357.c | 1805 +++++++++++++++ > sound/soc/codecs/mt6357.h | 674 ++++++ > sound/soc/mediatek/Kconfig | 20 + > sound/soc/mediatek/Makefile | 1 + > sound/soc/mediatek/mt8365/Makefile | 15 + > sound/soc/mediatek/mt8365/mt8365-afe-clk.c | 455 ++++ > sound/soc/mediatek/mt8365/mt8365-afe-clk.h | 55 + > sound/soc/mediatek/mt8365/mt8365-afe-common.h | 495 +++++ > sound/soc/mediatek/mt8365/mt8365-afe-pcm.c | 2347 ++++++++++++++++++++ > sound/soc/mediatek/mt8365/mt8365-dai-adda.c | 355 +++ > sound/soc/mediatek/mt8365/mt8365-dai-dmic.c | 475 ++++ > sound/soc/mediatek/mt8365/mt8365-dai-i2s.c | 901 ++++++++ > sound/soc/mediatek/mt8365/mt8365-dai-pcm.c | 298 +++ > sound/soc/mediatek/mt8365/mt8365-mt6357.c | 379 ++++ > sound/soc/mediatek/mt8365/mt8365-reg.h | 987 ++++++++ > 25 files changed, 9718 insertions(+), 8 deletions(-) > --- > base-commit: 6613476e225e090cc9aad49be7fa504e290dd33d > change-id: 20240226-audio-i350-4e11da088e55 > > Best regards,
On Mon, Feb 26, 2024 at 03:01:38PM +0100, Alexandre Mergnat wrote: > This serie aim to add the following audio support for the Genio 350-evk: > - Playback > - 2ch Headset Jack (Earphone) > - 1ch Line-out Jack (Speaker) > - 8ch HDMI Tx > - Capture > - 1ch DMIC (On-board Digital Microphone) > - 1ch AMIC (On-board Analogic Microphone) > - 1ch Headset Jack (External Analogic Microphone) > > Of course, HDMI playback need the MT8365 display patches [1] and a DTS > change documented in "mediatek,mt8365-mt6357.yaml". Given the number of custom controls here could you please post the output of mixer-test and pcm-test from a system with this driver running next time you post, this will help with review since it checks a bunch of things around the new controls.
On 27/02/2024 16:06, Mark Brown wrote: > On Mon, Feb 26, 2024 at 03:01:38PM +0100, Alexandre Mergnat wrote: >> This serie aim to add the following audio support for the Genio 350-evk: >> - Playback >> - 2ch Headset Jack (Earphone) >> - 1ch Line-out Jack (Speaker) >> - 8ch HDMI Tx >> - Capture >> - 1ch DMIC (On-board Digital Microphone) >> - 1ch AMIC (On-board Analogic Microphone) >> - 1ch Headset Jack (External Analogic Microphone) >> >> Of course, HDMI playback need the MT8365 display patches [1] and a DTS >> change documented in "mediatek,mt8365-mt6357.yaml". > > Given the number of custom controls here could you please post the > output of mixer-test and pcm-test from a system with this driver running > next time you post, this will help with review since it checks a bunch > of things around the new controls. Hi Mark, I'm a bit lost for mixer-test and pcm-test. Currently, I cross-compile the alsa lib project to be able to build the tests and put it on my board. I can execute it, but I still have 2 issues: 1) I've a lot of missing module in my environment (Encode.so, Encode.pm, Symbol.pm, IO/Handle.pm, ...). AFAII, I've to cross compile the missing perl modules and install them in the rootfs 2) I don't know how to configure pcm-test.conf & Lenovo_ThinkPad_P1_Gen2.conf (or new file to match with my board). My test cmd: ./run_kselftest.sh -c alsa I'm wondering if I'm going to the wrong way because I don't find guide/readme whereas it's not trivial at all.
On Tue, Mar 12, 2024 at 09:58:05AM +0100, Alexandre Mergnat wrote: > I'm a bit lost for mixer-test and pcm-test. > Currently, I cross-compile the alsa lib project to be able to build the > tests and put it on my board. > I can execute it, but I still have 2 issues: > 1) I've a lot of missing module in my environment (Encode.so, Encode.pm, > Symbol.pm, IO/Handle.pm, ...). AFAII, I've to cross compile the missing perl > modules and install them in the rootfs These tests are both simple C programs... > 2) I don't know how to configure pcm-test.conf & > Lenovo_ThinkPad_P1_Gen2.conf (or new file to match with my board). The configuration is optional. > My test cmd: > ./run_kselftest.sh -c alsa Just run the programs directly. I'm only asking for the output from two of them anyway.
On 15/03/2024 15:38, Mark Brown wrote: > On Tue, Mar 12, 2024 at 09:58:05AM +0100, Alexandre Mergnat wrote: > >> I'm a bit lost for mixer-test and pcm-test. >> Currently, I cross-compile the alsa lib project to be able to build the >> tests and put it on my board. > >> I can execute it, but I still have 2 issues: > >> 1) I've a lot of missing module in my environment (Encode.so, Encode.pm, >> Symbol.pm, IO/Handle.pm, ...). AFAII, I've to cross compile the missing perl >> modules and install them in the rootfs > > These tests are both simple C programs... > >> 2) I don't know how to configure pcm-test.conf & >> Lenovo_ThinkPad_P1_Gen2.conf (or new file to match with my board). > > The configuration is optional. > >> My test cmd: >> ./run_kselftest.sh -c alsa > > Just run the programs directly. I'm only asking for the output from two > of them anyway. ok
Hi Angelo On 26/02/2024 15:54, AngeloGioacchino Del Regno wrote: > Il 26/02/24 15:01, Alexandre Mergnat ha scritto: >> This serie aim to add the following audio support for the Genio 350-evk: >> - Playback >> - 2ch Headset Jack (Earphone) >> - 1ch Line-out Jack (Speaker) >> - 8ch HDMI Tx >> - Capture >> - 1ch DMIC (On-board Digital Microphone) >> - 1ch AMIC (On-board Analogic Microphone) >> - 1ch Headset Jack (External Analogic Microphone) >> >> Of course, HDMI playback need the MT8365 display patches [1] and a DTS >> change documented in "mediatek,mt8365-mt6357.yaml". >> >> [1]: >> https://lore.kernel.org/all/20231023-display-support-v1-0-5c860ed5c33b@baylibre.com/ >> >> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com> > > Actually, I am cooking a series (I'm finishing the testing....) that > brings quite > a bit of cleanups in MTK ASoC, including the commonization of the > machine driver > probe, with the dai-link DT nodes, and which also modernizes most of the > existing > drivers to use that instead. > > If you wait for a day or two, your mt8365-mt6357.c driver's probe > function can be > shrunk to ~3 lines or something like that.. very easily :-) Just to inform you. I'm aware of your serie. Currently, I've fixed my patches according to the comments. The next step will be to rebase my serie over yours and do the changes to be aligned with your new implementation. I've planned to review your serie during my last task, but it seems already approved and already (partially) merged into linux-next, sorry.
This serie aim to add the following audio support for the Genio 350-evk: - Playback - 2ch Headset Jack (Earphone) - 1ch Line-out Jack (Speaker) - 8ch HDMI Tx - Capture - 1ch DMIC (On-board Digital Microphone) - 1ch AMIC (On-board Analogic Microphone) - 1ch Headset Jack (External Analogic Microphone) Of course, HDMI playback need the MT8365 display patches [1] and a DTS change documented in "mediatek,mt8365-mt6357.yaml". [1]: https://lore.kernel.org/all/20231023-display-support-v1-0-5c860ed5c33b@baylibre.com/ Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com> --- Alexandre Mergnat (15): ASoC: dt-bindings: mediatek,mt8365-afe: Add audio afe document ASoC: dt-bindings: mediatek,mt8365-mt6357: Add audio sound card document dt-bindings: mfd: mediatek: Add codec property for MT6357 PMIC ASoC: mediatek: mt8365: Add common header SoC: mediatek: mt8365: support audio clock control ASoC: mediatek: mt8365: Add I2S DAI support ASoC: mediatek: mt8365: Add ADDA DAI support ASoC: mediatek: mt8365: Add DMIC DAI support ASoC: mediatek: mt8365: Add PCM DAI support ASoC: mediatek: mt8365: Add platform driver ASoC: mediatek: Add MT8365 support arm64: defconfig: enable mt8365 sound arm64: dts: mediatek: add mt6357 audio codec support arm64: dts: mediatek: add afe support for mt8365 SoC arm64: dts: mediatek: add audio support for mt8365-evk Fabien Parent (1): mfd: mt6397-core: register mt6357 sound codec Nicolas Belin (2): ASoc: mediatek: mt8365: Add a specific soundcard for EVK ASoC: codecs: mt6357: add MT6357 codec .../devicetree/bindings/mfd/mediatek,mt6357.yaml | 11 + .../bindings/sound/mediatek,mt8365-afe.yaml | 164 ++ .../bindings/sound/mediatek,mt8365-mt6357.yaml | 127 ++ arch/arm64/boot/dts/mediatek/mt6357.dtsi | 6 +- arch/arm64/boot/dts/mediatek/mt8365-evk.dts | 95 +- arch/arm64/boot/dts/mediatek/mt8365.dtsi | 47 +- arch/arm64/configs/defconfig | 2 + drivers/mfd/mt6397-core.c | 3 + sound/soc/codecs/Kconfig | 7 + sound/soc/codecs/Makefile | 2 + sound/soc/codecs/mt6357.c | 1805 +++++++++++++++ sound/soc/codecs/mt6357.h | 674 ++++++ sound/soc/mediatek/Kconfig | 20 + sound/soc/mediatek/Makefile | 1 + sound/soc/mediatek/mt8365/Makefile | 15 + sound/soc/mediatek/mt8365/mt8365-afe-clk.c | 455 ++++ sound/soc/mediatek/mt8365/mt8365-afe-clk.h | 55 + sound/soc/mediatek/mt8365/mt8365-afe-common.h | 495 +++++ sound/soc/mediatek/mt8365/mt8365-afe-pcm.c | 2347 ++++++++++++++++++++ sound/soc/mediatek/mt8365/mt8365-dai-adda.c | 355 +++ sound/soc/mediatek/mt8365/mt8365-dai-dmic.c | 475 ++++ sound/soc/mediatek/mt8365/mt8365-dai-i2s.c | 901 ++++++++ sound/soc/mediatek/mt8365/mt8365-dai-pcm.c | 298 +++ sound/soc/mediatek/mt8365/mt8365-mt6357.c | 379 ++++ sound/soc/mediatek/mt8365/mt8365-reg.h | 987 ++++++++ 25 files changed, 9718 insertions(+), 8 deletions(-) --- base-commit: 6613476e225e090cc9aad49be7fa504e290dd33d change-id: 20240226-audio-i350-4e11da088e55 Best regards,