Commit ce3cba78 authored by Geoffrey D. Bennett's avatar Geoffrey D. Bennett Committed by Takashi Iwai

ALSA: usb-audio: Fix Scarlett 6i6 Gen 2 port data

The s6i6_gen2_info.ports[] array had the Mixer and PCM port type
entries in the wrong place. Use designators to explicitly specify the
array elements being set.

Fixes: 9e4d5c1b ("ALSA: usb-audio: Scarlett Gen 2 mixer interface")
Signed-off-by: default avatarGeoffrey D. Bennett <g@b4.vu>
Tested-by: default avatarAlex Fellows <alex.fellows@gmail.com>
Tested-by: default avatarMarkus Schroetter <project.m.schroetter@gmail.com>
Cc: <stable@vger.kernel.org>
Link: https://lore.kernel.org/r/20191110134356.GA31589@b4.vuSigned-off-by: default avatarTakashi Iwai <tiwai@suse.de>
parent 695d1ec3
...@@ -261,34 +261,34 @@ static const struct scarlett2_device_info s6i6_gen2_info = { ...@@ -261,34 +261,34 @@ static const struct scarlett2_device_info s6i6_gen2_info = {
}, },
.ports = { .ports = {
{ [SCARLETT2_PORT_TYPE_NONE] = {
.id = 0x000, .id = 0x000,
.num = { 1, 0, 8, 8, 8 }, .num = { 1, 0, 8, 8, 8 },
.src_descr = "Off", .src_descr = "Off",
.src_num_offset = 0, .src_num_offset = 0,
}, },
{ [SCARLETT2_PORT_TYPE_ANALOGUE] = {
.id = 0x080, .id = 0x080,
.num = { 4, 4, 4, 4, 4 }, .num = { 4, 4, 4, 4, 4 },
.src_descr = "Analogue %d", .src_descr = "Analogue %d",
.src_num_offset = 1, .src_num_offset = 1,
.dst_descr = "Analogue Output %02d Playback" .dst_descr = "Analogue Output %02d Playback"
}, },
{ [SCARLETT2_PORT_TYPE_SPDIF] = {
.id = 0x180, .id = 0x180,
.num = { 2, 2, 2, 2, 2 }, .num = { 2, 2, 2, 2, 2 },
.src_descr = "S/PDIF %d", .src_descr = "S/PDIF %d",
.src_num_offset = 1, .src_num_offset = 1,
.dst_descr = "S/PDIF Output %d Playback" .dst_descr = "S/PDIF Output %d Playback"
}, },
{ [SCARLETT2_PORT_TYPE_MIX] = {
.id = 0x300, .id = 0x300,
.num = { 10, 18, 18, 18, 18 }, .num = { 10, 18, 18, 18, 18 },
.src_descr = "Mix %c", .src_descr = "Mix %c",
.src_num_offset = 65, .src_num_offset = 65,
.dst_descr = "Mixer Input %02d Capture" .dst_descr = "Mixer Input %02d Capture"
}, },
{ [SCARLETT2_PORT_TYPE_PCM] = {
.id = 0x600, .id = 0x600,
.num = { 6, 6, 6, 6, 6 }, .num = { 6, 6, 6, 6, 6 },
.src_descr = "PCM %d", .src_descr = "PCM %d",
...@@ -317,44 +317,44 @@ static const struct scarlett2_device_info s18i8_gen2_info = { ...@@ -317,44 +317,44 @@ static const struct scarlett2_device_info s18i8_gen2_info = {
}, },
.ports = { .ports = {
{ [SCARLETT2_PORT_TYPE_NONE] = {
.id = 0x000, .id = 0x000,
.num = { 1, 0, 8, 8, 4 }, .num = { 1, 0, 8, 8, 4 },
.src_descr = "Off", .src_descr = "Off",
.src_num_offset = 0, .src_num_offset = 0,
}, },
{ [SCARLETT2_PORT_TYPE_ANALOGUE] = {
.id = 0x080, .id = 0x080,
.num = { 8, 6, 6, 6, 6 }, .num = { 8, 6, 6, 6, 6 },
.src_descr = "Analogue %d", .src_descr = "Analogue %d",
.src_num_offset = 1, .src_num_offset = 1,
.dst_descr = "Analogue Output %02d Playback" .dst_descr = "Analogue Output %02d Playback"
}, },
{ [SCARLETT2_PORT_TYPE_SPDIF] = {
.id = 0x180,
/* S/PDIF outputs aren't available at 192KHz /* S/PDIF outputs aren't available at 192KHz
* but are included in the USB mux I/O * but are included in the USB mux I/O
* assignment message anyway * assignment message anyway
*/ */
.id = 0x180,
.num = { 2, 2, 2, 2, 2 }, .num = { 2, 2, 2, 2, 2 },
.src_descr = "S/PDIF %d", .src_descr = "S/PDIF %d",
.src_num_offset = 1, .src_num_offset = 1,
.dst_descr = "S/PDIF Output %d Playback" .dst_descr = "S/PDIF Output %d Playback"
}, },
{ [SCARLETT2_PORT_TYPE_ADAT] = {
.id = 0x200, .id = 0x200,
.num = { 8, 0, 0, 0, 0 }, .num = { 8, 0, 0, 0, 0 },
.src_descr = "ADAT %d", .src_descr = "ADAT %d",
.src_num_offset = 1, .src_num_offset = 1,
}, },
{ [SCARLETT2_PORT_TYPE_MIX] = {
.id = 0x300, .id = 0x300,
.num = { 10, 18, 18, 18, 18 }, .num = { 10, 18, 18, 18, 18 },
.src_descr = "Mix %c", .src_descr = "Mix %c",
.src_num_offset = 65, .src_num_offset = 65,
.dst_descr = "Mixer Input %02d Capture" .dst_descr = "Mixer Input %02d Capture"
}, },
{ [SCARLETT2_PORT_TYPE_PCM] = {
.id = 0x600, .id = 0x600,
.num = { 20, 18, 18, 14, 10 }, .num = { 20, 18, 18, 14, 10 },
.src_descr = "PCM %d", .src_descr = "PCM %d",
...@@ -387,20 +387,20 @@ static const struct scarlett2_device_info s18i20_gen2_info = { ...@@ -387,20 +387,20 @@ static const struct scarlett2_device_info s18i20_gen2_info = {
}, },
.ports = { .ports = {
{ [SCARLETT2_PORT_TYPE_NONE] = {
.id = 0x000, .id = 0x000,
.num = { 1, 0, 8, 8, 6 }, .num = { 1, 0, 8, 8, 6 },
.src_descr = "Off", .src_descr = "Off",
.src_num_offset = 0, .src_num_offset = 0,
}, },
{ [SCARLETT2_PORT_TYPE_ANALOGUE] = {
.id = 0x080, .id = 0x080,
.num = { 8, 10, 10, 10, 10 }, .num = { 8, 10, 10, 10, 10 },
.src_descr = "Analogue %d", .src_descr = "Analogue %d",
.src_num_offset = 1, .src_num_offset = 1,
.dst_descr = "Analogue Output %02d Playback" .dst_descr = "Analogue Output %02d Playback"
}, },
{ [SCARLETT2_PORT_TYPE_SPDIF] = {
/* S/PDIF outputs aren't available at 192KHz /* S/PDIF outputs aren't available at 192KHz
* but are included in the USB mux I/O * but are included in the USB mux I/O
* assignment message anyway * assignment message anyway
...@@ -411,21 +411,21 @@ static const struct scarlett2_device_info s18i20_gen2_info = { ...@@ -411,21 +411,21 @@ static const struct scarlett2_device_info s18i20_gen2_info = {
.src_num_offset = 1, .src_num_offset = 1,
.dst_descr = "S/PDIF Output %d Playback" .dst_descr = "S/PDIF Output %d Playback"
}, },
{ [SCARLETT2_PORT_TYPE_ADAT] = {
.id = 0x200, .id = 0x200,
.num = { 8, 8, 8, 4, 0 }, .num = { 8, 8, 8, 4, 0 },
.src_descr = "ADAT %d", .src_descr = "ADAT %d",
.src_num_offset = 1, .src_num_offset = 1,
.dst_descr = "ADAT Output %d Playback" .dst_descr = "ADAT Output %d Playback"
}, },
{ [SCARLETT2_PORT_TYPE_MIX] = {
.id = 0x300, .id = 0x300,
.num = { 10, 18, 18, 18, 18 }, .num = { 10, 18, 18, 18, 18 },
.src_descr = "Mix %c", .src_descr = "Mix %c",
.src_num_offset = 65, .src_num_offset = 65,
.dst_descr = "Mixer Input %02d Capture" .dst_descr = "Mixer Input %02d Capture"
}, },
{ [SCARLETT2_PORT_TYPE_PCM] = {
.id = 0x600, .id = 0x600,
.num = { 20, 18, 18, 14, 10 }, .num = { 20, 18, 18, 14, 10 },
.src_descr = "PCM %d", .src_descr = "PCM %d",
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment