On Sat, 30 Apr 2016 15:06:46 +0200, Takashi Sakamoto wrote: > > M-Audio Profire 610 has an unexpected value in version field of its config > ROM, thus ALSA dice driver is not assigned to the model due to a mismatch > of modalias. > > This commit adds an entry to support the model. I expect the entry is > also for Profire 2626. > > I note that Profire 610 uses TCD2220 (so-called Dice Jr.), and supports a > part of Extended Application Protocol (EAP). > > $ cd linux-firewire-utils/src > $ ./crpp < /sys/bus/firewire/devices/fw1/config_rom > ROM header and bus information block > ------------------------------------------------------------ > 400 04047689 bus_info_length 4, crc_length 4, crc 30345 > 404 31333934 bus_name "1394" > 408 e0ff8112 irmc 1, cmc 1, isc 1, bmc 0, pmc 0, cyc_clk_acc 255, > max_rec 8 (512), max_rom 1, gen 1, spd 2 (S400) > 40c 000d6c04 company_id 000d6c | > 410 04400002 device_id 0404400002 | EUI-64 000d6c0404400002 > > root directory > ------------------------------------------------------------ > 414 000695fe directory_length 6, crc 38398 > 418 03000d6c vendor > 41c 8100000a --> descriptor leaf at 444 > 420 17000011 model > 424 8100000d --> descriptor leaf at 458 > 428 0c0087c0 node capabilities per IEEE 1394 > 42c d1000001 --> unit directory at 430 > > unit directory at 430 > ------------------------------------------------------------ > 430 0004fb14 directory_length 4, crc 64276 > 434 12000d6c specifier id > 438 130100d1 version > 43c 17000011 model > 440 8100000c --> descriptor leaf at 470 > > descriptor leaf at 444 > ------------------------------------------------------------ > 444 0004b8e4 leaf_length 4, crc 47332 > 448 00000000 textual descriptor > 44c 00000000 minimal ASCII > 450 4d2d4175 "M-Au" > 454 64696f00 "dio" > > descriptor leaf at 458 > ------------------------------------------------------------ > 458 00053128 leaf_length 5, crc 12584 > 45c 00000000 textual descriptor > 460 00000000 minimal ASCII > 464 50726f46 "ProF" > 468 69726520 "ire " > 46c 36313000 "610" > > descriptor leaf at 470 > ------------------------------------------------------------ > 470 00053128 leaf_length 5, crc 12584 > 474 00000000 textual descriptor > 478 00000000 minimal ASCII > 47c 50726f46 "ProF" > 480 69726520 "ire " > 484 36313000 "610" > > $ cat /proc/asound/card1/dice > sections: > global: offset 10, size 90 > tx: offset 100, size 142 > rx: offset 242, size 282 > ext_sync: offset 524, size 4 > unused2: offset 0, size 0 > global: > owner: ffc0:000100000000 > notification: 00000040 > nick name: FW610 > clock select: internal 48000 > enable: 1 > status: locked 48000 > ext status: 00000040 > sample rate: 48000 > version: 1.0.4.0 > clock caps: 32000 44100 48000 88200 96000 176400 192000 aes1 aes4 aes adat tdif wc arx1 arx2 internal > clock source names: SPDIF\AES34\AES56\TOS\AES_ANY\ADAT\ADAT_AUX\Word Clock\Unused\Unused\Unused\Unused\Internal\\ > ... > > Signed-off-by: Takashi Sakamoto <o-takashi@xxxxxxxxxxxxx> Applied, thanks. Takashi > --- > sound/firewire/dice/dice.c | 7 +++++++ > 1 file changed, 7 insertions(+) > > diff --git a/sound/firewire/dice/dice.c b/sound/firewire/dice/dice.c > index 96fe68f4..25e9f77 100644 > --- a/sound/firewire/dice/dice.c > +++ b/sound/firewire/dice/dice.c > @@ -317,6 +317,13 @@ static const struct ieee1394_device_id dice_id_table[] = { > .match_flags = IEEE1394_MATCH_VERSION, > .version = DICE_INTERFACE, > }, > + /* M-Audio Profire 610/2626 has a different value in version field. */ > + { > + .match_flags = IEEE1394_MATCH_VENDOR_ID | > + IEEE1394_MATCH_SPECIFIER_ID, > + .vendor_id = 0x000d6c, > + .specifier_id = 0x000d6c, > + }, > { } > }; > MODULE_DEVICE_TABLE(ieee1394, dice_id_table); > -- > 2.7.4 > _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel