From: Darren.Ye <darren.ye@mediatek.com>
To: Liam Girdwood <lgirdwood@gmail.com>,
Mark Brown <broonie@kernel.org>, Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
Matthias Brugger <matthias.bgg@gmail.com>,
AngeloGioacchino Del Regno
<angelogioacchino.delregno@collabora.com>,
Jaroslav Kysela <perex@perex.cz>, Takashi Iwai <tiwai@suse.com>,
Linus Walleij <linus.walleij@linaro.org>,
Bartosz Golaszewski <brgl@bgdev.pl>
Cc: <linux-sound@vger.kernel.org>, <devicetree@vger.kernel.org>,
<linux-kernel@vger.kernel.org>,
<linux-arm-kernel@lists.infradead.org>,
<linux-mediatek@lists.infradead.org>,
<linux-gpio@vger.kernel.org>, Darren Ye <darren.ye@mediatek.com>
Subject: [PATCH v6 00/10] ASoC: mediatek: Add support for MT8196 SoC
Date: Tue, 8 Jul 2025 19:15:52 +0800 [thread overview]
Message-ID: <20250708111806.3992-1-darren.ye@mediatek.com> (raw)
From: Darren Ye <darren.ye@mediatek.com>
This series of patches adds support for Mediatek AFE of MT8196 SoC.
Patches are based on broonie tree "for-next" branch.
Changes since v5:
- restore the commit message for mediatek,mt8196-afe.yaml and only remove the string document.
- add reviewed owner for mediatek,mt8196-nau8825.yaml.
- use SND_JACK_AVOUT as jack status.
- use GENMASK_ULL to support 64-bit address masks.
- modify the afe platform and i2s dai driver code based on reviewer's suggestions.
Changes since v4:
- modify the mediatek,mt8196-afe.yaml commit message and add reviewed owner.
- modify the mediatek,mt8196-nau8825.yaml commit message.
- modify the audio common code based on reviewer's suggestions.
- add reviewed and tested owners in the audio common code submission message.
- fix cm update cnt calculation issue.
Changes since v3:
- the AFE TOP CG index is added to the common header.
- remove the audsys clk register and directly read and write to the regmap of afe cg clk.
- modify the clk logic according to the suggestions.
- remove the macro definition of MTKAIF4
- remove the tdm cg event and directly read and write the tdm cg reg form the widget.
- remove the i2s and cm cg event and directly read and write cg reg.
- afe hopping and f26m clk cg are placed in remap_register_patch and enable.
- the yaml file is modified according to the suggestions.
- replace SND_SOC_DAIFMT_CBS_CFS with SND_SOC_DAIFMT_CBC_CFC.
Changes since v2:
- remove the mtk_memif_set_channel interface modify.
- remove duplicate definitions from the header file.
- move the afe gate clk to the audio driver for management and registration
and manage the afe clk gate in each dai driver.
- delete the useless clk source.
- the i2s driver adds i2s clk gate management, removes the additional dts
configuration of i2s4.
- the afe and i2s dai driver,memif and irq data structs are encapsulated using
macros to reduce the amount of code.
- the volatile reg is modified as suggested.
- mt6681 codec is not supported, the mt6681 keyword is removed.
- the name of the machine driver is changed from mt8196-mt6681.c to mt8196-nau8825.c
- remove the i2s4 configuration from mt8196-afe.yaml and make the modifications as suggested.
- change the mt8196-mt6681.yaml to mt8196-nau8825.yaml and make the modifications as suggested.
Changes since v1:
- modify mtk_memif_set_channel and mtk_afe_pcm_pointer interfaces
are improved to support mt8196.
- remove duplicate definitions in the mt8196 common header file.
- cm logic is merge into the afe platform driver.
- modify afe clk to return judgment logic and remove useless clk sources.
- refactor the mt8196 adda dai driver.
- remove the gpio module and use SND_SOC_DAPM_PINCTRL to manage it.
- removes CONNSYS_I2S related functions that are not supported in i2s dai driver.
- fixed mt8196-afe.yaml and mt8196-mt6681.yaml syntax issues.
- modify log printing in all modules.
- optimize the header file included for machine driver.
Darren Ye (10):
ASoC: mediatek: common: modify mtk afe platform driver for mt8196
ASoC: mediatek: mt8196: add common header
ASoC: mediatek: mt8196: support audio clock control
ASoC: mediatek: mt8196: support ADDA in platform driver
ASoC: mediatek: mt8196: support I2S in platform driver
ASoC: mediatek: mt8196: support TDM in platform driver
ASoC: mediatek: mt8196: add platform driver
ASoC: dt-bindings: mediatek,mt8196-afe: add audio AFE
ASoC: mediatek: mt8196: add machine driver with nau8825
ASoC: dt-bindings: mediatek,mt8196-nau8825: Add audio sound card
.../bindings/sound/mediatek,mt8196-afe.yaml | 157 +
.../sound/mediatek,mt8196-nau8825.yaml | 102 +
sound/soc/mediatek/Kconfig | 30 +
sound/soc/mediatek/Makefile | 1 +
.../mediatek/common/mtk-afe-platform-driver.c | 47 +-
.../mediatek/common/mtk-afe-platform-driver.h | 2 +
sound/soc/mediatek/mt8196/Makefile | 17 +
sound/soc/mediatek/mt8196/mt8196-afe-clk.c | 728 +
sound/soc/mediatek/mt8196/mt8196-afe-clk.h | 80 +
sound/soc/mediatek/mt8196/mt8196-afe-common.h | 213 +
sound/soc/mediatek/mt8196/mt8196-afe-pcm.c | 2632 ++++
sound/soc/mediatek/mt8196/mt8196-dai-adda.c | 888 ++
sound/soc/mediatek/mt8196/mt8196-dai-i2s.c | 3944 +++++
sound/soc/mediatek/mt8196/mt8196-dai-tdm.c | 836 ++
.../mediatek/mt8196/mt8196-interconnection.h | 121 +
sound/soc/mediatek/mt8196/mt8196-nau8825.c | 869 ++
sound/soc/mediatek/mt8196/mt8196-reg.h | 12068 ++++++++++++++++
17 files changed, 22719 insertions(+), 16 deletions(-)
create mode 100644 Documentation/devicetree/bindings/sound/mediatek,mt8196-afe.yaml
create mode 100644 Documentation/devicetree/bindings/sound/mediatek,mt8196-nau8825.yaml
create mode 100644 sound/soc/mediatek/mt8196/Makefile
create mode 100644 sound/soc/mediatek/mt8196/mt8196-afe-clk.c
create mode 100644 sound/soc/mediatek/mt8196/mt8196-afe-clk.h
create mode 100644 sound/soc/mediatek/mt8196/mt8196-afe-common.h
create mode 100644 sound/soc/mediatek/mt8196/mt8196-afe-pcm.c
create mode 100644 sound/soc/mediatek/mt8196/mt8196-dai-adda.c
create mode 100644 sound/soc/mediatek/mt8196/mt8196-dai-i2s.c
create mode 100644 sound/soc/mediatek/mt8196/mt8196-dai-tdm.c
create mode 100644 sound/soc/mediatek/mt8196/mt8196-interconnection.h
create mode 100644 sound/soc/mediatek/mt8196/mt8196-nau8825.c
create mode 100644 sound/soc/mediatek/mt8196/mt8196-reg.h
--
2.45.2
next reply other threads:[~2025-07-08 11:31 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-07-08 11:15 Darren.Ye [this message]
2025-07-08 11:15 ` [PATCH v6 01/10] ASoC: mediatek: common: modify mtk afe platform driver for mt8196 Darren.Ye
2025-07-22 7:38 ` Chen-Yu Tsai
2025-07-08 11:15 ` [PATCH v6 02/10] ASoC: mediatek: mt8196: add common header Darren.Ye
2025-07-30 8:23 ` Chen-Yu Tsai
2025-07-08 11:15 ` [PATCH v6 03/10] ASoC: mediatek: mt8196: support audio clock control Darren.Ye
2025-07-30 8:42 ` Chen-Yu Tsai
2025-07-08 11:15 ` [PATCH v6 04/10] ASoC: mediatek: mt8196: support ADDA in platform driver Darren.Ye
2025-07-29 11:45 ` Chen-Yu Tsai
2025-07-08 11:15 ` [PATCH v6 05/10] ASoC: mediatek: mt8196: support I2S " Darren.Ye
2025-08-11 11:03 ` Chen-Yu Tsai
2025-08-21 9:10 ` Darren Ye (叶飞)
2025-08-11 11:24 ` Chen-Yu Tsai
2025-07-08 11:15 ` [PATCH v6 06/10] ASoC: mediatek: mt8196: support TDM " Darren.Ye
2025-07-28 10:53 ` Chen-Yu Tsai
2025-08-21 8:58 ` Darren Ye (叶飞)
2025-07-08 11:15 ` [PATCH v6 07/10] ASoC: mediatek: mt8196: add " Darren.Ye
2025-08-05 10:40 ` Chen-Yu Tsai
2025-07-08 11:16 ` [PATCH v6 08/10] ASoC: dt-bindings: mediatek,mt8196-afe: add audio AFE Darren.Ye
2025-07-15 5:09 ` Chen-Yu Tsai
2025-07-15 7:34 ` Chen-Yu Tsai
2025-07-16 12:41 ` Darren Ye (叶飞)
2025-07-17 2:16 ` Chen-Yu Tsai
2025-07-08 11:16 ` [PATCH v6 09/10] ASoC: mediatek: mt8196: add machine driver with nau8825 Darren.Ye
2025-07-21 9:17 ` Chen-Yu Tsai
2025-07-08 11:16 ` [PATCH v6 10/10] ASoC: dt-bindings: mediatek,mt8196-nau8825: Add audio sound card Darren.Ye
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250708111806.3992-1-darren.ye@mediatek.com \
--to=darren.ye@mediatek.com \
--cc=angelogioacchino.delregno@collabora.com \
--cc=brgl@bgdev.pl \
--cc=broonie@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=krzk+dt@kernel.org \
--cc=lgirdwood@gmail.com \
--cc=linus.walleij@linaro.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-gpio@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mediatek@lists.infradead.org \
--cc=linux-sound@vger.kernel.org \
--cc=matthias.bgg@gmail.com \
--cc=perex@perex.cz \
--cc=robh@kernel.org \
--cc=tiwai@suse.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.