<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/sound, branch linux-4.2.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.</subtitle>
<id>https://universe.0xinfinity.dev/distro/kernel/atom?h=linux-4.2.y</id>
<link rel='self' href='https://universe.0xinfinity.dev/distro/kernel/atom?h=linux-4.2.y'/>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/'/>
<updated>2015-12-15T05:25:44Z</updated>
<entry>
<title>ALSA: hda/hdmi - apply Skylake fix-ups to Broxton display codec</title>
<updated>2015-12-15T05:25:44Z</updated>
<author>
<name>Lu, Han</name>
<email>han.lu@intel.com</email>
</author>
<published>2015-11-11T08:54:27Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=bc506f0282cfdc4a49aaeef091281af31be6f2bf'/>
<id>urn:sha1:bc506f0282cfdc4a49aaeef091281af31be6f2bf</id>
<content type='text'>
commit e2656412f2a7343ecfd13eb74bac0a6e6e9c5aad upstream.

Broxton and Skylake have the same behavior on display audio. So this patch
applys Skylake fix-ups to Broxton.

Signed-off-by: Lu, Han &lt;han.lu@intel.com&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>ALSA: usb-audio: work around CH345 input SysEx corruption</title>
<updated>2015-12-09T19:31:25Z</updated>
<author>
<name>Clemens Ladisch</name>
<email>clemens@ladisch.de</email>
</author>
<published>2015-11-15T21:39:08Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=40603ac05434633e26fc698fa69993e4a26e1a73'/>
<id>urn:sha1:40603ac05434633e26fc698fa69993e4a26e1a73</id>
<content type='text'>
commit a91e627e3f0ed820b11d86cdc04df38f65f33a70 upstream.

One of the many faults of the QinHeng CH345 USB MIDI interface chip is
that it does not handle received SysEx messages correctly -- every second
event packet has a wrong code index number, which is the one from the last
seen message, instead of 4.  For example, the two messages "FE F0 01 02 03
04 05 06 07 08 09 0A 0B 0C 0D 0E F7" result in the following event
packets:

correct:       CH345:
0F FE 00 00    0F FE 00 00
04 F0 01 02    04 F0 01 02
04 03 04 05    0F 03 04 05
04 06 07 08    04 06 07 08
04 09 0A 0B    0F 09 0A 0B
04 0C 0D 0E    04 0C 0D 0E
05 F7 00 00    05 F7 00 00

A class-compliant driver must interpret an event packet with CIN 15 as
having a single data byte, so the other two bytes would be ignored.  The
message received by the host would then be missing two bytes out of six;
in this example, "F0 01 02 03 06 07 08 09 0C 0D 0E F7".

These corrupted SysEx event packages contain only data bytes, while the
CH345 uses event packets with a correct CIN value only for messages with
a status byte, so it is possible to distinguish between these two cases by
checking for the presence of this status byte.

(Other bugs in the CH345's input handling, such as the corruption resulting
from running status, cannot be worked around.)

Signed-off-by: Clemens Ladisch &lt;clemens@ladisch.de&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>ALSA: usb-audio: prevent CH345 multiport output SysEx corruption</title>
<updated>2015-12-09T19:31:25Z</updated>
<author>
<name>Clemens Ladisch</name>
<email>clemens@ladisch.de</email>
</author>
<published>2015-11-15T21:38:29Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=1b25851cf1b6111c35221f00c9e96021bb2c5c77'/>
<id>urn:sha1:1b25851cf1b6111c35221f00c9e96021bb2c5c77</id>
<content type='text'>
commit 1ca8b201309d842642f221db7f02f71c0af5be2d upstream.

The CH345 USB MIDI chip has two output ports.  However, they are
multiplexed through one pin, and the number of ports cannot be reduced
even for hardware that implements only one connector, so for those
devices, data sent to either port ends up on the same hardware output.
This becomes a problem when both ports are used at the same time, as
longer MIDI commands (such as SysEx messages) are likely to be
interrupted by messages from the other port, and thus to get lost.

It would not be possible for the driver to detect how many ports the
device actually has, except that in practice, _all_ devices built with
the CH345 have only one port.  So we can just ignore the device's
descriptors, and hardcode one output port.

Signed-off-by: Clemens Ladisch &lt;clemens@ladisch.de&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>ALSA: usb-audio: add packet size quirk for the Medeli DD305</title>
<updated>2015-12-09T19:31:24Z</updated>
<author>
<name>Clemens Ladisch</name>
<email>clemens@ladisch.de</email>
</author>
<published>2015-11-15T21:37:44Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=d80f8d13f0e961bfa9b3346c1ebe6662f64bd234'/>
<id>urn:sha1:d80f8d13f0e961bfa9b3346c1ebe6662f64bd234</id>
<content type='text'>
commit 98d362becb6621bebdda7ed0eac7ad7ec6c37898 upstream.

Signed-off-by: Clemens Ladisch &lt;clemens@ladisch.de&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>ALSA: usb: Add native DSD support for Aune X1S</title>
<updated>2015-12-09T19:31:23Z</updated>
<author>
<name>Jurgen Kramer</name>
<email>gtmkramer@xs4all.nl</email>
</author>
<published>2015-11-09T11:13:55Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=df493fe1a1d1e3ab2c3248a7fc346e2f9749233e'/>
<id>urn:sha1:df493fe1a1d1e3ab2c3248a7fc346e2f9749233e</id>
<content type='text'>
commit 16771c7c704769c5f3d70c024630b6e5b3eafa67 upstream.

This patch adds native DSD support for the Aune X1S 32BIT/384 DSD DAC

Signed-off-by: Jurgen Kramer &lt;gtmkramer@xs4all.nl&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>ASoC: Add info callback for SX_TLV controls</title>
<updated>2015-11-09T22:37:32Z</updated>
<author>
<name>Charles Keepax</name>
<email>ckeepax@opensource.wolfsonmicro.com</email>
</author>
<published>2015-10-14T12:31:24Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=af029bcfee56f826f32286bf81884d4c23dda0c1'/>
<id>urn:sha1:af029bcfee56f826f32286bf81884d4c23dda0c1</id>
<content type='text'>
commit 34198710f55b5f359f43e67d9a08fe5aadfbca1b upstream.

SX_TLV controls are intended for situations where the register behind
the control has some non-zero value indicating the minimum gain
and then gains increasing from there and eventually overflowing through
zero.

Currently every CODEC implementing these controls specifies the minimum
as the non-zero value for the minimum and the maximum as the number of
gain settings available.

This means when the info callback subtracts the minimum value from the
maximum value to calculate the number of gain levels available it is
actually under reporting the available levels. This patch fixes this
issue by adding a new snd_soc_info_volsw_sx callback that does not
subtract the minimum value.

Fixes: 1d99f2436d0d ("ASoC: core: Rework SOC_DOUBLE_R_SX_TLV add SOC_SINGLE_SX_TLV")
Signed-off-by: Charles Keepax &lt;ckeepax@opensource.wolfsonmicro.com&gt;
Acked-by: Brian Austin &lt;brian.austin@cirrus.com&gt;
Tested-by: Brian Austin &lt;brian.austin@cirrus.com&gt;
Signed-off-by: Mark Brown &lt;broonie@kernel.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>ALSA: hda - Fix deadlock at error in building PCM</title>
<updated>2015-11-09T22:37:32Z</updated>
<author>
<name>Takashi Iwai</name>
<email>tiwai@suse.de</email>
</author>
<published>2015-10-20T14:23:55Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=05dcab858f235822aee6e1268904183de75b1a5a'/>
<id>urn:sha1:05dcab858f235822aee6e1268904183de75b1a5a</id>
<content type='text'>
commit d289619a219dd01e255d7b5e30f9171b25efea48 upstream.

The HDA codec driver issues snd_hda_codec_reset() at the error path of
PCM build.  This was needed in the earlier code base, but the recent
rewrite to use the standard bus binding made this a deadlock:
 modprobe        D 0000000000000005     0   720    716 0x00000080
 Call Trace:
  [&lt;ffffffff816a5dbe&gt;] schedule+0x3e/0x90
  [&lt;ffffffff816a61a5&gt;] schedule_preempt_disabled+0x15/0x20
  [&lt;ffffffff816a7ae5&gt;] __mutex_lock_slowpath+0xb5/0x120
  [&lt;ffffffff816a7b6b&gt;] mutex_lock+0x1b/0x30
  [&lt;ffffffff8148656b&gt;] device_release_driver+0x1b/0x30
  [&lt;ffffffff81485c15&gt;] bus_remove_device+0x105/0x180
  [&lt;ffffffff814822b9&gt;] device_del+0x139/0x260
  [&lt;ffffffffa05e0ec5&gt;] snd_hdac_device_unregister+0x25/0x30 [snd_hda_core]
  [&lt;ffffffffa074fa6a&gt;] snd_hda_codec_reset+0x2a/0x70 [snd_hda_codec]
  [&lt;ffffffffa075007b&gt;] snd_hda_codec_build_pcms+0x18b/0x1b0 [snd_hda_codec]
  [&lt;ffffffffa074a44e&gt;] hda_codec_driver_probe+0xbe/0x140 [snd_hda_codec]
  [&lt;ffffffff81486ac4&gt;] driver_probe_device+0x1f4/0x460
  [&lt;ffffffff81486dc0&gt;] __driver_attach+0x90/0xa0
  [&lt;ffffffff81484844&gt;] bus_for_each_dev+0x64/0xa0
  [&lt;ffffffff814862de&gt;] driver_attach+0x1e/0x20
  [&lt;ffffffff81485e7b&gt;] bus_add_driver+0x1eb/0x280
  [&lt;ffffffff81487680&gt;] driver_register+0x60/0xe0
  [&lt;ffffffffa074a0da&gt;] __hda_codec_driver_register+0x5a/0x60 [snd_hda_codec]
  [&lt;ffffffffa070a01e&gt;] realtek_driver_init+0x1e/0x1000 [snd_hda_codec_realtek]
  [&lt;ffffffff810002f3&gt;] do_one_initcall+0xb3/0x200
  [&lt;ffffffff816a1fc5&gt;] do_init_module+0x60/0x1f8
  [&lt;ffffffff810ee5c3&gt;] load_module+0x1653/0x1bd0
  [&lt;ffffffff810eed48&gt;] SYSC_finit_module+0x98/0xc0
  [&lt;ffffffff810eed8e&gt;] SyS_finit_module+0xe/0x10
  [&lt;ffffffff816aa032&gt;] entry_SYSCALL_64_fastpath+0x16/0x75

The simple fix is just to remove this call, since we don't need to
think about unbinding at there any longer.

Bugzilla: https://bugzilla.suse.com/show_bug.cgi?id=948758
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>ALSA: hda - Fix inverted internal mic on Lenovo G50-80</title>
<updated>2015-11-09T22:37:32Z</updated>
<author>
<name>David Henningsson</name>
<email>david.henningsson@canonical.com</email>
</author>
<published>2015-10-13T08:10:18Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=d3fc4e09a8275a493c09d8de10b05d09503bd450'/>
<id>urn:sha1:d3fc4e09a8275a493c09d8de10b05d09503bd450</id>
<content type='text'>
commit e8d65a8d985271a102f07c7456da5b86c19ffe16 upstream.

Add the appropriate quirk to indicate the Lenovo G50-80 has a stereo
mic input where one channel has reverse polarity.

Alsa-info available at:
https://launchpadlibrarian.net/220846272/AlsaInfo.txt

BugLink: https://bugs.launchpad.net/bugs/1504778
Signed-off-by: David Henningsson &lt;david.henningsson@canonical.com&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>ALSA: hdac: Explicitly add io.h</title>
<updated>2015-11-09T22:37:32Z</updated>
<author>
<name>Vinod Koul</name>
<email>vinod.koul@intel.com</email>
</author>
<published>2015-10-13T09:27:49Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=7ee6875b47aa211b97d6aa3089c46ac5e1fec2a0'/>
<id>urn:sha1:7ee6875b47aa211b97d6aa3089c46ac5e1fec2a0</id>
<content type='text'>
commit 42f2bb1c494543084b764e1ca253c73db910daf2 upstream.

Compiling the hdac extended core on arm fails with below error:

  sound/hda/ext/hdac_ext_bus.c: In function 'hdac_ext_writel':
&gt;&gt; sound/hda/ext/hdac_ext_bus.c:29:2: error: implicit declaration of
&gt;&gt; function
+'writel' [-Werror=implicit-function-declaration]
     writel(value, addr);
     ^
   sound/hda/ext/hdac_ext_bus.c: In function 'hdac_ext_readl':
&gt;&gt; sound/hda/ext/hdac_ext_bus.c:34:2: error: implicit declaration of
&gt;&gt; function
+'readl' [-Werror=implicit-function-declaration]
     return readl(addr);

This is fixed by explicitly including io.h

Fixes: 99463b3a3994 - ('ALSA: hda: provide default bus io ops extended hdac')
Reported-by: kbuild test robot &lt;lkp@intel.com&gt;
Suggested-by: Mark Brown &lt;broonie@kernel.org&gt;
Signed-off-by: Vinod Koul &lt;vinod.koul@intel.com&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>ASoC: tas2552: fix dBscale-min declaration</title>
<updated>2015-10-22T21:49:21Z</updated>
<author>
<name>Andreas Dannenberg</name>
<email>dannenberg@ti.com</email>
</author>
<published>2015-10-05T20:00:14Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=0bfc2f5be12d31d56053c0dd933ee0686690237a'/>
<id>urn:sha1:0bfc2f5be12d31d56053c0dd933ee0686690237a</id>
<content type='text'>
commit e2600460bc3aa14ca1df86318a327cbbabedf9a8 upstream.

The minimum volume level for the TAS2552 (control register value 0x00)
is -7dB however the driver declares it as -0.07dB.

Running amixer before the patch reports:
dBscale-min=-0.07dB,step=1.00dB,mute=0

Running amixer with the patch applied reports:
dBscale-min=-7.00dB,step=1.00dB,mute=0

Signed-off-by: Andreas Dannenberg &lt;dannenberg@ti.com&gt;
Signed-off-by: Mark Brown &lt;broonie@kernel.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
</feed>
