]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
ALSA: usb-audio/line6: Add support for POD HD PRO
authorPhil Willoughby <willerz@gmail.com>
Mon, 20 Apr 2026 15:23:49 +0000 (16:23 +0100)
committerTakashi Iwai <tiwai@suse.de>
Tue, 21 Apr 2026 08:07:45 +0000 (10:07 +0200)
The POD HD PRO is the rackmount version of the POD 500, with most of the
same behaviors. As with some of the other rackmount POD devices it will
not send captured audio to the host unless the host is sending playback
audio, so it has LINE6_CAP_IN_NEEDS_OUT in addition to the POD 500
flags.

Tested-By: Phil Willoughby <willerz@gmail.com>
Signed-off-by: Phil Willoughby <willerz@gmail.com>
Link: https://patch.msgid.link/20260420152405.7230-1-willerz@gmail.com
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/usb/line6/podhd.c

index ea1324c22f46af610ea08d19352d91411d4ac1e8..841b644792526be5df6d872c1233dcf8e145fb62 100644 (file)
@@ -28,6 +28,7 @@ enum {
        LINE6_PODHD500X,
        LINE6_PODHDDESKTOP,
        LINE6_PODHDPROX,
+       LINE6_PODHDPRO,
 };
 
 struct usb_line6_podhd {
@@ -442,6 +443,7 @@ static const struct usb_device_id podhd_id_table[] = {
        { LINE6_IF_NUM(0x4159, 0), .driver_info = LINE6_PODHD500X },
        { LINE6_IF_NUM(0x4156, 0), .driver_info = LINE6_PODHDDESKTOP },
        { LINE6_IF_NUM(0x415A, 0), .driver_info = LINE6_PODHDPROX },
+       { LINE6_IF_NUM(0x4157, 0), .driver_info = LINE6_PODHDPRO },
        {}
 };
 
@@ -542,6 +544,18 @@ static const struct line6_properties podhd_properties_table[] = {
                .ep_audio_r = 0x86,
                .ep_audio_w = 0x02,
        },
+       [LINE6_PODHDPRO] = {
+               .id = "PODHDPRO",
+               .name = "POD HD PRO",
+               .capabilities   = LINE6_CAP_PCM | LINE6_CAP_CONTROL
+                               | LINE6_CAP_HWMON | LINE6_CAP_HWMON_CTL | LINE6_CAP_IN_NEEDS_OUT,
+               .altsetting = 1,
+               .ctrl_if = 1,
+               .ep_ctrl_r = 0x81,
+               .ep_ctrl_w = 0x01,
+               .ep_audio_r = 0x86,
+               .ep_audio_w = 0x02,
+       },
 };
 
 /*