From: Paul v. G. <pau...@ri...> - 2003-06-13 23:20:03
|
That solved. One step closer to getting it to run... ;-). Thanks. Paul On Fri, Jun 13, 2003 at 07:10:33PM -0400, Paul Mundt wrote: > On Fri, Jun 13, 2003 at 03:54:09PM -0700, Paul van Gool wrote: > > But when I try to load one of the resulting modules, I get: > > > > # insmod snd > > Using snd > > insmod: unresolved symbol disable_dma > > insmod: unresolved symbol release_dma_lock > > insmod: unresolved symbol get_dma_residue > > insmod: unresolved symbol set_dma_mode > > insmod: unresolved symbol enable_dma > > insmod: unresolved symbol set_dma_addr > > insmod: unresolved symbol set_dma_count > > insmod: unresolved symbol claim_dma_lock > > > > Those functions are defined in arch/sh/kernel/dma.c. Any thoughts? > > > Looks like these symbols aren't being exported for module use. Try this patch, > it should fix that up. > > Index: arch/sh/kernel/Makefile > =================================================================== > RCS file: /cvsroot/linuxsh/linux/arch/sh/kernel/Makefile,v > retrieving revision 1.1.1.1.2.5 > diff -u -r1.1.1.1.2.5 Makefile > --- arch/sh/kernel/Makefile 8 May 2003 03:57:34 -0000 1.1.1.1.2.5 > +++ arch/sh/kernel/Makefile 13 Jun 2003 23:08:18 -0000 > @@ -12,7 +12,8 @@ > > O_TARGET := kernel.o > > -export-objs := io.o io_generic.o io_hd64461.o setup_hd64461.o sh_ksyms.o > +export-objs := io.o io_generic.o io_hd64461.o setup_hd64461.o sh_ksyms.o \ > + dma.o > > obj-y := process.o signal.o entry.o traps.o irq.o irq_ipr.o \ > ptrace.o setup.o time.o sys_sh.o semaphore.o \ > Index: arch/sh/kernel/dma.c > =================================================================== > RCS file: /cvsroot/linuxsh/linux/arch/sh/kernel/Attic/dma.c,v > retrieving revision 1.1.1.1 > diff -u -r1.1.1.1 dma.c > --- arch/sh/kernel/dma.c 15 Oct 2001 20:44:47 -0000 1.1.1.1 > +++ arch/sh/kernel/dma.c 13 Jun 2003 23:08:31 -0000 > @@ -10,6 +10,7 @@ > #include <linux/init.h> > #include <linux/irq.h> > #include <linux/interrupt.h> > +#include <linux/module.h> > > #include <asm/signal.h> > #include <asm/dma.h> > @@ -137,6 +138,25 @@ > return 0; > } > > +static void __exit exit_dma(void) > +{ > +#ifdef CONFIG_CPU_SH4 > + free_irq(DMAE_IRQ); > +#endif > +} > + > module_init(init_dma); > +module_exit(exit_dma); > + > +MODULE_LICENSE("GPL"); > + > +EXPORT_SYMBOL(setup_dma); > +EXPORT_SYMBOL(claim_dma_lock); > +EXPORT_SYMBOL(release_dma_lock); > +EXPORT_SYMBOL(enable_dma); > +EXPORT_SYMBOL(disable_dma); > +EXPORT_SYMBOL(set_dma_mode); > +EXPORT_SYMBOL(set_dma_addr); > +EXPORT_SYMBOL(set_dma_count); > +EXPORT_SYMBOL(get_dma_residue); > > -/**/ -- Paul van Gool Rincon Networks pau...@ri... (805)-705-1442 |