alsa-devel.alsa-project.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/12] ASoC: hdac: Add hdac generic driver
@ 2016-08-29  6:23 Subhransu S. Prusty
  2016-08-29  6:23 ` [PATCH 01/12] ALSA: hdac: Add codec helper library Subhransu S. Prusty
                   ` (11 more replies)
  0 siblings, 12 replies; 27+ messages in thread
From: Subhransu S. Prusty @ 2016-08-29  6:23 UTC (permalink / raw)
  To: alsa-devel; +Cc: tiwai, patches.audio, broonie, Subhransu S. Prusty, lgirdwood

HDA devices generically can be modelled with DAPM in ASoC.

We would like to create a framework for the HDA devices in ASoC.
This will follow HDA standard. This will be registered as generic
"virtual" class device (Not implemented in this series).  If
there is no match found for vendor id and device id, then the
class driver will be loaded.  For vendor specific devices, vendor
quirks will be loaded based on the match.  Additional widgets,
controls and route will be created in a vendor specific way
through vendor ops.

This series adds a framework in ASoC to model HDA codecs. HDA
widgets are enumerated and one or multiple DAPM widget(s) are
created. Connection list is queried for each widget to identify
the connection between two endpoints and modelled using DAPM
graph.

Set of event handlers are defined for each widget type. Based on
DAPM events required verbs are sent to program codec.

Finally a function is exported to query for the device endpoint
configuration to create machine controls.

Features yet to be added:
	- Optional features of widgets will be added using
	  additional dapm widgets or controls
	- Pin retasking will be done by adding all possible dapm
	  route map
	- Class driver to load the generic driver if no match found
	- Jack detection

Subhransu S. Prusty (12):
  ALSA: hdac: Add codec helper library
  ALSA: hda - Add macro to test pin widget's input capability
  ASoC: hdac: Add a generic hdac driver framework
  ASoC: hdac: Create DAPM model for HDA widgets
  ALSA: hdac: Move 'to_hda_ext_device' helper to core
  ASoC: hdac_hdmi: use get_edev helper from core
  ASoC: hdac: Build DAPM graph by querying through widget connection
    list
  ASoC: hdac: Register widget event handlers
  ALSA: hda - macro to get default config device of pin widgets
  ASoC: hdac: Export API to create machine controls
  ALSA: hdac: Implement a match function
  ASoC: hdac: Add coefficient init callback for RT286

 include/sound/hdaudio.h         |    1 +
 include/sound/hdaudio_ext.h     |    1 +
 sound/hda/ext/Makefile          |    3 +-
 sound/hda/ext/hdac_codec.c      |  182 ++++
 sound/hda/ext/hdac_codec.h      |   60 ++
 sound/hda/ext/hdac_ext_bus.c    |   12 +
 sound/hda/local.h               |   13 +
 sound/soc/codecs/Kconfig        |    5 +
 sound/soc/codecs/Makefile       |    2 +
 sound/soc/codecs/hdac_generic.c | 1754 +++++++++++++++++++++++++++++++++++++++
 sound/soc/codecs/hdac_generic.h |   36 +
 sound/soc/codecs/hdac_hdmi.c    |    8 +-
 12 files changed, 2069 insertions(+), 8 deletions(-)
 create mode 100644 sound/hda/ext/hdac_codec.c
 create mode 100644 sound/hda/ext/hdac_codec.h
 create mode 100644 sound/soc/codecs/hdac_generic.c
 create mode 100644 sound/soc/codecs/hdac_generic.h

-- 
1.9.1

^ permalink raw reply	[flat|nested] 27+ messages in thread

end of thread, other threads:[~2016-08-30  7:51 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-08-29  6:23 [PATCH 00/12] ASoC: hdac: Add hdac generic driver Subhransu S. Prusty
2016-08-29  6:23 ` [PATCH 01/12] ALSA: hdac: Add codec helper library Subhransu S. Prusty
2016-08-29  8:41   ` Takashi Iwai
2016-08-29 12:47     ` Subhransu S. Prusty
2016-08-29 12:55       ` Takashi Iwai
2016-08-29 13:17         ` Subhransu S. Prusty
2016-08-29 13:28           ` Takashi Iwai
2016-08-29 13:33             ` Subhransu S. Prusty
2016-08-29 13:43               ` Takashi Iwai
2016-08-30  7:46                 ` Subhransu S. Prusty
2016-08-29  6:23 ` [PATCH 02/12] ALSA: hda - Add macro to test pin widget's input capability Subhransu S. Prusty
2016-08-29  8:42   ` Takashi Iwai
2016-08-29 13:01     ` Subhransu S. Prusty
2016-08-29  6:23 ` [PATCH 03/12] ASoC: hdac: Add a generic hdac driver framework Subhransu S. Prusty
2016-08-29  6:23 ` [PATCH 04/12] ASoC: hdac: Create DAPM model for HDA widgets Subhransu S. Prusty
2016-08-29  6:23 ` [PATCH 05/12] ALSA: hdac: Move 'to_hda_ext_device' helper to core Subhransu S. Prusty
2016-08-29  8:44   ` Takashi Iwai
2016-08-29 13:06     ` Subhransu S. Prusty
2016-08-29 13:21       ` Takashi Iwai
2016-08-29 13:20         ` Subhransu S. Prusty
2016-08-29  6:23 ` [PATCH 06/12] ASoC: hdac_hdmi: use get_edev helper from core Subhransu S. Prusty
2016-08-29  6:23 ` [PATCH 07/12] ASoC: hdac: Build DAPM graph by querying through widget connection list Subhransu S. Prusty
2016-08-29  6:23 ` [PATCH 08/12] ASoC: hdac: Register widget event handlers Subhransu S. Prusty
2016-08-29  6:23 ` [PATCH 09/12] ALSA: hda - macro to get default config device of pin widgets Subhransu S. Prusty
2016-08-29  6:23 ` [PATCH 10/12] ASoC: hdac: Export API to create machine controls Subhransu S. Prusty
2016-08-29  6:23 ` [PATCH 11/12] ALSA: hdac: Implement a match function Subhransu S. Prusty
2016-08-29  6:23 ` [PATCH 12/12] ASoC: hdac: Add coefficient init callback for RT286 Subhransu S. Prusty

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).