[package] add libsas and mvsas required for VIA NAS7800
[openwrt.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
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-ahci
23   SUBMENU:=$(BLOCK_MENU)
24   TITLE:=AHCI Serial ATA support
25   DEPENDS:=kmod-ata-core
26   KCONFIG:=CONFIG_SATA_AHCI
27   FILES:=$(LINUX_DIR)/drivers/ata/ahci.$(LINUX_KMOD_SUFFIX)
28   AUTOLOAD:=$(call AutoLoad,41,ahci)
29 endef
30
31 define KernelPackage/ata-ahci/description
32  Support for AHCI Serial ATA controllers.
33 endef
34
35 $(eval $(call KernelPackage,ata-ahci))
36
37
38 define KernelPackage/ata-sil24
39   SUBMENU:=$(BLOCK_MENU)
40   TITLE:=Silicon Image 3124/3132 SATA support
41   DEPENDS:=kmod-ata-core
42   KCONFIG:=CONFIG_SATA_SIL24
43   FILES:=$(LINUX_DIR)/drivers/ata/sata_sil24.$(LINUX_KMOD_SUFFIX)
44   AUTOLOAD:=$(call AutoLoad,41,sata_sil24)
45 endef
46
47 define KernelPackage/ata-sil24/description
48  Support for Silicon Image 3124/3132 Serial ATA controllers.
49 endef
50
51 $(eval $(call KernelPackage,ata-sil24))
52
53
54 define KernelPackage/ata-artop
55   SUBMENU:=$(BLOCK_MENU)
56   TITLE:=ARTOP 6210/6260 PATA support
57   DEPENDS:=kmod-ata-core
58   KCONFIG:=CONFIG_PATA_ARTOP
59   FILES:=$(LINUX_DIR)/drivers/ata/pata_artop.$(LINUX_KMOD_SUFFIX)
60   AUTOLOAD:=$(call AutoLoad,41,pata_artop)
61 endef
62
63 define KernelPackage/ata-artop/description
64  PATA support for ARTOP 6210/6260 host controllers.
65 endef
66
67 $(eval $(call KernelPackage,ata-artop))
68
69
70 define KernelPackage/ata-ixp4xx-cf
71   SUBMENU:=$(BLOCK_MENU)
72   TITLE:=IXP4XX Compact Flash support
73   DEPENDS:=kmod-ata-core
74   KCONFIG:=CONFIG_PATA_IXP4XX_CF
75   FILES:=$(LINUX_DIR)/drivers/ata/pata_ixp4xx_cf.$(LINUX_KMOD_SUFFIX)
76   AUTOLOAD:=$(call AutoLoad,41,pata_ixp4xx_cf)
77 endef
78
79 define KernelPackage/ata-ixp4xx-cf/description
80  IXP4XX Compact Flash support.
81 endef
82
83 $(eval $(call KernelPackage,ata-ixp4xx-cf))
84
85 define KernelPackage/ata-rb532-cf
86   SUBMENU:=$(BLOCK_MENU)
87   TITLE:=RB532 Compact Flash support
88   DEPENDS:=@TARGET_rb532 kmod-ata-core @BROKEN
89   KCONFIG:= \
90         CONFIG_PATA_PLATFORM \
91         CONFIG_PATA_RB532
92   FILES:=\
93         $(LINUX_DIR)/drivers/ata/pata_platform.$(LINUX_KMOD_SUFFIX) \
94         $(LINUX_DIR)/drivers/ata/pata_rb532_cf.$(LINUX_KMOD_SUFFIX)
95   AUTOLOAD:=$(call AutoLoad,41,pata_platform pata_rb532_cf)
96 endef
97
98 define KernelPackage/ata-rb532-cf/description
99   RB532 Compact Flash support.
100 endef
101
102 $(eval $(call KernelPackage,ata-rb532-cf))
103
104 define KernelPackage/ata-nvidia-sata
105   SUBMENU:=$(BLOCK_MENU)
106   TITLE:=Nvidia Serial ATA support
107   DEPENDS:=kmod-ata-core
108   KCONFIG:=CONFIG_SATA_NV
109   FILES:=$(LINUX_DIR)/drivers/ata/sata_nv.$(LINUX_KMOD_SUFFIX)
110   AUTOLOAD:=$(call AutoLoad,41,sata_nv)
111 endef
112
113 $(eval $(call KernelPackage,ata-nvidia-sata))
114
115
116 define KernelPackage/ata-piix
117   SUBMENU:=$(BLOCK_MENU)
118   TITLE:=Intel PIIX PATA/SATA support
119   DEPENDS:=kmod-ata-core
120   KCONFIG:=CONFIG_ATA_PIIX
121   FILES:=$(LINUX_DIR)/drivers/ata/ata_piix.$(LINUX_KMOD_SUFFIX)
122   AUTOLOAD:=$(call AutoLoad,41,ata_piix)
123 endef
124
125 define KernelPackage/ata-piix/description
126  SATA support for Intel ICH5/6/7/8 series host controllers and
127  PATA support for Intel ESB/ICH/PIIX3/PIIX4 series host controllers.
128 endef
129
130 $(eval $(call KernelPackage,ata-piix))
131
132
133 define KernelPackage/ata-via-sata
134   SUBMENU:=$(BLOCK_MENU)
135   TITLE:=VIA SATA support
136   DEPENDS:=kmod-ata-core
137   KCONFIG:=CONFIG_SATA_VIA
138   FILES:=$(LINUX_DIR)/drivers/ata/sata_via.$(LINUX_KMOD_SUFFIX)
139   AUTOLOAD:=$(call AutoLoad,41,sata_via)
140 endef
141
142 define KernelPackage/ata-via-sata/description
143  This option enables support for VIA Serial ATA.
144 endef
145
146 $(eval $(call KernelPackage,ata-via-sata))
147
148
149 define KernelPackage/ide-core
150   SUBMENU:=$(BLOCK_MENU)
151   TITLE:=IDE (ATA/ATAPI) device support
152   DEPENDS:=@PCI_SUPPORT
153   KCONFIG:= \
154         CONFIG_IDE \
155         CONFIG_IDE_GENERIC \
156         CONFIG_BLK_DEV_GENERIC \
157         CONFIG_BLK_DEV_IDE \
158         CONFIG_BLK_DEV_IDEDISK \
159         CONFIG_IDE_GD \
160         CONFIG_IDE_GD_ATA=y \
161         CONFIG_IDE_GD_ATAPI=n \
162         CONFIG_BLK_DEV_IDEDMA_PCI=y \
163         CONFIG_BLK_DEV_IDEPCI=y
164 ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,2.6.28)),1)
165     FILES:= \
166         $(LINUX_DIR)/drivers/ide/ide-core.$(LINUX_KMOD_SUFFIX) \
167         $(LINUX_DIR)/drivers/ide/ide-gd_mod.$(LINUX_KMOD_SUFFIX)
168       AUTOLOAD:=$(call AutoLoad,20,ide-core) $(call AutoLoad,40,ide-gd_mod)
169 else
170     FILES:= \
171         $(LINUX_DIR)/drivers/ide/ide-core.$(LINUX_KMOD_SUFFIX) \
172         $(LINUX_DIR)/drivers/ide/ide-disk.$(LINUX_KMOD_SUFFIX)
173       AUTOLOAD:=$(call AutoLoad,20,ide-core) $(call AutoLoad,40,ide-disk)
174 endif
175 endef
176
177 define KernelPackage/ide-core/2.4
178   FILES+=$(LINUX_DIR)/drivers/ide/ide-detect.$(LINUX_KMOD_SUFFIX)
179   AUTOLOAD+=$(call AutoLoad,30,ide-detect)
180 endef
181
182 ifneq ($(CONFIG_arm)$(CONFIG_powerpc),y)
183   define KernelPackage/ide-core/2.6
184     FILES+=$(LINUX_DIR)/drivers/ide/ide-generic.$(LINUX_KMOD_SUFFIX)
185     AUTOLOAD+=$(call AutoLoad,30,ide-generic)
186   endef
187 endif
188
189 define KernelPackage/ide-core/description
190  Kernel support for IDE, useful for usb mass storage devices (e.g. on WL-HDD)
191  Includes:
192  - ide-core
193  - ide-detect
194  - ide-gd_mod (or ide-disk)
195 endef
196
197 $(eval $(call KernelPackage,ide-core))
198
199
200 define KernelPackage/ide-aec62xx
201   SUBMENU:=$(BLOCK_MENU)
202   TITLE:=Acard AEC62xx IDE driver
203   DEPENDS:=@PCI_SUPPORT +kmod-ide-core
204   KCONFIG:=CONFIG_BLK_DEV_AEC62XX
205 ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,2.6.28)),1)
206   FILES:=$(LINUX_DIR)/drivers/ide/aec62xx.$(LINUX_KMOD_SUFFIX)
207 else
208   FILES:=$(LINUX_DIR)/drivers/ide/pci/aec62xx.$(LINUX_KMOD_SUFFIX)
209 endif
210   AUTOLOAD:=$(call AutoLoad,30,aec62xx)
211 endef
212
213 define KernelPackage/ide-aec62xx/description
214  Support for Acard AEC62xx (Artop ATP8xx) IDE controllers.
215 endef
216
217 $(eval $(call KernelPackage,ide-aec62xx))
218
219
220 define KernelPackage/ide-magicbox
221   SUBMENU:=$(BLOCK_MENU)
222   TITLE:=Magicbox 2.0 IDE CF driver
223   DEPENDS:=@TARGET_ppc40x +kmod-ide-core
224   KCONFIG:=CONFIG_BLK_DEV_IDE_MAGICBOX
225   FILES:=$(LINUX_DIR)/drivers/ide/magicbox_ide.$(LINUX_KMOD_SUFFIX)
226   AUTOLOAD:=$(call AutoLoad,30,magicbox_ide)
227 endef
228
229 define KernelPackage/ide-magicbox/description
230  Support for Magicbox 2.0 onboard CF slot.
231 endef
232
233 $(eval $(call KernelPackage,ide-magicbox))
234
235
236 define KernelPackage/ide-pdc202xx
237   SUBMENU:=$(BLOCK_MENU)
238   TITLE:=Promise PDC202xx IDE driver
239   DEPENDS:=@LINUX_2_4 +kmod-ide-core
240   KCONFIG:=CONFIG_BLK_DEV_PDC202XX_OLD
241   FILES:=$(LINUX_DIR)/drivers/ide/pci/pdc202xx_old.$(LINUX_KMOD_SUFFIX)
242   AUTOLOAD:=$(call AutoLoad,30,pdc202xx_old)
243 endef
244
245 define KernelPackage/ide-pdc202xx/description
246  Support for the Promise Ultra 33/66/100 (PDC202{46|62|65|67|68}) IDE
247  controllers.
248 endef
249
250 $(eval $(call KernelPackage,ide-pdc202xx))
251
252
253 define KernelPackage/ide-it821x
254   SUBMENU:=$(BLOCK_MENU)
255   TITLE:=ITE IT821x IDE driver
256   DEPENDS:=+kmod-ide-core
257   KCONFIG:=CONFIG_BLK_DEV_IT821X
258 ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,2.6.28)),1)
259   FILES=$(LINUX_DIR)/drivers/ide/it821x.$(LINUX_KMOD_SUFFIX)
260 else
261   FILES=$(LINUX_DIR)/drivers/ide/pci/it821x.$(LINUX_KMOD_SUFFIX)
262 endif
263   AUTOLOAD:=$(call AutoLoad,30,it821x)
264 endef
265
266 define KernelPackage/ide-it821x/description
267   Kernel module for the ITE IDE821x IDE controllers.
268 endef
269
270 $(eval $(call KernelPackage,ide-it821x))
271
272
273 define KernelPackage/scsi-core
274   SUBMENU:=$(BLOCK_MENU)
275   TITLE:=SCSI device support
276   KCONFIG:= \
277         CONFIG_SCSI \
278         CONFIG_BLK_DEV_SD
279   FILES:= \
280         $(LINUX_DIR)/drivers/scsi/scsi_mod.$(LINUX_KMOD_SUFFIX) \
281         $(LINUX_DIR)/drivers/scsi/sd_mod.$(LINUX_KMOD_SUFFIX)
282   AUTOLOAD:=$(call AutoLoad,20,scsi_mod) $(call AutoLoad,40,sd_mod)
283 endef
284
285 $(eval $(call KernelPackage,scsi-core))
286
287
288 define KernelPackage/scsi-generic
289   SUBMENU:=$(BLOCK_MENU)
290   TITLE:=Kernel support for SCSI generic
291   KCONFIG:= \
292         CONFIG_CHR_DEV_SG
293   FILES:= \
294         $(LINUX_DIR)/drivers/scsi/sg.$(LINUX_KMOD_SUFFIX)
295   AUTOLOAD:=$(call AutoLoad,65,sg)
296 endef
297
298 $(eval $(call KernelPackage,scsi-generic))
299
300
301 define KernelPackage/loop
302   SUBMENU:=$(BLOCK_MENU)
303   TITLE:=Loopback device support
304   KCONFIG:= \
305         CONFIG_BLK_DEV_LOOP \
306         CONFIG_BLK_DEV_CRYPTOLOOP=n
307   FILES:=$(LINUX_DIR)/drivers/block/loop.$(LINUX_KMOD_SUFFIX)
308   AUTOLOAD:=$(call AutoLoad,30,loop)
309 endef
310
311 define KernelPackage/loop/description
312  Kernel module for loopback device support
313 endef
314
315 $(eval $(call KernelPackage,loop))
316
317
318 define KernelPackage/nbd
319   SUBMENU:=$(BLOCK_MENU)
320   TITLE:=Network block device support
321   KCONFIG:=CONFIG_BLK_DEV_NBD
322   FILES:=$(LINUX_DIR)/drivers/block/nbd.$(LINUX_KMOD_SUFFIX)
323   AUTOLOAD:=$(call AutoLoad,30,nbd)
324 endef
325
326 define KernelPackage/nbd/description
327  Kernel module for network block device support
328 endef
329
330 $(eval $(call KernelPackage,nbd))
331
332
333 define KernelPackage/pata-rb153-cf
334   SUBMENU:=$(BLOCK_MENU)
335   DEPENDS:=kmod-ata-core @TARGET_adm5120_router_le
336   TITLE:=RouterBOARD 153 CF Slot support
337   KCONFIG:=CONFIG_PATA_RB153_CF
338   FILES:=$(LINUX_DIR)/drivers/ata/pata_rb153_cf.$(LINUX_KMOD_SUFFIX)
339   AUTOLOAD:=$(call AutoLoad,30,pata_rb153_cf)
340 endef
341
342 define KernelPackage/pata-rb153-cf/description
343   Kernel support for the RouterBoard 153 CF slot.
344 endef
345
346 $(eval $(call KernelPackage,pata-rb153-cf))
347
348
349 define KernelPackage/aoe
350   SUBMENU:=$(BLOCK_MENU)
351   TITLE:=ATA over Ethernet support
352   KCONFIG:=CONFIG_ATA_OVER_ETH
353   FILES:=$(LINUX_DIR)/drivers/block/aoe/aoe.$(LINUX_KMOD_SUFFIX)
354   AUTOLOAD:=$(call AutoLoad,30,aoe)
355 endef
356
357 define KernelPackage/aoe/description
358   Kernel support for ATA over Ethernet
359 endef
360
361 $(eval $(call KernelPackage,aoe))
362
363 define KernelPackage/ps3vram
364   SUBMENU:=$(BLOCK_MENU)
365   TITLE:=PS3 Video RAM Storage Driver
366   DEPENDS:=@TARGET_ps3||TARGET_ps3chk
367   KCONFIG:=CONFIG_PS3_VRAM
368   FILES:=$(LINUX_DIR)/drivers/block/ps3vram.$(LINUX_KMOD_SUFFIX)
369   AUTOLOAD:=$(call AutoLoad,01,ps3vram)
370 endef
371
372 define KernelPackage/ps3vram/description
373   Kernel support for PS3 Video RAM Storage
374 endef
375
376 $(eval $(call KernelPackage,ps3vram))
377
378 define KernelPackage/axonram
379   SUBMENU:=$(BLOCK_MENU)
380   TITLE:=Axon DDR2 memory device driver
381   DEPENDS:=@TARGET_pxcab
382   KCONFIG:=CONFIG_AXON_RAM
383   FILES:=$(LINUX_DIR)/arch/powerpc/sysdev/axonram.$(LINUX_KMOD_SUFFIX)
384   AUTOLOAD:=$(call AutoLoad,01,axonram)
385 endef
386
387 define KernelPackage/axonram/description
388   Kernel support for Axon DDR2 memory device
389 endef
390
391 $(eval $(call KernelPackage,axonram))
392
393 define KernelPackage/libsas
394   SUBMENU:=$(BLOCK_MENU)
395   TITLE:=SAS Domain Transport Attributes
396   DEPENDS:=+kmod-scsi-core
397   KCONFIG:=CONFIG_SCSI_SAS_LIBSAS \
398         CONFIG_SCSI_SAS_HOST_SMP=y \
399         CONFIG_SCSI_SAS_LIBSAS_DEBUG=y
400   FILES:=$(LINUX_DIR)/drivers/scsi/libsas/libsas.$(LINUX_KMOD_SUFFIX)
401   AUTOLOAD:=$(call AutoLoad,29,libsas)
402 endef
403
404 define KernelPackage/libsas/description
405   SAS Domain Transport Attributes support.
406 endef
407
408 $(eval $(call KernelPackage,libsas))
409
410 define KernelPackage/mvsas
411   SUBMENU:=$(BLOCK_MENU)
412   TITLE:=Marvell 88SE6440 SAS/SATA driver
413   DEPENDS:=@TARGET_x86 +kmod-libsas
414   KCONFIG:=CONFIG_SCSI_MVSAS
415   FILES:=$(LINUX_DIR)/drivers/scsi/mvsas.$(LINUX_KMOD_SUFFIX)
416   AUTOLOAD:=$(call AutoLoad,40,mvsas)
417 endef
418
419 define KernelPackage/mvsas/description
420   Kernel support for the Marvell SAS SCSI adapters
421 endef
422
423 $(eval $(call KernelPackage,mvsas))