History log of /linux-master/sound/soc/amd/acp/amd.h
Revision Date Author Comments
# e84db124 21-Oct-2023 Syed Saba Kareem <Syed.SabaKareem@amd.com>

ASoC: amd: acp: Add pci legacy driver support for acp7.0 platform

Add pci legacy driver support and create platform driver for
acp7.0 platform.

Signed-off-by: Syed Saba Kareem <Syed.SabaKareem@amd.com>
Link: https://lore.kernel.org/r/20231021145110.478744-12-Syed.SabaKareem@amd.com
Signed-off-by: Mark Brown <broonie@kernel.org>


# caa126f2 21-Oct-2023 Syed Saba Kareem <Syed.SabaKareem@amd.com>

ASoC: amd: acp: change acp power on mask macro value

change acp power on mask macro value so that same macro can be used
for all amd platforms.

Signed-off-by: Syed Saba Kareem <Syed.SabaKareem@amd.com>
Link: https://lore.kernel.org/r/20231021145110.478744-11-Syed.SabaKareem@amd.com
Signed-off-by: Mark Brown <broonie@kernel.org>


# 1b6180c0 21-Oct-2023 Syed Saba Kareem <Syed.SabaKareem@amd.com>

ASoC: amd: acp: change acp-deinit function arguments

acp-deinit function will not be same for all platforms.
To make platform specific changes in acp-deinit
function, instead of passing base address pass chip
structure which contains acp_rev feild.
chip->acp_rev will be used to add platform specific code
in acp-deinit().

Signed-off-by: Syed Saba Kareem <Syed.SabaKareem@amd.com>
Link: https://lore.kernel.org/r/20231021145110.478744-10-Syed.SabaKareem@amd.com
Signed-off-by: Mark Brown <broonie@kernel.org>


# 57e85777 21-Oct-2023 Syed Saba Kareem <Syed.SabaKareem@amd.com>

ASoC: amd: acp: add platform and flag data to acp data structure

add name of the platform and flag data in private data structure.
name of the platform will be used to differentiate platforms where as
flag will be used to know what kind of endpoint configuration is selected
where its legacy(I2S + PDM) or only ACP PDM.

Signed-off-by: Syed Saba Kareem <Syed.SabaKareem@amd.com>
Link: https://lore.kernel.org/r/20231021145110.478744-7-Syed.SabaKareem@amd.com
Signed-off-by: Mark Brown <broonie@kernel.org>


# 3a94c8ad 21-Oct-2023 Syed Saba Kareem <Syed.SabaKareem@amd.com>

ASoC: amd: acp: add code for scanning acp pdm controller

Add common code for scanning acp pdm controller and create
platform device for the same.

Signed-off-by: Syed Saba Kareem <Syed.SabaKareem@amd.com>
Link: https://lore.kernel.org/r/20231021145110.478744-6-Syed.SabaKareem@amd.com
Signed-off-by: Mark Brown <broonie@kernel.org>


# 40f74d5f 21-Oct-2023 Syed Saba Kareem <Syed.SabaKareem@amd.com>

ASoC: amd: acp: refactor acp i2s clock generation code

Refactor acp i2s LRCLK,BCLK generation code and move to commnon file.

Signed-off-by: Syed Saba Kareem <Syed.SabaKareem@amd.com>
Link: https://lore.kernel.org/r/20231021145110.478744-2-Syed.SabaKareem@amd.com
Signed-off-by: Mark Brown <broonie@kernel.org>


# 33d120a4 21-Oct-2023 Syed Saba Kareem <Syed.SabaKareem@amd.com>

ASoC: amd: acp: Add acp6.3 pci legacy driver support

Add pci legacy driver support and create platform driver for
acp6.3 based platforms.

Signed-off-by: Syed Saba Kareem <Syed.SabaKareem@amd.com>
Link: https://lore.kernel.org/r/20231021145110.478744-1-Syed.SabaKareem@amd.com
Signed-off-by: Mark Brown <broonie@kernel.org>


# 4062afe9 08-Aug-2023 Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>

ASoC: amd: merge DAI call back functions into ops

ALSA SoC merges DAI call backs into .ops.
This patch merge these into one.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/87pm3xb0va.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org>


# d86eb535 08-Aug-2023 Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>

ASoC: amd: merge DAI call back functions into ops

ALSA SoC merges DAI call backs into .ops.
This patch merge these into one.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/87pm3xb0va.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org>


# 5debf4ae 26-Jun-2023 Syed Saba Kareem <Syed.SabaKareem@amd.com>

ASoC: amd: acp: add pm ops support for rembrandt platform

Add pm ops for rembrandt platform.

Signed-off-by: Syed Saba Kareem <Syed.SabaKareem@amd.com>
Link: https://lore.kernel.org/r/20230626135515.1252063-11-Syed.SabaKareem@amd.com
Signed-off-by: Mark Brown <broonie@kernel.org>


# e3a96e44 26-Jun-2023 Syed Saba Kareem <Syed.SabaKareem@amd.com>

ASoC: amd: acp: move pdm macros to common header file

Move pdm related macros from pdm file to common header file so
that it can be used across different files.

Signed-off-by: Syed Saba Kareem <Syed.SabaKareem@amd.com>
Link: https://lore.kernel.org/r/20230626135515.1252063-10-Syed.SabaKareem@amd.com
Signed-off-by: Mark Brown <broonie@kernel.org>


# 7373e6be 26-Jun-2023 Syed Saba Kareem <Syed.SabaKareem@amd.com>

ASoC: amd: acp: store the pdm stream channel mask

Store the pdm stream channel mask, it will be used during system
level resume.

Signed-off-by: Syed Saba Kareem <Syed.SabaKareem@amd.com>
Link: https://lore.kernel.org/r/20230626135515.1252063-9-Syed.SabaKareem@amd.com
Signed-off-by: Mark Brown <broonie@kernel.org>


# c8786ac7 26-Jun-2023 Syed Saba Kareem <Syed.SabaKareem@amd.com>

ASoC: amd: acp: store xfer_resolution of the stream

Store the 'xfer_resolution' of the stream in private data structure,
it will be used to reprogram the xfer_resolution for the active stream
during system level resume.

Signed-off-by: Syed Saba Kareem <Syed.SabaKareem@amd.com>
Link: https://lore.kernel.org/r/20230626135515.1252063-7-Syed.SabaKareem@amd.com
Signed-off-by: Mark Brown <broonie@kernel.org>


# 7a839030 26-Jun-2023 Syed Saba Kareem <Syed.SabaKareem@amd.com>

ASoC: amd: acp: store platform device reference created in pci probe call

Store the platform device reference created in pci driver,
it will be used in restoring the interrupts during system level resume.

Signed-off-by: Syed Saba Kareem <Syed.SabaKareem@amd.com>
Link: https://lore.kernel.org/r/20230626135515.1252063-5-Syed.SabaKareem@amd.com
Signed-off-by: Mark Brown <broonie@kernel.org>


# fc11d326 26-Jun-2023 Syed Saba Kareem <Syed.SabaKareem@amd.com>

ASoC: amd: acp: remove the redundant acp enable/disable interrupts functions

Instead of having individual acp enable/disable interrupts functions for
each platform, implement common place holder to handle the same for all
AMD platforms.

Signed-off-by: Syed Saba Kareem <Syed.SabaKareem@amd.com>
Link: https://lore.kernel.org/r/20230626135515.1252063-4-Syed.SabaKareem@amd.com
Signed-off-by: Mark Brown <broonie@kernel.org>


# 7ad6fb9d 26-Jun-2023 Syed Saba Kareem <Syed.SabaKareem@amd.com>

ASoC: amd: acp: add acp i2s master clock generation for rembrandt platform

Add acp i2s master clock generation logic for rembrandt platform.

Signed-off-by: V Sujith Kumar Reddy <vsujithkumar.reddy@amd.com>
Signed-off-by: Syed Saba Kareem <Syed.SabaKareem@amd.com>
Link: https://lore.kernel.org/r/20230626135515.1252063-3-Syed.SabaKareem@amd.com
Signed-off-by: Mark Brown <broonie@kernel.org>


# e61b4155 26-Jun-2023 Syed Saba Kareem <Syed.SabaKareem@amd.com>

ASoC: amd: acp: refactor the acp init and de-init sequence

Remove the individual acp init and de-init functions from different
variants of acp pci driver(for renoir/rembrandt platforms) and use a
common file to define callbacks and refactor the callbacks to support
existing platforms.

Signed-off-by: Syed Saba Kareem <Syed.SabaKareem@amd.com>
Link: https://lore.kernel.org/r/20230626135515.1252063-2-Syed.SabaKareem@amd.com
Signed-off-by: Mark Brown <broonie@kernel.org>


# 85aeab36 26-Jun-2023 Vijendar Mukunda <Vijendar.Mukunda@amd.com>

ASoC: amd: acp: fix for invalid dai id handling in acp_get_byte_count()

For invalid dai id, instead of returning -EINVAL
return bytes count as zero in acp_get_byte_count() function.

Fixes: 623621a9f9e1 ("ASoC: amd: Add common framework to support I2S on ACP SOC")

Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com>
Link: https://lore.kernel.org/r/20230626105356.2580125-6-Vijendar.Mukunda@amd.com
Signed-off-by: Mark Brown <broonie@kernel.org>


# 99a387c7 25-Aug-2022 Venkata Prasad Potturu <venkataprasad.potturu@amd.com>

ASoC: amd: acp: Modify dai_id macros to be more generic

Change dai_id macros to make I2S instances in order.

Signed-off-by: Venkata Prasad Potturu <venkataprasad.potturu@amd.com>
Link: https://lore.kernel.org/r/20220826064250.3302260-1-venkataprasad.potturu@amd.com
Signed-off-by: Mark Brown <broonie@kernel.org>


# 12229b7e 10-Aug-2022 Venkata Prasad Potturu <venkataprasad.potturu@amd.com>

ASoC: amd: acp: Add TDM support for acp i2s stream

Add callback and code changes to enable ACP I2S controller in TDM
mode. Add new fields in acp_stream and acp_dev_data struct to configure
tdm related registers for ACP i2s controllers.

Signed-off-by: Venkata Prasad Potturu <venkataprasad.potturu@amd.com>
Link: https://lore.kernel.org/r/20220810132913.1181247-3-venkataprasad.potturu@amd.com
Signed-off-by: Mark Brown <broonie@kernel.org>


# 7929985c 10-Aug-2022 Ajit Kumar Pandey <AjitKumar.Pandey@amd.com>

ASoC: amd: acp: Initialize list to store acp_stream during pcm_open

We are currently allocating acp_stream during pcm_open and saving
it in static array corresponds to array index calculated based on
cpu dai->driver id. This approach will fail if we have single dai
linked to multiple pcm device as we will have same dai->driver id
or array index for multiple pcm open. Initialize new linked list
stream_list to store opened pcm stream info dynamically.

Signed-off-by: Ajit Kumar Pandey <AjitKumar.Pandey@amd.com>
Signed-off-by: Venkata Prasad Potturu <venkataprasad.potturu@amd.com>
Reviewed-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com>
Link: https://lore.kernel.org/r/20220810132913.1181247-2-venkataprasad.potturu@amd.com
Signed-off-by: Mark Brown <broonie@kernel.org>


# e8a33a94 07-Jul-2022 V sujith kumar Reddy <Vsujithkumar.Reddy@amd.com>

ASoC: amd: acp: Add legacy audio driver support for Rembrandt platform

Add i2s and dmic support for Rembrandt platform,
Add machine support for nau8825, max98360 and rt5682s,rt1019 codec
in legacy driver for rembrandt platform.
Here codec is in a slave mode.

Signed-off-by: V sujith kumar Reddy <Vsujithkumar.Reddy@amd.com>
Link: https://lore.kernel.org/r/20220707161142.491034-4-Vsujithkumar.Reddy@amd.com
Signed-off-by: Mark Brown <broonie@kernel.org>


# b24484c1 07-Jul-2022 V sujith kumar Reddy <Vsujithkumar.Reddy@amd.com>

ASoC: amd: acp: ACP code generic to support newer platforms

ADD Generic code to support to newer platforms, add
control threshold, irq control macros ,added structure for register
offset differences.

Signed-off-by: V sujith kumar Reddy <Vsujithkumar.Reddy@amd.com>
Link: https://lore.kernel.org/r/20220707161142.491034-3-Vsujithkumar.Reddy@amd.com
Signed-off-by: Mark Brown <broonie@kernel.org>


# 5a9f07a4 17-Jan-2022 Ajit Kumar Pandey <AjitKumar.Pandey@amd.com>

ASoC: amd: acp: Add generic PCI driver module for ACP device

Audio Co-processor or ACP IP block on AMD's SOC is connected via
PCI bus interface, hence needs to be register as a PCI device. We
have same PCI device ID across multiple SOC's but with different
revision id for PCI hw. Add a generic PCI driver module for ACP
that registers ACP as a PCI device and also register a platform
device based on pci revision id. Any SOC's specific configuration
for ACP block will be done in platform driver probe. We have added
an initial support for ACP revision id 3 or ACP3X device.

Signed-off-by: Ajit Kumar Pandey <AjitKumar.Pandey@amd.com>
Link: https://lore.kernel.org/r/20220117115854.455995-4-AjitKumar.Pandey@amd.com
Signed-off-by: Mark Brown <broonie@kernel.org>


# c32bd332 17-Jan-2022 Ajit Kumar Pandey <AjitKumar.Pandey@amd.com>

ASoC: amd: acp: Add generic support for PDM controller on ACP

Add driver module for PDM controller on ACP IP block. Expose dai
ops to configure ACP_WOV_PDM_BLOCK registers on ACP. Such dai ops
will be used by platform specific driver module to register dmic
related dai with ASoC.

Signed-off-by: Ajit Kumar Pandey <AjitKumar.Pandey@amd.com>
Link: https://lore.kernel.org/r/20220117115854.455995-2-AjitKumar.Pandey@amd.com
Signed-off-by: Mark Brown <broonie@kernel.org>


# 8a8e1b90 25-Oct-2021 Ajit Kumar Pandey <AjitKumar.Pandey@amd.com>

ASoC: amd: acp: Add acp_machine struct for renoir platform.

Add acpi_mach struct for renoir platform to select machine driver
based on codec and amp ACPI id.

Signed-off-by: Ajit Kumar Pandey <AjitKumar.Pandey@amd.com>
Link: https://lore.kernel.org/r/20211025074808.471333-1-AjitKumar.Pandey@amd.com
Signed-off-by: Mark Brown <broonie@kernel.org>


# e646b51f 18-Oct-2021 Ajit Kumar Pandey <AjitKumar.Pandey@amd.com>

ASoC: amd: acp: Add callback for machine driver on ACP

Add method to select and register machine driver for acp platform
based on ACPI ID.

Signed-off-by: Ajit Kumar Pandey <AjitKumar.Pandey@amd.com>
Link: https://lore.kernel.org/r/20211019070938.5076-4-AjitKumar.Pandey@amd.com
Signed-off-by: Mark Brown <broonie@kernel.org>


# 623621a9 18-Oct-2021 Ajit Kumar Pandey <AjitKumar.Pandey@amd.com>

ASoC: amd: Add common framework to support I2S on ACP SOC

We are using legacy way of exposing dais and DMA configuration that
requires separate driver modules for various ACP SOC with almost
similar hw configuration. Moreover the legacy approach requires
separate I2S and DMA module platform devices registration and need
machine specific quirk to control various I2S endpoints. Add generic
dai driver and platform driver for I2S controller on ACP hw block.
This common framework can be used by various ACP platform devices
that shares common specs.

Signed-off-by: Ajit Kumar Pandey <AjitKumar.Pandey@amd.com>
Link: https://lore.kernel.org/r/20211019070938.5076-2-AjitKumar.Pandey@amd.com
Signed-off-by: Mark Brown <broonie@kernel.org>