[magicbox] fix the CF driver on 2.6.26.x, and create a package for it
[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
71 define KernelPackage/ata-nvidia-sata
72   SUBMENU:=$(BLOCK_MENU)
73   TITLE:=Nvidia Serial ATA support
74   DEPENDS:=kmod-ata-core
75   KCONFIG:=CONFIG_SATA_NV
76   FILES:=$(LINUX_DIR)/drivers/ata/sata_nv.$(LINUX_KMOD_SUFFIX)
77   AUTOLOAD:=$(call AutoLoad,41,sata_nv)
78 endef
79
80 $(eval $(call KernelPackage,ata-nvidia-sata))
81
82
83 define KernelPackage/ata-piix
84   SUBMENU:=$(BLOCK_MENU)
85   TITLE:=Intel PIIX PATA/SATA support
86   DEPENDS:=kmod-ata-core
87   KCONFIG:=CONFIG_ATA_PIIX
88   FILES:=$(LINUX_DIR)/drivers/ata/ata_piix.$(LINUX_KMOD_SUFFIX)
89   AUTOLOAD:=$(call AutoLoad,41,ata_piix)
90 endef
91
92 define KernelPackage/ata-piix/description
93  SATA support for Intel ICH5/6/7/8 series host controllers and
94  PATA support for Intel ESB/ICH/PIIX3/PIIX4 series host controllers.
95 endef
96
97 $(eval $(call KernelPackage,ata-piix))
98
99
100 define KernelPackage/ata-via-sata
101   SUBMENU:=$(BLOCK_MENU)
102   TITLE:=VIA SATA support
103   DEPENDS:=kmod-ata-core
104   KCONFIG:=CONFIG_SATA_VIA
105   FILES:=$(LINUX_DIR)/drivers/ata/sata_via.$(LINUX_KMOD_SUFFIX)
106   AUTOLOAD:=$(call AutoLoad,41,sata_via)
107 endef
108
109 define KernelPackage/ata-via-sata/description
110  This option enables support for VIA Serial ATA.
111 endef
112
113 $(eval $(call KernelPackage,ata-via-sata))
114
115
116 define KernelPackage/ide-core
117   SUBMENU:=$(BLOCK_MENU)
118   TITLE:=IDE (ATA/ATAPI) device support
119   KCONFIG:= \
120         CONFIG_IDE \
121         CONFIG_IDE_GENERIC \
122         CONFIG_BLK_DEV_GENERIC \
123         CONFIG_BLK_DEV_IDE \
124         CONFIG_IDE_GENERIC \
125         CONFIG_BLK_DEV_IDEDISK \
126         CONFIG_BLK_DEV_IDEDMA_PCI=y \
127         CONFIG_BLK_DEV_IDEPCI=y
128   FILES:= \
129         $(LINUX_DIR)/drivers/ide/ide-core.$(LINUX_KMOD_SUFFIX) \
130         $(LINUX_DIR)/drivers/ide/ide-disk.$(LINUX_KMOD_SUFFIX)
131   AUTOLOAD:=$(call AutoLoad,20,ide-core) $(call AutoLoad,40,ide-disk)
132 endef
133
134 define KernelPackage/ide-core/2.4
135   FILES+=$(LINUX_DIR)/drivers/ide/ide-detect.$(LINUX_KMOD_SUFFIX)
136   AUTOLOAD+=$(call AutoLoad,30,ide-detect)
137 endef
138
139 ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,2.6.26)),1)
140   define KernelPackage/ide-core/2.6
141     FILES+=$(LINUX_DIR)/drivers/ide/pci/ide-pci-generic.$(LINUX_KMOD_SUFFIX)
142     AUTOLOAD+=$(call AutoLoad,30,ide-pci-generic)
143   endef
144 else
145   define KernelPackage/ide-core/2.6
146     FILES+=$(LINUX_DIR)/drivers/ide/ide-generic.$(LINUX_KMOD_SUFFIX)
147     AUTOLOAD+=$(call AutoLoad,30,ide-generic)
148   endef
149 endif
150
151 define KernelPackage/ide-core/description
152  Kernel support for IDE, useful for usb mass storage devices (e.g. on WL-HDD)
153  Includes:
154  - ide-core
155  - ide-detect
156  - ide-disk
157 endef
158
159 $(eval $(call KernelPackage,ide-core))
160
161
162 define KernelPackage/ide-aec62xx
163   SUBMENU:=$(BLOCK_MENU)
164   TITLE:=Acard AEC62xx IDE driver
165   DEPENDS:=@PCI_SUPPORT +kmod-ide-core
166   KCONFIG:=CONFIG_BLK_DEV_AEC62XX
167   FILES:=$(LINUX_DIR)/drivers/ide/pci/aec62xx.$(LINUX_KMOD_SUFFIX)
168   AUTOLOAD:=$(call AutoLoad,30,aec62xx)
169 endef
170
171 define KernelPackage/ide-aec62xx/description
172  Support for Acard AEC62xx (Artop ATP8xx) IDE controllers.
173 endef
174
175 $(eval $(call KernelPackage,ide-aec62xx))
176
177
178 define KernelPackage/ide-magicbox
179   SUBMENU:=$(BLOCK_MENU)
180   TITLE:=Magicbox 2.0 IDE CF driver
181   DEPENDS:=@TARGET_magicbox +kmod-ide-core
182   KCONFIG:=CONFIG_BLK_DEV_MAGICBOX_IDE
183   FILES:=$(LINUX_DIR)/drivers/ide/ppc/magicbox_ide.$(LINUX_KMOD_SUFFIX)
184   AUTOLOAD:=$(call AutoLoad,30,magicbox_ide)
185 endef
186
187 define KernelPackage/ide-magicbox/description
188  Support for Magicbox 2.0 onboard CF slot.
189 endef
190
191 $(eval $(call KernelPackage,ide-magicbox))
192
193
194 define KernelPackage/ide-pdc202xx
195   SUBMENU:=$(BLOCK_MENU)
196   TITLE:=Promise PDC202xx IDE driver
197   DEPENDS:=@LINUX_2_4 +kmod-ide-core
198   KCONFIG:=CONFIG_BLK_DEV_PDC202XX_OLD
199   FILES:=$(LINUX_DIR)/drivers/ide/pci/pdc202xx_old.$(LINUX_KMOD_SUFFIX)
200   AUTOLOAD:=$(call AutoLoad,30,pdc202xx_old)
201 endef
202
203 define KernelPackage/ide-pdc202xx/description
204  Support for the Promise Ultra 33/66/100 (PDC202{46|62|65|67|68}) IDE
205  controllers.
206 endef
207
208 $(eval $(call KernelPackage,ide-pdc202xx))
209
210
211 define KernelPackage/scsi-core
212   SUBMENU:=$(BLOCK_MENU)
213   TITLE:=SCSI device support
214   KCONFIG:= \
215         CONFIG_SCSI \
216         CONFIG_BLK_DEV_SD
217   FILES:= \
218         $(LINUX_DIR)/drivers/scsi/scsi_mod.$(LINUX_KMOD_SUFFIX) \
219         $(LINUX_DIR)/drivers/scsi/sd_mod.$(LINUX_KMOD_SUFFIX)
220   AUTOLOAD:=$(call AutoLoad,20,scsi_mod) $(call AutoLoad,40,sd_mod)
221 endef
222
223 $(eval $(call KernelPackage,scsi-core))
224
225
226 define KernelPackage/scsi-generic
227   SUBMENU:=$(BLOCK_MENU)
228   TITLE:=Kernel support for SCSI generic
229   KCONFIG:= \
230         CONFIG_CHR_DEV_SG
231   FILES:= \
232         $(LINUX_DIR)/drivers/scsi/sg.$(LINUX_KMOD_SUFFIX)
233   AUTOLOAD:=$(call AutoLoad,65,sg)
234 endef
235
236 $(eval $(call KernelPackage,scsi-generic))
237
238
239 define KernelPackage/loop
240   SUBMENU:=$(BLOCK_MENU)
241   TITLE:=Loopback device support
242   KCONFIG:= \
243         CONFIG_BLK_DEV_LOOP \
244         CONFIG_BLK_DEV_CRYPTOLOOP=n
245   FILES:=$(LINUX_DIR)/drivers/block/loop.$(LINUX_KMOD_SUFFIX)
246   AUTOLOAD:=$(call AutoLoad,30,loop)
247 endef
248
249 define KernelPackage/loop/description
250  Kernel module for loopback device support
251 endef
252
253 $(eval $(call KernelPackage,loop))
254
255
256 define KernelPackage/nbd
257   SUBMENU:=$(BLOCK_MENU)
258   TITLE:=Network block device support
259   KCONFIG:=CONFIG_BLK_DEV_NBD
260   FILES:=$(LINUX_DIR)/drivers/block/nbd.$(LINUX_KMOD_SUFFIX)
261   AUTOLOAD:=$(call AutoLoad,30,nbd)
262 endef
263
264 define KernelPackage/nbd/description
265  Kernel module for network block device support
266 endef
267
268 $(eval $(call KernelPackage,nbd))
269
270
271 define KernelPackage/pata-rb153-cf
272   SUBMENU:=$(BLOCK_MENU)
273   DEPENDS:=kmod-ata-core @TARGET_adm5120_router_le
274   TITLE:=RouterBOARD 153 CF Slot support
275   KCONFIG:=CONFIG_PATA_RB153_CF
276   FILES:=$(LINUX_DIR)/drivers/ata/pata_rb153_cf.$(LINUX_KMOD_SUFFIX)
277   AUTOLOAD:=$(call AutoLoad,30,pata_rb153_cf)
278 endef
279
280 define KernelPackage/pata-rb153-cf/description
281   Kernel support for the RouterBoard 153 CF slot.
282 endef
283
284 $(eval $(call KernelPackage,pata-rb153-cf))