2c720eba10a43ea4a5f917c681436ec9f7748b0b
[openwrt/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 # $Id$
8
9 BLOCK_MENU:=Block Devices
10
11 define KernelPackage/ata-core
12 SUBMENU:=$(BLOCK_MENU)
13 TITLE:=Serial and Parallel ATA support
14 DEPENDS:=@PCI_SUPPORT @LINUX_2_6 +kmod-scsi-core
15 KCONFIG:=CONFIG_ATA
16 FILES:=$(LINUX_DIR)/drivers/ata/libata.$(LINUX_KMOD_SUFFIX)
17 AUTOLOAD:=$(call AutoLoad,21,libata)
18 endef
19
20 $(eval $(call KernelPackage,ata-core))
21
22
23 define KernelPackage/ata-ahci
24 SUBMENU:=$(BLOCK_MENU)
25 TITLE:=AHCI Serial ATA support
26 DEPENDS:=kmod-ata-core
27 KCONFIG:=CONFIG_SATA_AHCI
28 FILES:=$(LINUX_DIR)/drivers/ata/ahci.$(LINUX_KMOD_SUFFIX)
29 AUTOLOAD:=$(call AutoLoad,41,ahci)
30 endef
31
32 define KernelPackage/ata-ahci/description
33 Support for AHCI Serial ATA controllers.
34 endef
35
36 $(eval $(call KernelPackage,ata-ahci))
37
38
39 define KernelPackage/ata-artop
40 SUBMENU:=$(BLOCK_MENU)
41 TITLE:=ARTOP 6210/6260 PATA support
42 DEPENDS:=kmod-ata-core
43 KCONFIG:=CONFIG_PATA_ARTOP
44 FILES:=$(LINUX_DIR)/drivers/ata/pata_artop.$(LINUX_KMOD_SUFFIX)
45 AUTOLOAD:=$(call AutoLoad,41,pata_artop)
46 endef
47
48 define KernelPackage/ata-artop/description
49 PATA support for ARTOP 6210/6260 host controllers.
50 endef
51
52 $(eval $(call KernelPackage,ata-artop))
53
54
55 define KernelPackage/ata-ixp4xx-cf
56 SUBMENU:=$(BLOCK_MENU)
57 TITLE:=IXP4XX Compact Flash support
58 DEPENDS:=kmod-ata-core
59 KCONFIG:=CONFIG_PATA_IXP4XX_CF
60 FILES:=$(LINUX_DIR)/drivers/ata/pata_ixp4xx_cf.$(LINUX_KMOD_SUFFIX)
61 AUTOLOAD:=$(call AutoLoad,41,pata_ixp4xx_cf)
62 endef
63
64 define KernelPackage/ata-ixp4xx-cf/description
65 IXP4XX Compact Flash support.
66 endef
67
68 $(eval $(call KernelPackage,ata-ixp4xx-cf))
69
70 define KernelPackage/ata-rb532-cf
71 SUBMENU:=$(BLOCK_MENU)
72 TITLE:=RB532 Compact Flash support
73 DEPENDS:=@TARGET_rb532 kmod-ata-core @BROKEN
74 KCONFIG:= \
75 CONFIG_PATA_PLATFORM \
76 CONFIG_PATA_RB532
77 FILES:=\
78 $(LINUX_DIR)/drivers/ata/pata_platform.$(LINUX_KMOD_SUFFIX) \
79 $(LINUX_DIR)/drivers/ata/pata_rb532_cf.$(LINUX_KMOD_SUFFIX)
80 AUTOLOAD:=$(call AutoLoad,41,pata_platform pata_rb532_cf)
81 endef
82
83 define KernelPackage/ata-rb532-cf/description
84 RB532 Compact Flash support.
85 endef
86
87 $(eval $(call KernelPackage,ata-rb532-cf))
88
89 define KernelPackage/ata-nvidia-sata
90 SUBMENU:=$(BLOCK_MENU)
91 TITLE:=Nvidia Serial ATA support
92 DEPENDS:=kmod-ata-core
93 KCONFIG:=CONFIG_SATA_NV
94 FILES:=$(LINUX_DIR)/drivers/ata/sata_nv.$(LINUX_KMOD_SUFFIX)
95 AUTOLOAD:=$(call AutoLoad,41,sata_nv)
96 endef
97
98 $(eval $(call KernelPackage,ata-nvidia-sata))
99
100
101 define KernelPackage/ata-piix
102 SUBMENU:=$(BLOCK_MENU)
103 TITLE:=Intel PIIX PATA/SATA support
104 DEPENDS:=kmod-ata-core
105 KCONFIG:=CONFIG_ATA_PIIX
106 FILES:=$(LINUX_DIR)/drivers/ata/ata_piix.$(LINUX_KMOD_SUFFIX)
107 AUTOLOAD:=$(call AutoLoad,41,ata_piix)
108 endef
109
110 define KernelPackage/ata-piix/description
111 SATA support for Intel ICH5/6/7/8 series host controllers and
112 PATA support for Intel ESB/ICH/PIIX3/PIIX4 series host controllers.
113 endef
114
115 $(eval $(call KernelPackage,ata-piix))
116
117
118 define KernelPackage/ata-via-sata
119 SUBMENU:=$(BLOCK_MENU)
120 TITLE:=VIA SATA support
121 DEPENDS:=kmod-ata-core
122 KCONFIG:=CONFIG_SATA_VIA
123 FILES:=$(LINUX_DIR)/drivers/ata/sata_via.$(LINUX_KMOD_SUFFIX)
124 AUTOLOAD:=$(call AutoLoad,41,sata_via)
125 endef
126
127 define KernelPackage/ata-via-sata/description
128 This option enables support for VIA Serial ATA.
129 endef
130
131 $(eval $(call KernelPackage,ata-via-sata))
132
133
134 # XXX: broken on 2.6.28 due to module name/path changes
135 define KernelPackage/ide-core
136 SUBMENU:=$(BLOCK_MENU)
137 TITLE:=IDE (ATA/ATAPI) device support
138 DEPENDS:=@PCI_SUPPORT @LINUX_2_6_28:BROKEN
139 KCONFIG:= \
140 CONFIG_IDE \
141 CONFIG_IDE_GENERIC \
142 CONFIG_BLK_DEV_GENERIC \
143 CONFIG_BLK_DEV_IDE \
144 CONFIG_BLK_DEV_IDEDISK \
145 CONFIG_BLK_DEV_IDEDMA_PCI=y \
146 CONFIG_BLK_DEV_IDEPCI=y
147 FILES:= \
148 $(LINUX_DIR)/drivers/ide/ide-core.$(LINUX_KMOD_SUFFIX) \
149 $(LINUX_DIR)/drivers/ide/ide-disk.$(LINUX_KMOD_SUFFIX)
150 AUTOLOAD:=$(call AutoLoad,20,ide-core) $(call AutoLoad,40,ide-disk)
151 endef
152
153 define KernelPackage/ide-core/2.4
154 FILES+=$(LINUX_DIR)/drivers/ide/ide-detect.$(LINUX_KMOD_SUFFIX)
155 AUTOLOAD+=$(call AutoLoad,30,ide-detect)
156 endef
157
158 ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,2.6.26)),1)
159 define KernelPackage/ide-core/2.6
160 FILES+=$(LINUX_DIR)/drivers/ide/pci/ide-pci-generic.$(LINUX_KMOD_SUFFIX)
161 AUTOLOAD+=$(call AutoLoad,30,ide-pci-generic)
162 endef
163 else
164 define KernelPackage/ide-core/2.6
165 FILES+=$(LINUX_DIR)/drivers/ide/ide-generic.$(LINUX_KMOD_SUFFIX)
166 AUTOLOAD+=$(call AutoLoad,30,ide-generic)
167 endef
168 endif
169
170 define KernelPackage/ide-core/description
171 Kernel support for IDE, useful for usb mass storage devices (e.g. on WL-HDD)
172 Includes:
173 - ide-core
174 - ide-detect
175 - ide-disk
176 endef
177
178 $(eval $(call KernelPackage,ide-core))
179
180
181 define KernelPackage/ide-aec62xx
182 SUBMENU:=$(BLOCK_MENU)
183 TITLE:=Acard AEC62xx IDE driver
184 DEPENDS:=@PCI_SUPPORT +kmod-ide-core
185 KCONFIG:=CONFIG_BLK_DEV_AEC62XX
186 FILES:=$(LINUX_DIR)/drivers/ide/pci/aec62xx.$(LINUX_KMOD_SUFFIX)
187 AUTOLOAD:=$(call AutoLoad,30,aec62xx)
188 endef
189
190 define KernelPackage/ide-aec62xx/description
191 Support for Acard AEC62xx (Artop ATP8xx) IDE controllers.
192 endef
193
194 $(eval $(call KernelPackage,ide-aec62xx))
195
196
197 define KernelPackage/ide-magicbox
198 SUBMENU:=$(BLOCK_MENU)
199 TITLE:=Magicbox 2.0 IDE CF driver
200 DEPENDS:=@TARGET_magicbox +kmod-ide-core
201 KCONFIG:=CONFIG_BLK_DEV_MAGICBOX_IDE
202 FILES:=$(LINUX_DIR)/drivers/ide/ppc/magicbox_ide.$(LINUX_KMOD_SUFFIX)
203 AUTOLOAD:=$(call AutoLoad,30,magicbox_ide)
204 endef
205
206 define KernelPackage/ide-magicbox/description
207 Support for Magicbox 2.0 onboard CF slot.
208 endef
209
210 $(eval $(call KernelPackage,ide-magicbox))
211
212
213 define KernelPackage/ide-pdc202xx
214 SUBMENU:=$(BLOCK_MENU)
215 TITLE:=Promise PDC202xx IDE driver
216 DEPENDS:=@LINUX_2_4 +kmod-ide-core
217 KCONFIG:=CONFIG_BLK_DEV_PDC202XX_OLD
218 FILES:=$(LINUX_DIR)/drivers/ide/pci/pdc202xx_old.$(LINUX_KMOD_SUFFIX)
219 AUTOLOAD:=$(call AutoLoad,30,pdc202xx_old)
220 endef
221
222 define KernelPackage/ide-pdc202xx/description
223 Support for the Promise Ultra 33/66/100 (PDC202{46|62|65|67|68}) IDE
224 controllers.
225 endef
226
227 $(eval $(call KernelPackage,ide-pdc202xx))
228
229
230 define KernelPackage/scsi-core
231 SUBMENU:=$(BLOCK_MENU)
232 TITLE:=SCSI device support
233 KCONFIG:= \
234 CONFIG_SCSI \
235 CONFIG_BLK_DEV_SD
236 FILES:= \
237 $(LINUX_DIR)/drivers/scsi/scsi_mod.$(LINUX_KMOD_SUFFIX) \
238 $(LINUX_DIR)/drivers/scsi/sd_mod.$(LINUX_KMOD_SUFFIX)
239 AUTOLOAD:=$(call AutoLoad,20,scsi_mod) $(call AutoLoad,40,sd_mod)
240 endef
241
242 $(eval $(call KernelPackage,scsi-core))
243
244
245 define KernelPackage/scsi-generic
246 SUBMENU:=$(BLOCK_MENU)
247 TITLE:=Kernel support for SCSI generic
248 KCONFIG:= \
249 CONFIG_CHR_DEV_SG
250 FILES:= \
251 $(LINUX_DIR)/drivers/scsi/sg.$(LINUX_KMOD_SUFFIX)
252 AUTOLOAD:=$(call AutoLoad,65,sg)
253 endef
254
255 $(eval $(call KernelPackage,scsi-generic))
256
257
258 define KernelPackage/loop
259 SUBMENU:=$(BLOCK_MENU)
260 TITLE:=Loopback device support
261 KCONFIG:= \
262 CONFIG_BLK_DEV_LOOP \
263 CONFIG_BLK_DEV_CRYPTOLOOP=n
264 FILES:=$(LINUX_DIR)/drivers/block/loop.$(LINUX_KMOD_SUFFIX)
265 AUTOLOAD:=$(call AutoLoad,30,loop)
266 endef
267
268 define KernelPackage/loop/description
269 Kernel module for loopback device support
270 endef
271
272 $(eval $(call KernelPackage,loop))
273
274
275 define KernelPackage/nbd
276 SUBMENU:=$(BLOCK_MENU)
277 TITLE:=Network block device support
278 KCONFIG:=CONFIG_BLK_DEV_NBD
279 FILES:=$(LINUX_DIR)/drivers/block/nbd.$(LINUX_KMOD_SUFFIX)
280 AUTOLOAD:=$(call AutoLoad,30,nbd)
281 endef
282
283 define KernelPackage/nbd/description
284 Kernel module for network block device support
285 endef
286
287 $(eval $(call KernelPackage,nbd))
288
289
290 define KernelPackage/pata-rb153-cf
291 SUBMENU:=$(BLOCK_MENU)
292 DEPENDS:=kmod-ata-core @TARGET_adm5120_router_le
293 TITLE:=RouterBOARD 153 CF Slot support
294 KCONFIG:=CONFIG_PATA_RB153_CF
295 FILES:=$(LINUX_DIR)/drivers/ata/pata_rb153_cf.$(LINUX_KMOD_SUFFIX)
296 AUTOLOAD:=$(call AutoLoad,30,pata_rb153_cf)
297 endef
298
299 define KernelPackage/pata-rb153-cf/description
300 Kernel support for the RouterBoard 153 CF slot.
301 endef
302
303 $(eval $(call KernelPackage,pata-rb153-cf))
304
305
306 define KernelPackage/aoe
307 SUBMENU:=$(BLOCK_MENU)
308 TITLE:=ATA over Ethernet support
309 KCONFIG:=CONFIG_ATA_OVER_ETH
310 FILES:=$(LINUX_DIR)/drivers/block/aoe/aoe.$(LINUX_KMOD_SUFFIX)
311 AUTOLOAD:=$(call AutoLoad,30,aoe)
312 endef
313
314 define KernelPackage/aoe/description
315 Kernel support for ATA over Ethernet
316 endef
317
318 $(eval $(call KernelPackage,aoe))