Commit 5d1fe0c9 authored by Forest Bond's avatar Forest Bond Committed by Greg Kroah-Hartman
Browse files

Staging: vt6656: Integrate vt6656 into build system.



Integrate drivers/staging/vt6656 into build system.

Signed-off-by: default avatarForest Bond <forest@alittletooquiet.net>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent f4a8df99
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -123,6 +123,8 @@ source "drivers/staging/serqt_usb2/Kconfig"

source "drivers/staging/vt6655/Kconfig"

source "drivers/staging/vt6656/Kconfig"

source "drivers/staging/cpc-usb/Kconfig"

source "drivers/staging/pata_rdc/Kconfig"
+1 −0
Original line number Diff line number Diff line
@@ -43,6 +43,7 @@ obj-$(CONFIG_LINE6_USB) += line6/
obj-$(CONFIG_USB_SERIAL_QUATECH2)	+= serqt_usb2/
obj-$(CONFIG_OCTEON_ETHERNET)	+= octeon/
obj-$(CONFIG_VT6655)		+= vt6655/
obj-$(CONFIG_VT6656)		+= vt6656/
obj-$(CONFIG_USB_CPC)		+= cpc-usb/
obj-$(CONFIG_RDC_17F3101X)	+= pata_rdc/
obj-$(CONFIG_FB_UDL)		+= udlfb/
+5 −0
Original line number Diff line number Diff line
config VT6656
	tristate "VIA Technologies VT6656 support"
	---help---
	This is a vendor-written driver for VIA VT6656.
+39 −204
Original line number Diff line number Diff line
#
# Build options:
#
#

HOSTAP := 1


KSP := 	/lib/modules/$(shell uname -r)/build \
	/usr/src/linux-$(shell uname -r) \
	/usr/src/linux-$(shell uname -r | sed 's/-.*//') \
	/usr/src/kernel-headers-$(shell uname -r) \
	/usr/src/kernel-source-$(shell uname -r) \
	/usr/src/linux-$(shell uname -r | sed 's/\([0-9]*\.[0-9]*\)\..*/\1/') \
	/usr/src/linux

test_dir = $(shell [ -e $(dir)/include/linux ] && echo $(dir))
KSP := $(foreach dir, $(KSP), $(test_dir))

KSRC := $(firstword $(KSP))

ifeq (,$(KSRC))
  $(error Linux kernel source not found)
endif

# check kernel version
KVER := $(shell uname -r | cut -c1-3 | sed 's/2\.[56]/2\.6/')
KERVER2=$(shell uname -r | cut -d. -f2)

ifeq ($(KVER), 2.6)
# 2.6 kernel
TARGET = vntwusb.ko

else
TARGET = vntwusb.o

endif

INSTDIR	:= $(shell find /lib/modules/$(shell uname -r) -name $(TARGET) -printf "%h\n" | sort | head -1)
ifeq (,$(INSTDIR))
	ifeq (,$(KERVER2))
		ifneq (,$(wildcard /lib/modules/$(shell uname -r)/kernel))
			INSTDIR := /lib/modules/$(shell uname -r)/kernel/drivers/net
		else
			INSTDIR := /lib/modules/$(shell uname -r)/net
		endif
	else
		ifneq ($(KERVER2),2)
			INSTDIR := /lib/modules/$(shell uname -r)/kernel/drivers/net
		else
			INSTDIR := /lib/modules/$(shell uname -r)/net
		endif
	endif
endif


SRC = main_usb.c card.c mac.c baseband.c wctl.c 80211mgr.c \
      wcmd.c wmgr.c bssdb.c  wpa2.c rxtx.c dpc.c power.c datarate.c \
      mib.c rc4.c tether.c tcrc.c ioctl.c hostap.c wpa.c key.c \
      tkip.c michael.c rf.c iwctl.c wpactl.c aes_ccmp.c \
      usbpipe.c channel.c control.c firmware.c int.c


ifeq ($(HOSTAP), 1)
#  CFLAGS += -DHOSTAP
# TODO: all of these should be removed
EXTRA_CFLAGS += -DLINUX -D__KERNEL__ -DMODULE  -DEXPORT_SYMTAB -D__NO_VERSION__
EXTRA_CFLAGS += -DHOSTAP
endif


#CFLAGS += -I$(PWD) -I$(PWD)/../include -I$(PWD)/include
EXTRA_CFLAGS += -I$(PWD) -I$(PWD)/../include -I$(PWD)/include

# build rule
ifeq ($(KVER), 2.6)
# 2.6 kernel

ifndef KERNEL_CONF
KERNEL_CONF=	$(KSRC)/.config
endif

include ${KERNEL_CONF}

obj-m += vntwusb.o

vntwusb-objs :=	main_usb.o card.o mac.o baseband.o wctl.o 80211mgr.o \
	wcmd.o wmgr.o bssdb.o rxtx.o dpc.o power.o datarate.o  \
	mib.o rc4.o tether.o tcrc.o ioctl.o hostap.o wpa.o key.o tkip.o \
	michael.o rf.o iwctl.o wpactl.o wpa2.o aes_ccmp.o  \
	usbpipe.o channel.o control.o firmware.o int.o

.c.o:
#	$(CC) $(CFLAGS) -o $@ $<
	$(CC) $(EXTRA_CFLAGS) -o $@ $<

default:
	make -C $(KSRC) SUBDIRS=$(shell pwd) modules

else

# 2.2/2.4 kernel
OBJS :=	main_usb.o card.o mac.o baseband.o wctl.o 80211mgr.o \
	wcmd.o wmgr.o bssdb.o rxtx.o dpc.o power.o datarate.o \
	mib.o rc4.o tether.o tcrc.o ioctl.o hostap.o wpa.o key.o tkip.o \
	michael.o rf.o iwctl.o wpactl.o wpa2.o aes_ccmp.o  \
	usbpipe.o channel.o control.o

VERSION_FILE := $(KSRC)/include/linux/version.h
CONFIG_FILE  := $(KSRC)/include/linux/config.h


ifeq (,$(wildcard $(VERSION_FILE)))
  $(error Linux kernel source not configured - missing version.h)
endif

ifeq (,$(wildcard $(CONFIG_FILE)))
  $(error Linux kernel source not configured - missing config.h)
endif

ifneq (,$(findstring egcs-2.91.66, $(shell cat /proc/version)))
  CC := kgcc gcc cc
else
  CC := gcc cc
endif

test_cc = $(shell which $(cc) > /dev/null 2>&1 && echo $(cc))
CC := $(foreach cc, $(CC), $(test_cc))
CC := $(firstword $(CC))

#CFLAGS += -Wall -DLINUX -D__KERNEL__ -DMODULE  -DEXPORT_SYMTAB -D__NO_VERSION__ -O2 -pipe
#CFLAGS += -I$(KSRC)/include -Wstrict-prototypes -fomit-frame-pointer -fno-strict-aliasing
#CFLAGS += $(shell [ -f $(KSRC)/include/linux/modversions.h ] && \
#            echo "-DMODVERSIONS -include $(KSRC)/include/linux/modversions.h")
EXTRA_CFLAGS += -Wall -DLINUX -D__KERNEL__ -DMODULE  -DEXPORT_SYMTAB -D__NO_VERSION__ -O2 -pipe
EXTRA_CFLAGS += -I$(KSRC)/include -Wstrict-prototypes -fomit-frame-pointer -fno-strict-aliasing
EXTRA_CFLAGS += $(shell [ -f $(KSRC)/include/linux/modversions.h ] && \
            echo "-DMODVERSIONS -include $(KSRC)/include/linux/modversions.h")

.SILENT: $(TARGET) clean


# look for SMP in config.h
#SMP := $(shell $(CC) $(CFLAGS) -E -dM $(CONFIG_FILE) | \
#         grep CONFIG_SMP | awk '{ print $$3 }')
SMP := $(shell $(CC) $(EXTRA_CFLAGS) -E -dM $(CONFIG_FILE) | \
         grep CONFIG_SMP | awk '{ print $$3 }')
ifneq ($(SMP),1)
  SMP := 0
endif


ifeq ($(SMP), 1)
#  CFLAGS += -D__SMP__
  EXTRA_CFLAGS += -D__SMP__
endif



# check x86_64
SUBARCH := $(shell uname -m)
ifeq ($(SUBARCH),x86_64)
#    CFLAGS += -mcmodel=kernel -mno-red-zone
    EXTRA_CFLAGS += -mcmodel=kernel -mno-red-zone
endif


$(TARGET): $(filter-out $(TARGET), $(SRC:.c=.o))
	$(LD) -r $^ -o $@
	echo; echo
	echo "**************************************************"
	echo "Build options:"
	echo "   VERSION    $(KVER)"
	echo -n "   SMP             "
	if [ "$(SMP)" = "1" ]; \
		then echo "Enabled"; else echo "Disabled"; fi



endif # ifeq ($(KVER),2.6)


ifeq ($(KVER), 2.6)
install: default
else
install: clean $(TARGET)
endif
	mkdir -p $(MOD_ROOT)$(INSTDIR)
	install -m 644 -o root $(TARGET) $(MOD_ROOT)$(INSTDIR)

ifeq (,$(MOD_ROOT))
	/sbin/depmod -a || true
else
	/sbin/depmod -b $(MOD_ROOT) -a || true
endif


uninstall:
	rm -f $(INSTDIR)/$(TARGET)
	/sbin/depmod -a

clean:
	rm -f $(TARGET) $(SRC:.c=.o) *~  *.o
	rm -f .*.o.d .*.o.cmd .*.ko.cmd *.mod.c *.mod.o

-include .depend.mak
vt6656-y +=	main_usb.o \
			card.o  \
			mac.o   \
			baseband.o \
			wctl.o  \
			80211mgr.o \
			wcmd.o\
			wmgr.o \
			bssdb.o \
			wpa2.o \
			rxtx.o \
			dpc.o \
			power.o \
			datarate.o \
			mib.o \
			rc4.o \
			tether.o \
			tcrc.o \
			ioctl.o \
			hostap.o \
			wpa.o \
			key.o \
			tkip.o \
			michael.o \
			rf.o \
			iwctl.o \
			wpactl.o \
			aes_ccmp.o \
			usbpipe.o \
			channel.o \
			control.o \
			firmware.o \
			int.o

obj-$(CONFIG_VT6656) +=	vt6656.o