On Mon, 14 Jan 2008 12:00:10 +0100 Takashi Iwai <tiwai@xxxxxxx> wrote: [...] > > > > static int hdsp_playback_to_output_key (struct hdsp *hdsp, int in, > > int out) { > > switch (hdsp->io_type) { > > case Multiface: > > case Digiface: > > default: > > if (hdsp->firmware_rev == 0xa) > > return (64 * out) + (32 + (in)); > > else > > return (52 * out) + (26 + (in)); > > case H9632: > > return (32 * out) + (16 + (in)); > > case H9652: > > return (52 * out) + (26 + (in)); > > } > > } > > This looks OK. Could you prepare a patch (with a proper changelog and > your sing-off)? ok, here it is: hdsp: make Multiface II work again This device has io_type == 1 (Multiface) and firmware_rev > 0xa (fixes regression from changeset 5326) Signed-off-by: Andreas Degert <ad@xxxxxxxxxxxxxxx>
diff -r 1f9fd3d3cb12 -r d06a33481e0d pci/rme9652/hdsp.c --- a/pci/rme9652/hdsp.c Mon Jan 14 12:07:53 2008 +0100 +++ b/pci/rme9652/hdsp.c Tue Jan 15 20:29:52 2008 +0100 @@ -607,7 +607,10 @@ static int hdsp_playback_to_output_key ( case Multiface: case Digiface: default: - return (64 * out) + (32 + (in)); + if (hdsp->firmware_rev == 0xa) + return (64 * out) + (32 + (in)); + else + return (52 * out) + (26 + (in)); case H9632: return (32 * out) + (16 + (in)); case H9652: @@ -621,7 +624,10 @@ static int hdsp_input_to_output_key (str case Multiface: case Digiface: default: - return (64 * out) + in; + if (hdsp->firmware_rev == 0xa) + return (64 * out) + in; + else + return (52 * out) + in; case H9632: return (32 * out) + in; case H9652:
_______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel