<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-toradex.git/sound, branch v4.7</title>
<subtitle>Linux kernel for Apalis and Colibri modules</subtitle>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/'/>
<entry>
<title>ALSA: usb-audio: Fix quirks code is not called</title>
<updated>2016-07-18T10:32:45+00:00</updated>
<author>
<name>Kazuki Oikawa</name>
<email>k@oikw.org</email>
</author>
<published>2016-07-17T16:16:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=76df52969711ae3725a98f26fbbc6a349803dcbf'/>
<id>76df52969711ae3725a98f26fbbc6a349803dcbf</id>
<content type='text'>
snd_usb_{set_interface,ctl_msg}_quirk checks chip-&gt;usb_id to need
calling a quirks code. But existed code path that not calling
dev_set_drvdata in usb_audio_probe.

Fixes: 79289e24194a ("ALSA: usb-audio: Refer to chip-&gt;usb_id for quirks and MIDI creation")
Signed-off-by: Kazuki Oikawa &lt;k@oikw.org&gt;
Cc: &lt;stable@vger.kernel.org&gt; # v4.6+
Reviewed-by: Takashi Sakamoto &lt;o-takashi@sakamocchi.jp&gt;
Tested-by: Takashi Sakamoto &lt;o-takashi@sakamocchi.jp&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
snd_usb_{set_interface,ctl_msg}_quirk checks chip-&gt;usb_id to need
calling a quirks code. But existed code path that not calling
dev_set_drvdata in usb_audio_probe.

Fixes: 79289e24194a ("ALSA: usb-audio: Refer to chip-&gt;usb_id for quirks and MIDI creation")
Signed-off-by: Kazuki Oikawa &lt;k@oikw.org&gt;
Cc: &lt;stable@vger.kernel.org&gt; # v4.6+
Reviewed-by: Takashi Sakamoto &lt;o-takashi@sakamocchi.jp&gt;
Tested-by: Takashi Sakamoto &lt;o-takashi@sakamocchi.jp&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ALSA: hda: add AMD Stoney PCI ID with proper driver caps</title>
<updated>2016-07-12T10:23:55+00:00</updated>
<author>
<name>Awais Belal</name>
<email>awais_belal@mentor.com</email>
</author>
<published>2016-07-12T10:21:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=d716fb03f76411fc7e138692e33b749cada5c094'/>
<id>d716fb03f76411fc7e138692e33b749cada5c094</id>
<content type='text'>
This allows the device to correctly show up as ATI HDMI
rather than a generic one and allows the driver to use
the available caps.

Signed-off-by: Awais Belal &lt;awais_belal@mentor.com&gt;
Cc: &lt;stable@vger.kernel.org&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This allows the device to correctly show up as ATI HDMI
rather than a generic one and allows the driver to use
the available caps.

Signed-off-by: Awais Belal &lt;awais_belal@mentor.com&gt;
Cc: &lt;stable@vger.kernel.org&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ALSA: hda - fix use-after-free after module unload</title>
<updated>2016-07-11T18:07:46+00:00</updated>
<author>
<name>Peter Wu</name>
<email>peter@lekensteyn.nl</email>
</author>
<published>2016-07-11T17:51:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=ab58d8cc870ef3f0771c197700441936898d1f1d'/>
<id>ab58d8cc870ef3f0771c197700441936898d1f1d</id>
<content type='text'>
register_vga_switcheroo() sets the PM ops from the hda structure which
is freed later in azx_free. Make sure that these ops are cleared.

Caught by KASAN, initially noticed due to a general protection fault.

Fixes: 246efa4a072f ("snd/hda: add runtime suspend/resume on optimus support (v4)")
Signed-off-by: Peter Wu &lt;peter@lekensteyn.nl&gt;
Cc: &lt;stable@vger.kernel.org&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
register_vga_switcheroo() sets the PM ops from the hda structure which
is freed later in azx_free. Make sure that these ops are cleared.

Caught by KASAN, initially noticed due to a general protection fault.

Fixes: 246efa4a072f ("snd/hda: add runtime suspend/resume on optimus support (v4)")
Signed-off-by: Peter Wu &lt;peter@lekensteyn.nl&gt;
Cc: &lt;stable@vger.kernel.org&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ALSA: pcm: Free chmap at PCM free callback, too</title>
<updated>2016-07-08T07:15:44+00:00</updated>
<author>
<name>Takashi Iwai</name>
<email>tiwai@suse.de</email>
</author>
<published>2016-07-08T06:23:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=a8ff48cb70835f48de5703052760312019afea55'/>
<id>a8ff48cb70835f48de5703052760312019afea55</id>
<content type='text'>
The chmap ctls assigned to PCM streams are freed in the PCM disconnect
callback.  However, since the disconnect callback isn't called when
the card gets freed before registering, the chmap ctls may still be
left assigned.  They are eventually freed together with other ctls,
but it may cause an Oops at pcm_chmap_ctl_private_free(), as the
function refers to the assigned PCM stream, while the PCM objects have
been already freed beforehand.

The fix is to free the chmap ctls also at PCM free callback, not only
at PCM disconnect.

Reported-by: Laxminath Kasam &lt;b_lkasam@codeaurora.org&gt;
Cc: &lt;stable@vger.kernel.org&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The chmap ctls assigned to PCM streams are freed in the PCM disconnect
callback.  However, since the disconnect callback isn't called when
the card gets freed before registering, the chmap ctls may still be
left assigned.  They are eventually freed together with other ctls,
but it may cause an Oops at pcm_chmap_ctl_private_free(), as the
function refers to the assigned PCM stream, while the PCM objects have
been already freed beforehand.

The fix is to free the chmap ctls also at PCM free callback, not only
at PCM disconnect.

Reported-by: Laxminath Kasam &lt;b_lkasam@codeaurora.org&gt;
Cc: &lt;stable@vger.kernel.org&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ALSA: ctl: Stop notification after disconnection</title>
<updated>2016-07-08T07:15:44+00:00</updated>
<author>
<name>Takashi Iwai</name>
<email>tiwai@suse.de</email>
</author>
<published>2016-07-08T06:05:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=f388cdcdd160687c6650833f286b9c89c50960ff'/>
<id>f388cdcdd160687c6650833f286b9c89c50960ff</id>
<content type='text'>
snd_ctl_remove() has a notification for the removal event.  It's
superfluous when done during the device got disconnected.  Although
the notification itself is mostly harmless, it may potentially be
harmful, and should be suppressed.  Actually some components PCM may
free ctl elements during the disconnect or free callbacks, thus it's
no theoretical issue.

This patch adds the check of card-&gt;shutdown flag for avoiding
unnecessary notifications after (or during) the disconnect.

Cc: &lt;stable@vger.kernel.org&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
snd_ctl_remove() has a notification for the removal event.  It's
superfluous when done during the device got disconnected.  Although
the notification itself is mostly harmless, it may potentially be
harmful, and should be suppressed.  Actually some components PCM may
free ctl elements during the disconnect or free callbacks, thus it's
no theoretical issue.

This patch adds the check of card-&gt;shutdown flag for avoiding
unnecessary notifications after (or during) the disconnect.

Cc: &lt;stable@vger.kernel.org&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ALSA: hda/realtek - add new pin definition in alc225 pin quirk table</title>
<updated>2016-07-08T06:44:19+00:00</updated>
<author>
<name>Hui Wang</name>
<email>hui.wang@canonical.com</email>
</author>
<published>2016-07-08T06:26:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=8a132099f080d7384bb6ab4cc168f76cb4b47d08'/>
<id>8a132099f080d7384bb6ab4cc168f76cb4b47d08</id>
<content type='text'>
We have some Dell laptops which can't detect headset mic, the machines
use the codec ALC225, they have some new pin configuration values,
after adding them in the alc225 pin quirk table, they work well.

Cc: &lt;stable@vger.kernel.org&gt;
Signed-off-by: Hui Wang &lt;hui.wang@canonical.com&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We have some Dell laptops which can't detect headset mic, the machines
use the codec ALC225, they have some new pin configuration values,
after adding them in the alc225 pin quirk table, they work well.

Cc: &lt;stable@vger.kernel.org&gt;
Signed-off-by: Hui Wang &lt;hui.wang@canonical.com&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ALSA: hda/realtek: Add Lenovo L460 to docking unit fixup</title>
<updated>2016-07-05T10:09:52+00:00</updated>
<author>
<name>Torsten Hilbrich</name>
<email>torsten.hilbrich@secunet.com</email>
</author>
<published>2016-07-05T08:40:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=9cd25743765cfe851aed8d655a62d60156aed293'/>
<id>9cd25743765cfe851aed8d655a62d60156aed293</id>
<content type='text'>
This solves the issue that a headphone is not working on the docking
unit.

Signed-off-by: Torsten Hilbrich &lt;torsten.hilbrich@secunet.com&gt;
Cc: &lt;stable@vger.kernel.org&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This solves the issue that a headphone is not working on the docking
unit.

Signed-off-by: Torsten Hilbrich &lt;torsten.hilbrich@secunet.com&gt;
Cc: &lt;stable@vger.kernel.org&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ALSA: timer: Fix negative queue usage by racy accesses</title>
<updated>2016-07-04T12:02:15+00:00</updated>
<author>
<name>Takashi Iwai</name>
<email>tiwai@suse.de</email>
</author>
<published>2016-07-04T12:02:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=3fa6993fef634e05d200d141a85df0b044572364'/>
<id>3fa6993fef634e05d200d141a85df0b044572364</id>
<content type='text'>
The user timer tu-&gt;qused counter may go to a negative value when
multiple concurrent reads are performed since both the check and the
decrement of tu-&gt;qused are done in two individual locked contexts.
This results in bogus read outs, and the endless loop in the
user-space side.

The fix is to move the decrement of the tu-&gt;qused counter into the
same spinlock context as the zero-check of the counter.

Cc: &lt;stable@vger.kernel.org&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The user timer tu-&gt;qused counter may go to a negative value when
multiple concurrent reads are performed since both the check and the
decrement of tu-&gt;qused are done in two individual locked contexts.
This results in bogus read outs, and the endless loop in the
user-space side.

The fix is to move the decrement of the tu-&gt;qused counter into the
same spinlock context as the zero-check of the counter.

Cc: &lt;stable@vger.kernel.org&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge tag 'asoc-fix-v4.7-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into for-linus</title>
<updated>2016-07-02T08:50:45+00:00</updated>
<author>
<name>Takashi Iwai</name>
<email>tiwai@suse.de</email>
</author>
<published>2016-07-02T08:50:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=046e9ceefab985a137fbd15b946497a88e5a6513'/>
<id>046e9ceefab985a137fbd15b946497a88e5a6513</id>
<content type='text'>
ASoC: Fixes for v4.7

A small clutch of hardware specific fixes for various ASoC devices, all
small individually and important if you have that device but not
otherwise.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
ASoC: Fixes for v4.7

A small clutch of hardware specific fixes for various ASoC devices, all
small individually and important if you have that device but not
otherwise.
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge remote-tracking branches 'asoc/fix/rcar', 'asoc/fix/rt5670' and 'asoc/fix/wm8940' into asoc-linus</title>
<updated>2016-07-01T16:05:34+00:00</updated>
<author>
<name>Mark Brown</name>
<email>broonie@kernel.org</email>
</author>
<published>2016-07-01T16:05:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=7c5eec4edf4693aa61f3ee78bf28621dfe33d9f0'/>
<id>7c5eec4edf4693aa61f3ee78bf28621dfe33d9f0</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
