Commit 5d5563b1 authored by Takashi Sakamoto's avatar Takashi Sakamoto Committed by Takashi Iwai

ALSA: dice: fix detection of Loud devices

Commit a471fcde ("ALSA: dice: fix detection of Weiss devices") adds
a quirk of Weiss models. According to users' reports, Loud models also
have the similar quirk. They have 0x10 in the category field.

This commit adds support for Mackie Onyx Blackbird and Onyx-i series.
As long as I know, Dice-based models produced by
Focusrite/Alesis/PreSonus/M-Audio/TC Electronic have default value (0x04)
in their category field, thus it may be reasonable to add a condition
statement for Loud models, instead of removing the check of category value.
Reported-by: default avatarRouge Etienne <erouge.externe@m6.fr>
Reported-by: default avatarEtilem <contact@etilem.net>
Signed-off-by: default avatarTakashi Sakamoto <o-takashi@sakamocchi.jp>
Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
parent 86f799b8
...@@ -12,9 +12,11 @@ MODULE_AUTHOR("Clemens Ladisch <clemens@ladisch.de>"); ...@@ -12,9 +12,11 @@ MODULE_AUTHOR("Clemens Ladisch <clemens@ladisch.de>");
MODULE_LICENSE("GPL v2"); MODULE_LICENSE("GPL v2");
#define OUI_WEISS 0x001c6a #define OUI_WEISS 0x001c6a
#define OUI_LOUD 0x000ff2
#define DICE_CATEGORY_ID 0x04 #define DICE_CATEGORY_ID 0x04
#define WEISS_CATEGORY_ID 0x00 #define WEISS_CATEGORY_ID 0x00
#define LOUD_CATEGORY_ID 0x10
static int dice_interface_check(struct fw_unit *unit) static int dice_interface_check(struct fw_unit *unit)
{ {
...@@ -57,6 +59,8 @@ static int dice_interface_check(struct fw_unit *unit) ...@@ -57,6 +59,8 @@ static int dice_interface_check(struct fw_unit *unit)
} }
if (vendor == OUI_WEISS) if (vendor == OUI_WEISS)
category = WEISS_CATEGORY_ID; category = WEISS_CATEGORY_ID;
else if (vendor == OUI_LOUD)
category = LOUD_CATEGORY_ID;
else else
category = DICE_CATEGORY_ID; category = DICE_CATEGORY_ID;
if (device->config_rom[3] != ((vendor << 8) | category) || if (device->config_rom[3] != ((vendor << 8) | category) ||
......
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