[ALSA] hdsp - Add support for latset RME9632 revisions
added support for the latest revision of the 9632 (and hopefully a few
following ones). The DSP matrix was not working because of wrong
identification of the card in this part of the code.
Signed-off-by: Remy Bruno <remy.bruno@trinnov.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
diff --git a/sound/pci/rme9652/hdsp.c b/sound/pci/rme9652/hdsp.c
index 8f798f2..2411f0b 100644
--- a/sound/pci/rme9652/hdsp.c
+++ b/sound/pci/rme9652/hdsp.c
@@ -606,28 +606,28 @@
static int hdsp_playback_to_output_key (struct hdsp *hdsp, int in, int out)
{
- switch (hdsp->firmware_rev) {
- case 0xa:
- return (64 * out) + (32 + (in));
- case 0x96:
- case 0x97:
- case 0x98:
- return (32 * out) + (16 + (in));
+ switch (hdsp->io_type) {
+ case Multiface:
+ case Digiface:
default:
+ return (64 * out) + (32 + (in));
+ case H9632:
+ return (32 * out) + (16 + (in));
+ case H9652:
return (52 * out) + (26 + (in));
}
}
static int hdsp_input_to_output_key (struct hdsp *hdsp, int in, int out)
{
- switch (hdsp->firmware_rev) {
- case 0xa:
- return (64 * out) + in;
- case 0x96:
- case 0x97:
- case 0x98:
- return (32 * out) + in;
+ switch (hdsp->io_type) {
+ case Multiface:
+ case Digiface:
default:
+ return (64 * out) + in;
+ case H9632:
+ return (32 * out) + in;
+ case H9652:
return (52 * out) + in;
}
}