Messages in this thread | | | Date | Mon, 10 Apr 2006 19:33:06 +0200 | From | Sam Ravnborg <> | Subject | Re: The assemble file under the driver folder can not be recognized when the driver is built as module |
| |
On Mon, Apr 10, 2006 at 09:27:18PM +0800, Aubrey wrote: > On 4/10/06, Erik Mouw <erik@harddisk-recovery.com> wrote: > > On Mon, Apr 10, 2006 at 06:16:56PM +0800, Aubrey wrote: > > Why would you write a driver in assembly in the first place? That makes > > it highly unportable, I bet you can't compile your driver for x86 and > > ARM from the same source. There are only four drivers in the whole > > kernel tree that have an assembly part, but those are so tied to their > > platform (Acorn, Amiga) that they aren't portable anyway. > > Yes, the driver isn't portable. I'm working on the blackfin linux > system. The driver is written mostly by c except one codec. You know, > blackfin has DSP instruction set, so I write the codec in assembly to > improve my driver's performance. > > > > I haven't seen your Makefile so I can't see what's wrong, but see > > drivers/scsi/arm/Makefile for an example. > > > Makefile is simple. > =============================== > ----snip---- > obj-$(CONFIG_FB_BFIN_7171) += bfin_ad7171fb.o rgb2ycbcr.o > ----snip---- > =============================== > There are two files, bfin_ad7171fb.c and rgb2ycbcr.S under the folder > " ./drivers/video". > It should be OK because the driver can pass the compilation when > select it as built-in. What you say with the above is that you want to create two modules. One module named: bfin_ad7171fb and another module named: rgb2ycbcr
But kbuild does not support creating modules based on a .S file alone. What I expect you to say is that you have one module named: bfin_7171 this is expressed like this:
obj-$(CONFIG_FB_BFIN_7171) += bfin_7171.o bfin_7171-y := bfin_ad7171fb.o rgb2ycbcr.o
And then it works with your .S file.
Sam - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |