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