summaryrefslogtreecommitdiffstats
path: root/package/rt2x00/Makefile
blob: 6f99259a767281fe804d374b98887dc6a9fe57f4 (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
# 
# Copyright (C) 2007 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
# $Id: $

include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/kernel.mk

PKG_NAME:=rt2x00
PKG_VERSION:=cvs-20070712

include $(INCLUDE_DIR)/package.mk

define Package/rt2x00/Default
  SUBMENU:=Wireless Drivers
  TITLE:=Ralink GPL Drivers
  DEPENDS:=@LINUX_2_6
  KCONFIG:=CONFIG_MAC80211
  DESCRIPTION:=Ralink GPL Drivers for rt2x00 cards
  VERSION:=$(LINUX_VERSION)+$(PKG_VERSION)-$(BOARD)-$(LINUX_RELEASE)
endef

define KernelPackage/rt2x00-lib
  $(call Package/rt2x00/Default)
  DEPENDS+= +kmod-mac80211 +kmod-crypto
  TITLE+= (LIB)
  DESCRIPTION+= (LIB)
  FILES:=$(PKG_BUILD_DIR)/rt2x00lib.$(LINUX_KMOD_SUFFIX)
  AUTOLOAD:=$(call AutoLoad,25,ecb arc4 rt2x00lib)
endef

define KernelPackage/rt2x00-pci
  $(call Package/rt2x00/Default)
  DEPENDS+= @PCI_SUPPORT +kmod-rt2x00-lib
  TITLE+= (PCI)
  DESCRIPTION+= (PCI)
  FILES:=$(PKG_BUILD_DIR)/rt2x00pci.$(LINUX_KMOD_SUFFIX)
  AUTOLOAD:=$(call AutoLoad,26,rt2x00pci)
endef

define KernelPackage/rt2x00-usb
  $(call Package/rt2x00/Default)
  DEPENDS+= @USB_SUPPORT +kmod-rt2x00-lib +kmod-usb-core
  TITLE+= (USB)
  DESCRIPTION+= (USB)
  FILES:=$(PKG_BUILD_DIR)/rt2x00usb.$(LINUX_KMOD_SUFFIX)
  AUTOLOAD:=$(call AutoLoad,26,rt2x00usb)
endef

define KernelPackage/rt2400-pci
  $(call Package/rt2x00/Default)
  DEPENDS+= +kmod-rt2x00-pci
  TITLE+= (RT2400 PCI)
  DESCRIPTION+= (RT2400 PCI)
  FILES:=$(PKG_BUILD_DIR)/rt2400pci.$(LINUX_KMOD_SUFFIX)
  AUTOLOAD:=$(call AutoLoad,27,rt2400pci)
endef

define KernelPackage/rt2500-pci
  $(call Package/rt2x00/Default)
  DEPENDS+= +kmod-rt2x00-pci
  TITLE+= (RT2500 PCI)
  DESCRIPTION+= (RT2500 PCI)
  FILES:=$(PKG_BUILD_DIR)/rt2500pci.$(LINUX_KMOD_SUFFIX)
  AUTOLOAD:=$(call AutoLoad,27,rt2500pci)
endef

define KernelPackage/rt2500-usb
  $(call Package/rt2x00/Default)
  DEPENDS+= +kmod-rt2x00-usb
  TITLE+= (RT2500 USB)
  DESCRIPTION+= (RT2500 USB)
  FILES:=$(PKG_BUILD_DIR)/rt2500usb.$(LINUX_KMOD_SUFFIX)
  AUTOLOAD:=$(call AutoLoad,27,rt2500usb)
endef

define KernelPackage/rt61-pci
  $(call Package/rt2x00/Default)
  DEPENDS+= +kmod-rt2x00-pci
  TITLE+= (RT2x61 PCI)
  DESCRIPTION+= (RT2x61 PCI)
  FILES:=$(PKG_BUILD_DIR)/rt61pci.$(LINUX_KMOD_SUFFIX)
  AUTOLOAD:=$(call AutoLoad,27,rt61pci)
endef

define KernelPackage/rt61-pci/install
	mkdir -p $(1)/lib/firmware
	$(CP) -L $(PKG_BUILD_DIR)/rt2?61*.bin $(1)/lib/firmware
endef

define KernelPackage/rt73-usb
  $(call Package/rt2x00/Default)
  DEPENDS+= +kmod-rt2x00-usb
  TITLE+= (RT73 USB)
  DESCRIPTION+= (RT73 USB)
  FILES:=$(PKG_BUILD_DIR)/rt73usb.$(LINUX_KMOD_SUFFIX)
  AUTOLOAD:=$(call AutoLoad,27,rt73usb)
endef

define KernelPackage/rt73-usb/install
	mkdir -p $(1)/lib/firmware
	$(CP) -L $(PKG_BUILD_DIR)/rt73.bin $(1)/lib/firmware
endef

define Build/Prepare
	$(call Build/Prepare/Default)
	$(CP) -r src/* $(PKG_BUILD_DIR)/
	wget -N -P $(DL_DIR) http://www.ralinktech.com.tw/data/RT61_Firmware_V1.2.zip
	wget -N -P $(DL_DIR) http://www.ralinktech.com.tw/data/RT71W_Firmware_V1.8.zip
	unzip -jod $(PKG_BUILD_DIR) $(DL_DIR)/RT61_Firmware_V1.2.zip
	unzip -jod $(PKG_BUILD_DIR) $(DL_DIR)/RT71W_Firmware_V1.8.zip
endef

define Build/Compile
	$(MAKE) -C "$(PKG_BUILD_DIR)" \
		KERNDIR="$(LINUX_DIR)" \
		config_header

	$(MAKE) -C "$(LINUX_DIR)" \
		CROSS_COMPILE="$(TARGET_CROSS)" \
		ARCH="$(LINUX_KARCH)" V="$(V)" \
		SUBDIRS="$(PKG_BUILD_DIR)" \
		KERNELVERSION="$(KERNEL)" \
		KERNEL_SOURCES="$(LINUX_DIR)" \
		KDIR="$(LINUX_DIR)"
endef

$(eval $(call KernelPackage,rt2x00-lib))
$(eval $(call KernelPackage,rt2x00-pci))
$(eval $(call KernelPackage,rt2x00-usb))
$(eval $(call KernelPackage,rt2400-pci))
$(eval $(call KernelPackage,rt2500-pci))
$(eval $(call KernelPackage,rt2500-usb))
$(eval $(call KernelPackage,rt61-pci))
$(eval $(call KernelPackage,rt73-usb))