-
Notifications
You must be signed in to change notification settings - Fork 140
AMD SOF based generic SoundWire machine driver #5068
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
AMD SOF based generic SoundWire machine driver #5068
Conversation
cf9e1a3 to
d897ebf
Compare
plbossart
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks pretty good to me @vijendarmukunda
I only have minor comments, time for others to comment as well. @bardliao @charleskeepax on your mark, set, go!
d897ebf to
8fcde28
Compare
plbossart
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The last patch needs a bit more work IMHO, still too much duplication of complicated code that we don't want to fork.
The rest looks ok, thanks!
|
SOFCI TEST |
8fcde28 to
96ccec8
Compare
Agreed. We are going to refactor the code . We need to add support for newer ACP variants. We are going to add support for legacy (NO DSP) machine driver support where we are going to refactor existing code. |
To make it generic, rename structure 'sof_sdw_codec_info' as 'asoc_sdw_codec_info' and 'sof_sdw_dai_info' as 'asoc_sdw_dai_info'. These structures will be moved to common header file so that it can be used by other platform machine driver. Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com>
Rename sof quirk macros, dai type and dai link macros with "SOC_SDW" tag. Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com>
Rename Soundwire generic machine driver soc ops with tag "asoc". Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com>
Rename SoundWire codec helper functions with "asoc_sdw" tag. Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com>
Rename maxim codec part id macros. Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com>
Rename 'ignore_pch_dmic' variable name as 'ignore_internal_dmic'. This variable will be moved to common header file and will be used by other platform machine driver code. Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com>
Move Intel SoundWire generic machine driver soc ops to common place so that it can be used by other platform machine driver. Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com>
Move intel generic SoundWire machine driver common structures to soc_sdw_utils.h file. These structures will be used in other platform SoundWire machine driver code. Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com>
Move below Intel SoundWire machine driver helper functions to soc_sdw_utils.c file so that it can be used by other platform machine driver. - asoc_sdw_is_unique_device() - asoc_sdw_get_codec_name() Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com>
Move generic dmic codec helper function implementation to sdw_utils folder so that this function can be used by other platform machine drivers. Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com>
Move rtk SoundWire dmic helper functions implementation to sdw_utils folder to make it generic. Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com>
Move RT712 SDCA codec helper file to sdw_utils folder so that these helper functions can be used by other platform machine drivers. Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com>
Move RT722 SDCA codec helper file to sdw_utils folder to make it generic. Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com>
Split intel generic SoundWire machine driver private data into two structures. One structure is generic one which can be used by other platform machine driver and the other one is intel specific one. Move generic machine driver private data to soc_sdw_utils.h. Define a void pointer in generic machine driver private data structure and assign the vendor specific structure in mc_probe() call. Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com>
Move rt5682 sdw codec helper function to common place holder to make it generic. Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com>
BugLink: https://bugs.launchpad.net/bugs/2080190 Rename sof quirk macros, dai type and dai link macros with "SOC_SDW" tag. Link: thesofproject/linux#5068 Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com> Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://patch.msgid.link/20240801091446.10457-3-Vijendar.Mukunda@amd.com Signed-off-by: Mark Brown <broonie@kernel.org> (cherry picked from commit 408a454 linux-next) Signed-off-by: Chris Chiu <chris.chiu@canonical.com> Signed-off-by: Timo Aaltonen <timo.aaltonen@canonical.com>
BugLink: https://bugs.launchpad.net/bugs/2089273 Rename Soundwire generic machine driver soc ops with tag "asoc". Link: thesofproject/linux#5068 Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com> Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://patch.msgid.link/20240801091446.10457-4-Vijendar.Mukunda@amd.com Signed-off-by: Mark Brown <broonie@kernel.org> (cherry picked from commit 96990cf linux-next) Signed-off-by: Yo-Jung (Leo) Lin <leo.lin@canonical.com> Acked-by: Chia-Lin Kao (AceLan) <chia-lin.kao@canonical.com> Signed-off-by: Kuan-Ying Lee <kuan-ying.lee@canonical.com>
BugLink: https://bugs.launchpad.net/bugs/2089273 Rename SoundWire codec helper functions with "asoc_sdw" tag. Link: thesofproject/linux#5068 Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com> Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://patch.msgid.link/20240801091446.10457-5-Vijendar.Mukunda@amd.com Signed-off-by: Mark Brown <broonie@kernel.org> (cherry picked from commit bd5838c linux-next) Signed-off-by: Yo-Jung (Leo) Lin <leo.lin@canonical.com> Acked-by: Chia-Lin Kao (AceLan) <chia-lin.kao@canonical.com> Signed-off-by: Kuan-Ying Lee <kuan-ying.lee@canonical.com>
BugLink: https://bugs.launchpad.net/bugs/2089273 Rename maxim codec part id macros. Link: thesofproject/linux#5068 Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com> Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://patch.msgid.link/20240801091446.10457-6-Vijendar.Mukunda@amd.com Signed-off-by: Mark Brown <broonie@kernel.org> (cherry picked from commit a2b5ec0 linux-next) Signed-off-by: Yo-Jung (Leo) Lin <leo.lin@canonical.com> Acked-by: Chia-Lin Kao (AceLan) <chia-lin.kao@canonical.com> Signed-off-by: Kuan-Ying Lee <kuan-ying.lee@canonical.com>
BugLink: https://bugs.launchpad.net/bugs/2089273 Rename 'ignore_pch_dmic' variable name as 'ignore_internal_dmic'. This variable will be moved to common header file and will be used by other platform machine driver code. Link: thesofproject/linux#5068 Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com> Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://patch.msgid.link/20240801091446.10457-7-Vijendar.Mukunda@amd.com Signed-off-by: Mark Brown <broonie@kernel.org> (cherry picked from commit b1f7cbf linux-next) Signed-off-by: Yo-Jung (Leo) Lin <leo.lin@canonical.com> Acked-by: Chia-Lin Kao (AceLan) <chia-lin.kao@canonical.com> Signed-off-by: Kuan-Ying Lee <kuan-ying.lee@canonical.com>
BugLink: https://bugs.launchpad.net/bugs/2089273 Move Intel SoundWire generic machine driver soc ops to common place so that it can be used by other platform machine driver. Link: thesofproject/linux#5068 Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com> Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://patch.msgid.link/20240801091446.10457-8-Vijendar.Mukunda@amd.com Signed-off-by: Mark Brown <broonie@kernel.org> (cherry picked from commit d39388e linux-next) Signed-off-by: Yo-Jung (Leo) Lin <leo.lin@canonical.com> Acked-by: Chia-Lin Kao (AceLan) <chia-lin.kao@canonical.com> Signed-off-by: Kuan-Ying Lee <kuan-ying.lee@canonical.com>
BugLink: https://bugs.launchpad.net/bugs/2089273 Move intel generic SoundWire machine driver common structures to soc_sdw_utils.h file. These structures will be used in other platform SoundWire machine driver code. Link: thesofproject/linux#5068 Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com> Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://patch.msgid.link/20240801091446.10457-9-Vijendar.Mukunda@amd.com Signed-off-by: Mark Brown <broonie@kernel.org> (cherry picked from commit 7361913 linux-next) Signed-off-by: Yo-Jung (Leo) Lin <leo.lin@canonical.com> Acked-by: Chia-Lin Kao (AceLan) <chia-lin.kao@canonical.com> Signed-off-by: Kuan-Ying Lee <kuan-ying.lee@canonical.com>
BugLink: https://bugs.launchpad.net/bugs/2089273 Move below Intel SoundWire machine driver helper functions to soc_sdw_utils.c file so that it can be used by other platform machine driver. - asoc_sdw_is_unique_device() - asoc_sdw_get_codec_name() Link: thesofproject/linux#5068 Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com> Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://patch.msgid.link/20240801091446.10457-10-Vijendar.Mukunda@amd.com Signed-off-by: Mark Brown <broonie@kernel.org> (cherry picked from commit 941d693 linux-next) Signed-off-by: Yo-Jung (Leo) Lin <leo.lin@canonical.com> Acked-by: Chia-Lin Kao (AceLan) <chia-lin.kao@canonical.com> Signed-off-by: Kuan-Ying Lee <kuan-ying.lee@canonical.com>
BugLink: https://bugs.launchpad.net/bugs/2089273 Move generic dmic codec helper function implementation to sdw_utils folder so that this function can be used by other platform machine drivers. Link: thesofproject/linux#5068 Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com> Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://patch.msgid.link/20240801091446.10457-11-Vijendar.Mukunda@amd.com Signed-off-by: Mark Brown <broonie@kernel.org> (cherry picked from commit 4776d0c linux-next) Signed-off-by: Yo-Jung (Leo) Lin <leo.lin@canonical.com> Acked-by: Chia-Lin Kao (AceLan) <chia-lin.kao@canonical.com> Signed-off-by: Kuan-Ying Lee <kuan-ying.lee@canonical.com>
BugLink: https://bugs.launchpad.net/bugs/2089273 Move rtk SoundWire dmic helper functions implementation to sdw_utils folder to make it generic. Link: thesofproject/linux#5068 Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com> Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://patch.msgid.link/20240801091446.10457-12-Vijendar.Mukunda@amd.com Signed-off-by: Mark Brown <broonie@kernel.org> (cherry picked from commit a9831fd linux-next) Signed-off-by: Yo-Jung (Leo) Lin <leo.lin@canonical.com> Acked-by: Chia-Lin Kao (AceLan) <chia-lin.kao@canonical.com> Signed-off-by: Kuan-Ying Lee <kuan-ying.lee@canonical.com>
BugLink: https://bugs.launchpad.net/bugs/2089273 Move RT712 SDCA codec helper file to sdw_utils folder so that these helper functions can be used by other platform machine drivers. Link: thesofproject/linux#5068 Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com> Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://patch.msgid.link/20240801091446.10457-13-Vijendar.Mukunda@amd.com Signed-off-by: Mark Brown <broonie@kernel.org> (cherry picked from commit 09c60bc linux-next) Signed-off-by: Yo-Jung (Leo) Lin <leo.lin@canonical.com> Acked-by: Chia-Lin Kao (AceLan) <chia-lin.kao@canonical.com> Signed-off-by: Kuan-Ying Lee <kuan-ying.lee@canonical.com>
BugLink: https://bugs.launchpad.net/bugs/2089273 Move RT722 SDCA codec helper file to sdw_utils folder to make it generic. Link: thesofproject/linux#5068 Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com> Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://patch.msgid.link/20240801091446.10457-14-Vijendar.Mukunda@amd.com Signed-off-by: Mark Brown <broonie@kernel.org> (cherry picked from commit 89b3456 linux-next) Signed-off-by: Yo-Jung (Leo) Lin <leo.lin@canonical.com> Acked-by: Chia-Lin Kao (AceLan) <chia-lin.kao@canonical.com> Signed-off-by: Kuan-Ying Lee <kuan-ying.lee@canonical.com>
BugLink: https://bugs.launchpad.net/bugs/2089273 Split intel generic SoundWire machine driver private data into two structures. One structure is generic one which can be used by other platform machine driver and the other one is intel specific one. Move generic machine driver private data to soc_sdw_utils.h. Define a void pointer in generic machine driver private data structure and assign the vendor specific structure in mc_probe() call. Link: thesofproject/linux#5068 Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com> Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://patch.msgid.link/20240801091446.10457-15-Vijendar.Mukunda@amd.com Signed-off-by: Mark Brown <broonie@kernel.org> (cherry picked from commit 4f54856 linux-next) Signed-off-by: Yo-Jung (Leo) Lin <leo.lin@canonical.com> Acked-by: Chia-Lin Kao (AceLan) <chia-lin.kao@canonical.com> Signed-off-by: Kuan-Ying Lee <kuan-ying.lee@canonical.com>
BugLink: https://bugs.launchpad.net/bugs/2089273 Move rt5682 sdw codec helper function to common place holder to make it generic. Link: thesofproject/linux#5068 Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com> Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://patch.msgid.link/20240801091446.10457-16-Vijendar.Mukunda@amd.com Signed-off-by: Mark Brown <broonie@kernel.org> (cherry picked from commit 139e177 linux-next) Signed-off-by: Yo-Jung (Leo) Lin <leo.lin@canonical.com> Acked-by: Chia-Lin Kao (AceLan) <chia-lin.kao@canonical.com> Signed-off-by: Kuan-Ying Lee <kuan-ying.lee@canonical.com>
BugLink: https://bugs.launchpad.net/bugs/2089273 Move RTK codec jack common helper functions to common place holder (sdw_utils folder) to make it generic so that it will be used by other platform machine driver code. Link: thesofproject/linux#5068 Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com> Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://patch.msgid.link/20240801091446.10457-17-Vijendar.Mukunda@amd.com Signed-off-by: Mark Brown <broonie@kernel.org> (cherry picked from commit da5b183 linux-next) Signed-off-by: Yo-Jung (Leo) Lin <leo.lin@canonical.com> Acked-by: Chia-Lin Kao (AceLan) <chia-lin.kao@canonical.com> Signed-off-by: Kuan-Ying Lee <kuan-ying.lee@canonical.com>
BugLink: https://bugs.launchpad.net/bugs/2089273 Move RT700 and RT711 Soundwire codec helper functions to common place holder so that it can be used by other platform machine driver. Link: thesofproject/linux#5068 Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com> Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://patch.msgid.link/20240801091446.10457-18-Vijendar.Mukunda@amd.com Signed-off-by: Mark Brown <broonie@kernel.org> (cherry picked from commit 8e84fd2 linux-next) Signed-off-by: Yo-Jung (Leo) Lin <leo.lin@canonical.com> Acked-by: Chia-Lin Kao (AceLan) <chia-lin.kao@canonical.com> Signed-off-by: Kuan-Ying Lee <kuan-ying.lee@canonical.com>
BugLink: https://bugs.launchpad.net/bugs/2089273 Move RTK amp codec helper functions related implementation to common place holder to make it generic so that these helper functions will be used by other platform machine driver modules. Link: thesofproject/linux#5068 Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com> Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://patch.msgid.link/20240801091446.10457-19-Vijendar.Mukunda@amd.com Signed-off-by: Mark Brown <broonie@kernel.org> (cherry picked from commit ccc96ae linux-next) Signed-off-by: Yo-Jung (Leo) Lin <leo.lin@canonical.com> Acked-by: Chia-Lin Kao (AceLan) <chia-lin.kao@canonical.com> Signed-off-by: Kuan-Ying Lee <kuan-ying.lee@canonical.com>
BugLink: https://bugs.launchpad.net/bugs/2089273 To make it generic, move Cirrus Soundwire codec helper functions to common place holder so that it can be used by other platform machine driver. Link: thesofproject/linux#5068 Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com> Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://patch.msgid.link/20240801091446.10457-20-Vijendar.Mukunda@amd.com Signed-off-by: Mark Brown <broonie@kernel.org> (cherry picked from commit 5fa4662 linux-next) Signed-off-by: Yo-Jung (Leo) Lin <leo.lin@canonical.com> Acked-by: Chia-Lin Kao (AceLan) <chia-lin.kao@canonical.com> Signed-off-by: Kuan-Ying Lee <kuan-ying.lee@canonical.com>
BugLink: https://bugs.launchpad.net/bugs/2089273 Move maxim codec helper functions to common place holder so that it can be used by other platform machine driver. Link: thesofproject/linux#5068 Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com> Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://patch.msgid.link/20240801091446.10457-21-Vijendar.Mukunda@amd.com Signed-off-by: Mark Brown <broonie@kernel.org> (cherry picked from commit 051b7cb linux-next) Signed-off-by: Yo-Jung (Leo) Lin <leo.lin@canonical.com> Acked-by: Chia-Lin Kao (AceLan) <chia-lin.kao@canonical.com> Signed-off-by: Kuan-Ying Lee <kuan-ying.lee@canonical.com>
BugLink: https://bugs.launchpad.net/bugs/2089273 Move dai id common macros from intel SoundWire generic driver to soc_sdw_utils.h file so that it can be used by other platform machine driver. Link: thesofproject/linux#5068 Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com> Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://patch.msgid.link/20240801111821.18076-1-Vijendar.Mukunda@amd.com Signed-off-by: Mark Brown <broonie@kernel.org> (cherry picked from commit 8f87e29 linux-next) Signed-off-by: Yo-Jung (Leo) Lin <leo.lin@canonical.com> Acked-by: Chia-Lin Kao (AceLan) <chia-lin.kao@canonical.com> Signed-off-by: Kuan-Ying Lee <kuan-ying.lee@canonical.com>
BugLink: https://bugs.launchpad.net/bugs/2089273 Move SoundWire dai type macros to common header file(soc_sdw_util.h). So that these macros will be used by other platform machine driver. Link: thesofproject/linux#5068 Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com> Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://patch.msgid.link/20240801111821.18076-2-Vijendar.Mukunda@amd.com Signed-off-by: Mark Brown <broonie@kernel.org> (cherry picked from commit 6e7af1f linux-next) Signed-off-by: Yo-Jung (Leo) Lin <leo.lin@canonical.com> Acked-by: Chia-Lin Kao (AceLan) <chia-lin.kao@canonical.com> Signed-off-by: Kuan-Ying Lee <kuan-ying.lee@canonical.com>
BugLink: https://bugs.launchpad.net/bugs/2089273 SoundWire 'codec_info_list' structure is not a platform specific one. Move codec_info_list structure to common file soc_sdw_utils.c. Move codec helper functions which uses codec_info_list structure to common place holder and rename the function by adding _sdw tag. This will allow to use 'codec_info_list' structure and it's helper functions in other platform machine driver. Link: thesofproject/linux#5068 Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com> Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://patch.msgid.link/20240801111821.18076-3-Vijendar.Mukunda@amd.com Signed-off-by: Mark Brown <broonie@kernel.org> (cherry picked from commit e377c94 linux-next) [kyyc0426: Had to adjust the context due to conflict commit 0ecf2da] Signed-off-by: Yo-Jung (Leo) Lin <leo.lin@canonical.com> Acked-by: Chia-Lin Kao (AceLan) <chia-lin.kao@canonical.com> Signed-off-by: Kuan-Ying Lee <kuan-ying.lee@canonical.com>
BugLink: https://bugs.launchpad.net/bugs/2089273 Move machine driver dai link helper functions to common place holder, So that it can be used by other platform machine driver. Rename these functions with "asoc_sdw" tag as a prefix. Link: thesofproject/linux#5068 Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com> Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://patch.msgid.link/20240801111821.18076-4-Vijendar.Mukunda@amd.com Signed-off-by: Mark Brown <broonie@kernel.org> (cherry picked from commit 778dcb0 linux-next) Signed-off-by: Yo-Jung (Leo) Lin <leo.lin@canonical.com> Acked-by: Chia-Lin Kao (AceLan) <chia-lin.kao@canonical.com> Signed-off-by: Kuan-Ying Lee <kuan-ying.lee@canonical.com>
BugLink: https://bugs.launchpad.net/bugs/2089273 Refactor sof_sdw_card_late_probe() function and derive a generic function soc_sdw_card_late_probe() function which can be used by SoundWire generic machine driver. Link: thesofproject/linux#5068 Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com> Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://patch.msgid.link/20240801111821.18076-5-Vijendar.Mukunda@amd.com Signed-off-by: Mark Brown <broonie@kernel.org> (cherry picked from commit 5bd414c linux-next) Signed-off-by: Yo-Jung (Leo) Lin <leo.lin@canonical.com> Acked-by: Chia-Lin Kao (AceLan) <chia-lin.kao@canonical.com> Signed-off-by: Kuan-Ying Lee <kuan-ying.lee@canonical.com>
…ink() BugLink: https://bugs.launchpad.net/bugs/2089273 To make it generic, refactor existing implementation for init_dai_link() and init_simple_dai_link() as mentioned below. - Move init_dai_link() and init_simple_dai_link() to common place holder - Rename the functions with "asoc_sdw" as prefix. - Pass the platform specific 'platform_component' structure and its size as arguments for init_simple_dai_link() function and allocate one more extra dlc for platform component. - Pass the 'platform_component' and 'num_platforms' as arguments for init_dai_link(). Link: thesofproject/linux#5068 Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com> Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://patch.msgid.link/20240801111821.18076-6-Vijendar.Mukunda@amd.com Signed-off-by: Mark Brown <broonie@kernel.org> (cherry picked from commit 59f8b62 linux-next) Signed-off-by: Yo-Jung (Leo) Lin <leo.lin@canonical.com> Acked-by: Chia-Lin Kao (AceLan) <chia-lin.kao@canonical.com> Signed-off-by: Kuan-Ying Lee <kuan-ying.lee@canonical.com>
BugLink: https://bugs.launchpad.net/bugs/2089273 Few IP's may have same PCI vendor id and device id and different revision id. Add revision id field to the 'snd_soc_acpi_mach_params' so that using this field platform specific implementation can be added in machine driver. Link: thesofproject/linux#5068 Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com> Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://patch.msgid.link/20240801111821.18076-7-Vijendar.Mukunda@amd.com Signed-off-by: Mark Brown <broonie@kernel.org> (cherry picked from commit 0b8f009 linux-next) Signed-off-by: Yo-Jung (Leo) Lin <leo.lin@canonical.com> Acked-by: Chia-Lin Kao (AceLan) <chia-lin.kao@canonical.com> Signed-off-by: Kuan-Ying Lee <kuan-ying.lee@canonical.com>
BugLink: https://bugs.launchpad.net/bugs/2089273 Add Soundwire machines for acp6.3 based platform. Link: thesofproject/linux#5068 Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com> Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://patch.msgid.link/20240801111821.18076-8-Vijendar.Mukunda@amd.com Signed-off-by: Mark Brown <broonie@kernel.org> (cherry picked from commit 57677cc linux-next) Signed-off-by: Yo-Jung (Leo) Lin <leo.lin@canonical.com> Acked-by: Chia-Lin Kao (AceLan) <chia-lin.kao@canonical.com> Signed-off-by: Kuan-Ying Lee <kuan-ying.lee@canonical.com>
BugLink: https://bugs.launchpad.net/bugs/2089273 Add SoundWire machines as alternate machines for acp6.3 based platform. Link: thesofproject/linux#5068 Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com> Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://patch.msgid.link/20240801111821.18076-9-Vijendar.Mukunda@amd.com Signed-off-by: Mark Brown <broonie@kernel.org> (cherry picked from commit 15049b6 linux-next) Signed-off-by: Yo-Jung (Leo) Lin <leo.lin@canonical.com> Acked-by: Chia-Lin Kao (AceLan) <chia-lin.kao@canonical.com> Signed-off-by: Kuan-Ying Lee <kuan-ying.lee@canonical.com>
BugLink: https://bugs.launchpad.net/bugs/2089273 Add pci_rev variable in acp sof driver private data structure and assign this value to mach_params structure subsystem_rev variable. Link: thesofproject/linux#5068 Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com> Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://patch.msgid.link/20240801111821.18076-10-Vijendar.Mukunda@amd.com Signed-off-by: Mark Brown <broonie@kernel.org> (cherry picked from commit b7cdb4a linux-next) Signed-off-by: Yo-Jung (Leo) Lin <leo.lin@canonical.com> Acked-by: Chia-Lin Kao (AceLan) <chia-lin.kao@canonical.com> Signed-off-by: Kuan-Ying Lee <kuan-ying.lee@canonical.com>
BugLink: https://bugs.launchpad.net/bugs/2089273 Add sof based Soundwire generic driver for amd platforms. Currently support added for ACP6.3 based platforms. Link: thesofproject/linux#5068 Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com> Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://patch.msgid.link/20240801111821.18076-11-Vijendar.Mukunda@amd.com Signed-off-by: Mark Brown <broonie@kernel.org> (cherry picked from commit cb8ea62 linux-next) Signed-off-by: Yo-Jung (Leo) Lin <leo.lin@canonical.com> Acked-by: Chia-Lin Kao (AceLan) <chia-lin.kao@canonical.com> Signed-off-by: Kuan-Ying Lee <kuan-ying.lee@canonical.com>
This patch series is rebase version of PR#5034