<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/sound/usb/stream.c, branch linux-6.9.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-6.9.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-6.9.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2024-03-13T13:29:22Z</updated>
<entry>
<title>ALSA: usb-audio: Stop parsing channels bits when all channels are found.</title>
<updated>2024-03-13T13:29:22Z</updated>
<author>
<name>Johan Carlsson</name>
</author>
<published>2024-03-13T08:15:09Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=a39d51ff1f52cd0b6fe7d379ac93bd8b4237d1b7'/>
<id>urn:sha1:a39d51ff1f52cd0b6fe7d379ac93bd8b4237d1b7</id>
<content type='text'>
If a usb audio device sets more bits than the amount of channels
it could write outside of the map array.

Signed-off-by: Johan Carlsson &lt;johan.carlsson@teenage.engineering&gt;
Fixes: 04324ccc75f9 ("ALSA: usb-audio: add channel map support")
Message-ID: &lt;20240313081509.9801-1-johan.carlsson@teenage.engineering&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
</entry>
<entry>
<title>ALSA: usb-audio: Fix init call orders for UAC1</title>
<updated>2023-08-21T14:20:25Z</updated>
<author>
<name>Takashi Iwai</name>
</author>
<published>2023-08-21T11:18:57Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=5fadc941d07530d681f3b7ec91e56d8445bc3825'/>
<id>urn:sha1:5fadc941d07530d681f3b7ec91e56d8445bc3825</id>
<content type='text'>
There have been reports of USB-audio driver spewing errors at the
probe time on a few devices like Jabra and Logitech.  The suggested
fix there couldn't be applied as is, unfortunately, because it'll
likely break other devices.

But, the patch suggested an interesting point: looking at the current
init code in stream.c, one may notice that it does initialize
differently from the device setup in endpoint.c.  Namely, for UAC1, we
should call snd_usb_init_pitch() and snd_usb_init_sample_rate() after
setting the interface, while the init sequence at parsing calls them
before setting the interface blindly.

This patch changes the init sequence at parsing for UAC1 (and other
devices that need a similar behavior) to be aligned with the rest of
the code, setting the interface at first.  And, this fixes the
long-standing problems on a few UAC1 devices like Jabra / Logitech,
as reported, too.

Reported-and-tested-by: Joakim Tjernlund &lt;joakim.tjernlund@infinera.com&gt;
Closes: https://lore.kernel.org/r/202bbbc0f51522e8545783c4c5577d12a8e2d56d.camel@infinera.com
Cc: &lt;stable@vger.kernel.org&gt;
Link: https://lore.kernel.org/r/20230821111857.28926-1-tiwai@suse.de
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
</entry>
<entry>
<title>Revert "ALSA: usb-audio: Drop superfluous interface setup at parsing"</title>
<updated>2023-01-04T15:10:19Z</updated>
<author>
<name>Takashi Iwai</name>
</author>
<published>2023-01-04T15:09:44Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=16f1f838442dc6430d32d51ddda347b8421ec34b'/>
<id>urn:sha1:16f1f838442dc6430d32d51ddda347b8421ec34b</id>
<content type='text'>
This reverts commit ac5e2fb425e1121ceef2b9d1b3ffccc195d55707.

The commit caused a regression on Behringer UMC404HD (and likely
others).  As the change was meant only as a minor optimization, it's
better to revert it to address the regression.

Reported-and-tested-by: Michael Ralston &lt;michael@ralston.id.au&gt;
Cc: &lt;stable@vger.kernel.org&gt;
Link: https://lore.kernel.org/r/CAC2975JXkS1A5Tj9b02G_sy25ZWN-ys+tc9wmkoS=qPgKCogSg@mail.gmail.com
Link: https://lore.kernel.org/r/20230104150944.24918-1-tiwai@suse.de
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
</entry>
<entry>
<title>Merge branch 'for-linus' into for-next</title>
<updated>2022-09-06T09:04:15Z</updated>
<author>
<name>Takashi Iwai</name>
</author>
<published>2022-09-06T09:04:03Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=16c5cde20e304cd900371b140cd53ecafe8d3de5'/>
<id>urn:sha1:16c5cde20e304cd900371b140cd53ecafe8d3de5</id>
<content type='text'>
Once again back-merge the 6.0-rc devel branch for further USB-audio
and HD-audio developments.

Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
</entry>
<entry>
<title>ALSA: usb-audio: Fix an out-of-bounds bug in __snd_usb_parse_audio_interface()</title>
<updated>2022-09-06T05:14:32Z</updated>
<author>
<name>Dongxiang Ke</name>
</author>
<published>2022-09-06T02:49:28Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e53f47f6c1a56d2af728909f1cb894da6b43d9bf'/>
<id>urn:sha1:e53f47f6c1a56d2af728909f1cb894da6b43d9bf</id>
<content type='text'>
There may be a bad USB audio device with a USB ID of (0x04fa, 0x4201) and
the number of it's interfaces less than 4, an out-of-bounds read bug occurs
when parsing the interface descriptor for this device.

Fix this by checking the number of interfaces.

Signed-off-by: Dongxiang Ke &lt;kdx.glider@gmail.com&gt;
Link: https://lore.kernel.org/r/20220906024928.10951-1-kdx.glider@gmail.com
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
</entry>
<entry>
<title>Merge branch 'for-linus' into for-next</title>
<updated>2022-09-01T13:09:12Z</updated>
<author>
<name>Takashi Iwai</name>
</author>
<published>2022-09-01T13:09:12Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=041af76890ba66f6222dd910807fe0b170109e7d'/>
<id>urn:sha1:041af76890ba66f6222dd910807fe0b170109e7d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>ALSA: usb-audio: Drop superfluous interface setup at parsing</title>
<updated>2022-09-01T08:23:44Z</updated>
<author>
<name>Takashi Iwai</name>
</author>
<published>2022-08-31T13:00:21Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=ac5e2fb425e1121ceef2b9d1b3ffccc195d55707'/>
<id>urn:sha1:ac5e2fb425e1121ceef2b9d1b3ffccc195d55707</id>
<content type='text'>
We reset each interface that is being parsed for each stream, but this
is superfluous and even can lead to spurious errors.  Since the
interface is set up properly at opening the endpoint for each actual
stream operation, let's drop the superfluous one.

Link: https://lore.kernel.org/r/20220831130021.4762-1-tiwai@suse.de
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
</entry>
<entry>
<title>ALSA: usb-audio: Inform the delayed registration more properly</title>
<updated>2022-09-01T08:23:03Z</updated>
<author>
<name>Takashi Iwai</name>
</author>
<published>2022-08-31T12:59:00Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=7e1afce5866e02b45bf88c27dd7de1b9dfade1cc'/>
<id>urn:sha1:7e1afce5866e02b45bf88c27dd7de1b9dfade1cc</id>
<content type='text'>
The info message that was added in the commit a4aad5636c72 ("ALSA:
usb-audio: Inform devices that need delayed registration") is actually
useful to know the need for the delayed registration.  However, it
turned out that this doesn't catch the all cases; namely, this warned
only when a PCM stream is attached onto the existing PCM instance, but
it doesn't count for a newly created PCM instance.  This made
confusion as if there were no further delayed registration.

This patch moves the check to the code path for either adding a stream
or creating a PCM instance.  Also, make it simpler by checking the
card-&gt;registered flag instead of querying each snd_device state.

Fixes: a4aad5636c72 ("ALSA: usb-audio: Inform devices that need delayed registration")
Link: https://bugzilla.kernel.org/show_bug.cgi?id=216082
Link: https://lore.kernel.org/r/20220831125901.4660-1-tiwai@suse.de
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
</entry>
<entry>
<title>ALSA: usb-audio: Move tx_length quirk handling to quirk_flags</title>
<updated>2021-08-02T07:05:57Z</updated>
<author>
<name>Takashi Iwai</name>
</author>
<published>2021-07-29T07:38:50Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c1b034a4214e4ce81132be9db44e9fe3e2369351'/>
<id>urn:sha1:c1b034a4214e4ce81132be9db44e9fe3e2369351</id>
<content type='text'>
There is another quirk for the transfer, and that's currently specific
to Zoom R16/24, handled in create_standard_audio_quirk().  Let's move
this also to the new quirk_flags.

Link: https://lore.kernel.org/r/20210729073855.19043-5-tiwai@suse.de
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
</entry>
<entry>
<title>ALSA: usb-audio: Move txfr_quirk handling to quirk_flags</title>
<updated>2021-08-02T07:05:56Z</updated>
<author>
<name>Takashi Iwai</name>
</author>
<published>2021-07-29T07:38:49Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=af158a7f8d9a858971bbb3c241545928fb327c6a'/>
<id>urn:sha1:af158a7f8d9a858971bbb3c241545928fb327c6a</id>
<content type='text'>
The txfr_quirk field was meant for aligning the transfer, and it's set
for certain devices in quirks-table.h.  Now we can move that stuff
also to the new quirk_flags gracefully, and reduce the quirks-table.h
entries (that are exposed to module device table).

As the quirks-table.h entries are also with the name string override,
provide the corresponding entries to the usb_audio_names[] table,
too.

Link: https://lore.kernel.org/r/20210729073855.19043-4-tiwai@suse.de
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
</entry>
</feed>
