package/kernel: add dependencies on kmod-crc16 and kmod-rfkill to kmod-bluetooth...
[openwrt/svn-archive/archive.git] / package / kernel / modules / block.mk
1 #
2 # Copyright (C) 2006-2010 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7
8 BLOCK_MENU:=Block Devices
9
10 define KernelPackage/ata-core
11 SUBMENU:=$(BLOCK_MENU)
12 TITLE:=Serial and Parallel ATA support
13 DEPENDS:=@PCI_SUPPORT @LINUX_2_6 +kmod-scsi-core @(!TARGET_ubicom32||!TARGET_etrax||!TARGET_x86)
14 KCONFIG:=CONFIG_ATA
15 FILES:=$(LINUX_DIR)/drivers/ata/libata.$(LINUX_KMOD_SUFFIX)
16 AUTOLOAD:=$(call AutoLoad,21,libata,1)
17 endef
18
19 $(eval $(call KernelPackage,ata-core))
20
21
22 define KernelPackage/ata/Depends
23 SUBMENU:=$(BLOCK_MENU)
24 DEPENDS:=!TARGET_x86:kmod-ata-core $(1)
25 endef
26
27
28 define KernelPackage/ata-ahci
29 $(call KernelPackage/ata/Depends,)
30 TITLE:=AHCI Serial ATA support
31 KCONFIG:=CONFIG_SATA_AHCI
32 FILES:=$(LINUX_DIR)/drivers/ata/ahci.$(LINUX_KMOD_SUFFIX)
33 AUTOLOAD:=$(call AutoLoad,41,ahci,1)
34 endef
35
36 define KernelPackage/ata-ahci/description
37 Support for AHCI Serial ATA controllers.
38 endef
39
40 $(eval $(call KernelPackage,ata-ahci))
41
42 define KernelPackage/ata-sil
43 $(call KernelPackage/ata/Depends,)
44 TITLE:=Silicon Image SATA support
45 KCONFIG:=CONFIG_SATA_SIL
46 FILES:=$(LINUX_DIR)/drivers/ata/sata_sil.$(LINUX_KMOD_SUFFIX)
47 AUTOLOAD:=$(call AutoLoad,41,sata_sil,1)
48 endef
49
50 define KernelPackage/ata-sil/description
51 Support for Silicon Image Serial ATA controllers.
52 endef
53
54 $(eval $(call KernelPackage,ata-sil))
55
56
57 define KernelPackage/ata-sil24
58 $(call KernelPackage/ata/Depends,)
59 TITLE:=Silicon Image 3124/3132 SATA support
60 KCONFIG:=CONFIG_SATA_SIL24
61 FILES:=$(LINUX_DIR)/drivers/ata/sata_sil24.$(LINUX_KMOD_SUFFIX)
62 AUTOLOAD:=$(call AutoLoad,41,sata_sil24,1)
63 endef
64
65 define KernelPackage/ata-sil24/description
66 Support for Silicon Image 3124/3132 Serial ATA controllers.
67 endef
68
69 $(eval $(call KernelPackage,ata-sil24))
70
71
72 define KernelPackage/ata-artop
73 $(call KernelPackage/ata/Depends,)
74 TITLE:=ARTOP 6210/6260 PATA support
75 KCONFIG:=CONFIG_PATA_ARTOP
76 FILES:=$(LINUX_DIR)/drivers/ata/pata_artop.$(LINUX_KMOD_SUFFIX)
77 AUTOLOAD:=$(call AutoLoad,41,pata_artop,1)
78 endef
79
80 define KernelPackage/ata-artop/description
81 PATA support for ARTOP 6210/6260 host controllers.
82 endef
83
84 $(eval $(call KernelPackage,ata-artop))
85
86 define KernelPackage/ata-octeon-cf
87 $(call KernelPackage/ata/Depends,@TARGET_octeon)
88 TITLE:=Octeon Compact Flash support
89 KCONFIG:=CONFIG_PATA_OCTEON_CF
90 FILES:=$(LINUX_DIR)/drivers/ata/pata_octeon_cf.$(LINUX_KMOD_SUFFIX)
91 AUTOLOAD:=$(call AutoLoad,41,pata_octeon_cf,1)
92 endef
93
94 define KernelPackage/ata-octeon-cf/description
95 Octeon Compact Flash support.
96 endef
97
98 $(eval $(call KernelPackage,ata-octeon-cf))
99
100
101 define KernelPackage/ata-ixp4xx-cf
102 $(call KernelPackage/ata/Depends,@TARGET_ixp4xx)
103 TITLE:=IXP4XX Compact Flash support
104 KCONFIG:=CONFIG_PATA_IXP4XX_CF
105 FILES:=$(LINUX_DIR)/drivers/ata/pata_ixp4xx_cf.$(LINUX_KMOD_SUFFIX)
106 AUTOLOAD:=$(call AutoLoad,41,pata_ixp4xx_cf,1)
107 endef
108
109 define KernelPackage/ata-ixp4xx-cf/description
110 IXP4XX Compact Flash support.
111 endef
112
113 $(eval $(call KernelPackage,ata-ixp4xx-cf))
114
115 define KernelPackage/ata-rb532-cf
116 $(call KernelPackage/ata/Depends,@TARGET_rb532 @BROKEN)
117 TITLE:=RB532 Compact Flash support
118 KCONFIG:= \
119 CONFIG_PATA_PLATFORM \
120 CONFIG_PATA_RB532
121 FILES:=\
122 $(LINUX_DIR)/drivers/ata/pata_platform.$(LINUX_KMOD_SUFFIX) \
123 $(LINUX_DIR)/drivers/ata/pata_rb532_cf.$(LINUX_KMOD_SUFFIX)
124 AUTOLOAD:=$(call AutoLoad,41,pata_platform pata_rb532_cf,1)
125 endef
126
127 define KernelPackage/ata-rb532-cf/description
128 RB532 Compact Flash support.
129 endef
130
131 $(eval $(call KernelPackage,ata-rb532-cf))
132
133 define KernelPackage/ata-nvidia-sata
134 $(call KernelPackage/ata/Depends,)
135 TITLE:=Nvidia Serial ATA support
136 KCONFIG:=CONFIG_SATA_NV
137 FILES:=$(LINUX_DIR)/drivers/ata/sata_nv.$(LINUX_KMOD_SUFFIX)
138 AUTOLOAD:=$(call AutoLoad,41,sata_nv,1)
139 endef
140
141 $(eval $(call KernelPackage,ata-nvidia-sata))
142
143
144 define KernelPackage/ata-magicbox-cf
145 $(call KernelPackage/ata/Depends,@TARGET_ppc40x)
146 TITLE:=Magicbox v2/OpenRB Compact flash support
147 KCONFIG:=CONFIG_PATA_MAGICBOX_CF
148 FILES:=$(LINUX_DIR)/drivers/ata/pata_magicbox_cf.$(LINUX_KMOD_SUFFIX)
149 AUTOLOAD:=$(call AutoLoad,41,pata_magicbox_cf,1)
150 endef
151
152 define KernelPackage/ata-magicbox-cf/description
153 Support for Magicbox v2/OpenRB on-board CF slot.
154 endef
155
156 $(eval $(call KernelPackage,ata-magicbox-cf))
157
158
159 define KernelPackage/ata-pdc202xx-old
160 SUBMENU:=$(BLOCK_MENU)
161 TITLE:=Older Promise PATA controller support
162 DEPENDS:=kmod-ata-core
163 KCONFIG:= \
164 CONFIG_ATA_SFF=y \
165 CONFIG_PATA_PDC_OLD
166 FILES:=$(LINUX_DIR)/drivers/ata/pata_pdc202xx_old.$(LINUX_KMOD_SUFFIX)
167 AUTOLOAD:=$(call AutoLoad,41,pata_pdc202xx_old,1)
168 endef
169
170 define KernelPackage/ata-pdc202xx-old/description
171 This option enables support for the Promise 20246, 20262, 20263,
172 20265 and 20267 adapters.
173 endef
174
175 $(eval $(call KernelPackage,ata-pdc202xx-old))
176
177
178 define KernelPackage/ata-piix
179 $(call KernelPackage/ata/Depends,)
180 TITLE:=Intel PIIX PATA/SATA support
181 KCONFIG:=CONFIG_ATA_PIIX
182 FILES:=$(LINUX_DIR)/drivers/ata/ata_piix.$(LINUX_KMOD_SUFFIX)
183 AUTOLOAD:=$(call AutoLoad,41,ata_piix,1)
184 endef
185
186 define KernelPackage/ata-piix/description
187 SATA support for Intel ICH5/6/7/8 series host controllers and
188 PATA support for Intel ESB/ICH/PIIX3/PIIX4 series host controllers.
189 endef
190
191 $(eval $(call KernelPackage,ata-piix))
192
193
194 define KernelPackage/ata-via-sata
195 $(call KernelPackage/ata/Depends,)
196 TITLE:=VIA SATA support
197 KCONFIG:=CONFIG_SATA_VIA
198 FILES:=$(LINUX_DIR)/drivers/ata/sata_via.$(LINUX_KMOD_SUFFIX)
199 AUTOLOAD:=$(call AutoLoad,41,sata_via,1)
200 endef
201
202 define KernelPackage/ata-via-sata/description
203 This option enables support for VIA Serial ATA.
204 endef
205
206 $(eval $(call KernelPackage,ata-via-sata))
207
208
209 define KernelPackage/ide-core
210 SUBMENU:=$(BLOCK_MENU)
211 TITLE:=IDE (ATA/ATAPI) device support
212 DEPENDS:=@PCI_SUPPORT
213 KCONFIG:= \
214 CONFIG_IDE \
215 CONFIG_BLK_DEV_IDE \
216 CONFIG_BLK_DEV_IDEDISK \
217 CONFIG_IDE_GD \
218 CONFIG_IDE_GD_ATA=y \
219 CONFIG_IDE_GD_ATAPI=n \
220 CONFIG_BLK_DEV_IDEDMA_PCI=y \
221 CONFIG_BLK_DEV_IDEPCI=y
222 FILES:= \
223 $(LINUX_DIR)/drivers/ide/ide-core.$(LINUX_KMOD_SUFFIX)
224 AUTOLOAD:= \
225 $(call AutoLoad,20,ide-core,1)
226 endef
227
228 define KernelPackage/ide-core/2.4
229 FILES+= \
230 $(LINUX_DIR)/drivers/ide/ide-detect.$(LINUX_KMOD_SUFFIX) \
231 $(LINUX_DIR)/drivers/ide/ide-disk.$(LINUX_KMOD_SUFFIX)
232 AUTOLOAD+= \
233 $(call AutoLoad,35,ide-detect,1) \
234 $(call AutoLoad,40,ide-disk,1)
235 endef
236
237 define KernelPackage/ide-core/2.6
238 FILES+= \
239 $(LINUX_DIR)/drivers/ide/ide-gd_mod.$(LINUX_KMOD_SUFFIX)
240 AUTOLOAD+= \
241 $(call AutoLoad,40,ide-gd_mod,1)
242 endef
243
244 define KernelPackage/ide-core/description
245 Kernel support for IDE, useful for usb mass storage devices (e.g. on WL-HDD)
246 Includes:
247 - ide-core
248 - ide-detect
249 - ide-gd_mod (or ide-disk)
250 endef
251
252 $(eval $(call KernelPackage,ide-core))
253
254
255 define KernelPackage/ide/Depends
256 SUBMENU:=$(BLOCK_MENU)
257 DEPENDS:=kmod-ide-core $(1)
258 endef
259
260
261 define KernelPackage/ide-generic
262 $(call KernelPackage/ide/Depends,@PCI_SUPPORT)
263 SUBMENU:=$(BLOCK_MENU)
264 TITLE:=Kernel support for generic PCI IDE chipsets
265 KCONFIG:=CONFIG_BLK_DEV_GENERIC
266 endef
267
268 define KernelPackage/ide-generic/2.4
269 FILES+= \
270 $(LINUX_DIR)/drivers/ide/pci/generic.$(LINUX_KMOD_SUFFIX)
271 AUTOLOAD+= \
272 $(call AutoLoad,30,generic,1)
273 endef
274
275 define KernelPackage/ide-generic/2.6
276 FILES+= \
277 $(LINUX_DIR)/drivers/ide/ide-pci-generic.$(LINUX_KMOD_SUFFIX)
278 AUTOLOAD+= \
279 $(call AutoLoad,30,ide-pci-generic,1)
280 endef
281
282 $(eval $(call KernelPackage,ide-generic))
283
284
285 define KernelPackage/ide-generic-old
286 $(call KernelPackage/ide/Depends,@LINUX_2_6)
287 SUBMENU:=$(BLOCK_MENU)
288 TITLE:=Kernel support for generic (legacy) IDE chipsets
289 KCONFIG:=CONFIG_IDE_GENERIC
290 FILES:=$(LINUX_DIR)/drivers/ide/ide-generic.$(LINUX_KMOD_SUFFIX)
291 AUTOLOAD:=$(call AutoLoad,30,ide-generic,1)
292 endef
293
294 $(eval $(call KernelPackage,ide-generic-old))
295
296
297 define KernelPackage/ide-aec62xx
298 $(call KernelPackage/ide/Depends,@PCI_SUPPORT)
299 TITLE:=Acard AEC62xx IDE driver
300 KCONFIG:=CONFIG_BLK_DEV_AEC62XX
301 FILES:=$(LINUX_DIR)/drivers/ide/aec62xx.$(LINUX_KMOD_SUFFIX)
302 AUTOLOAD:=$(call AutoLoad,30,aec62xx,1)
303 endef
304
305 define KernelPackage/ide-aec62xx/2.4
306 FILES:=$(LINUX_DIR)/drivers/ide/pci/aec62xx.$(LINUX_KMOD_SUFFIX)
307 endef
308
309 define KernelPackage/ide-aec62xx/description
310 Support for Acard AEC62xx (Artop ATP8xx) IDE controllers.
311 endef
312
313 $(eval $(call KernelPackage,ide-aec62xx,1))
314
315
316 define KernelPackage/ide-pdc202xx
317 $(call KernelPackage/ide/Depends,@PCI_SUPPORT)
318 TITLE:=Promise PDC202xx IDE driver
319 KCONFIG:=CONFIG_BLK_DEV_PDC202XX_OLD
320 FILES:=$(LINUX_DIR)/drivers/ide/pdc202xx_old.$(LINUX_KMOD_SUFFIX)
321 AUTOLOAD:=$(call AutoLoad,30,pdc202xx_old,1)
322 endef
323
324 define KernelPackage/ide-pdc202xx/2.4
325 FILES:=$(LINUX_DIR)/drivers/ide/pci/pdc202xx_old.$(LINUX_KMOD_SUFFIX)
326 endef
327
328 define KernelPackage/ide-pdc202xx/description
329 Support for the Promise Ultra 33/66/100 (PDC202{46|62|65|67|68}) IDE
330 controllers.
331 endef
332
333 $(eval $(call KernelPackage,ide-pdc202xx))
334
335
336 define KernelPackage/ide-it821x
337 $(call KernelPackage/ide/Depends,@PCI_SUPPORT)
338 TITLE:=ITE IT821x IDE driver
339 KCONFIG:=CONFIG_BLK_DEV_IT821X
340 FILES=$(LINUX_DIR)/drivers/ide/it821x.$(LINUX_KMOD_SUFFIX)
341 AUTOLOAD:=$(call AutoLoad,30,it821x,1)
342 endef
343
344 define KernelPackage/ide-it821x/description
345 Kernel module for the ITE IDE821x IDE controllers.
346 endef
347
348 $(eval $(call KernelPackage,ide-it821x))
349
350
351 define KernelPackage/scsi-core
352 SUBMENU:=$(BLOCK_MENU)
353 TITLE:=SCSI device support
354 DEPENDS:=@!TARGET_x86
355 KCONFIG:= \
356 CONFIG_SCSI \
357 CONFIG_BLK_DEV_SD
358 FILES:= \
359 $(if $(findstring y,$(CONFIG_SCSI)),,$(LINUX_DIR)/drivers/scsi/scsi_mod.$(LINUX_KMOD_SUFFIX)) \
360 $(LINUX_DIR)/drivers/scsi/sd_mod.$(LINUX_KMOD_SUFFIX)
361 AUTOLOAD:=$(call AutoLoad,20,scsi_mod,1) $(call AutoLoad,40,sd_mod,1)
362 endef
363
364 $(eval $(call KernelPackage,scsi-core))
365
366
367 define KernelPackage/scsi-generic
368 SUBMENU:=$(BLOCK_MENU)
369 TITLE:=Kernel support for SCSI generic
370 KCONFIG:= \
371 CONFIG_CHR_DEV_SG
372 FILES:= \
373 $(LINUX_DIR)/drivers/scsi/sg.$(LINUX_KMOD_SUFFIX)
374 AUTOLOAD:=$(call AutoLoad,65,sg)
375 endef
376
377 $(eval $(call KernelPackage,scsi-generic))
378
379
380 define KernelPackage/loop
381 SUBMENU:=$(BLOCK_MENU)
382 TITLE:=Loopback device support
383 KCONFIG:= \
384 CONFIG_BLK_DEV_LOOP \
385 CONFIG_BLK_DEV_CRYPTOLOOP=n
386 FILES:=$(LINUX_DIR)/drivers/block/loop.$(LINUX_KMOD_SUFFIX)
387 AUTOLOAD:=$(call AutoLoad,30,loop)
388 endef
389
390 define KernelPackage/loop/description
391 Kernel module for loopback device support
392 endef
393
394 $(eval $(call KernelPackage,loop))
395
396
397 define KernelPackage/nbd
398 SUBMENU:=$(BLOCK_MENU)
399 TITLE:=Network block device support
400 KCONFIG:=CONFIG_BLK_DEV_NBD
401 FILES:=$(LINUX_DIR)/drivers/block/nbd.$(LINUX_KMOD_SUFFIX)
402 AUTOLOAD:=$(call AutoLoad,30,nbd)
403 endef
404
405 define KernelPackage/nbd/description
406 Kernel module for network block device support
407 endef
408
409 $(eval $(call KernelPackage,nbd))
410
411
412 define KernelPackage/dm
413 SUBMENU:=$(BLOCK_MENU)
414 TITLE:=Device Mapper
415 # All the "=n" are unnecessary, they're only there
416 # to stop the config from asking the question.
417 # MIRROR is M because I've needed it for pvmove.
418 KCONFIG:= \
419 CONFIG_BLK_DEV_MD=n \
420 CONFIG_DM_DEBUG=n \
421 CONFIG_DM_CRYPT=n \
422 CONFIG_DM_UEVENT=n \
423 CONFIG_DM_DELAY=n \
424 CONFIG_DM_MULTIPATH=n \
425 CONFIG_DM_ZERO=n \
426 CONFIG_DM_SNAPSHOT=n \
427 CONFIG_DM_LOG_USERSPACE=n \
428 CONFIG_MD=y \
429 CONFIG_BLK_DEV_DM \
430 CONFIG_DM_MIRROR
431 FILES:=$(LINUX_DIR)/drivers/md/dm-*.$(LINUX_KMOD_SUFFIX)
432 AUTOLOAD:=$(call AutoLoad,30,dm-mod dm-log dm-region-hash dm-mirror)
433 endef
434
435 define KernelPackage/dm/description
436 Kernel module necessary for LVM2 support
437 endef
438
439 $(eval $(call KernelPackage,dm))
440
441
442 define KernelPackage/pata-rb153-cf
443 $(call KernelPackage/ata/Depends,@TARGET_adm5120_router_le)
444 TITLE:=RouterBOARD 153 CF Slot support
445 KCONFIG:=CONFIG_PATA_RB153_CF
446 FILES:=$(LINUX_DIR)/drivers/ata/pata_rb153_cf.$(LINUX_KMOD_SUFFIX)
447 AUTOLOAD:=$(call AutoLoad,30,pata_rb153_cf,1)
448 endef
449
450 define KernelPackage/pata-rb153-cf/description
451 Kernel support for the RouterBoard 153 CF slot.
452 endef
453
454 $(eval $(call KernelPackage,pata-rb153-cf,1))
455
456
457 define KernelPackage/aoe
458 SUBMENU:=$(BLOCK_MENU)
459 TITLE:=ATA over Ethernet support
460 KCONFIG:=CONFIG_ATA_OVER_ETH
461 FILES:=$(LINUX_DIR)/drivers/block/aoe/aoe.$(LINUX_KMOD_SUFFIX)
462 AUTOLOAD:=$(call AutoLoad,30,aoe)
463 endef
464
465 define KernelPackage/aoe/description
466 Kernel support for ATA over Ethernet
467 endef
468
469 $(eval $(call KernelPackage,aoe))
470
471 define KernelPackage/ps3vram
472 SUBMENU:=$(BLOCK_MENU)
473 TITLE:=PS3 Video RAM Storage Driver
474 DEPENDS:=@TARGET_ps3||TARGET_ps3chk
475 KCONFIG:=CONFIG_PS3_VRAM
476 FILES:=$(LINUX_DIR)/drivers/block/ps3vram.$(LINUX_KMOD_SUFFIX)
477 AUTOLOAD:=$(call AutoLoad,01,ps3vram)
478 endef
479
480 define KernelPackage/ps3vram/description
481 Kernel support for PS3 Video RAM Storage
482 endef
483
484 $(eval $(call KernelPackage,ps3vram))
485
486 define KernelPackage/axonram
487 SUBMENU:=$(BLOCK_MENU)
488 TITLE:=Axon DDR2 memory device driver
489 DEPENDS:=@TARGET_pxcab
490 KCONFIG:=CONFIG_AXON_RAM
491 FILES:=$(LINUX_DIR)/arch/powerpc/sysdev/axonram.$(LINUX_KMOD_SUFFIX)
492 AUTOLOAD:=$(call AutoLoad,01,axonram)
493 endef
494
495 define KernelPackage/axonram/description
496 Kernel support for Axon DDR2 memory device
497 endef
498
499 $(eval $(call KernelPackage,axonram))
500
501 define KernelPackage/libsas
502 SUBMENU:=$(BLOCK_MENU)
503 TITLE:=SAS Domain Transport Attributes
504 DEPENDS:=@TARGET_x86
505 KCONFIG:=CONFIG_SCSI_SAS_LIBSAS \
506 CONFIG_SCSI_SAS_ATTRS \
507 CONFIG_SCSI_SAS_ATA=y \
508 CONFIG_SCSI_SAS_HOST_SMP=y \
509 CONFIG_SCSI_SAS_LIBSAS_DEBUG=y
510 FILES:= \
511 $(LINUX_DIR)/drivers/scsi/scsi_transport_sas.$(LINUX_KMOD_SUFFIX) \
512 $(LINUX_DIR)/drivers/scsi/libsas/libsas.$(LINUX_KMOD_SUFFIX)
513 AUTOLOAD:=$(call AutoLoad,29,scsi_transport_sas libsas,1)
514 endef
515
516 define KernelPackage/libsas/description
517 SAS Domain Transport Attributes support.
518 endef
519
520 $(eval $(call KernelPackage,libsas,1))
521
522 define KernelPackage/mvsas
523 SUBMENU:=$(BLOCK_MENU)
524 TITLE:=Marvell 88SE6440 SAS/SATA driver
525 DEPENDS:=@TARGET_x86 +kmod-libsas
526 KCONFIG:=CONFIG_SCSI_MVSAS
527 ifneq ($(CONFIG_LINUX_2_6_25)$(CONFIG_LINUX_2_6_30),)
528 FILES:=$(LINUX_DIR)/drivers/scsi/mvsas.$(LINUX_KMOD_SUFFIX)
529 else
530 FILES:=$(LINUX_DIR)/drivers/scsi/mvsas/mvsas.$(LINUX_KMOD_SUFFIX)
531 endif
532 AUTOLOAD:=$(call AutoLoad,40,mvsas,1)
533 endef
534
535 define KernelPackage/mvsas/description
536 Kernel support for the Marvell SAS SCSI adapters
537 endef
538
539 $(eval $(call KernelPackage,mvsas))