* EMU10K1 DSP programs
@ 2002-09-16 13:57 Martin Soto
2002-09-17 9:49 ` Jaroslav Kysela
2002-09-18 2:48 ` torben hohn
0 siblings, 2 replies; 6+ messages in thread
From: Martin Soto @ 2002-09-16 13:57 UTC (permalink / raw)
To: alsa-devel
Hi all!
Is it possible to load DSP programs to the EMU10K1 chip? The alsa-tools
package contains a modified as10k1 that allows you to assemble such
programs, but there's no information about how to upload them to the
processor.
Thanks a lot,
M. S.
-----------------------------------------------------------------
Martin Soto
AG Software Engineering
Universitaet Kaiserslautern Tel: +49 (631) 205-3449
Kaiserslautern, Germany E-mail: soto@informatik.uni-kl.de
-----------------------------------------------------------------
-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: EMU10K1 DSP programs
2002-09-16 13:57 EMU10K1 DSP programs Martin Soto
@ 2002-09-17 9:49 ` Jaroslav Kysela
2002-09-17 11:37 ` Martin Soto
2002-09-18 2:48 ` torben hohn
1 sibling, 1 reply; 6+ messages in thread
From: Jaroslav Kysela @ 2002-09-17 9:49 UTC (permalink / raw)
To: Martin Soto; +Cc: alsa-devel@lists.sourceforge.net
On 16 Sep 2002, Martin Soto wrote:
> Hi all!
>
> Is it possible to load DSP programs to the EMU10K1 chip? The alsa-tools
> package contains a modified as10k1 that allows you to assemble such
> programs, but there's no information about how to upload them to the
> processor.
The work has not been finished at all. The changes in assembler are
incomplete and the user space linker/loader program is missing at all.
Jaroslav
-----
Jaroslav Kysela <perex@suse.cz>
Linux Kernel Sound Maintainer
ALSA Project http://www.alsa-project.org
SuSE Linux http://www.suse.com
-------------------------------------------------------
Sponsored by: AMD - Your access to the experts on Hammer Technology!
Open Source & Linux Developers, register now for the AMD Developer
Symposium. Code: EX8664 http://www.developwithamd.com/developerlab
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: EMU10K1 DSP programs
2002-09-17 9:49 ` Jaroslav Kysela
@ 2002-09-17 11:37 ` Martin Soto
2002-09-17 14:38 ` Jaroslav Kysela
0 siblings, 1 reply; 6+ messages in thread
From: Martin Soto @ 2002-09-17 11:37 UTC (permalink / raw)
To: Jaroslav Kysela; +Cc: alsa-devel@lists.sourceforge.net
On Tue, 2002-09-17 at 11:49, Jaroslav Kysela wrote:
> On 16 Sep 2002, Martin Soto wrote:
> > Is it possible to load DSP programs to the EMU10K1 chip? The alsa-tools
> > package contains a modified as10k1 that allows you to assemble such
> > programs, but there's no information about how to upload them to the
> > processor.
>
> The work has not been finished at all. The changes in assembler are
> incomplete and the user space linker/loader program is missing at all.
Thanks for the answer. I actually discovered part of it yesterday after
I wrote my original mail, by looking directly at the driver code. I'm
actually interested in writing a patch loader/manager, and as far as I
can see, the driver interface is already there. I haven't tested it
thoroughly though, so I'm not sure it is completely operational. But it
looks good.
And, by the way, I have a question regarding it. In the hardware
dependant ioctl interface to the EMU10K1 there are two ioctls,
SNDRV_EMU10K1_IOCTL_CODE_PEEK and SNDRV_EMU10K1_IOCTL_CODE_POKE, that
allow you to read the DSP code and to actually upload new code. Part of
what SNDRV_EMU10K1_IOCTL_CODE_POKE does is defining new (mixer) controls
and eventually deleting those that are not needed any more.
However, I didn't find a way to know which current mixer controls are
*actually* associated to general purpose registers in the FX8010. Of
course, I could read the code in emufx.c and determine it from there,
but that would make my code very sensible to changes in the driver. I
just though of using the mixer/control interface in alsalib to find all
controls, and try to delete them with CODE_POKE, hoping that the driver
will only delete those that are connected to GPRs, but that looks too
much like a hack. Is there a more elegant way to handle that?
Cheers,
M. S.
-----------------------------------------------------------------
Martin Soto
AG Software Engineering
Universitaet Kaiserslautern Tel: +49 (631) 205-3449
Kaiserslautern, Germany E-mail: soto@informatik.uni-kl.de
-----------------------------------------------------------------
-------------------------------------------------------
Sponsored by: AMD - Your access to the experts on Hammer Technology!
Open Source & Linux Developers, register now for the AMD Developer
Symposium. Code: EX8664 http://www.developwithamd.com/developerlab
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: EMU10K1 DSP programs
2002-09-17 11:37 ` Martin Soto
@ 2002-09-17 14:38 ` Jaroslav Kysela
2002-09-17 16:38 ` Martin Soto
0 siblings, 1 reply; 6+ messages in thread
From: Jaroslav Kysela @ 2002-09-17 14:38 UTC (permalink / raw)
To: Martin Soto; +Cc: alsa-devel@lists.sourceforge.net
On 17 Sep 2002, Martin Soto wrote:
> On Tue, 2002-09-17 at 11:49, Jaroslav Kysela wrote:
> > On 16 Sep 2002, Martin Soto wrote:
> > > Is it possible to load DSP programs to the EMU10K1 chip? The alsa-tools
> > > package contains a modified as10k1 that allows you to assemble such
> > > programs, but there's no information about how to upload them to the
> > > processor.
> >
> > The work has not been finished at all. The changes in assembler are
> > incomplete and the user space linker/loader program is missing at all.
>
> Thanks for the answer. I actually discovered part of it yesterday after
> I wrote my original mail, by looking directly at the driver code. I'm
> actually interested in writing a patch loader/manager, and as far as I
> can see, the driver interface is already there. I haven't tested it
> thoroughly though, so I'm not sure it is completely operational. But it
> looks good.
>
> And, by the way, I have a question regarding it. In the hardware
> dependant ioctl interface to the EMU10K1 there are two ioctls,
> SNDRV_EMU10K1_IOCTL_CODE_PEEK and SNDRV_EMU10K1_IOCTL_CODE_POKE, that
> allow you to read the DSP code and to actually upload new code. Part of
> what SNDRV_EMU10K1_IOCTL_CODE_POKE does is defining new (mixer) controls
> and eventually deleting those that are not needed any more.
>
> However, I didn't find a way to know which current mixer controls are
> *actually* associated to general purpose registers in the FX8010. Of
> course, I could read the code in emufx.c and determine it from there,
> but that would make my code very sensible to changes in the driver. I
> just though of using the mixer/control interface in alsalib to find all
> controls, and try to delete them with CODE_POKE, hoping that the driver
> will only delete those that are connected to GPRs, but that looks too
> much like a hack. Is there a more elegant way to handle that?
I've added gpr_list_control* variables to emu10k1_fx8010_code_t.
The SNDRV_EMU10K1_IOCTL_CODE_PEEK will fill these variables for you. Note
that all this code in emufx.c is mostly untested, so give me feedback,
what features/functions need to be corrected.
Jaroslav
-----
Jaroslav Kysela <perex@suse.cz>
Linux Kernel Sound Maintainer
ALSA Project http://www.alsa-project.org
SuSE Linux http://www.suse.com
-------------------------------------------------------
Sponsored by: AMD - Your access to the experts on Hammer Technology!
Open Source & Linux Developers, register now for the AMD Developer
Symposium. Code: EX8664 http://www.developwithamd.com/developerlab
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: EMU10K1 DSP programs
2002-09-17 14:38 ` Jaroslav Kysela
@ 2002-09-17 16:38 ` Martin Soto
0 siblings, 0 replies; 6+ messages in thread
From: Martin Soto @ 2002-09-17 16:38 UTC (permalink / raw)
To: Jaroslav Kysela; +Cc: alsa-devel@lists.sourceforge.net
On Tue, 2002-09-17 at 16:38, Jaroslav Kysela wrote:
> On 17 Sep 2002, Martin Soto wrote:
> > And, by the way, I have a question regarding it. In the hardware
> > dependant ioctl interface to the EMU10K1 there are two ioctls,
> > SNDRV_EMU10K1_IOCTL_CODE_PEEK and SNDRV_EMU10K1_IOCTL_CODE_POKE, that
> > allow you to read the DSP code and to actually upload new code. Part of
> > what SNDRV_EMU10K1_IOCTL_CODE_POKE does is defining new (mixer) controls
> > and eventually deleting those that are not needed any more.
> >
> > However, I didn't find a way to know which current mixer controls are
> > *actually* associated to general purpose registers in the FX8010. Of
> > course, I could read the code in emufx.c and determine it from there,
> > but that would make my code very sensible to changes in the driver. I
> > just though of using the mixer/control interface in alsalib to find all
> > controls, and try to delete them with CODE_POKE, hoping that the driver
> > will only delete those that are connected to GPRs, but that looks too
> > much like a hack. Is there a more elegant way to handle that?
>
> I've added gpr_list_control* variables to emu10k1_fx8010_code_t.
> The SNDRV_EMU10K1_IOCTL_CODE_PEEK will fill these variables for you. Note
> that all this code in emufx.c is mostly untested, so give me feedback,
> what features/functions need to be corrected.
That was exactly what I was looking for, thanks! I'll try to write at
least a simple loader in the following days to see if everything works
properly.
Cheers,
M. S.
-----------------------------------------------------------------
Martin Soto
AG Software Engineering
Universitaet Kaiserslautern Tel: +49 (631) 205-3449
Kaiserslautern, Germany E-mail: soto@informatik.uni-kl.de
-----------------------------------------------------------------
-------------------------------------------------------
This SF.NET email is sponsored by: AMD - Your access to the experts
on Hammer Technology! Open Source & Linux Developers, register now
for the AMD Developer Symposium. Code: EX8664
http://www.developwithamd.com/developerlab
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: EMU10K1 DSP programs
2002-09-16 13:57 EMU10K1 DSP programs Martin Soto
2002-09-17 9:49 ` Jaroslav Kysela
@ 2002-09-18 2:48 ` torben hohn
1 sibling, 0 replies; 6+ messages in thread
From: torben hohn @ 2002-09-18 2:48 UTC (permalink / raw)
To: Martin Soto; +Cc: alsa-devel
On 16 Sep 2002 15:57:52 +0200, Martin Soto wrote:
> Hi all!
>
> Is it possible to load DSP programs to the EMU10K1 chip? The alsa-tools
> package contains a modified as10k1 that allows you to assemble such
> programs, but there's no information about how to upload them to the
> processor.
i have not tried it out but there are some ioctl which allow you to poke
and peek
the dsp instruction memory.
ALSA uses a fair amount of dsp code for its own. I am not quite sure
what has to be done to remove the alsa dsp code (remove the mixers
controling
the gprs etc)
have a look at
alsa-kernel/pci/emu10k1/emufx.c
And if you have any success tell me.
I would like to load up patches into the DSP too.
-------------------------------------------------------
This SF.NET email is sponsored by: AMD - Your access to the experts
on Hammer Technology! Open Source & Linux Developers, register now
for the AMD Developer Symposium. Code: EX8664
http://www.developwithamd.com/developerlab
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2002-09-18 2:48 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2002-09-16 13:57 EMU10K1 DSP programs Martin Soto
2002-09-17 9:49 ` Jaroslav Kysela
2002-09-17 11:37 ` Martin Soto
2002-09-17 14:38 ` Jaroslav Kysela
2002-09-17 16:38 ` Martin Soto
2002-09-18 2:48 ` torben hohn
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.