* RME DSP / Multiface documentation? (hdsp.c)
@ 2002-11-12 14:40 M. Nentwig
2002-11-12 15:32 ` Paul Davis
2002-11-12 15:36 ` Paul Davis
0 siblings, 2 replies; 3+ messages in thread
From: M. Nentwig @ 2002-11-12 14:40 UTC (permalink / raw)
To: alsa-devel
Hello,
I would like to help with the Hammerfall DSP driver.
Is there any additional technical information? Could someone be so kind
and forward it to me? The driver is easily readable, but it wouldn't
hurt if I had the original documents still.
Two more things:
- The driver uses inlined functions quite extensively. But I think, that
gcc does not inline functions, at least not with -O2 optimization, which
was default (I tried -finline-functions, hdsp.o was different
afterwards).
- In snd_hdsp_interrupt: The first four lines determine, why the
interrupt was triggered (audio, midi0, midi1). Now the MIDI code further
down does not use that information, but the MIDI status instead. Could
that be the cause for the audio dropouts, that happen now and then, when
MIDI is received?
Cheers
Markus
-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: RME DSP / Multiface documentation? (hdsp.c)
2002-11-12 14:40 RME DSP / Multiface documentation? (hdsp.c) M. Nentwig
@ 2002-11-12 15:32 ` Paul Davis
2002-11-12 15:36 ` Paul Davis
1 sibling, 0 replies; 3+ messages in thread
From: Paul Davis @ 2002-11-12 15:32 UTC (permalink / raw)
To: M. Nentwig; +Cc: alsa-devel
>I would like to help with the Hammerfall DSP driver.
>Is there any additional technical information? Could someone be so kind
>and forward it to me? The driver is easily readable, but it wouldn't
>hurt if I had the original documents still.
there are no documents. i have source code for a different OS from rme
under an NDA. sorry, i am not permitted to release them to you.
anyway, what is it that you want to help with? what needs work or
fixing or improving?
>Two more things:
>- The driver uses inlined functions quite extensively. But I think, that
>gcc does not inline functions, at least not with -O2 optimization, which
>was default (I tried -finline-functions, hdsp.o was different
>afterwards).
this has nothing to do with the driver itself, but with the
compilation environment, which is in turn a function of whether ALSA
is being built as part of the kernel or as a set of standalone
modules. please don't waste your time with this sort of stuff.
>- In snd_hdsp_interrupt: The first four lines determine, why the
>interrupt was triggered (audio, midi0, midi1). Now the MIDI code further
>down does not use that information, but the MIDI status instead. Could
>that be the cause for the audio dropouts, that happen now and then, when
>MIDI is received?
its not the cause of the dropouts, no. but you raise a good design
issue for the driver. its a bad idea to be handling both audio and
MIDI in the same thread. we should really use a bottom-half or a
tasklet to take care of the MIDI I/O. this would allow the interrupt
to complete much more rapidly.
--p
-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: RME DSP / Multiface documentation? (hdsp.c)
2002-11-12 14:40 RME DSP / Multiface documentation? (hdsp.c) M. Nentwig
2002-11-12 15:32 ` Paul Davis
@ 2002-11-12 15:36 ` Paul Davis
1 sibling, 0 replies; 3+ messages in thread
From: Paul Davis @ 2002-11-12 15:36 UTC (permalink / raw)
To: M. Nentwig; +Cc: alsa-devel
>- In snd_hdsp_interrupt: The first four lines determine, why the
>interrupt was triggered (audio, midi0, midi1). Now the MIDI code further
>down does not use that information, but the MIDI status instead.
this is necessary because there is no interrupt for "output space
available" on the MIDI ports. therefore, its necessary to check the
FIFO's to see if there is space. however, its true that the code there
is a bit bone-headed.
it should really check both in+out FIFO status, and then only call the
MIDI code if one or both is true *and* if the relevant MIDI IRQ
pending bit was set.
this is orthogonal to the tasklet/BH issue i just mentioned.
--p
-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2002-11-12 15:36 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2002-11-12 14:40 RME DSP / Multiface documentation? (hdsp.c) M. Nentwig
2002-11-12 15:32 ` Paul Davis
2002-11-12 15:36 ` Paul Davis
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.