[PATCH 0/3] ASoC: mediatek: mt8183-afe-pcm: Shorten source code

Chen-Yu Tsai wenst at chromium.org
Fri Apr 25 01:25:47 PDT 2025


Hi folks,

This series is meant as an example on how to use macros and range cases
to shorten the MediaTek audio frontend drivers. The drivers have large
tables describing the registers and register fields for every supported
audio DMA interface. (Some are actually skipped!) There's a lot of
duplication which can be eliminated using macros. This should serve as
a reference for the MT8196 AFE driver that I had commented on.

The three patches tackle separate tables in the driver. The remaining
one that could be tackled is the list of DAIs; but that one has more
differences between each entry, so I haven't done it yet.

Please take a look.


Thanks
ChenYu


Chen-Yu Tsai (3):
  ASoC: mediatek: mt8183-afe-pcm: Shorten memif_data table using macros
  ASoC: mediatek: mt8183-afe-pcm: Shorten irq_data table using macros
  ASoC: mediatek: mt8183-afe-pcm: shorten mt8183_is_volatile_reg()

 sound/soc/mediatek/mt8183/mt8183-afe-pcm.c | 616 +++++----------------
 1 file changed, 136 insertions(+), 480 deletions(-)

-- 
2.49.0.850.g28803427d3-goog




More information about the Linux-mediatek mailing list