All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
To: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Cc: alsa-devel@alsa-project.org, tiwai@suse.de, broonie@kernel.org,
	vkoul@kernel.org, liam.r.girdwood@linux.intel.com, arnd@arndb.de,
	linux-kernel@vger.kernel.org
Subject: Re: [RFC PATCH 6/6] ALSA: hda: add fallback capabilities for SKL+ platforms
Date: Wed, 21 Nov 2018 16:39:39 +0200	[thread overview]
Message-ID: <20181121143939.GQ10650@smile.fi.intel.com> (raw)
In-Reply-To: <20181120213644.19103-7-pierre-louis.bossart@linux.intel.com>

On Tue, Nov 20, 2018 at 03:36:44PM -0600, Pierre-Louis Bossart wrote:
> Enable fallback for select PCI IDs
> 
> Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
> ---
>  sound/pci/hda/Kconfig     | 40 +++++++++++++++++++++++++++++++++++++++
>  sound/pci/hda/hda_intel.c | 19 +++++++++++++------
>  sound/soc/intel/Kconfig   |  6 ++++++
>  3 files changed, 59 insertions(+), 6 deletions(-)
> 
> diff --git a/sound/pci/hda/Kconfig b/sound/pci/hda/Kconfig
> index 4235907b7858..9bb317fb3507 100644
> --- a/sound/pci/hda/Kconfig
> +++ b/sound/pci/hda/Kconfig
> @@ -228,4 +228,44 @@ config SND_HDA_POWER_SAVE_DEFAULT
>  
>  endif
>  
> +if SND_HDA_INTEL
> +
> +config SND_HDA_INTEL_LEGACY_FALLBACK_SKL
> +	bool
> +	help
> +	  This option enables HD-audio legacy fallback for
> +	  Skylake machines
> +
> +config SND_HDA_INTEL_LEGACY_FALLBACK_APL
> +	bool
> +	help
> +	  This option enables HD-audio legacy fallback for
> +	  Broxton/ApolloLake machines
> +
> +config SND_HDA_INTEL_LEGACY_FALLBACK_KBL
> +	bool
> +	help
> +	  This option enables HD-audio legacy fallback for
> +	  KabyLake machines
> +
> +config SND_HDA_INTEL_LEGACY_FALLBACK_GLK
> +	bool
> +	help
> +	  This option enables HD-audio legacy fallback for
> +	  GeminiLake machines
> +
> +config SND_HDA_INTEL_LEGACY_FALLBACK_CNL
> +	bool
> +	help
> +	  This option enables HD-audio legacy fallback for
> +	  CannonLake machines
> +
> +config SND_HDA_INTEL_LEGACY_FALLBACK_CFL
> +	bool
> +	help
> +	  This option enables HD-audio legacy fallback for
> +	  CoffeeLake machines
> +
> +endif ## SND_HDA_INTEL
> +
>  endmenu
> diff --git a/sound/pci/hda/hda_intel.c b/sound/pci/hda/hda_intel.c
> index eb00e37c1c27..569419242da3 100644
> --- a/sound/pci/hda/hda_intel.c
> +++ b/sound/pci/hda/hda_intel.c
> @@ -360,6 +360,7 @@ enum {
>  	 AZX_DCAPS_NO_64BIT |\
>  	 AZX_DCAPS_4K_BDLE_BOUNDARY | AZX_DCAPS_SNOOP_OFF)
>  
> +#define AZX_DCAPS_INTEL_LEGACY_FALLBACK(conf) (IS_ENABLED(conf) ? AZX_DCAPS_INTEL_SHARED : 0)
>  /*
>   * vga_switcheroo support
>   */
> @@ -2416,34 +2417,40 @@ static const struct pci_device_id azx_ids[] = {
>  	  .driver_data = AZX_DRIVER_SKL | AZX_DCAPS_INTEL_SKYLAKE },
>  	/* Sunrise Point-LP */
>  	{ PCI_DEVICE(0x8086, 0x9d70),
> -	  .driver_data = AZX_DRIVER_SKL | AZX_DCAPS_INTEL_SKYLAKE },
> +	  .driver_data = AZX_DRIVER_SKL | AZX_DCAPS_INTEL_SKYLAKE |
> +	  AZX_DCAPS_INTEL_LEGACY_FALLBACK(CONFIG_SND_HDA_INTEL_LEGACY_FALLBACK_SKL) },

Preprocessor may concatenate the same prefix for you.
I expect to see something like ..._FALLBACK(SKL) and so on.

Moreover, you can go further and create a macro that would consolidate all bits together.


>  	/* Kabylake */
>  	{ PCI_DEVICE(0x8086, 0xa171),
>  	  .driver_data = AZX_DRIVER_SKL | AZX_DCAPS_INTEL_SKYLAKE },
>  	/* Kabylake-LP */
>  	{ PCI_DEVICE(0x8086, 0x9d71),
> -	  .driver_data = AZX_DRIVER_SKL | AZX_DCAPS_INTEL_SKYLAKE },
> +	  .driver_data = AZX_DRIVER_SKL | AZX_DCAPS_INTEL_SKYLAKE |
> +	  AZX_DCAPS_INTEL_LEGACY_FALLBACK(CONFIG_SND_HDA_INTEL_LEGACY_FALLBACK_KBL) },
>  	/* Kabylake-H */
>  	{ PCI_DEVICE(0x8086, 0xa2f0),
>  	  .driver_data = AZX_DRIVER_SKL | AZX_DCAPS_INTEL_SKYLAKE },
>  	/* Coffelake */
>  	{ PCI_DEVICE(0x8086, 0xa348),
> -	  .driver_data = AZX_DRIVER_SKL | AZX_DCAPS_INTEL_SKYLAKE},
> +	  .driver_data = AZX_DRIVER_SKL | AZX_DCAPS_INTEL_SKYLAKE |
> +	  AZX_DCAPS_INTEL_LEGACY_FALLBACK(CONFIG_SND_HDA_INTEL_LEGACY_FALLBACK_CFL) },
>  	/* Cannonlake */
>  	{ PCI_DEVICE(0x8086, 0x9dc8),
> -	  .driver_data = AZX_DRIVER_SKL | AZX_DCAPS_INTEL_SKYLAKE},
> +	  .driver_data = AZX_DRIVER_SKL | AZX_DCAPS_INTEL_SKYLAKE |
> +	  AZX_DCAPS_INTEL_LEGACY_FALLBACK(CONFIG_SND_HDA_INTEL_LEGACY_FALLBACK_CNL) },
>  	/* Icelake */
>  	{ PCI_DEVICE(0x8086, 0x34c8),
>  	  .driver_data = AZX_DRIVER_SKL | AZX_DCAPS_INTEL_SKYLAKE},
>  	/* Broxton-P(Apollolake) */
>  	{ PCI_DEVICE(0x8086, 0x5a98),
> -	  .driver_data = AZX_DRIVER_SKL | AZX_DCAPS_INTEL_BROXTON },
> +	  .driver_data = AZX_DRIVER_SKL | AZX_DCAPS_INTEL_BROXTON |
> +	  AZX_DCAPS_INTEL_LEGACY_FALLBACK(CONFIG_SND_HDA_INTEL_LEGACY_FALLBACK_APL) },
>  	/* Broxton-T */
>  	{ PCI_DEVICE(0x8086, 0x1a98),
>  	  .driver_data = AZX_DRIVER_SKL | AZX_DCAPS_INTEL_BROXTON },
>  	/* Gemini-Lake */
>  	{ PCI_DEVICE(0x8086, 0x3198),
> -	  .driver_data = AZX_DRIVER_SKL | AZX_DCAPS_INTEL_BROXTON },
> +	  .driver_data = AZX_DRIVER_SKL | AZX_DCAPS_INTEL_BROXTON |
> +	  AZX_DCAPS_INTEL_LEGACY_FALLBACK(CONFIG_SND_HDA_INTEL_LEGACY_FALLBACK_GLK) },
>  	/* Haswell */
>  	{ PCI_DEVICE(0x8086, 0x0a0c),
>  	  .driver_data = AZX_DRIVER_HDMI | AZX_DCAPS_INTEL_HASWELL },
> diff --git a/sound/soc/intel/Kconfig b/sound/soc/intel/Kconfig
> index c02d08d31d0d..4c6abdbb0b90 100644
> --- a/sound/soc/intel/Kconfig
> +++ b/sound/soc/intel/Kconfig
> @@ -197,6 +197,12 @@ config SND_SOC_INTEL_SKYLAKE_COMMON
>  config SND_SOC_INTEL_SKL_LEGACY_SUPPORT
>  	bool "Fallback legacy HD-audio binding"
>  	depends on SND_HDA_INTEL=y || SND_SOC_INTEL_SKYLAKE_FAMILY=SND_HDA_INTEL
> +	select SND_HDA_INTEL_LEGACY_FALLBACK_SKL if SND_SOC_INTEL_SKL
> +	select SND_HDA_INTEL_LEGACY_FALLBACK_APL if SND_SOC_INTEL_APL
> +	select SND_HDA_INTEL_LEGACY_FALLBACK_KBL if SND_SOC_INTEL_KBL
> +	select SND_HDA_INTEL_LEGACY_FALLBACK_GLK if SND_SOC_INTEL_GLK
> +	select SND_HDA_INTEL_LEGACY_FALLBACK_CNL if SND_SOC_INTEL_CNL
> +	select SND_HDA_INTEL_LEGACY_FALLBACK_CFL if SND_SOC_INTEL_CFL
>  	help
>  	  Fallback binding with the legacy HD-audio driver when no DSP is
>  	  found
> -- 
> 2.17.1
> 

-- 
With Best Regards,
Andy Shevchenko



  reply	other threads:[~2018-11-21 14:39 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-11-20 21:36 [RFC PATCH 0/6] ASoC:Intel:Skylake: Enable HDaudio legacy fallback Pierre-Louis Bossart
2018-11-20 21:36 ` [RFC PATCH 1/6] ASoC: Intel: Skylake: Add CFL-S support Pierre-Louis Bossart
2018-11-21 14:27   ` Andy Shevchenko
2018-11-21 17:16     ` Pierre-Louis Bossart
2018-11-21 17:38       ` Andy Shevchenko
2018-11-21 22:17         ` Takashi Iwai
2018-11-22  9:56           ` Andy Shevchenko
2018-11-24  3:16             ` [alsa-devel] " Pierre-Louis Bossart
2018-11-20 21:36 ` [RFC PATCH 2/6] ASoC: Intel: Skylake: stop init/probe if DSP is not present Pierre-Louis Bossart
2018-11-21 14:29   ` Andy Shevchenko
2018-11-21 16:48     ` Pierre-Louis Bossart
2018-11-21 17:32       ` Andy Shevchenko
2018-11-20 21:36 ` [RFC PATCH 3/6] ASoC: Intel: Skylake: remove useless tests on DSP presence Pierre-Louis Bossart
2018-11-20 21:36   ` Pierre-Louis Bossart
2018-11-20 21:36 ` [RFC PATCH 4/6] ASoC: Intel: Skylake: Add more platform granularity Pierre-Louis Bossart
2018-11-20 21:36 ` [RFC PATCH 5/6] ALSA: hda: Allow fallback binding with legacy HD-audio for Intel SKL+ Pierre-Louis Bossart
2018-11-20 21:36 ` [RFC PATCH 6/6] ALSA: hda: add fallback capabilities for SKL+ platforms Pierre-Louis Bossart
2018-11-21 14:39   ` Andy Shevchenko [this message]
2018-11-21 22:20     ` Takashi Iwai
2018-11-21 10:32 ` [RFC PATCH 0/6] ASoC:Intel:Skylake: Enable HDaudio legacy fallback Takashi Iwai
2018-11-28 18:09   ` Pierre-Louis Bossart

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=20181121143939.GQ10650@smile.fi.intel.com \
    --to=andriy.shevchenko@linux.intel.com \
    --cc=alsa-devel@alsa-project.org \
    --cc=arnd@arndb.de \
    --cc=broonie@kernel.org \
    --cc=liam.r.girdwood@linux.intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=pierre-louis.bossart@linux.intel.com \
    --cc=tiwai@suse.de \
    --cc=vkoul@kernel.org \
    /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.