All of lore.kernel.org
 help / color / mirror / Atom feed
From: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
To: alsa-devel@alsa-project.org
Cc: tiwai@suse.de,
	Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>,
	liam.r.girdwood@linux.intel.com, vinod.koul@intel.com,
	broonie@kernel.org, andriy.shevchenko@linux.intel.com
Subject: [PATCH 0/8] ASoC: Prepare Sound Open Firmware (SOF) driver integration
Date: Thu, 12 Oct 2017 18:49:37 -0500	[thread overview]
Message-ID: <20171012234945.30318-1-pierre-louis.bossart@linux.intel.com> (raw)

The Sound Open Firmware work [1] is progressing quickly and drivers
for the 1.0 release will soon be submitted upstream. Before we do so,
there is a new to reshuffle the ACPI integration and Intel
Kconfig/Makefiles. 

We already have three incompatible drivers (BYT/HSW/BDW, Atom/BYT/CHT,
SKL+) for historical reasons, blindly adding yet another one would be
silly.  We need to avoid having the same ACPI routines and machine
tables duplicated in 3 locations (soc/intel/common, soc/atom/sst and
the upcoming soc/sof).

The ACPI routines should be part of sound/soc since there is no real
hardware dependency (ACPI is not limited to Intel).

The ACPI table definitions and quirks are moved to a soc/intel/common module
so that when new HIDs or quirks are added "legacy" and the SOF drivers
are updated at once.

The Makefiles/Kconfig are also modified to select the SOC(s) first and
the machine driver(s) second. The existing code only exposes machine
drivers which precludes reuse of machine drivers when SOF platform
drivers are selected. SOF drivers will be exposed in parallel to the
'Intel SST' ones (with an exclusive choice needed), but machine
drivers will be shared.

These patches apply on top of broonie/for-next + all the patches I
submitted this week (no dependency on SOF). For people with allergic
reactions to patches over email, the code is here:
https://github.com/plbossart/sound/commits/topic/acpi-updates6

This patchset does not address the case where two drivers are selected
for the same ACPI HID. I just don't know of any technical solution to
that problem.

changes since initial RFC:
rebased to v4.14-rc2, used kernel style doc for machine descriptors,
removed useless fields, split tables for each SOC
corrected missing newlines

Pierre-Louis Bossart (8):
  ASoC: move ACPI common code out of Intel/sst tree
  ASoC: Intel: common: use c99 syntax for ACPI/machine tables
  ASoC: ACPI: add new fields for SOF support
  ASoC: Intel: move all ACPI match tables to common module
  ASoC: Intel: add SOF firmare/topology file information
  ASoC: Intel: move machine drivers to dedicated KConfig
  ASoC: Intel: reorder boards Kconfig by chronological order
  ASoC: Intel: clarify Kconfig dependencies

 include/sound/soc-acpi-intel-match.h               |  32 +++
 .../common/sst-acpi.h => include/sound/soc-acpi.h  |  75 +++--
 sound/soc/Kconfig                                  |   3 +
 sound/soc/Makefile                                 |   6 +
 sound/soc/intel/Kconfig                            | 299 ++-----------------
 sound/soc/intel/Makefile                           |   2 +-
 sound/soc/intel/atom/sst/sst_acpi.c                | 319 ++-------------------
 sound/soc/intel/boards/Kconfig                     | 286 ++++++++++++++++++
 sound/soc/intel/boards/bytcht_da7213.c             |   6 +-
 sound/soc/intel/boards/bytcht_es8316.c             |   2 +-
 sound/soc/intel/boards/bytcr_rt5640.c              |  11 +-
 sound/soc/intel/boards/bytcr_rt5651.c              |   6 +-
 sound/soc/intel/boards/cht_bsw_rt5645.c            |  11 +-
 sound/soc/intel/boards/cht_bsw_rt5672.c            |   7 +-
 sound/soc/intel/common/Makefile                    |   4 +-
 sound/soc/intel/common/soc-acpi-intel-byt-match.c  | 196 +++++++++++++
 sound/soc/intel/common/soc-acpi-intel-cht-match.c  | 194 +++++++++++++
 .../intel/common/soc-acpi-intel-hsw-bdw-match.c    |  64 +++++
 sound/soc/intel/common/sst-acpi.c                  |  36 +--
 sound/soc/intel/skylake/skl.c                      |  40 +--
 .../{intel/common/sst-match-acpi.c => soc-acpi.c}  |  56 ++--
 21 files changed, 963 insertions(+), 692 deletions(-)
 create mode 100644 include/sound/soc-acpi-intel-match.h
 rename sound/soc/intel/common/sst-acpi.h => include/sound/soc-acpi.h (34%)
 create mode 100644 sound/soc/intel/boards/Kconfig
 create mode 100644 sound/soc/intel/common/soc-acpi-intel-byt-match.c
 create mode 100644 sound/soc/intel/common/soc-acpi-intel-cht-match.c
 create mode 100644 sound/soc/intel/common/soc-acpi-intel-hsw-bdw-match.c
 rename sound/soc/{intel/common/sst-match-acpi.c => soc-acpi.c} (63%)

-- 
2.11.0

             reply	other threads:[~2017-10-12 23:49 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-10-12 23:49 Pierre-Louis Bossart [this message]
2017-10-12 23:49 ` [PATCH 1/8] ASoC: move ACPI common code out of Intel/sst tree Pierre-Louis Bossart
2017-10-12 23:49 ` [PATCH 2/8] ASoC: Intel: common: use c99 syntax for ACPI/machine tables Pierre-Louis Bossart
2017-10-12 23:49 ` [PATCH 3/8] ASoC: ACPI: add new fields for SOF support Pierre-Louis Bossart
2017-10-13 16:35   ` Andy Shevchenko
2017-10-13 17:17     ` Pierre-Louis Bossart
2017-10-21 10:30   ` Applied "ASoC: ACPI: add new fields for SOF support" to the asoc tree Mark Brown
2017-10-12 23:49 ` [PATCH 4/8] ASoC: Intel: move all ACPI match tables to common module Pierre-Louis Bossart
2017-10-13 16:38   ` Andy Shevchenko
2017-10-13 17:21     ` Pierre-Louis Bossart
2017-10-21 10:29   ` Applied "ASoC: Intel: move all ACPI match tables to common module" to the asoc tree Mark Brown
2017-10-12 23:49 ` [PATCH 5/8] ASoC: Intel: add SOF firmare/topology file information Pierre-Louis Bossart
2017-10-21 10:29   ` Applied "ASoC: Intel: add SOF firmare/topology file information" to the asoc tree Mark Brown
2017-10-12 23:49 ` [PATCH 6/8] ASoC: Intel: move machine drivers to dedicated KConfig Pierre-Louis Bossart
2017-10-12 23:49 ` [PATCH 7/8] ASoC: Intel: reorder boards Kconfig by chronological order Pierre-Louis Bossart
2017-10-12 23:49 ` [PATCH 8/8] ASoC: Intel: clarify Kconfig dependencies Pierre-Louis Bossart
2017-10-19 21:18 ` [PATCH 0/8] ASoC: Prepare Sound Open Firmware (SOF) driver integration Liam Girdwood

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20171012234945.30318-1-pierre-louis.bossart@linux.intel.com \
    --to=pierre-louis.bossart@linux.intel.com \
    --cc=alsa-devel@alsa-project.org \
    --cc=andriy.shevchenko@linux.intel.com \
    --cc=broonie@kernel.org \
    --cc=liam.r.girdwood@linux.intel.com \
    --cc=tiwai@suse.de \
    --cc=vinod.koul@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.