On Mon, 13 Jan 2020 08:34:18 +0100, Takashi Sakamoto wrote: > > Stanton SCS.1d uses Oxford Semiconductor FW 971 ASIC (FW971) for > communication. Although the unit is bound to ALSA oxfw driver, the instance > of sound card can not be added due to its quirk of plug information. This > bug was added when snd-scs1x is merged into snd-oxfw at commit > 9e2004f9cedf ("ALSA: oxfw: obsolete scs1x module"). > > This commit fixes the driver for the quirk. In cases that the unit returns > NOT IMPLEMENTED for some AV/C commands, the sound card is added without any > PCM/MIDI interfaces for packet streaming. For SCS.1d, model dependent > operation adds MIDI interface and applications can use it to operate > according to HSS1394 protocol from reverse-engineering work by Sean M. > Pappalardo. > > Plug Control Register (PCR) has information that the unit has a pair of > plugs for isochronous communication: > > (oMPR) > $ ./firewire-request /dev/fw1 read 0xfffff0000900 > result: 80ff0001 > (iMPR) > $ ./firewire-request /dev/fw1 read 0xfffff0000980 > result: 80ff0001 > > AV/C PLUG INFO also returns information that the unit has a pair of > plugs for isochronous communication. > > (AV/C PLUG INFO command) > $ ./firewire-request /dev/fw1 fcp 0x01ff0200ffffffff > response: 000: 0c ff 02 00 01 01 02 02 > > However, AV/C PLUG SIGNAL INFO command is rejected for both plugs. > > (AV/C OUTPUT PLUG SIGNAL INFO command) > $ ./firewire-request /dev/fw1 fcp 0x01ff1800ffffffff > response: 000: 0a ff 18 00 ff ff ff ff > (AV/C INPUT PLUG SIGNAL INFO command) > $ ./firewire-request /dev/fw1 fcp 0x01ff1900ffffffff > response: 000: 0a ff 19 00 ff ff ff ff > > Furthermore, AV/C EXTENDED STREAM FORMAT INFO is not implemented. > > (AV/C EXTENDED STREAM FORMAT INFO list subfunction for input plug) > $ ./firewire-request /dev/fw1 fcp 0x01ffbfc000000000ffff00ff > response: 000: 08 ff bf c0 00 00 00 00 ff ff 00 ff > (AV/C EXTENDED STREAM FORMAT INFO list subfunction for output plug) > $ ./firewire-request /dev/fw1 fcp 0x01ffbfc001000000ffff00ff > response: 000: 08 ff bf c0 01 00 00 00 ff ff 00 ff > (AV/C EXTENDED STREAM FORMAT INFO single subfunction for input plug) > $ ./firewire-request /dev/fw1 fcp 0x01ffbfc100000000ffffffff > response: 000: 08 ff bf c1 00 00 00 00 ff ff ff ff > (AV/C EXTENDED STREAM FORMAT INFO single subfunction for output plug) > $ ./firewire-request /dev/fw1 fcp 0x01ffbfc101000000ffffffff > response: 000: 08 ff bf c1 01 00 00 00 ff ff ff ff > > Reference: https://mailman.alsa-project.org/pipermail/alsa-devel/2012-May/052264.html > Signed-off-by: Takashi Sakamoto <o-takashi@xxxxxxxxxxxxx> Applied to for-next branch. Thanks. Takashi _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx https://mailman.alsa-project.org/mailman/listinfo/alsa-devel