ASoC: amd: acp: supplement patches for ACP7.B/7.F SoundWire machine driver series
Subsystems (3)
Vijendar Mukunda
maintainercover ASoC: amd: acp: supplement patches for ACP7.B/7.F SoundWire machine driver series
These two patches address nit-picks raised in review of the ACP7.B/7.F SoundWire machine driver series posted at:
https://lore.kernel.org/all/[email protected]/
These patches were previously posted as replies to the original series. Posting them now as a standalone series to keep the dependency clear and avoid threading new patches under the existing review.
Patch 1 renames three static adr_device arrays in amd-acp7x-acpi-match.c to reflect their endpoint set rather than their structural role, making the distinction between jack+dmic (combo with RT1320) and jack+amp+dmic (standalone) self-explanatory.
Patch 2 adds a block comment above the ASOC_SDW_ACP_DMIC and ASOC_SDW_ACP_DMIC1 quirk bit definitions to document the dual-PDM- controller hardware model of ACP7.B/7.F, and annotates each bit with its role. ASOC_SDW_ACP_DMIC is a generic DMIC-enable flag on all ACP platforms; on ACP7.B/7.F it additionally identifies the PDM0 controller. ASOC_SDW_ACP_DMIC1 is ACP7.B/7.F-specific for PDM1. BIOS wires exactly one controller per platform.
Vijendar Mukunda (2):
ASoC: amd: acp: fix adr_device naming in ACP7.x ACPI match table
ASoC: amd: acp: document PDM controller topology for ACP7.B/7.F
sound/soc/amd/acp/amd-acp7x-acpi-match.c | 22 +++++++++++----------- sound/soc/amd/acp/soc_amd_sdw_common.h | 11 +++++++++-- 2 files changed, 20 insertions(+), 13 deletions(-)
Signature · 1 line
2.53.0
Vijendar Mukunda
maintainerPATCH 1/2 ASoC: amd: acp: fix adr_device naming in ACP7.x ACPI match table
Rename the three rt721/rt722 adr_device arrays to encode their endpoint set rather than their structural role:
rt721_l0_single_adr -> rt721_l0_jack_dmic_adr rt721_l0_only -> rt721_l0_jack_amp_dmic_adr rt722_l0_single_adr -> rt722_l0_jack_amp_dmic_adr
The old names (_single_adr vs _only) did not indicate which endpoint set each entry uses. The new names make it immediately clear that rt721_l0_jack_dmic_adr carries jack+dmic endpoints (used in combo configs where RT1320 provides amplification) while both *_jack_amp_dmic_adr variants carry the full jack+amp+dmic set for standalone configurations. Update all four call sites accordingly.
--- sound/soc/amd/acp/amd-acp7x-acpi-match.c | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-)
sound/soc/amd/acp/amd-acp7x-acpi-match.c +11 -11
@@ -57,7 +57,7 @@ static const struct snd_soc_acpi_endpoint jack_amp_dmic_endpoints[] = { }, }; -static const struct snd_soc_acpi_adr_device rt721_l0_single_adr[] = { +static const struct snd_soc_acpi_adr_device rt721_l0_jack_dmic_adr[] = { { .adr =0x000030025d072101ull , .num_endpoints =ARRAY_SIZE (jack_dmic_endpoints),
@@ -66,7 +66,7 @@ static const struct snd_soc_acpi_adr_device rt721_l0_single_adr[] = { } }; -static const struct snd_soc_acpi_adr_device rt721_l0_only[] = { +static const struct snd_soc_acpi_adr_device rt721_l0_jack_amp_dmic_adr[] = { { .adr =0x000030025d072101ull , .num_endpoints =ARRAY_SIZE (jack_amp_dmic_endpoints),
@@ -78,13 +78,13 @@ static const struct snd_soc_acpi_adr_device rt721_l0_only[] = {static const struct snd_soc_acpi_link_adr acp7x_rt721_only[] = { { .mask =BIT (0 ), - .num_adr =ARRAY_SIZE (rt721_l0_only), - .adr_d = rt721_l0_only, + .num_adr =ARRAY_SIZE (rt721_l0_jack_amp_dmic_adr), + .adr_d = rt721_l0_jack_amp_dmic_adr, }, {} }; -static const struct snd_soc_acpi_adr_device rt722_l0_single_adr[] = { +static const struct snd_soc_acpi_adr_device rt722_l0_jack_amp_dmic_adr[] = { { .adr =0x000030025d072201ull , .num_endpoints =ARRAY_SIZE (jack_amp_dmic_endpoints),
@@ -96,8 +96,8 @@ static const struct snd_soc_acpi_adr_device rt722_l0_single_adr[] = {static const struct snd_soc_acpi_link_adr acp7x_rt722_only[] = { { .mask =BIT (0 ), - .num_adr =ARRAY_SIZE (rt722_l0_single_adr), - .adr_d = rt722_l0_single_adr, + .num_adr =ARRAY_SIZE (rt722_l0_jack_amp_dmic_adr), + .adr_d = rt722_l0_jack_amp_dmic_adr, }, {} };
@@ -123,8 +123,8 @@ static const struct snd_soc_acpi_adr_device rt1320_l3_single_adr[] = {static const struct snd_soc_acpi_link_adr acp7x_rt721_l0_rt1320_l1[] = { { .mask =BIT (0 ), - .num_adr =ARRAY_SIZE (rt721_l0_single_adr), - .adr_d = rt721_l0_single_adr, + .num_adr =ARRAY_SIZE (rt721_l0_jack_dmic_adr), + .adr_d = rt721_l0_jack_dmic_adr, }, { .mask =BIT (1 ),
@@ -137,8 +137,8 @@ static const struct snd_soc_acpi_link_adr acp7x_rt721_l0_rt1320_l1[] = {static const struct snd_soc_acpi_link_adr acp7x_rt721_l0_rt1320_l3[] = { { .mask =BIT (0 ), - .num_adr =ARRAY_SIZE (rt721_l0_single_adr), - .adr_d = rt721_l0_single_adr, + .num_adr =ARRAY_SIZE (rt721_l0_jack_dmic_adr), + .adr_d = rt721_l0_jack_dmic_adr, }, { .mask =BIT (3 ),
Signature · 1 line
2.53.0
Vijendar Mukunda
maintainerPATCH 2/2 ASoC: amd: acp: document PDM controller topology for ACP7.B/7.F
In reply to Vijendar MukundaAdd a block comment above the ASOC_SDW_ACP_DMIC / ASOC_SDW_ACP_DMIC1 quirk bits and annotate each bit with its role.
ASOC_SDW_ACP_DMIC (BIT(5)) is a generic DMIC-enable flag used across all ACP platforms; on ACP7.B/7.F it additionally identifies the PDM0 controller. ASOC_SDW_ACP_DMIC1 (BIT(6)) selects the PDM1 controller and is ACP7.B/7.F-specific. Both ACP7.B/7.F controllers support a 2-channel stereo capture path, and BIOS wires exactly one per platform.
--- sound/soc/amd/acp/soc_amd_sdw_common.h | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-)
sound/soc/amd/acp/soc_amd_sdw_common.h +9 -2
@@ -28,8 +28,15 @@#define SOC_JACK_JDSRC (quirk) ((quirk) & GENMASK(3, 0))#define ASOC_SDW_FOUR_SPK BIT(4) -#define ASOC_SDW_ACP_DMIC BIT(5) -#define ASOC_SDW_ACP_DMIC1 BIT(6)/* select DMIC1 controller for ACP7.B/7.F */ +/* +* ASOC_SDW_ACP_DMIC is a generic DMIC-enable flag used across all ACP +* platforms. On ACP7.B/7.F it additionally identifies the PDM0 controller; +* ASOC_SDW_ACP_DMIC1 selects PDM1 on ACP7.B/7.F instead. Both ACP7.B/7.F +* controllers support a 2-channel stereo capture path, and BIOS wires exactly +* one per platform. +*/ +#define ASOC_SDW_ACP_DMIC BIT(5)/* enable DMIC; PDM0 on ACP7.B/7.F */ +#define ASOC_SDW_ACP_DMIC1 BIT(6)/* PDM1 / DMIC1, ACP7.B/7.F only */ #define ASOC_SDW_CODEC_SPKR BIT(15)#define AMD_SDW0 0
Signature · 1 line
2.53.0
Quoted 22 lines · Vijendar Mukunda
These two patches address nit-picks raised in review of the ACP7.B/7.F SoundWire machine driver series posted at:
https://lore.kernel.org/all/[email protected]/
These patches were previously posted as replies to the original series. Posting them now as a standalone series to keep the dependency clear and avoid threading new patches under the existing review.
Patch 1 renames three static
adr_devicearrays inamd-acp7x-acpi-match.cto reflect their endpoint set rather than their structural role, making the distinction between jack+dmic (combo with RT1320) and jack+amp+dmic (standalone) self-explanatory.Patch 2 adds a block comment above the
ASOC_SDW_ACP_DMICandASOC_SDW_ACP_DMIC1quirk bit definitions to document the dual-PDM- controller hardware model of ACP7.B/7.F, and annotates each bit with its role.ASOC_SDW_ACP_DMICis a generic DMIC-enable flag on all ACP platforms; on ACP7.B/7.F it additionally identifies the PDM0 controller.ASOC_SDW_ACP_DMIC1is ACP7.B/7.F-specific for PDM1. BIOS wires exactly one controller per platform.
Quoted 7 lines
Vijendar Mukunda (2):
ASoC: amd: acp: fixadr_devicenaming in ACP7.x ACPI match table
ASoC: amd: acp: document PDM controller topology for ACP7.B/7.Fsound/soc/amd/acp/amd-acp7x-acpi-match.c | 22 +++++++++++----------- sound/soc/amd/acp/soc_amd_sdw_common.h | 11 +++++++++-- 2 files changed, 20 insertions(+), 13 deletions(-)
thanks for the patches
Mark Brown
maintainerQuoted 8 lines · Vijendar Mukunda
ASoC: amd: acp: supplement patches for ACP7.B/7.F SoundWire machine driver series
These two patches address nit-picks raised in review of the ACP7.B/7.F SoundWire machine driver series posted at:
https://lore.kernel.org/all/[email protected]/
[...]
Applied to
https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-7.5
Thanks!
[1/2] ASoC: amd: acp: fix adr_device naming in ACP7.x ACPI match table
https://git.kernel.org/broonie/sound/c/2e2f6b2a7cd4 [2/2] ASoC: amd: acp: document PDM controller topology for ACP7.B/7.F https://git.kernel.org/broonie/sound/c/a9a7c22d3e67
All being well this means that it will be integrated into the linux-next tree (usually sometime in the next 24 hours) and sent to Linus during the next merge window (or sooner if it is a bug fix), however if problems are discovered then the patch may be dropped or reverted.
You may get further e-mails resulting from automated or manual testing and review of the tree, please engage with people reporting problems and send followup patches addressing any issues that are reported if needed.
If any updates are required or you are submitting further changes they should be sent as incremental updates against current git, existing patches will not be replaced.
Please add any relevant lists and maintainers to the CCs when replying to this mail.
Thanks,
Mark