2 # Copyright (C) 2006 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
9 OTHER_MENU:=Other modules
11 define KernelPackage/crc-itu-t
12 SUBMENU:=$(OTHER_MENU)
13 TITLE:=CRC ITU-T V.41 support
14 KCONFIG:=CONFIG_CRC_ITU_T
15 FILES:=$(LINUX_DIR)/lib/crc-itu-t.$(LINUX_KMOD_SUFFIX)
16 AUTOLOAD:=$(call AutoLoad,20,crc-itu-t)
19 define KernelPackage/crc-itu-t/description
20 Kernel module for CRC ITU-T V.41 support
23 $(eval $(call KernelPackage,crc-itu-t))
26 define KernelPackage/crc7
27 SUBMENU:=$(OTHER_MENU)
30 FILES:=$(LINUX_DIR)/lib/crc7.$(LINUX_KMOD_SUFFIX)
31 AUTOLOAD:=$(call AutoLoad,20,crc7)
34 define KernelPackage/crc7/description
35 Kernel module for CRC7 support
38 $(eval $(call KernelPackage,crc7))
41 define KernelPackage/eeprom-93cx6
42 SUBMENU:=$(OTHER_MENU)
43 TITLE:=EEPROM 93CX6 support
45 KCONFIG:=CONFIG_EEPROM_93CX6
46 FILES:=$(LINUX_DIR)/drivers/misc/eeprom_93cx6.$(LINUX_KMOD_SUFFIX)
47 AUTOLOAD:=$(call AutoLoad,20,eeprom_93cx6)
50 define KernelPackage/eeprom-93cx6/description
51 Kernel module for EEPROM 93CX6 support
54 $(eval $(call KernelPackage,eeprom-93cx6))
57 define KernelPackage/lp
58 SUBMENU:=$(OTHER_MENU)
59 TITLE:=Parallel port and line printer support
66 $(LINUX_DIR)/drivers/parport/parport.$(LINUX_KMOD_SUFFIX) \
67 $(LINUX_DIR)/drivers/char/lp.$(LINUX_KMOD_SUFFIX) \
68 $(LINUX_DIR)/drivers/char/ppdev.$(LINUX_KMOD_SUFFIX)
69 AUTOLOAD:=$(call AutoLoad,50,parport lp)
72 $(eval $(call KernelPackage,lp))
75 define KernelPackage/pcmcia-core
76 SUBMENU:=$(OTHER_MENU)
77 TITLE:=PCMCIA/CardBus support
78 DEPENDS:=@PCMCIA_SUPPORT
84 CONFIG_PCCARD_NONSTATIC \
88 define KernelPackage/pcmcia-core/2.4
93 $(LINUX_DIR)/drivers/pcmcia/pcmcia_core.$(LINUX_KMOD_SUFFIX) \
94 $(LINUX_DIR)/drivers/pcmcia/ds.$(LINUX_KMOD_SUFFIX) \
95 $(LINUX_DIR)/drivers/pcmcia/yenta_socket.$(LINUX_KMOD_SUFFIX)
96 AUTOLOAD:=$(call AutoLoad,40,pcmcia_core yenta_socket ds)
99 define KernelPackage/pcmcia-core/2.6
104 # CONFIG_PCCARD_NONSTATIC \
107 $(LINUX_DIR)/drivers/pcmcia/pcmcia_core.$(LINUX_KMOD_SUFFIX) \
108 $(LINUX_DIR)/drivers/pcmcia/pcmcia.$(LINUX_KMOD_SUFFIX) \
109 $(LINUX_DIR)/drivers/pcmcia/rsrc_nonstatic.$(LINUX_KMOD_SUFFIX) \
110 $(LINUX_DIR)/drivers/pcmcia/yenta_socket.$(LINUX_KMOD_SUFFIX)
111 AUTOLOAD:=$(call AutoLoad,40,pcmcia_core pcmcia rsrc_nonstatic yenta_socket)
114 define KernelPackage/pcmcia-core/au1000-2.6
116 $(LINUX_DIR)/drivers/pcmcia/pcmcia_core.$(LINUX_KMOD_SUFFIX) \
117 $(LINUX_DIR)/drivers/pcmcia/pcmcia.$(LINUX_KMOD_SUFFIX) \
118 $(LINUX_DIR)/drivers/pcmcia/rsrc_nonstatic.$(LINUX_KMOD_SUFFIX) \
119 $(LINUX_DIR)/drivers/pcmcia/au1x00_ss.$(LINUX_KMOD_SUFFIX)
120 AUTOLOAD:=$(call AutoLoad,40,pcmcia_core pcmcia rsrc_nonstatic au1x00_ss)
123 define KernelPackage/pcmcia-core/description
124 Kernel support for PCMCIA/CardBus controllers
127 $(eval $(call KernelPackage,pcmcia-core))
130 define KernelPackage/pcmcia-serial
131 SUBMENU:=$(OTHER_MENU)
132 TITLE:=Serial devices support
133 DEPENDS:=kmod-pcmcia-core
135 CONFIG_PCMCIA_SERIAL_CS \
136 CONFIG_SERIAL_8250_CS
137 AUTOLOAD:=$(call AutoLoad,45,serial_cs)
140 define KernelPackage/pcmcia-serial/2.4
141 # KCONFIG:=CONFIG_PCMCIA_SERIAL_CS
142 FILES:=$(LINUX_DIR)/drivers/char/pcmcia/serial_cs.$(LINUX_KMOD_SUFFIX)
145 define KernelPackage/pcmcia-serial/2.6
146 # KCONFIG:=CONFIG_SERIAL_8250_CS
147 FILES:=$(LINUX_DIR)/drivers/serial/serial_cs.$(LINUX_KMOD_SUFFIX)
150 define KernelPackage/pcmcia-serial/description
151 Kernel support for PCMCIA/CardBus serial devices
154 $(eval $(call KernelPackage,pcmcia-serial))
157 # XXX: remove @!TARGET_* later when we have USB support properly detected on all targets
158 define KernelPackage/bluetooth
159 SUBMENU:=$(OTHER_MENU)
160 TITLE:=Bluetooth support
161 DEPENDS:=@USB_SUPPORT @!TARGET_atheros @!TARGET_uml
166 CONFIG_BLUEZ_RFCOMM \
168 CONFIG_BLUEZ_HCIUART \
169 CONFIG_BLUEZ_HCIUSB \
179 define KernelPackage/bluetooth/2.4
182 # CONFIG_BLUEZ_L2CAP \
184 # CONFIG_BLUEZ_RFCOMM \
185 # CONFIG_BLUEZ_BNEP \
186 # CONFIG_BLUEZ_HCIUART \
187 # CONFIG_BLUEZ_HCIUSB
189 $(LINUX_DIR)/net/bluetooth/bluez.$(LINUX_KMOD_SUFFIX) \
190 $(LINUX_DIR)/net/bluetooth/l2cap.$(LINUX_KMOD_SUFFIX) \
191 $(LINUX_DIR)/net/bluetooth/sco.$(LINUX_KMOD_SUFFIX) \
192 $(LINUX_DIR)/net/bluetooth/rfcomm/rfcomm.$(LINUX_KMOD_SUFFIX) \
193 $(LINUX_DIR)/net/bluetooth/bnep/bnep.$(LINUX_KMOD_SUFFIX) \
194 $(LINUX_DIR)/drivers/bluetooth/hci_uart.$(LINUX_KMOD_SUFFIX) \
195 $(LINUX_DIR)/drivers/bluetooth/hci_usb.$(LINUX_KMOD_SUFFIX)
196 AUTOLOAD:=$(call AutoLoad,90,bluez l2cap sco rfcomm bnep hci_uart hci_usb)
199 define KernelPackage/bluetooth/2.6
209 $(LINUX_DIR)/net/bluetooth/bluetooth.$(LINUX_KMOD_SUFFIX) \
210 $(LINUX_DIR)/net/bluetooth/l2cap.$(LINUX_KMOD_SUFFIX) \
211 $(LINUX_DIR)/net/bluetooth/sco.$(LINUX_KMOD_SUFFIX) \
212 $(LINUX_DIR)/net/bluetooth/rfcomm/rfcomm.$(LINUX_KMOD_SUFFIX) \
213 $(LINUX_DIR)/net/bluetooth/bnep/bnep.$(LINUX_KMOD_SUFFIX) \
214 $(LINUX_DIR)/drivers/bluetooth/hci_uart.$(LINUX_KMOD_SUFFIX) \
215 $(LINUX_DIR)/drivers/bluetooth/hci_usb.$(LINUX_KMOD_SUFFIX)
216 AUTOLOAD:=$(call AutoLoad,90,bluetooth l2cap sco rfcomm bnep hci_uart hci_usb)
219 define KernelPackage/bluetooth/description
220 Kernel support for Bluetooth devices
223 $(eval $(call KernelPackage,bluetooth))
226 define KernelPackage/mmc
227 SUBMENU:=$(OTHER_MENU)
228 TITLE:=MMC/SD Card Support
234 CONFIG_MMC_UNSAFE_RESUME=n \
235 CONFIG_MMC_BLOCK_BOUNCE=y \
237 CONFIG_MMC_TIFM_SD=n \
241 $(LINUX_DIR)/drivers/mmc/core/mmc_core.$(LINUX_KMOD_SUFFIX) \
242 $(LINUX_DIR)/drivers/mmc/card/mmc_block.$(LINUX_KMOD_SUFFIX)
243 AUTOLOAD:=$(call AutoLoad,90,mmc_core mmc_block)
246 define KernelPackage/mmc/description
247 Kernel support for MMC/SD cards
250 $(eval $(call KernelPackage,mmc))
253 define KernelPackage/mmc-at91
254 SUBMENU:=$(OTHER_MENU)
255 TITLE:=MMC/SD Card Support on AT91
256 DEPENDS:=@TARGET_at91 +kmod-mmc
257 KCONFIG:=CONFIG_MMC_AT91
258 FILES:=$(LINUX_DIR)/drivers/mmc/at91_mci.$(LINUX_KMOD_SUFFIX)
259 AUTOLOAD:=$(call AutoLoad,90,at91_mci)
262 define KernelPackage/mmc-at91/description
263 Kernel support for MMC/SD cards on the AT91 target
266 $(eval $(call KernelPackage,mmc-at91))
269 # XXX: added a workaround for watchdog path changes
273 ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,2.6.24)),1)
274 WATCHDOG_DIR=watchdog
276 WATCHDOG_DIR?=char/watchdog
278 define KernelPackage/softdog
279 SUBMENU:=$(OTHER_MENU)
280 TITLE:=Software watchdog driver
281 KCONFIG:=CONFIG_SOFT_WATCHDOG
282 FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/softdog.$(LINUX_KMOD_SUFFIX)
283 AUTOLOAD:=$(call AutoLoad,50,softdog)
286 define KernelPackage/softdog/description
287 Software watchdog driver
290 $(eval $(call KernelPackage,softdog))
293 # XXX: remove @TARGET_* later when we are able to detect the exact version of the kernel
294 define KernelPackage/leds-gpio
295 SUBMENU:=$(OTHER_MENU)
296 TITLE:=GPIO LED support
297 DEPENDS:= @GPIO_SUPPORT
298 KCONFIG:=CONFIG_LEDS_GPIO
299 FILES:=$(LINUX_DIR)/drivers/leds/leds-gpio.$(LINUX_KMOD_SUFFIX)
300 AUTOLOAD:=$(call AutoLoad,60,leds-gpio)
303 define KernelPackage/leds-gpio/description
304 Kernel module for LEDs on GPIO lines
307 $(eval $(call KernelPackage,leds-gpio))
310 define KernelPackage/leds-adm5120
311 SUBMENU:=$(OTHER_MENU)
312 TITLE:=ADM5120 LED support
313 DEPENDS:=@TARGET_adm5120 +kmod-leds-gpio
314 KCONFIG:=CONFIG_LEDS_ADM5120
315 FILES:=$(LINUX_DIR)/drivers/leds/leds-adm5120.$(LINUX_KMOD_SUFFIX)
316 AUTOLOAD:=$(call AutoLoad,59,leds-adm5120)
319 define KernelPackage/leds-adm5120/description
320 Kernel module for LEDs on ADM5120 based boards.
323 $(eval $(call KernelPackage,leds-adm5120))
326 define KernelPackage/ledtrig-adm5120-switch
327 SUBMENU:=$(OTHER_MENU)
328 TITLE:=LED ADM5120 Switch Port Status Trigger
329 DEPENDS:=@TARGET_adm5120
330 KCONFIG:=CONFIG_LEDS_TRIGGER_ADM5120_SWITCH
331 FILES:=$(LINUX_DIR)/drivers/leds/ledtrig-adm5120-switch.$(LINUX_KMOD_SUFFIX)
332 AUTOLOAD:=$(call AutoLoad,50,ledtrig-adm5120-switch)
335 define KernelPackage/ledtrig-adm5120-switch/description
336 Kernel module to allow LEDs to be controlled by the port states
337 of the ADM5120 built-in ethernet switch.
340 $(eval $(call KernelPackage,ledtrig-adm5120-switch))
343 define KernelPackage/leds-net48xx
344 SUBMENU:=$(OTHER_MENU)
345 TITLE:=Soekris Net48xx LED support
347 KCONFIG:=CONFIG_LEDS_NET48XX
348 FILES:=$(LINUX_DIR)/drivers/leds/leds-net48xx.$(LINUX_KMOD_SUFFIX)
349 AUTOLOAD:=$(call AutoLoad,50,leds-net48xx)
352 define KernelPackage/leds-net48xx/description
353 Kernel module for Soekris Net48xx LEDs
356 $(eval $(call KernelPackage,leds-net48xx))
359 define KernelPackage/leds-wrap
360 SUBMENU:=$(OTHER_MENU)
361 TITLE:=PCengines WRAP LED support
363 KCONFIG:=CONFIG_LEDS_WRAP
364 FILES:=$(LINUX_DIR)/drivers/leds/leds-wrap.$(LINUX_KMOD_SUFFIX)
365 AUTOLOAD:=$(call AutoLoad,50,leds-wrap)
368 define KernelPackage/leds-wrap/description
369 Kernel module for PCengines WRAP LEDs
372 $(eval $(call KernelPackage,leds-wrap))
375 define KernelPackage/leds-alix
376 SUBMENU:=$(OTHER_MENU)
377 TITLE:=PCengines ALIX LED support
379 KCONFIG:=CONFIG_LEDS_ALIX
380 FILES:=$(LINUX_DIR)/drivers/leds/leds-alix.$(LINUX_KMOD_SUFFIX)
381 AUTOLOAD:=$(call AutoLoad,50,leds-alix)
384 define KernelPackage/leds-alix/description
385 Kernel module for PCengines ALIX LEDs
388 $(eval $(call KernelPackage,leds-alix))
391 define KernelPackage/ledtrig-netdev
392 SUBMENU:=$(OTHER_MENU)
393 TITLE:=LED NETDEV Trigger
394 KCONFIG:=CONFIG_LEDS_TRIGGER_NETDEV
395 FILES:=$(LINUX_DIR)/drivers/leds/ledtrig-netdev.$(LINUX_KMOD_SUFFIX)
396 AUTOLOAD:=$(call AutoLoad,50,ledtrig-netdev)
399 define KernelPackage/ledtrig-netdev/description
400 Kernel module to drive LEDs based on network activity.
403 $(eval $(call KernelPackage,ledtrig-netdev))
406 define KernelPackage/ledtrig-morse
407 SUBMENU:=$(OTHER_MENU)
408 TITLE:=LED Morse Trigger
409 KCONFIG:=CONFIG_LEDS_TRIGGER_MORSE
410 FILES:=$(LINUX_DIR)/drivers/leds/ledtrig-morse.$(LINUX_KMOD_SUFFIX)
411 AUTOLOAD:=$(call AutoLoad,50,ledtrig-morse)
414 define KernelPackage/ledtrig-morse/description
415 Kernel module to show morse coded messages on LEDs.
418 $(eval $(call KernelPackage,ledtrig-morse))
421 define KernelPackage/nsc-gpio
422 SUBMENU:=$(OTHER_MENU)
423 TITLE:=Natsemi GPIO support
425 KCONFIG:=CONFIG_NSC_GPIO
426 FILES:=$(LINUX_DIR)/drivers/char/nsc_gpio.$(LINUX_KMOD_SUFFIX)
427 AUTOLOAD:=$(call AutoLoad,40,nsc_gpio)
430 define KernelPackage/nsc-gpio/description
431 Kernel module for Natsemi GPIO
434 $(eval $(call KernelPackage,nsc-gpio))
437 define KernelPackage/scx200-gpio
438 SUBMENU:=$(OTHER_MENU)
439 TITLE:=Natsemi SCX200 GPIO support
440 DEPENDS:=@TARGET_x86 kmod-nsc-gpio
441 KCONFIG:=CONFIG_SCx200_GPIO
442 FILES:=$(LINUX_DIR)/drivers/char/scx200_gpio.$(LINUX_KMOD_SUFFIX)
443 AUTOLOAD:=$(call AutoLoad,50,scx200_gpio)
446 define KernelPackage/scx200-gpio/description
447 Kernel module for SCX200 GPIO
450 $(eval $(call KernelPackage,scx200-gpio))
453 define KernelPackage/scx200-wdt
454 SUBMENU:=$(OTHER_MENU)
455 TITLE:=Natsemi SCX200 Watchdog support
457 KCONFIG:=CONFIG_SC1200_WDT
458 FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/scx200_wdt.$(LINUX_KMOD_SUFFIX)
459 AUTOLOAD:=$(call AutoLoad,50,scx200_wdt)
462 define KernelPackage/scx200-wdt/description
463 Kernel module for SCX200 Watchdog
466 $(eval $(call KernelPackage,scx200-wdt))
469 define KernelPackage/input-core
470 SUBMENU:=$(OTHER_MENU)
471 TITLE:=Input device core
473 KCONFIG:=CONFIG_INPUT
474 FILES:=$(LINUX_DIR)/drivers/input/input-core.$(LINUX_KMOD_SUFFIX)
475 AUTOLOAD:=$(call AutoLoad,50,input-core)
478 define KernelPackage/input-core/description
479 Kernel modules for support of input device
482 $(eval $(call KernelPackage,input-core))
485 define KernelPackage/input-evdev
486 SUBMENU:=$(OTHER_MENU)
487 TITLE:=Input even device
488 DEPENDS:=+kmod-input-core
489 KCONFIG:=CONFIG_INPUT_EVDEV
490 FILES:=$(LINUX_DIR)/drivers/input/evdev.$(LINUX_KMOD_SUFFIX)
491 AUTOLOAD:=$(call AutoLoad,60,evdev)
494 define KernelPackage/input-evdev/description
495 Kernel modules for support of input device events
498 $(eval $(call KernelPackage,input-evdev))
501 define KernelPackage/hid
502 SUBMENU:=$(OTHER_MENU)
503 TITLE:=Input even device
504 DEPENDS:=+kmod-input-core +kmod-input-evdev
506 FILES:=$(LINUX_DIR)/drivers/hid/hid.$(LINUX_KMOD_SUFFIX)
507 AUTOLOAD:=$(call AutoLoad,61,hid)
510 define KernelPackage/hid/description
511 Kernel modules for HID devices
514 $(eval $(call KernelPackage,hid))
517 define KernelPackage/input-polldev
518 SUBMENU:=$(OTHER_MENU)
519 TITLE:=Polled Input device support
520 DEPENDS:=+kmod-input-core @LINUX_2_6
521 KCONFIG:=CONFIG_INPUT_POLLDEV
522 FILES:=$(LINUX_DIR)/drivers/input/input-polldev.$(LINUX_KMOD_SUFFIX)
523 AUTOLOAD:=$(call AutoLoad,61,input-polldev)
526 define KernelPackage/input-polldev/description
527 Kernel module for support of polled input devices
530 $(eval $(call KernelPackage,input-polldev))
533 define KernelPackage/input-gpio-buttons
534 SUBMENU:=$(OTHER_MENU)
535 TITLE:=Polled GPIO buttons input device
536 DEPENDS:=@GPIO_SUPPORT +kmod-input-polldev
538 CONFIG_INPUT_GPIO_BUTTONS \
540 FILES:=$(LINUX_DIR)/drivers/input/misc/gpio_buttons.$(LINUX_KMOD_SUFFIX)
541 AUTOLOAD:=$(call AutoLoad,62,gpio_buttons)
544 define KernelPackage/input-gpio-buttons/description
545 Kernel module for support polled GPIO buttons input device
548 $(eval $(call KernelPackage,input-gpio-buttons))
551 define KernelPackage/mmc-spi
552 SUBMENU:=$(OTHER_MENU)
553 TITLE:=MMC/SD over SPI Support
554 DEPENDS:=@LINUX_2_6 +kmod-mmc +kmod-spi +kmod-crc-itu-t +kmod-crc7
555 KCONFIG:=CONFIG_MMC_SPI
556 FILES:=$(LINUX_DIR)/drivers/mmc/host/mmc_spi.$(LINUX_KMOD_SUFFIX)
557 AUTOLOAD:=$(call AutoLoad,90,mmc_spi)
560 define KernelPackage/mmc-spi/description
561 Kernel support for MMC/SD over SPI
564 $(eval $(call KernelPackage,mmc-spi))
566 define KernelPackage/mmc-atmelmci
567 SUBMENU:=$(OTHER_MENU)
568 TITLE:=Amtel MMC Support
569 DEPENDS:=@TARGET_avr32 +kmod-mmc
570 KCONFIG:=CONFIG_MMC_ATMELMCI
571 FILES:=$(LINUX_DIR)/drivers/mmc/host/atmel-mci.$(LINUX_KMOD_SUFFIX)
572 AUTOLOAD:=$(call AutoLoad,90,atmel-mci)
575 define KernelPackage/mmc-atmelmci/description
576 Kernel support for Atmel Multimedia Card Interface.
579 $(eval $(call KernelPackage,mmc-atmelmci))
581 define KernelPackage/spi
582 SUBMENU:=$(OTHER_MENU)
583 TITLE:=Serial Peripheral Interface support
590 define KernelPackage/spi/description
591 This package contains the Serial Peripheral Interface Master driver
594 $(eval $(call KernelPackage,spi))
596 define KernelPackage/spi-bitbang
597 SUBMENU:=$(OTHER_MENU)
598 TITLE:=Serial Peripheral Interface bitbanging library
599 DEPENDS:=@LINUX_2_6 +kmod-spi
600 KCONFIG:=CONFIG_SPI_BITBANG
601 FILES:=$(LINUX_DIR)/drivers/spi/spi_bitbang.$(LINUX_KMOD_SUFFIX)
602 AUTOLOAD:=$(call AutoLoad,91,spi_bitbang)
605 define KernelPackage/spi-bitbang/description
606 This package contains the SPI bitbanging library
609 $(eval $(call KernelPackage,spi-bitbang))
611 define KernelPackage/spi-gpio
612 SUBMENU:=$(OTHER_MENU)
613 TITLE:=GPIO based bitbanging SPI controller
614 DEPENDS:=@GPIO_SUPPORT +kmod-spi-bitbang
615 KCONFIG:=CONFIG_SPI_GPIO
616 FILES:=$(LINUX_DIR)/drivers/spi/spi_gpio.$(LINUX_KMOD_SUFFIX)
617 AUTOLOAD:=$(call AutoLoad,92,spi_gpio)
620 define KernelPackage/spi-gpio/description
621 This package contains the GPIO based bitbanging SPI controller driver
624 $(eval $(call KernelPackage,spi-gpio))
626 define KernelPackage/spi-dev
627 SUBMENU:=$(OTHER_MENU)
628 TITLE:=User mode SPI device driver
629 DEPENDS:=@LINUX_2_6 +kmod-spi
630 KCONFIG:=CONFIG_SPI_SPIDEV
631 FILES:=$(LINUX_DIR)/drivers/spi/spidev.$(LINUX_KMOD_SUFFIX)
632 AUTOLOAD:=$(call AutoLoad,91,spidev)
635 define KernelPackage/spi-dev/description
636 This package contains the user mode SPI device driver
639 $(eval $(call KernelPackage,spi-dev))