ALSA: firewire-tascam: add note for FE-8
[sfrench/cifs-2.6.git] / sound / firewire / tascam / tascam.h
index 64a2e4d2bbfee0c9bdaea4d7408622024dda4324..15bd335fa07fe126c7abafd42f56e83196c052cb 100644 (file)
@@ -129,6 +129,26 @@ struct snd_tscm {
 
 #define TSCM_OFFSET_MIDI_RX_QUAD       0x4000
 
+// Although FE-8 supports the above registers, it has no I/O interfaces for
+// audio samples and music messages. Otherwise it supports another notification
+// for status and control message as well as LED brightening. The message
+// consists of quadlet-aligned data up to 32 quadlets. The first byte of message
+// is fixed to 0x40. The second byte is between 0x00 to 0x1f and represent each
+// control:
+//   fader:    0x00-0x07
+//   button:   0x0d, 0x0e
+//   knob:     0x14-0x1b
+//   sensing:  0x0b
+//
+// The rest two bytes represent state of the controls; e.g. current value for
+// fader and knob, bitmasks for button and sensing.
+// Just after turning on, 32 quadlets messages with 0x00-0x1f are immediately
+// sent in one transaction. After, several quadlets are sent in one transaction.
+//
+// TSCM_OFFSET_FE8_CTL_TX_ON           0x0310
+// TSCM_OFFSET_FE8_CTL_TX_ADDR_HI      0x0314
+// TSCM_OFFSET_FE8_CTL_TX_ADDR_LO      0x0318
+
 enum snd_tscm_clock {
        SND_TSCM_CLOCK_INTERNAL = 0,
        SND_TSCM_CLOCK_WORD     = 1,