Improved autorebuild for kernel related stuff.
[openwrt-10.03/.git] / package / kernel / modules / usb.mk
1
2 # Copyright (C) 2006 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7 # $Id$
8
9 USBMENU:=USB Support
10
11 define KernelPackage/usb-core
12   TITLE:=Support for USB
13   DESCRIPTION:=Kernel support for USB
14   DEPENDS:=@USB_SUPPORT
15   KCONFIG:=$(CONFIG_USB)
16   SUBMENU:=$(USBMENU)
17   AUTOLOAD:=$(call AutoLoad,20,usbcore)
18 endef
19
20 define KernelPackage/usb-core/2.4
21   FILES:=$(LINUX_DIR)/drivers/usb/usbcore.$(LINUX_KMOD_SUFFIX)
22 endef
23
24 define KernelPackage/usb-core/2.6
25   FILES:=$(LINUX_DIR)/drivers/usb/core/usbcore.$(LINUX_KMOD_SUFFIX)
26 endef
27 $(eval $(call KernelPackage,usb-core))
28
29
30 define KernelPackage/usb-uhci
31   TITLE:=Support for UHCI controllers
32   DESCRIPTION:=Kernel support for USB UHCI controllers
33   DEPENDS:=kmod-usb-core
34   SUBMENU:=$(USBMENU)
35 endef
36
37 define KernelPackage/usb-uhci/2.4
38   FILES:=$(LINUX_DIR)/drivers/usb/host/uhci.o
39   KCONFIG:=$(CONFIG_USB_UHCI_ALT)
40   AUTOLOAD:=$(call AutoLoad,50,uhci)
41 endef
42
43 define KernelPackage/usb-uhci/2.6
44   FILES:=$(LINUX_DIR)/drivers/usb/host/uhci-hcd.ko
45   KCONFIG:=$(CONFIG_USB_UHCI_HCD)
46   AUTOLOAD:=$(call AutoLoad,50,uhci-hcd)
47 endef
48 $(eval $(call KernelPackage,usb-uhci))
49
50 define KernelPackage/usb-uhci-iv
51   TITLE:=Support for Intel/VIA UHCI controllers 
52   DESCRIPTION:=Kernel support for Intel/VIA USB UHCI controllers
53   DEPENDS:=kmod-usb-core @LINUX_2_4
54   SUBMENU:=$(USBMENU)
55 endef 
56
57 define KernelPackage/usb-uhci-iv/2.4
58   FILES:=$(LINUX_DIR)/drivers/usb/host/usb-uhci.$(LINUX_KMOD_SUFFIX)
59   KCONFIG:=$(CONFIG_USB_UHCI)
60   AUTOLOAD:=$(call AutoLoad,50,usb-uhci) 
61 endef 
62 $(eval $(call KernelPackage,usb-uhci-iv)) 
63
64 define KernelPackage/usb-ohci
65   TITLE:=Support for OHCI controllers
66   DESCRIPTION:=Kernel support for USB OHCI controllers
67   DEPENDS:=kmod-usb-core
68   SUBMENU:=$(USBMENU)
69 endef
70
71 define KernelPackage/usb-ohci/2.4
72   FILES:=$(LINUX_DIR)/drivers/usb/host/usb-ohci.o
73   KCONFIG:=$(CONFIG_USB_OHCI)
74   AUTOLOAD:=$(call AutoLoad,50,usb-ohci)
75 endef
76
77 define KernelPackage/usb-ohci/2.6
78   FILES:=$(LINUX_DIR)/drivers/usb/host/ohci-hcd.ko
79   KCONFIG:=$(CONFIG_USB_OHCI_HCD)
80   AUTOLOAD:=$(call AutoLoad,50,ohci-hcd)
81 endef
82 $(eval $(call KernelPackage,usb-ohci))
83
84 define KernelPackage/usb2
85   TITLE:=Support for USB2 controllers
86   DESCRIPTION:=Kernel support for USB2 (EHCI) controllers
87   DEPENDS:=kmod-usb-core
88   KCONFIG:=$(CONFIG_USB)
89   SUBMENU:=$(USBMENU)
90   FILES:=$(LINUX_DIR)/drivers/usb/host/ehci-hcd.$(LINUX_KMOD_SUFFIX)
91   KCONFIG:=$(CONFIG_USB_EHCI_HCD)
92   AUTOLOAD:=$(call AutoLoad,50,ehci-hcd)
93 endef
94 $(eval $(call KernelPackage,usb2))
95
96
97 define usbdep
98   SUBMENU:=$(USBMENU)
99   DEPENDS:=kmod-usb-core $(1)
100 endef
101
102
103 define KernelPackage/usb-acm
104   $(call usbdep,)
105   TITLE:=Support for modems/isdn controllers
106   DESCRIPTION:=Kernel support for USB ACM devices (modems/isdn controllers)
107   KCONFIG:=$(CONFIG_USB_ACM)
108 endef
109
110 define KernelPackage/usb-acm/2.4
111   FILES:=$(LINUX_DIR)/drivers/usb/acm.o
112   AUTOLOAD:=$(call AutoLoad,60,acm)
113 endef
114
115 define KernelPackage/usb-acm/2.6
116   FILES:=$(LINUX_DIR)/drivers/usb/class/cdc-acm.ko
117   AUTOLOAD:=$(call AutoLoad,60,cdc-acm)
118 endef
119 $(eval $(call KernelPackage,usb-acm))
120
121
122 define KernelPackage/usb-audio
123   $(call usbdep,+kmod-soundcore)
124   TITLE:=Support for audio devices
125   DESCRIPTION:=Kernel support for USB audio devices
126 endef
127
128 define KernelPackage/usb-audio/2.4
129   KCONFIG:=$(CONFIG_USB_AUDIO)
130   FILES:=$(LINUX_DIR)/drivers/usb/audio.o
131   AUTOLOAD:=$(call AutoLoad,60,audio)
132 endef
133
134 define KernelPackage/usb-audio/2.6
135   KCONFIG:=$(CONFIG_SND_USB_AUDIO)
136   FILES:= \
137         $(LINUX_DIR)/sound/usb/snd-usb-lib.ko \
138         $(LINUX_DIR)/sound/usb/snd-usb-audio.ko
139   AUTOLOAD:=$(call AutoLoad,60,snd-usb-lib snd-usb-audio)
140 endef
141 $(eval $(call KernelPackage,usb-audio))
142
143
144 define KernelPackage/usb-printer
145   $(call usbdep,)
146   TITLE:=Support for printers
147   DESCRIPTION:=Kernel support for USB printers
148   KCONFIG:=$(CONFIG_USB_PRINTER)
149 endef
150
151 define KernelPackage/usb-printer/2.4
152   FILES:=$(LINUX_DIR)/drivers/usb/printer.o
153   AUTOLOAD:=$(call AutoLoad,60,printer)
154 endef
155
156 define KernelPackage/usb-printer/2.6
157   FILES:=$(LINUX_DIR)/drivers/usb/class/usblp.ko
158   AUTOLOAD:=$(call AutoLoad,60,usblp)
159 endef
160 $(eval $(call KernelPackage,usb-printer))
161
162
163 define KernelPackage/usb-serial
164   $(call usbdep,)
165   TITLE:=Support for USB-to-Serial converters
166   DESCRIPTION:=Kernel support for USB-to-Serial converters
167   KCONFIG:=$(CONFIG_USB_SERIAL)
168   FILES:=$(LINUX_DIR)/drivers/usb/serial/usbserial.$(LINUX_KMOD_SUFFIX)
169   AUTOLOAD:=$(call AutoLoad,60,usbserial)
170 endef
171 $(eval $(call KernelPackage,usb-serial))
172
173
174 define KernelPackage/usb-serial-belkin
175   TITLE:=Support for Belkin devices
176   DESCRIPTION:=Kernel support for Belkin USB-to-Serial converters
177   DEPENDS:=kmod-usb-serial
178   SUBMENU:=$(USBMENU)
179   KCONFIG:=$(CONFIG_USB_SERIAL_BELKIN)
180   FILES:=$(LINUX_DIR)/drivers/usb/serial/belkin_sa.$(LINUX_KMOD_SUFFIX)
181   AUTOLOAD:=$(call AutoLoad,65,belkin_sa)
182 endef
183 $(eval $(call KernelPackage,usb-serial-belkin))
184
185
186 define KernelPackage/usb-serial-ftdi
187   TITLE:=Support for FTDI devices
188   DESCRIPTION:=Kernel support for FTDI USB-to-Serial converters
189   DEPENDS:=kmod-usb-serial
190   SUBMENU:=$(USBMENU)
191   KCONFIG:=$(CONFIG_USB_SERIAL_FTDI_SIO)
192   FILES:=$(LINUX_DIR)/drivers/usb/serial/ftdi_sio.$(LINUX_KMOD_SUFFIX)
193   AUTOLOAD:=$(call AutoLoad,65,ftdi_sio)
194 endef
195 $(eval $(call KernelPackage,usb-serial-ftdi))
196
197
198 define KernelPackage/usb-serial-mct
199   TITLE:=Support for Magic Control Tech. devices
200   DESCRIPTION:=Kernel support for Magic Control Technology USB-to-Serial converters
201   DEPENDS:=kmod-usb-serial
202   SUBMENU:=$(USBMENU)
203   KCONFIG:=$(CONFIG_USB_SERIAL_MCT_U232)
204   FILES:=$(LINUX_DIR)/drivers/usb/serial/mct_u232.$(LINUX_KMOD_SUFFIX)
205   AUTOLOAD:=$(call AutoLoad,65,mct_u232)
206 endef
207 $(eval $(call KernelPackage,usb-serial-mct))
208
209 define KernelPackage/usb-serial-pl2303
210   TITLE:=Support for Prolific PL2303 devices
211   DESCRIPTION:=Kernel support for Prolific PL2303 USB-to-Serial converters
212   DEPENDS:=kmod-usb-serial
213   SUBMENU:=$(USBMENU)
214   KCONFIG:=$(CONFIG_USB_SERIAL_PL2303)
215   FILES:=$(LINUX_DIR)/drivers/usb/serial/pl2303.$(LINUX_KMOD_SUFFIX)
216   AUTOLOAD:=$(call AutoLoad,65,pl2303)
217 endef
218 $(eval $(call KernelPackage,usb-serial-pl2303))
219
220
221 define KernelPackage/usb-serial-visor
222   TITLE:=Support for Handspring Visor devices
223   DESCRIPTION:=Kernel support for Handspring Visor PDAs
224   DEPENDS:=kmod-usb-serial
225   SUBMENU:=$(USBMENU)
226   KCONFIG:=$(CONFIG_USB_SERIAL_VISOR)
227   FILES:=$(LINUX_DIR)/drivers/usb/serial/visor.$(LINUX_KMOD_SUFFIX)
228   AUTOLOAD:=$(call AutoLoad,65,visor)
229 endef
230 $(eval $(call KernelPackage,usb-serial-visor))
231
232
233 define KernelPackage/usb-storage
234   $(call usbdep,)
235   TITLE:=USB Storage support
236   DESCRIPTION:=Kernel support for USB Mass Storage devices
237   KCONFIG:=$(CONFIG_USB_STORAGE)
238   FILES:= \
239         $(LINUX_DIR)/drivers/usb/storage/usb-storage.$(LINUX_KMOD_SUFFIX)
240   AUTOLOAD:=$(call AutoLoad,60,scsi_mod sd_mod usb-storage)
241   DEPENDS:=+kmod-scsi-core
242 endef
243 $(eval $(call KernelPackage,usb-storage))
244
245
246
247 define KernelPackage/usb-speedtouch
248   $(call usbdep,@LINUX_2_6 kmod-atm)
249   TITLE:=Support for SpeedTouch ADSL modems
250   DESCRIPTION:=Kernel support for SpeedTouch USB ADSL modems
251   KCONFIG:=$(CONFIG_USB_SPEEDTOUCH)
252   FILES:= \
253         $(LINUX_DIR)/drivers/usb/atm/usbatm.$(LINUX_KMOD_SUFFIX) \
254         $(LINUX_DIR)/drivers/usb/atm/speedtch.$(LINUX_KMOD_SUFFIX)
255   AUTOLOAD:=$(call AutoLoad,70,usbatm speedtch)
256 endef
257 $(eval $(call KernelPackage,usb-speedtouch))
258
259
260 define KernelPackage/usb-pwc
261   $(call usbdep,+kmod-videodev)
262   TITLE:=Philips WebCam driver
263   DESCRIPTION:=Kernel modules for supporting Philips WebCam USB devices
264   KCONFIG:=$(CONFIG_USB_PWC)
265   AUTOLOAD:=$(call AutoLoad,70,pwc)
266 endef
267
268 define KernelPackage/usb-pwc/2.4
269   FILES:=$(LINUX_DIR)/drivers/usb/pwc.$(LINUX_KMOD_SUFFIX)
270 endef
271
272 $(eval $(call KernelPackage,usb-pwc))
273
274 define KernelPackage/usb-net
275   $(call usbdep,)
276   TITLE:=Kernel modules for USB-to-Ethernet convertors
277   DESCRIPTION:=Kernel modules for USB-to-Ethernet convertors
278   KCONFIG:=$(CONFIG_USB_USBNET)
279   DEPENDS:=@USB_SUPPORT
280   AUTOLOAD:=$(call Autoload,60, usbnet)
281 endef
282
283 define KernelPackage/usb-net/2.4
284   FILES:=$(LINUX_DIR)/drivers/usb/usbnet.$(LINUX_KMOD_SUFFIX)
285 endef
286
287 define KernelPackage/usb-net/2.6
288   FILES:=$(LINUX_DIR)/drivers/usb/net/usbnet.$(LINUX_KMOD_SUFFIX)
289 endef
290
291 $(eval $(call KernelPackage,usb-net))
292
293 define KernelPackage/usb-net-asix
294   $(call usbdep,+kmod-usbnet)
295   TITLE:=Kernel module for USB-to-Ethernet Asix convertors
296   DESCRIPTION:=Kernel module for USB-to-Ethernet Asix convertors
297   DEPENDS:=kmod-usb-net
298   KCONFIG:=$(CONFIG_USB_NET_AX8817X)
299 endef
300
301 define KernelPackage/usb-net-asix/2.4
302   FILES:=$(LINUX_DIR)/drivers/usb/ax8817x.$(LINUX_KMOD_SUFFIX)
303   AUTOLOAD:=$(call Autoload,61,ax8817x)
304 endef
305
306 define KernelPackage/usb-net-asix/2.6
307   FILES:=$(LINUX_DIR)/drivers/usb/net/asix.$(LINUX_KMOD_SUFFIX)
308   AUTOLOAD:=$(call Autoload,61,asix)
309 endef
310
311 $(eval $(call KernelPackage,usb-net-asix))