linux/sound/firewire/dice
Takashi Sakamoto b2e9e1c881 ALSA: dice: add support for Solid State Logic Duende Classic/Mini
Duende Classic was produced by Solid State Logic in 2006, as a
first model of Duende DSP series. The following model, Duende Mini
was produced in 2008. They are designed to receive isochronous
packets for PCM frames via IEEE 1394 bus, perform signal processing by
downloaded program, then transfer isochronous packets for converted
PCM frames.

These two models includes the same embedded board, consists of several
ICs below:
 - Texus Instruments Inc, TSB41AB3 for physical layer of IEEE 1394 bus
 - WaveFront semiconductor, DICE II STD ASIC for link/protocol layer
 - Altera MAX 3000A CPLD for programs
 - Analog devices, SHARC ADSP-21363 for signal processing (4 chips)

This commit adds support for the two models to ALSA dice driver. Like
support for the other devices, packet streaming is just available.
Userspace applications should be developed if full features became
available; e.g. program uploader and parameter controller.

$ ./hinawa-config-rom-printer /dev/fw1
{ 'bus-info': { 'adj': False,
                'bmc': False,
                'chip_ID': 349771402425,
                'cmc': True,
                'cyc_clk_acc': 255,
                'generation': 1,
                'imc': True,
                'isc': True,
                'link_spd': 2,
                'max_ROM': 1,
                'max_rec': 512,
                'name': '1394',
                'node_vendor_ID': 20674,
                'pmc': False},
  'root-directory': [ ['VENDOR', 20674],
                      ['DESCRIPTOR', 'Solid State Logic'],
                      ['MODEL', 112],
                      ['DESCRIPTOR', 'Duende board'],
                      [ 'NODE_CAPABILITIES',
                        { 'addressing': {'64': True, 'fix': True, 'prv': True},
                          'misc': {'int': False, 'ms': False, 'spt': True},
                          'state': { 'atn': False,
                                     'ded': False,
                                     'drq': True,
                                     'elo': False,
                                     'init': False,
                                     'lst': True,
                                     'off': False},
                          'testing': {'bas': False, 'ext': False}}],
                      [ 'UNIT',
                        [ ['SPECIFIER_ID', 20674],
                          ['VERSION', 1],
                          ['MODEL', 112],
                          ['DESCRIPTOR', 'Duende board']]]]}

Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2019-01-28 13:42:22 +01:00
..
dice-alesis.c ALSA: dice: fix wrong copy to rx parameters for Alesis iO26 2018-08-06 09:35:32 +02:00
dice-extension.c ALSA: dice: use extended protocol to detect available stream formats 2018-05-02 16:02:00 +02:00
dice-hwdep.c vfs: do bulk POLL* -> EPOLL* replacement 2018-02-11 14:34:03 -08:00
dice-interface.h ALSA: dice: improve support for ancient firmware for DICE 2018-04-24 17:18:59 +02:00
dice-midi.c ALSA: dice: use stream formats to add MIDI substreams 2018-05-02 16:02:05 +02:00
dice-mytek.c ALSA: dice: add stream format parameters for Mytek devices 2018-05-18 08:53:51 +02:00
dice-pcm.c ALSA: pcm: Nuke snd_pcm_lib_mmap_vmalloc() 2018-07-18 08:24:29 +02:00
dice-proc.c sound: Use octal not symbolic permissions 2018-05-28 11:27:20 +02:00
dice-stream.c Merge branch 'for-linus' into for-next 2018-05-15 07:30:23 +02:00
dice-tcelectronic.c ALSA: dice: unuse second stream for MIDI conformant data channel for TC Electronic models 2018-05-27 08:32:08 +02:00
dice-transaction.c ALSA: dice: improve support for ancient firmware for DICE 2018-04-24 17:18:59 +02:00
dice.c ALSA: dice: add support for Solid State Logic Duende Classic/Mini 2019-01-28 13:42:22 +01:00
dice.h ALSA: dice: add stream format parameters for Mytek devices 2018-05-18 08:53:51 +02:00
Makefile ALSA: dice: add stream format parameters for Mytek devices 2018-05-18 08:53:51 +02:00