<feed xmlns='http://www.w3.org/2005/Atom'>
<title>lwn.git/sound/soc/intel/skylake/skl.c, branch docs-5.6</title>
<subtitle>Linux kernel documentation tree maintained by Jonathan Corbet</subtitle>
<id>http://mirrors.hust.edu.cn/git/lwn.git/atom?h=docs-5.6</id>
<link rel='self' href='http://mirrors.hust.edu.cn/git/lwn.git/atom?h=docs-5.6'/>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/'/>
<updated>2019-10-23T04:31:37+00:00</updated>
<entry>
<title>ALSA: hda: add Intel DSP configuration / probe code</title>
<updated>2019-10-23T04:31:37+00:00</updated>
<author>
<name>Jaroslav Kysela</name>
<email>perex@perex.cz</email>
</author>
<published>2019-10-22T17:43:12+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=82d9d54a6c0ee8b12211fa4e59fd940a2da4e063'/>
<id>urn:sha1:82d9d54a6c0ee8b12211fa4e59fd940a2da4e063</id>
<content type='text'>
For distributions, we need one place where we can decide
which driver will be activated for the auto-configation of the
Intel's HDA hardware with DSP. Actually, we cover three drivers:

* Legacy HDA
* Intel SST
* Intel Sound Open Firmware (SOF)

All those drivers registers similar PCI IDs, so the first
driver probed from the PCI stack can win. But... it is not
guaranteed that the correct driver wins.

This commit changes Intel's NHLT ACPI module to a common
DSP probe module for the Intel's hardware. All above sound
drivers calls this code. The user can force another behaviour
using the module parameter 'dsp_driver' located in
the 'snd-intel-dspcfg' module.

This change allows to add specific dmi checks for the specific
systems. The examples are taken from the pull request:

  https://github.com/thesofproject/linux/pull/927

Tested on Lenovo Carbon X1 7th gen.

Signed-off-by: Jaroslav Kysela &lt;perex@perex.cz&gt;
Tested-by: Pierre-Louis Bossart &lt;pierre-louis.bossart@linux.intel.com&gt;
Link: https://lore.kernel.org/r/20191022174313.29087-1-perex@perex.cz
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
</entry>
<entry>
<title>Merge branch 'topic/hda-bus-ops-cleanup' of https://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound into asoc-5.4</title>
<updated>2019-08-08T22:20:45+00:00</updated>
<author>
<name>Mark Brown</name>
<email>broonie@kernel.org</email>
</author>
<published>2019-08-08T22:20:45+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=c2f16a94a80497e4b28c27f9ca2cd6cd60706fb6'/>
<id>urn:sha1:c2f16a94a80497e4b28c27f9ca2cd6cd60706fb6</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Merge branch 'topic/hda-dmic' of https://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound into asoc-5.4</title>
<updated>2019-08-08T22:10:35+00:00</updated>
<author>
<name>Mark Brown</name>
<email>broonie@kernel.org</email>
</author>
<published>2019-08-08T22:10:35+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=e1b141552bdf3250e43bd4c60563142b27ce855f'/>
<id>urn:sha1:e1b141552bdf3250e43bd4c60563142b27ce855f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>ALSA: hda: Direct MMIO accesses</title>
<updated>2019-08-08T14:36:18+00:00</updated>
<author>
<name>Takashi Iwai</name>
<email>tiwai@suse.de</email>
</author>
<published>2019-08-07T18:32:08+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=19abfefd4c7604993d1c31e098a3f48bdafe334d'/>
<id>urn:sha1:19abfefd4c7604993d1c31e098a3f48bdafe334d</id>
<content type='text'>
HD-audio drivers access to the mmio registers indirectly via the
corresponding bus-&gt;io_ops callbacks.  This is because some platform
(notably Tegra SoC) requires the word-aligned access.  But it's rather
a rare case, and other platforms suffer from the penalties by indirect
calls unnecessarily.

This patch is an attempt to optimize and cleanup for this situation.
Now the special aligned access is used only when a new kconfig
CONFIG_SND_HDA_ALIGNED_MMIO is set.  And the HD-audio core itself
provides the aligned MMIO access helpers instead of the driver side.
If Kconfig isn't set (as default), the standard helpers like readl()
or writel() are used directly.

A couple of places in ASoC Intel drivers have the access via io_ops
reg_writel(), and they are replaced with the direct writel() calls.

And now with this patch, the whole bus-&gt;io_ops becomes empty, so it's
dropped completely.  The bus initialization functions are changed
accordingly as well to drop the whole bus-&gt;io_ops.

Reviewed-by: Pierre-Louis Bossart &lt;pierre-louis.bossart@linux.intel.com&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
</entry>
<entry>
<title>ASoC: Intel: Skylake: use common NHLT module</title>
<updated>2019-07-31T13:46:01+00:00</updated>
<author>
<name>Pierre-Louis Bossart</name>
<email>pierre-louis.bossart@linux.intel.com</email>
</author>
<published>2019-07-29T15:51:50+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=1169cbf6b98e11397715d457e42070e066325fc0'/>
<id>urn:sha1:1169cbf6b98e11397715d457e42070e066325fc0</id>
<content type='text'>
No functionality change, only use common functions now.

Signed-off-by: Pierre-Louis Bossart &lt;pierre-louis.bossart@linux.intel.com&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
</entry>
<entry>
<title>ASoC: Intel: Skylake: Merge skl_sst and skl into skl_dev struct</title>
<updated>2019-07-24T18:41:33+00:00</updated>
<author>
<name>Cezary Rojewski</name>
<email>cezary.rojewski@intel.com</email>
</author>
<published>2019-07-23T14:58:48+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=bcc2a2dc3ba8c3a7aed856f840afa6a47e3cb8e0'/>
<id>urn:sha1:bcc2a2dc3ba8c3a7aed856f840afa6a47e3cb8e0</id>
<content type='text'>
Skylake driver is divided into two modules:
- snd_soc_skl
- snd_soc_skl_ipc

and nothing would be wrong if not for the fact that both cannot exist
without one another. IPC module is not some kind of extension, as it is
the case for snd_hda_ext_core which is separated from snd_hda_core -
legacy hda interface. It's as much core Skylake module as snd_soc_skl
is.

Statement backed up by existence of circular dependency between this
two. To eliminate said problem, struct skl_sst has been created. From
that very momment, Skylake has been plagued by header errors (incomplete
structs, unknown references etc.) whenever something new is to be added
or code is cleaned up.

As this design is being corrected, struct skl_sst is no longer needed,
so combine it with struct skl. To avoid ambiguity when searching for skl
stuff (struct skl *skl) it has also been renamed to skl_dev.

No functional changes.

Signed-off-by: Piotr Maziarz &lt;piotrx.maziarz@intel.com&gt;
Signed-off-by: Cezary Rojewski &lt;cezary.rojewski@intel.com&gt;
Link: https://lore.kernel.org/r/20190723145854.8527-2-cezary.rojewski@intel.com
Signed-off-by: Mark Brown &lt;broonie@kernel.org&gt;
</content>
</entry>
<entry>
<title>Merge branch 'asoc-5.3' into asoc-next</title>
<updated>2019-07-06T11:25:26+00:00</updated>
<author>
<name>Mark Brown</name>
<email>broonie@kernel.org</email>
</author>
<published>2019-07-06T11:25:26+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=043b35f281f5f141e7a928d27492133ef33b8119'/>
<id>urn:sha1:043b35f281f5f141e7a928d27492133ef33b8119</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Merge branch 'asoc-5.2' into asoc-linus</title>
<updated>2019-07-06T11:25:24+00:00</updated>
<author>
<name>Mark Brown</name>
<email>broonie@kernel.org</email>
</author>
<published>2019-07-06T11:25:24+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=0dceaf7c798de953c74073cc77be40b7be49abbc'/>
<id>urn:sha1:0dceaf7c798de953c74073cc77be40b7be49abbc</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Merge tag 'v5.2-rc6' into asoc-5.3</title>
<updated>2019-06-26T11:39:34+00:00</updated>
<author>
<name>Mark Brown</name>
<email>broonie@kernel.org</email>
</author>
<published>2019-06-26T11:39:34+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=53c8b29abe42e5601cfa0ea5962532f0cfdec8a0'/>
<id>urn:sha1:53c8b29abe42e5601cfa0ea5962532f0cfdec8a0</id>
<content type='text'>
Linux 5.2-rc6
</content>
</entry>
<entry>
<title>ASoC: Intel: Skylake: Properly cleanup on component removal</title>
<updated>2019-06-25T14:33:16+00:00</updated>
<author>
<name>Amadeusz Sławiński</name>
<email>amadeuszx.slawinski@linux.intel.com</email>
</author>
<published>2019-06-17T11:36:40+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=e79986ce50d65f490c6eab3aaea1ff2ab5df5d04'/>
<id>urn:sha1:e79986ce50d65f490c6eab3aaea1ff2ab5df5d04</id>
<content type='text'>
When we remove component we need to reverse things which were done on
init, this consists of topology cleanup, lists cleanup and releasing
firmware.

Currently cleanup handlers are put in wrong places or otherwise missing.
So add proper component cleanup function and perform cleanups in it.

Signed-off-by: Amadeusz Sławiński &lt;amadeuszx.slawinski@linux.intel.com&gt;
Reviewed-by: Pierre-Louis Bossart &lt;pierre-louis.bossart@linux.intel.com&gt;
Signed-off-by: Mark Brown &lt;broonie@kernel.org&gt;
</content>
</entry>
</feed>
