summaryrefslogtreecommitdiffstats
path: root/sound/firewire/fireface/ff.h
diff options
context:
space:
mode:
authorTakashi Sakamoto <o-takashi@sakamocchi.jp>2017-03-31 22:06:01 +0900
committerTakashi Iwai <tiwai@suse.de>2017-04-05 21:31:28 +0200
commited90f91a17112d474909bd820f1bb65a5480959d (patch)
tree4b844d8fd10cc6eec6f8346c2f50babe5c804f10 /sound/firewire/fireface/ff.h
parent324540c4e05c09c007f9e358cacb30b38f296bcc (diff)
downloadlinux-ed90f91a17112d474909bd820f1bb65a5480959d.tar.bz2
ALSA: fireface: add model specific structure
RME Fireface series has several models and their specifications are different. Currently, we find no way to retrieve the specifications from actual devices and need to implement them in this driver. This commit adds a structure to describe model specific data. This structure has an identical name for each unit, and maximum number of data channels in each mode. I'll describe about the mode in following commits. Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp> Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/firewire/fireface/ff.h')
-rw-r--r--sound/firewire/fireface/ff.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/sound/firewire/fireface/ff.h b/sound/firewire/fireface/ff.h
index a0faae18018a..269fa259d5a7 100644
--- a/sound/firewire/fireface/ff.h
+++ b/sound/firewire/fireface/ff.h
@@ -22,6 +22,18 @@
#include "../lib.h"
+#define SND_FF_STREAM_MODES 3
+
+struct snd_ff_spec {
+ const char *const name;
+
+ const unsigned int pcm_capture_channels[SND_FF_STREAM_MODES];
+ const unsigned int pcm_playback_channels[SND_FF_STREAM_MODES];
+
+ unsigned int midi_in_ports;
+ unsigned int midi_out_ports;
+};
+
struct snd_ff {
struct snd_card *card;
struct fw_unit *unit;
@@ -29,5 +41,7 @@ struct snd_ff {
bool registered;
struct delayed_work dwork;
+
+ const struct snd_ff_spec *spec;
};
#endif