If someone could compile the ov51x drivers located
here for the Sharp or Guyhelm kernel, I would be grateful. I have set up QEMU using Damn Small Linux, but I'm really at a loss as to how to compile drivers, since it involves mucking with the kernel.
If all I need to do is modify the Makefile included with the ov51x drivers, I would appreciate a volunteer in the audience to help me through that process.
Here's the Makefile.
ifeq ($(shell uname -r | cut -d . -f 1-2),2.4)
#################################### OPTIONS ##################################
# Change this to /usr/include if you get header file errors
INCLUDEDIR = /lib/modules/`uname -r`/build/include
ACFILE = $(INCLUDEDIR)/linux/autoconf.h
CFLAGS = -D__KERNEL__ -DMODULE -DOUTSIDE_KERNEL -O2 -Wall -Wstrict-prototypes \
-fomit-frame-pointer -I$(INCLUDEDIR)
# Detect modversions support
ifneq ($(strip $(shell grep 'define CONFIG_MODVERSIONS 1' $(ACFILE))),)
CFLAGS += -DMODVERSIONS -include $(INCLUDEDIR)/linux/modversions.h
endif
# Detect extra required CFLAGS
EXTRA_CFLAGS := $(shell ./get_cflags.sh)
CFLAGS += $(EXTRA_CFLAGS)
CC = gcc
LD = ld
LD_RFLAG = -r
SEN_OBJS = ovcamchip_core.o ov6x20.o ov6x30.o ov7x10.o ov7x20.o ov76be.o
MODULES = ov511.o ovfx2.o ovcamchip.o saa7111-new.o tda7313.o
# Enable OV511 Decompression
CFLAGS += -DCONFIG_OV511_DECOMP
COMP_OBJS += ov511_decomp.o
# Enable OV518 Decompression
CFLAGS += -DCONFIG_OV518_DECOMP
COMP_OBJS += ov518_decomp.o
#################################### TARGETS ##################################
# tuner.o isn't in $(MODULES) since it would conflict with the kernel's tuner.o
all: $(MODULES) tuner.o
install: all
./do_install.sh $(MODULES)
#################################### RULES ####################################
ovcamchip_core.o: ovcamchip_core.c ovcamchip.h compat.h
$(CC) -c $(CFLAGS) -o ovcamchip_core.o ovcamchip_core.c
ov6x20.o: ov6x20.c ovcamchip.h compat.h
$(CC) -c $(CFLAGS) ov6x20.c
ov6x30.o: ov6x30.c ovcamchip.h compat.h
$(CC) -c $(CFLAGS) ov6x30.c
ov7x10.o: ov7x10.c ovcamchip.h compat.h
$(CC) -c $(CFLAGS) ov7x10.c
ov7x20.o: ov7x20.c ovcamchip.h compat.h
$(CC) -c $(CFLAGS) ov7x20.c
ov76be.o: ov76be.c ovcamchip.h compat.h
$(CC) -c $(CFLAGS) ov76be.c
ovcamchip.o: $(SEN_OBJS)
$(LD) $(LD_RFLAG) -o ovcamchip.o $(SEN_OBJS)
ov511_core.o: ov511_core.c ov511.h ovcamchip.h tuner.h audiochip.h id.h compat.h
$(CC) -c $(CFLAGS) -o ov511_core.o ov511_core.c
ov511.o: ov511_core.o $(COMP_OBJS)
$(LD) $(LD_RFLAG) -o ov511.o ov511_core.o $(COMP_OBJS)
ovfx2.o: ovfx2.c ovfx2.h ovcamchip.h compat.h
$(CC) -c $(CFLAGS) -o ovfx2.o ovfx2.c
ov511_decomp.o: ov511_decomp.c ov511.h compat.h
$(CC) -c $(CFLAGS) ov511_decomp.c
ov518_decomp.o: ov518_decomp.c ov511.h compat.h
$(CC) -c $(CFLAGS) ov518_decomp.c
saa7111-new.o: saa7111-new.c compat.h
$(CC) -c $(CFLAGS) saa7111-new.c
tuner.o: tuner.c tuner.h audiochip.h id.h compat.h
$(CC) -c $(CFLAGS) tuner.c
tda7313.o: tda7313.c audiochip.h id.h compat.h
$(CC) -c $(CFLAGS) tda7313.c
endif # End kernel version test
############################ 2.6 kernel compile ###############################
ifeq ($(shell uname -r | cut -d . -f 1-2),2.6)
ifneq ($(KERNELRELEASE),)
# We were called by kbuild
obj-m += ovcamchip.o
obj-m += ov511.o
obj-m += ovfx2.o
obj-m += saa7111-new.o
obj-m += tuner.o
obj-m += tda7313.o
ovcamchip-objs := ovcamchip_core.o ov6x20.o ov6x30.o ov7x10.o ov7x20.o ov76be.o
ov511-objs := ov511_core.o ov511_decomp.o ov518_decomp.o
EXTRA_CFLAGS = -DCONFIG_OV511_DECOMP -DCONFIG_OV518_DECOMP
else # We were called from command line
KDIR := /lib/modules/$(shell uname -r)/build
PWD := $(shell pwd)
default:
@echo ' Building OVCam drivers for 2.6 kernel.'
@echo ' PLEASE IGNORE THE "Overriding SUBDIRS" WARNING'
$(MAKE) -C $(KDIR) SUBDIRS=$(PWD) modules
install:
./do_install.sh *.ko
endif # End kbuild check
endif # End kernel version test
######################### Version independent targets ##########################
clean:
rm -f *.o *.ko *.mod.* .[a-z]* core *.i
Thanks in advance.