[alsa-devel] [PATCH 00/13] Add ASoC support for AMD APUs [v5]

Christian König deathsimple at vodafone.de
Mon Dec 21 20:08:50 CET 2015


On 05.12.2015 00:40, Alex Deucher wrote:
> This patch set implements support for i2s audio and new AMD GPUs.
> The i2s codec is fed by a DMA engine on the GPU.  To handle this
> we create mfd cells which we hang the i2s codec and DMA engine on.
> Because of this, this patch set covers two subsystems: drm and alsa.
> The drm patches add support for the ACP hw block which provides the
> DMA engine for the i2s codec.  The alsa patches add the ASoC driver
> for the i2s codec.  Since the alsa changes depend on the drm changes,
> I'd like to take the alsa patches in via the drm tree.
>
> V2 changes:
> - Use the MFD subsystem rather than adding our own bus
> - Squash all sub-feature patches together
> - fix comments mentioned in previous review
>
> V3 changes:
> - Update the designware driver to handle slave mode, amd specific
>    features
> - Use the designware driver directly for i2s
> - Move the DMA handling from the GPU driver into the AMD ASoC
>    driver
> - Change the license on the ASoC driver to GPL
>
> v4 changes:
> - patch "ASoC : dwc : support dw i2s in slave mode" accepted
> - Add a _dai_fmt() operation that checks to make sure that the mode
>    we're setting corresponds to what we read back from the hardware.
> - Split specific quirks into separate patches
> - Set the specific quirks that apply to AMD chips in the acp driver
>
> v5 changes:
> - patch "ASoC : dwc : add check for master/slave format" accepted
> - Fix MFD_CORE selection in ACP Kconfig
> - Add irq domain support to amdgpu driver
> - Use genirq in ACP DMA driver
> - Export some genpd symbols to support ACP powergating (Acked by PM maintainer)
> - Use genpd for ACP powergating
> - add separate capture and playback instances of dws in ACP init
> - add runtime suspend support for dws in master mode
>
> Patch 9 adds the register headers for the ACP block which is a
> pretty big patch so I've excluded it from email.  The entire patch
> set can be viewed here:
> http://cgit.freedesktop.org/~agd5f/linux/log/?h=acp-upstream8
>
> Thanks,
>
> Alex
>
> Alex Deucher (3):
>    drm/amdgpu/cgs: add an interface to access PCI resources
>    drm/amdgpu: add irq domain support
>    drm/amd: add pm domain for ACP IP sub blocks
>
> Maruthi Bayyavarapu (1):
>    drm/amd: add ACP driver support
>
> Maruthi Srinivas Bayyavarapu (9):
>    ASoC: dwc: add runtime suspend/resume functionality
>    ASoC: dwc: add quirk for different register offset
>    ASoC: dwc: reconfigure dwc in 'resume' from 'suspend'
>    PM / Domains: export symbols to add/remove devices from genpd
>    ASoC : AMD : add ACP 2.2 register headers
>    ASoC: AMD: add ACP 2.x IP DMA abstraction layer
>    ASoC: AMD: add AMD ASoC ACP 2.x DMA driver
>    ASoC: AMD: add pm ops
>    ASoC: AMD: Manage ACP 2.x SRAM banks power

The whole series is Acked-by: Christian König <christian.koenig at amd.com>

Regards,
Christian.

>
>   drivers/base/power/domain.c                  |    2 +
>   drivers/gpu/drm/Kconfig                      |    2 +
>   drivers/gpu/drm/amd/acp/Kconfig              |   11 +
>   drivers/gpu/drm/amd/acp/Makefile             |    9 +
>   drivers/gpu/drm/amd/acp/acp_hw.c             |   50 +
>   drivers/gpu/drm/amd/acp/include/acp_gfx_if.h |   34 +
>   drivers/gpu/drm/amd/amdgpu/Makefile          |   13 +-
>   drivers/gpu/drm/amd/amdgpu/amdgpu.h          |   12 +
>   drivers/gpu/drm/amd/amdgpu/amdgpu_acp.c      |  501 ++++++
>   drivers/gpu/drm/amd/amdgpu/amdgpu_acp.h      |   42 +
>   drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c      |   36 +
>   drivers/gpu/drm/amd/amdgpu/amdgpu_irq.c      |  108 +-
>   drivers/gpu/drm/amd/amdgpu/amdgpu_irq.h      |    9 +
>   drivers/gpu/drm/amd/amdgpu/cik_ih.c          |    6 +
>   drivers/gpu/drm/amd/amdgpu/cz_ih.c           |    7 +
>   drivers/gpu/drm/amd/amdgpu/iceland_ih.c      |    7 +
>   drivers/gpu/drm/amd/amdgpu/tonga_ih.c        |    7 +
>   drivers/gpu/drm/amd/amdgpu/vi.c              |   12 +
>   drivers/gpu/drm/amd/include/amd_shared.h     |    1 +
>   drivers/gpu/drm/amd/include/cgs_common.h     |   34 +
>   include/sound/designware_i2s.h               |    5 +
>   sound/soc/Kconfig                            |    1 +
>   sound/soc/Makefile                           |    1 +
>   sound/soc/amd/Kconfig                        |    4 +
>   sound/soc/amd/Makefile                       |    3 +
>   sound/soc/amd/acp-pcm-dma.c                  |  560 +++++++
>   sound/soc/amd/acp.c                          |  666 ++++++++
>   sound/soc/amd/acp.h                          |  140 ++
>   sound/soc/amd/include/acp_2_2_d.h            |  609 +++++++
>   sound/soc/amd/include/acp_2_2_enum.h         | 1068 ++++++++++++
>   sound/soc/amd/include/acp_2_2_sh_mask.h      | 2292 ++++++++++++++++++++++++++
>   sound/soc/dwc/designware_i2s.c               |  113 +-
>   32 files changed, 6325 insertions(+), 40 deletions(-)
>   create mode 100644 drivers/gpu/drm/amd/acp/Kconfig
>   create mode 100644 drivers/gpu/drm/amd/acp/Makefile
>   create mode 100644 drivers/gpu/drm/amd/acp/acp_hw.c
>   create mode 100644 drivers/gpu/drm/amd/acp/include/acp_gfx_if.h
>   create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_acp.c
>   create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_acp.h
>   create mode 100644 sound/soc/amd/Kconfig
>   create mode 100644 sound/soc/amd/Makefile
>   create mode 100644 sound/soc/amd/acp-pcm-dma.c
>   create mode 100644 sound/soc/amd/acp.c
>   create mode 100644 sound/soc/amd/acp.h
>   create mode 100644 sound/soc/amd/include/acp_2_2_d.h
>   create mode 100644 sound/soc/amd/include/acp_2_2_enum.h
>   create mode 100644 sound/soc/amd/include/acp_2_2_sh_mask.h
>



More information about the Alsa-devel mailing list