Linux 2.6 - Bestcomm - MPC5200B - External module

Jun 17, 2006 1 Replies

I'm writing a driver for a TI codec attached to the MPC5200B PSC3 codec lines on a Lite5200b. It's an external module, and I'd like to use Bestcomm with it. I've already tried a bunch of horrible things to get it to work. I could say it's close, but by close I mean the FEC still runs, my stuff doesn't.


  1. Can the Bestcomm I/F be used by an external module, or is the module required to be built in if built-in drivers use Bestcomm? TasksInitAPI (no so bad) and TasksLoadImage (yeah, bad) aren't really supposed to be called more than once from what I've read, and the kernel loads them for ethernet and ATA (no disk in my system if that matters).


  1. If it can be used by an external module, how would I do it? I've tried compiling the source into my module and replicating the initialization the kernel does in addition to my own stuff. It's not too bad, though I don't get any interrupts yet.



The LTIB from Freescale includes AIC23 and AC97 drivers that use Bestcomm. I built my kernel with them set as modules, and they had the same unresolved problems that my driver has on insmod, so I'm pessimistic. If someone could put me out of my misery one way or another, I'd appreciate it. Thanks. Sal



I'm wondering now if this isn't just an export problem. I've seen most of the functions I want in /proc/kallsyms, I just need to be able to call them from my insmod'd driver. I tried adding some EXPORT_SYMBOL(TaskBDReset) type statements to the bestcomm code that gets compiled into the kernel, but my loadable module still comes up with unresolved symbols.

I've done a lot of 2.4, this is my first 2.6 work. I read what I could this weekend on the differences, but I'm still not quite getting it. How would I export the bestcomm API functions so that my external, loadable module can access them? Any advice would be apprecitated.

Thanks.

snipped-for-privacy@gmail.com wrote:

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required