Skip to content
  • Takashi Sakamoto's avatar
    ALSA: dice: add support for M-Audio Profire 610 and perhaps 2626 · f8ff65bc
    Takashi Sakamoto authored
    
    
    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: default avatarTakashi Sakamoto <o-takashi@sakamocchi.jp>
    Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
    f8ff65bc