[LAD] [RME - hdsp] Multiface/Digiface/RPM detection

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: <linux-audio-dev@...>
Cc: <alsa-devel@...>
Date: Thursday, July 28, 2011 - 8:31 pm

Hi!

I've recently added support for the RME RPM to hdspmixer. Unfortunately,
I don't have one, it's been done blindly with user feedback.

This very user now reports that he needs to upload the device firmware
from windows. I've checked hdsploader, and of course, it needs patching.
I'll take care in a second.

More surprisingly, though, the kernel wasn't able to upload the firmware
itself, because it fails to detect the RPM and hence tries to upload a
multiface firmware.

After reading the kernel source, I think the code in hdsp.c is wrong:

if (hdsp_fifo_wait(hdsp, 0, HDSP_SHORT_WAIT)) {
hdsp_write(hdsp, HDSP_control2Reg, HDSP_VERSION_BIT);
hdsp_write(hdsp, HDSP_control2Reg, HDSP_S_LOAD);
if (hdsp_fifo_wait(hdsp, 0, HDSP_SHORT_WAIT))
hdsp->io_type = RPM;
else
hdsp->io_type = Multiface;
} else {
hdsp->io_type = Digiface;
}

Who here owns a Digiface and can confirm or deny that the kernel
correctly detects it as Digiface? Same for Multiface, though I guess
since it's more or less the default, users wouldn't notice it.

What's wrong with the code above? I think all occurrences of
HDSP_control2Reg in hdsp_check_for_iobox need to be changed to
HDSP_controlRegister and the second hdsp_fifo_wait needs to be inverted.

But this is pure guesswork. If I come up with a patch, who here has a
RPM, Digiface or Multiface to test it?

TIA
_______________________________________________
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[LAD] [RME - hdsp] Multiface/Digiface/RPM detection, Adrian Knoth, (Thu Jul 28, 8:31 pm)
Re: [LAD] [RME - hdsp] Multiface/Digiface/RPM detection, Fons Adriaensen, (Thu Jul 28, 9:41 pm)
Re: [LAD] [RME - hdsp] Multiface/Digiface/RPM detection, Adrian Knoth, (Thu Jul 28, 9:56 pm)
Re: [LAD] [RME - hdsp] Multiface/Digiface/RPM detection, Adrian Knoth, (Thu Jul 28, 10:43 pm)
Re: [LAD] [RME - hdsp] Multiface/Digiface/RPM detection, Fons Adriaensen, (Fri Jul 29, 8:05 am)
Re: [LAD] [RME - hdsp] Multiface/Digiface/RPM detection, Adrian Knoth, (Thu Jul 28, 10:29 pm)