linux-stable/sound
Adrian Ratiu b50a3e9844 sound: usb: format: don't warn that raw DSD is unsupported
UAC 2 & 3 DAC's set bit 31 of the format to signal support for a
RAW_DATA type, typically used for DSD playback.

This is correctly tested by (format & UAC*_FORMAT_TYPE_I_RAW_DATA),
fp->dsd_raw = true; and call snd_usb_interface_dsd_format_quirks(),
however a confusing and unnecessary message gets printed because
the bit is not properly tested in the last "unsupported" if test:
if (format & ~0x3F) { ... }

For example the output:

usb 7-1: new high-speed USB device number 5 using xhci_hcd
usb 7-1: New USB device found, idVendor=262a, idProduct=9302, bcdDevice=0.01
usb 7-1: New USB device strings: Mfr=1, Product=2, SerialNumber=6
usb 7-1: Product: TC44C
usb 7-1: Manufacturer: TC44C
usb 7-1: SerialNumber: 5000000001
hid-generic 0003:262A:9302.001E: No inputs registered, leaving
hid-generic 0003:262A:9302.001E: hidraw6: USB HID v1.00 Device [DDHIFI TC44C] on usb-0000:08:00.3-1/input0
usb 7-1: 2:4 : unsupported format bits 0x100000000

This last "unsupported format" is actually wrong: we know the
format is a RAW_DATA which we assume is DSD, so there is no need
to print the confusing message.

This we unset bit 31 of the format after recognizing it, to avoid
the message.

Suggested-by: Takashi Iwai <tiwai@suse.com>
Signed-off-by: Adrian Ratiu <adrian.ratiu@collabora.com>
Link: https://patch.msgid.link/20241209090529.16134-2-adrian.ratiu@collabora.com
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2024-12-09 10:57:20 +01:00
..
ac97 ALSA: ac97: bus: Fix the mistake in the comment 2024-11-20 12:42:01 +01:00
aoa ALSA: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-09-20 17:44:52 +02:00
arm sound: Switch back to struct platform_driver::remove() 2024-10-30 14:47:59 +01:00
atmel sound: Switch back to struct platform_driver::remove() 2024-10-30 14:47:59 +01:00
core ASoC: Fixes for v6.13 2024-12-05 18:09:29 +01:00
drivers sound: Switch back to struct platform_driver::remove() 2024-10-30 14:47:59 +01:00
firewire Merge branch 'for-linus' into for-next 2024-11-05 13:03:12 +01:00
hda ASoC: Fixes for v6.12 2024-10-30 14:46:35 +01:00
i2c move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
isa ALSA: gus: Fix some error handling paths related to get_bpos() usage 2024-10-04 09:02:30 +02:00
mips sound: Switch back to struct platform_driver::remove() 2024-10-30 14:47:59 +01:00
oss sound: Switch back to struct platform_driver::remove() 2024-10-30 14:47:59 +01:00
parisc ALSA: misc: Use *-y instead of *-objs in Makefile 2024-05-08 18:18:13 +02:00
pci ALSA: hda/realtek: Add new alc2xx-fixup-headset-mic model 2024-12-09 09:25:27 +01:00
pcmcia ALSA: vxpocket: Fix a typo at conversion to dev_*() 2024-08-08 20:23:41 +02:00
ppc sound: Switch back to struct platform_driver::remove() 2024-10-30 14:47:59 +01:00
sh ALSA: sh: Use standard helper for buffer accesses 2024-11-29 14:59:58 +01:00
soc ASoC: mediatek: mt8188-mt6359: Remove hardcoded dmic codec 2024-12-05 13:39:58 +00:00
sparc sound: Switch back to struct platform_driver::remove() 2024-10-30 14:47:59 +01:00
spi ALSA: spi: Drop NULL check for snd_ctl_remove() 2024-06-18 12:54:34 +02:00
synth ALSA: emux: Use standard print API 2024-08-08 07:49:46 +02:00
usb sound: usb: format: don't warn that raw DSD is unsupported 2024-12-09 10:57:20 +01:00
virtio virtio: rename virtio_find_vqs_info() to virtio_find_vqs() 2024-07-17 05:20:58 -04:00
x86 Merge drm/drm-next into drm-intel-next 2024-06-19 11:38:31 +03:00
xen ALSA: xen-front: remove unused struct 'alsa_sndif_hw_param' 2024-06-13 14:14:46 +02:00
ac97_bus.c ALSA: ac97: legacy: Add missing module description 2024-05-09 10:13:07 +02:00
Kconfig sound: Make CONFIG_SND depend on INDIRECT_IOMEM instead of UML 2024-10-10 16:11:18 +02:00
last.c
Makefile ALSA: core: Use *-y instead of *-objs in Makefile 2024-05-08 18:17:32 +02:00
sound_core.c sound: make all 'class' structures const 2023-06-21 07:29:10 +02:00