* 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.