blob: ade4a640008b7ea2032e659f1755dea0869c0386 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
|
#$Id: Makefile,v 1.36 2004/08/01 22:52:38 jal2 Exp $
VERSION = 0.12beta14
CC=gcc
KERNEL_VERSION = $(shell uname -r)
KERNEL_SRC = /lib/modules/$(KERNEL_VERSION)/build
KERNEL_HEADERS = $(KERNEL_SRC)/include
FW_DL=
# compile for firmware download from user space
# if no firmware header files are available
ifeq ($(wildcard fw-pkg*.h),)
FW_DL += -DCONFIG_AT76C503_FIRMWARE_DOWNLOAD
DVERSION = $(VERSION)-fwdl
else
DVERSION = $(VERSION)
endif
MODULES = at76c503.o usbdfu.o at76c503-i3861.o at76c503-rfmd.o at76c503-rfmd-acc.o \
at76c505-rfmd.o at76c503-i3863.o at76c505-rfmd2958.o at76c505a-rfmd2958.o
SRCS = at76c503.c usbdfu.c at76c503-rfmd.c at76c505-rfmd.c at76c503-rfmd-acc.c \
at76c503-i3861.c at76c503-i3863.c at76c505-rfmd2958.c at76c505a-rfmd2958.c
HDRS = at76c503.h ieee802_11.h usbdfu.h at76c503-fw_skel.c fw-empty.h
FW_HDRS= fw-pkg-505-rfmd2958-1.101.0-86.h fw-pkg-i3863.h \
fw-pkg-rfmd-1.101.0-84.h fw-pkg-i3861.h \
fw-pkg-rfmd-0.90.2-140.h \
fw-pkg-r505.h fw-pkg-rfmd-acc-1.101.0-84.h \
fw-pkg-505a-rfmd2958-1.102.0-113.h
SCRIPTS = fwbin2h fwbin2pkg.sh fwconvert fwversion
DISTFILES = $(SRCS) $(HDRS) $(FW_HDRS) Makefile README COPYING \
CHANGELOG gen_fw.c
TOPDISTFILES =
DISTNAME = at76c503-$(VERSION)
DISTDIR = ../dist
# delete any old module in this tree before installing a new one
DEL_MODULE_DIR = $(DESTDIR)/lib/modules/$(KERNEL_VERSION)
MODULE_DIR = $(DESTDIR)/lib/modules/$(KERNEL_VERSION)/kernel/drivers/usb/
DEPMOD = /sbin/depmod
# if Rules.make exists in the kernel tree, we assume 2.4 style modules
# if it doesn't assume 2.5 style
OLDMAKE = $(wildcard $(KERNEL_SRC)/Rules.make)
ifeq (,$(OLDMAKE))
# 2.5 style modules, get the kernel makefiles to do the work
SRCDIR = $(shell pwd)
MODVERDIR = $(SRCDIR)/.tmp_versions
obj-m := $(MODULES)
all: modules
modules:
mkdir -p .tmp_versions
-cp $(KERNEL_SRC)/.tmp_versions/*.mod $(MODVERDIR)
$(MAKE) -C $(KERNEL_SRC) SUBDIRS=$(SRCDIR) MODVERDIR=$(MODVERDIR) \
EXTRA_CFLAGS="-g -DDRIVER_VERSION=\\\"v$(DVERSION)\\\" $(FW_DL)" modules
mv_old:
for i in $(MODULES:%.o=%.ko); do \
find $(DEL_MODULE_DIR) -name $$i -exec mv {} {}.orig \; ;done
install: all mv_old
mkdir -p $(MODULE_DIR)
# for i in $(MODULES:%.o=%.ko); do find $(DEL_MODULE_DIR) -name $$i -exec mv $$i $$i.orig \; done
install -m 644 -o 0 -g 0 $(MODULES:%.o=%.ko) $(MODULE_DIR)
$(DEPMOD) -ae
uninstall:
for f in $(MODULES:%.o=%.ko); do rm $(MODULE_DIR)/$$f; done
else
# 2.4 style modules
CPPFLAGS = -D__KERNEL__ \
-DMODULE -DEXPORT_SYMTAB \
-DDRIVER_VERSION=\"v$(DVERSION)\" \
-I$(KERNEL_HEADERS)
CFLAGS = -O2 -Wall -Wstrict-prototypes -pipe -fno-strict-aliasing \
$(FW_DL) \
-fno-common -Wno-sign-compare -Wno-unused
MODVER = $(shell if cat $(KERNEL_HEADERS)/linux/autoconf.h 2>/dev/null | \
grep -q '^[[:space:]]*\#define[[:space:]]*CONFIG_MODVERSIONS[[:space:]]*1'; \
then echo 1; else echo 0; fi)
ifeq ($(MODVER),1)
MFLAG = -DMODVERSIONS -include $(KERNEL_HEADERS)/linux/modversions.h
endif
CCDEP = $(CC) $(CFLAGS) -M
TAR = tar
all: $(MODULES)
mv_old:
for i in $(MODULES); do \
find $(DEL_MODULE_DIR) -name $$i -exec mv {} {}.orig \; ;done
install: all mv_old
mkdir -p $(MODULE_DIR)
for f in $(MODULES); do install -m 644 -o 0 -g 0 $$f $(MODULE_DIR)/$$f; done
/sbin/depmod -a
uninstall:
for f in $(MODULES); do rm $(MODULE_DIR)/$$f; done
.PHONY: dist
%.o: %.c
$(CC) -MD $(CFLAGS) $(CPPFLAGS) $(MFLAG) -c $<
%.s: %.c
$(CC) -MD $(CFLAGS) $(CPPFLAGS) -S $<
%.i: %.c
$(CC) -MD $(CPPFLAGS) -E $< -o $@
-include $(SRCS:%.c=%.d)
endif
TAGS:
rm -f TAGS
etags --append $(SRCS) $(HDRS)
clean:
rm -f core *.o *~ a.out *.d
rm -f *.ko *.mod.c .*.cmd
rm -f *.s *.i
rm -rf .tmp_versions
dist:
[ -d $(DISTNAME) ] && rm -rf $(DISTNAME) || true
mkdir $(DISTNAME)
cp -aR $(DISTFILES) $(DISTNAME)
mkdir $(DISTNAME)/scripts
(cd scripts ; cp -aR $(SCRIPTS) ../$(DISTNAME)/scripts)
tar zcvf $(DISTNAME).tar.gz $(DISTNAME)
cd $(DISTNAME) ; rm $(FW_HDRS) ; cd ..
mv $(DISTNAME) $(DISTNAME)-fwdl
tar zcvf $(DISTNAME)-fwdl.tar.gz $(DISTNAME)-fwdl
rm -rf $(DISTNAME)-fwdl
|