Skip to content

Commit

Permalink
ALSA: dice: fix detection of Loud devices
Browse files Browse the repository at this point in the history
Commit a471fcd ("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: Rouge Etienne <[email protected]>
Reported-by: Etilem <[email protected]>
Signed-off-by: Takashi Sakamoto <[email protected]>
Signed-off-by: Takashi Iwai <[email protected]>
  • Loading branch information
takaswie authored and tiwai committed Nov 14, 2015
1 parent 86f799b commit 5d5563b
Showing 1 changed file with 4 additions and 0 deletions.
4 changes: 4 additions & 0 deletions sound/firewire/dice/dice.c
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,11 @@ MODULE_AUTHOR("Clemens Ladisch <[email protected]>");
MODULE_LICENSE("GPL v2");

#define OUI_WEISS 0x001c6a
#define OUI_LOUD 0x000ff2

#define DICE_CATEGORY_ID 0x04
#define WEISS_CATEGORY_ID 0x00
#define LOUD_CATEGORY_ID 0x10

static int dice_interface_check(struct fw_unit *unit)
{
Expand Down Expand Up @@ -57,6 +59,8 @@ static int dice_interface_check(struct fw_unit *unit)
}
if (vendor == OUI_WEISS)
category = WEISS_CATEGORY_ID;
else if (vendor == OUI_LOUD)
category = LOUD_CATEGORY_ID;
else
category = DICE_CATEGORY_ID;
if (device->config_rom[3] != ((vendor << 8) | category) ||
Expand Down

0 comments on commit 5d5563b

Please sign in to comment.