aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sound/pci/rme9652/hdsp.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/sound/pci/rme9652/hdsp.c b/sound/pci/rme9652/hdsp.c
index 763e4c917ec6..c2bd4384316a 100644
--- a/sound/pci/rme9652/hdsp.c
+++ b/sound/pci/rme9652/hdsp.c
@@ -607,7 +607,10 @@ static int hdsp_playback_to_output_key (struct hdsp *hdsp, int in, int out)
607 case Multiface: 607 case Multiface:
608 case Digiface: 608 case Digiface:
609 default: 609 default:
610 return (64 * out) + (32 + (in)); 610 if (hdsp->firmware_rev == 0xa)
611 return (64 * out) + (32 + (in));
612 else
613 return (52 * out) + (26 + (in));
611 case H9632: 614 case H9632:
612 return (32 * out) + (16 + (in)); 615 return (32 * out) + (16 + (in));
613 case H9652: 616 case H9652:
@@ -621,7 +624,10 @@ static int hdsp_input_to_output_key (struct hdsp *hdsp, int in, int out)
621 case Multiface: 624 case Multiface:
622 case Digiface: 625 case Digiface:
623 default: 626 default:
624 return (64 * out) + in; 627 if (hdsp->firmware_rev == 0xa)
628 return (64 * out) + in;
629 else
630 return (52 * out) + in;
625 case H9632: 631 case H9632:
626 return (32 * out) + in; 632 return (32 * out) + in;
627 case H9652: 633 case H9652: