kernel: add symbols, small fixes
[oweals/openwrt.git] / package / kernel / modules / other.mk
1 #
2 # Copyright (C) 2006-2010 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 OTHER_MENU:=Other modules
9
10 WATCHDOG_DIR:=watchdog
11
12
13 define KernelPackage/bluetooth
14   SUBMENU:=$(OTHER_MENU)
15   TITLE:=Bluetooth support
16   DEPENDS:=@USB_SUPPORT +kmod-usb-core
17   KCONFIG:= \
18         CONFIG_BLUEZ \
19         CONFIG_BLUEZ_L2CAP \
20         CONFIG_BLUEZ_SCO \
21         CONFIG_BLUEZ_RFCOMM \
22         CONFIG_BLUEZ_BNEP \
23         CONFIG_BLUEZ_HCIUART \
24         CONFIG_BLUEZ_HCIUSB \
25         CONFIG_BLUEZ_HIDP \
26         CONFIG_BT \
27         CONFIG_BT_L2CAP \
28         CONFIG_BT_SCO \
29         CONFIG_BT_RFCOMM \
30         CONFIG_BT_BNEP \
31         CONFIG_BT_HCIBTUSB \
32         CONFIG_BT_HCIUSB \
33         CONFIG_BT_HCIUART \
34         CONFIG_BT_HCIUART_H4 \
35         CONFIG_BT_HIDP
36   $(call AddDepends/crc16)
37   $(call AddDepends/hid)
38   $(call AddDepends/rfkill)
39   FILES:= \
40         $(LINUX_DIR)/net/bluetooth/bluetooth.ko \
41         $(LINUX_DIR)/net/bluetooth/l2cap.ko \
42         $(LINUX_DIR)/net/bluetooth/sco.ko \
43         $(LINUX_DIR)/net/bluetooth/rfcomm/rfcomm.ko \
44         $(LINUX_DIR)/net/bluetooth/bnep/bnep.ko \
45         $(LINUX_DIR)/net/bluetooth/hidp/hidp.ko \
46         $(LINUX_DIR)/drivers/bluetooth/hci_uart.ko \
47         $(LINUX_DIR)/drivers/bluetooth/btusb.ko
48   AUTOLOAD:=$(call AutoLoad,90,bluetooth l2cap sco rfcomm bnep hidp hci_uart btusb)
49 endef
50
51 define KernelPackage/bluetooth/description
52  Kernel support for Bluetooth devices
53 endef
54
55 $(eval $(call KernelPackage,bluetooth))
56
57
58 define KernelPackage/bluetooth-hci-h4p
59   SUBMENU:=$(OTHER_MENU)
60   TITLE:=HCI driver with H4 Nokia extensions
61   DEPENDS:=@TARGET_omap24xx +kmod-bluetooth
62   KCONFIG:=CONFIG_BT_HCIH4P
63   FILES:=$(LINUX_DIR)/drivers/bluetooth/hci_h4p/hci_h4p.ko
64   AUTOLOAD:=$(call AutoLoad,91,hci_h4p)
65 endef
66
67 define KernelPackage/bluetooth-hci-h4p/description
68   HCI driver with H4 Nokia extensions
69 endef
70
71 $(eval $(call KernelPackage,bluetooth-hci-h4p))
72
73
74 define KernelPackage/cpu-msr
75   SUBMENU:=$(OTHER_MENU)
76   TITLE:=x86 CPU MSR support
77   DEPENDS:=@TARGET_x86
78   KCONFIG:=CONFIG_X86_MSR
79   FILES:=$(LINUX_DIR)/arch/x86/kernel/msr.$(LINUX_KMOD_SUFFIX)
80   AUTOLOAD:=$(call AutoLoad,20,msr)
81 endef
82
83 define KernelPackage/cpu-msr/description
84  Kernel module for Model Specific Registers support in x86 CPUs
85 endef
86
87 $(eval $(call KernelPackage,cpu-msr))
88
89
90 define KernelPackage/crc-ccitt
91   SUBMENU:=$(OTHER_MENU)
92   TITLE:=CRC-CCITT support
93   KCONFIG:=CONFIG_CRC_CCITT
94   FILES:=$(LINUX_DIR)/lib/crc-ccitt.ko
95   AUTOLOAD:=$(call AutoLoad,20,crc-ccitt)
96 endef
97
98 define KernelPackage/crc-ccitt/description
99  Kernel module for CRC-CCITT support
100 endef
101
102 $(eval $(call KernelPackage,crc-ccitt))
103
104
105 define KernelPackage/crc-itu-t
106   SUBMENU:=$(OTHER_MENU)
107   TITLE:=CRC ITU-T V.41 support
108   KCONFIG:=CONFIG_CRC_ITU_T
109   FILES:=$(LINUX_DIR)/lib/crc-itu-t.ko
110   AUTOLOAD:=$(call AutoLoad,20,crc-itu-t)
111 endef
112
113 define KernelPackage/crc-itu-t/description
114  Kernel module for CRC ITU-T V.41 support
115 endef
116
117 $(eval $(call KernelPackage,crc-itu-t))
118
119
120 define KernelPackage/crc7
121   SUBMENU:=$(OTHER_MENU)
122   TITLE:=CRC7 support
123   KCONFIG:=CONFIG_CRC7
124   FILES:=$(LINUX_DIR)/lib/crc7.ko
125   AUTOLOAD:=$(call AutoLoad,20,crc7)
126 endef
127
128 define KernelPackage/crc7/description
129  Kernel module for CRC7 support
130 endef
131
132 $(eval $(call KernelPackage,crc7))
133
134
135 define KernelPackage/crc16
136   SUBMENU:=$(OTHER_MENU)
137   TITLE:=CRC16 support
138   KCONFIG:=CONFIG_CRC16
139   FILES:=$(LINUX_DIR)/lib/crc16.ko
140   AUTOLOAD:=$(call AutoLoad,20,crc16,1)
141   $(call SetDepends/crc16)
142 endef
143
144 define KernelPackage/crc16/description
145  Kernel module for CRC16 support
146 endef
147
148 $(eval $(call KernelPackage,crc16))
149
150
151 define KernelPackage/libcrc32c
152   SUBMENU:=$(OTHER_MENU)
153   TITLE:=CRC32 library support
154   KCONFIG:=CONFIG_LIBCRC32C
155   DEPENDS:=+kmod-crypto-core +kmod-crypto-misc
156   FILES:=$(LINUX_DIR)/lib/libcrc32c.ko
157   AUTOLOAD:=$(call AutoLoad,20,crc32c libcrc32c,1)
158 endef
159
160 define KernelPackage/libcrc32c/description
161  Kernel module for CRC32 support
162 endef
163
164 $(eval $(call KernelPackage,libcrc32c))
165
166
167 define KernelPackage/eeprom-93cx6
168   SUBMENU:=$(OTHER_MENU)
169   TITLE:=EEPROM 93CX6 support
170   KCONFIG:=CONFIG_EEPROM_93CX6
171   FILES:=$(LINUX_DIR)/drivers/misc/eeprom/eeprom_93cx6.ko
172   AUTOLOAD:=$(call AutoLoad,20,eeprom_93cx6)
173 endef
174
175 define KernelPackage/eeprom-93cx6/description
176  Kernel module for EEPROM 93CX6 support
177 endef
178
179 $(eval $(call KernelPackage,eeprom-93cx6))
180
181
182 define KernelPackage/gpio-cs5535
183   SUBMENU:=$(OTHER_MENU)
184   TITLE:=AMD CS5535/CS5536 GPIO driver
185   DEPENDS:=@TARGET_x86 @LINUX_2_6_30||LINUX_2_6_31||LINUX_2_6_32||LINUX_2_6_35||LINUX_2_6_36||LINUX_2_6_37
186   KCONFIG:=CONFIG_CS5535_GPIO CONFIG_GPIOLIB=y
187   FILES:=$(LINUX_DIR)/drivers/char/cs5535_gpio.ko
188   AUTOLOAD:=$(call AutoLoad,50,cs5535_gpio)
189 endef
190
191 define KernelPackage/gpio-cs5535/description
192  This package contains the AMD CS5535/CS5536 GPIO driver
193 endef
194
195 $(eval $(call KernelPackage,gpio-cs5535))
196
197
198 define KernelPackage/gpio-cs5535-new
199   SUBMENU:=$(OTHER_MENU)
200   TITLE:=AMD CS5535/CS5536 GPIO driver with improved sysfs support
201   DEPENDS:=@TARGET_x86 @!(LINUX_2_6_30||LINUX_2_6_31||LINUX_2_6_32)
202   KCONFIG:=CONFIG_GPIO_CS5535 CONFIG_GPIOLIB=y
203   FILES:=$(LINUX_DIR)/drivers/gpio/cs5535-gpio.ko
204   AUTOLOAD:=$(call AutoLoad,50,cs5535-gpio)
205 endef
206
207 define KernelPackage/gpio-cs5535-new/description
208  This package contains the new AMD CS5535/CS5536 GPIO driver
209 endef
210
211 $(eval $(call KernelPackage,gpio-cs5535-new))
212
213
214 define KernelPackage/gpio-dev
215   SUBMENU:=$(OTHER_MENU)
216   TITLE:=Generic GPIO char device support
217   DEPENDS:=@GPIO_SUPPORT
218   KCONFIG:=CONFIG_GPIO_DEVICE
219   FILES:=$(LINUX_DIR)/drivers/char/gpio_dev.ko
220   AUTOLOAD:=$(call AutoLoad,40,gpio_dev)
221 endef
222
223 define KernelPackage/gpio-dev/description
224   Kernel module to allows control of GPIO pins using a character device.
225 endef
226
227 $(eval $(call KernelPackage,gpio-dev))
228
229
230 define KernelPackage/gpio-nsc
231   SUBMENU:=$(OTHER_MENU)
232   TITLE:=Natsemi GPIO support
233   DEPENDS:=@TARGET_x86
234   KCONFIG:=CONFIG_NSC_GPIO
235   FILES:=$(LINUX_DIR)/drivers/char/nsc_gpio.ko
236   AUTOLOAD:=$(call AutoLoad,40,nsc_gpio)
237 endef
238
239 define KernelPackage/gpio-nsc/description
240  Kernel module for Natsemi GPIO
241 endef
242
243 $(eval $(call KernelPackage,gpio-nsc))
244
245
246 define KernelPackage/gpio-pc8736x
247   SUBMENU:=$(OTHER_MENU)
248   TITLE:=PC8736x GPIO support
249   DEPENDS:=@TARGET_x86
250   KCONFIG:=CONFIG_PC8736x_GPIO
251   FILES:=$(LINUX_DIR)/drivers/char/pc8736x_gpio.ko
252   AUTOLOAD:=$(call AutoLoad,40,pc8736x_gpio)
253 endef
254
255 define KernelPackage/gpio-pc8736x/description
256  Kernel module for PC8736x GPIO
257 endef
258
259 $(eval $(call KernelPackage,gpio-pc8736x))
260
261
262 define KernelPackage/gpio-scx200
263   SUBMENU:=$(OTHER_MENU)
264   TITLE:=Natsemi SCX200 GPIO support
265   DEPENDS:=@TARGET_x86 +kmod-gpio-nsc
266   KCONFIG:=CONFIG_SCx200_GPIO
267   FILES:=$(LINUX_DIR)/drivers/char/scx200_gpio.ko
268   AUTOLOAD:=$(call AutoLoad,50,scx200_gpio)
269 endef
270
271 define KernelPackage/gpio-scx200/description
272  Kernel module for SCX200 GPIO
273 endef
274
275 $(eval $(call KernelPackage,gpio-scx200))
276
277 define KernelPackage/gpio-nxp-74hc164
278   SUBMENU:=$(OTHER_MENU)
279   TITLE:=NXP 74HC164 GPIO expander support
280   DEPENDS:=@TARGET_brcm63xx
281   KCONFIG:=CONFIG_GPIO_NXP_74HC164
282   FILES:=$(LINUX_DIR)/drivers/gpio/nxp_74hc164.ko
283   AUTOLOAD:=$(call AutoLoad,99,nxp_74hc164)
284 endef
285
286 define KernelPackage/gpio-nxp-74hc164/description
287   Kernel module for NXP 74HC164 GPIO expander
288 endef
289
290 $(eval $(call KernelPackage,gpio-nxp-74hc164))
291
292 define KernelPackage/hid
293   SUBMENU:=$(OTHER_MENU)
294   TITLE:=HID Devices
295   DEPENDS:=+kmod-input-evdev
296   KCONFIG:=CONFIG_HID
297   FILES:=$(LINUX_DIR)/drivers/hid/hid.ko
298   AUTOLOAD:=$(call AutoLoad,61,hid)
299   $(call SetDepends/hid)
300   $(call AddDepends/input)
301 endef
302
303 define KernelPackage/hid/description
304  Kernel modules for HID devices
305 endef
306
307 $(eval $(call KernelPackage,hid))
308
309
310 define KernelPackage/input-core
311   SUBMENU:=$(OTHER_MENU)
312   TITLE:=Input device core
313   KCONFIG:=CONFIG_INPUT
314   $(call SetDepends/input)
315   FILES:=$(LINUX_DIR)/drivers/input/input-core.ko
316   AUTOLOAD:=$(call AutoLoad,19,input-core)
317 endef
318
319 define KernelPackage/input-core/description
320  Kernel modules for support of input device
321 endef
322
323 $(eval $(call KernelPackage,input-core))
324
325
326 define KernelPackage/input-evdev
327   SUBMENU:=$(OTHER_MENU)
328   TITLE:=Input event device
329   KCONFIG:=CONFIG_INPUT_EVDEV
330   FILES:=$(LINUX_DIR)/drivers/input/evdev.ko
331   AUTOLOAD:=$(call AutoLoad,60,evdev)
332   $(call AddDepends/input)
333 endef
334
335 define KernelPackage/input-evdev/description
336  Kernel modules for support of input device events
337 endef
338
339 $(eval $(call KernelPackage,input-evdev))
340
341
342 define KernelPackage/input-gpio-buttons
343   SUBMENU:=$(OTHER_MENU)
344   TITLE:=Polled GPIO buttons input device
345   DEPENDS:=@GPIO_SUPPORT +kmod-input-polldev
346   KCONFIG:= \
347         CONFIG_INPUT_GPIO_BUTTONS \
348         CONFIG_INPUT_MISC=y
349   FILES:=$(LINUX_DIR)/drivers/input/misc/gpio_buttons.ko
350   AUTOLOAD:=$(call AutoLoad,62,gpio_buttons)
351 endef
352
353 define KernelPackage/input-gpio-buttons/description
354  Kernel module for support polled GPIO buttons input device
355 endef
356
357 $(eval $(call KernelPackage,input-gpio-buttons))
358
359
360 define KernelPackage/input-gpio-keys
361   SUBMENU:=$(OTHER_MENU)
362   TITLE:=GPIO key support
363   DEPENDS:= @GPIO_SUPPORT
364   KCONFIG:= \
365         CONFIG_KEYBOARD_GPIO \
366         CONFIG_INPUT_KEYBOARD=y
367   FILES:=$(LINUX_DIR)/drivers/input/keyboard/gpio_keys.ko
368   AUTOLOAD:=$(call AutoLoad,60,gpio_keys)
369   $(call AddDepends/input)
370 endef
371
372 define KernelPackage/input-gpio-keys/description
373  This driver implements support for buttons connected
374  to GPIO pins of various CPUs (and some other chips).
375 endef
376
377 $(eval $(call KernelPackage,input-gpio-keys))
378
379
380 define KernelPackage/input-gpio-encoder
381   SUBMENU:=$(OTHER_MENU)
382   TITLE:=GPIO rotay encoder
383   KCONFIG:=CONFIG_INPUT_GPIO_ROTARY_ENCODER
384   FILES:=$(LINUX_DIR)/drivers/input/misc/rotary_encoder.ko
385   AUTOLOAD:=$(call AutoLoad,62,rotary_encoder)
386   $(call AddDepends/input,@GPIO_SUPPORT)
387 endef
388
389 define KernelPackage/gpio-encoder/description
390  Kernel module to use rotary encoders connected to GPIO pins
391 endef
392
393 $(eval $(call KernelPackage,input-gpio-encoder))
394
395
396 define KernelPackage/input-joydev
397   SUBMENU:=$(OTHER_MENU)
398   TITLE:=Joystick device support
399   KCONFIG:=CONFIG_INPUT_JOYDEV
400   FILES:=$(LINUX_DIR)/drivers/input/joydev.ko
401   AUTOLOAD:=$(call AutoLoad,62,joydev)
402   $(call AddDepends/input)
403 endef
404
405 define KernelPackage/input-joydev/description
406   Kernel module for joystick support
407 endef
408
409 $(eval $(call KernelPackage,input-joydev))
410
411
412 define KernelPackage/input-polldev
413   SUBMENU:=$(OTHER_MENU)
414   TITLE:=Polled Input device support
415   KCONFIG:=CONFIG_INPUT_POLLDEV
416   FILES:=$(LINUX_DIR)/drivers/input/input-polldev.ko
417   AUTOLOAD:=$(call AutoLoad,20,input-polldev)
418   $(call AddDepends/input)
419 endef
420
421 define KernelPackage/input-polldev/description
422  Kernel module for support of polled input devices
423 endef
424
425 $(eval $(call KernelPackage,input-polldev))
426
427
428 define KernelPackage/leds-alix
429   SUBMENU:=$(OTHER_MENU)
430   TITLE:=PCengines ALIX LED support
431   DEPENDS:=@TARGET_x86
432   KCONFIG:=CONFIG_LEDS_ALIX2
433   FILES:=$(LINUX_DIR)/drivers/leds/leds-alix2.ko
434   AUTOLOAD:=$(call AutoLoad,50,leds-alix2)
435 endef
436
437 define KernelPackage/leds-alix/description
438  Kernel module for PCengines ALIX LEDs
439 endef
440
441 $(eval $(call KernelPackage,leds-alix))
442
443
444 define KernelPackage/leds-gpio
445   SUBMENU:=$(OTHER_MENU)
446   TITLE:=GPIO LED support
447   DEPENDS:= @GPIO_SUPPORT
448   KCONFIG:=CONFIG_LEDS_GPIO
449   FILES:=$(LINUX_DIR)/drivers/leds/leds-gpio.ko
450   AUTOLOAD:=$(call AutoLoad,60,leds-gpio)
451 endef
452
453 define KernelPackage/leds-gpio/description
454  Kernel module for LEDs on GPIO lines
455 endef
456
457 $(eval $(call KernelPackage,leds-gpio))
458
459
460 define KernelPackage/leds-net48xx
461   SUBMENU:=$(OTHER_MENU)
462   TITLE:=Soekris Net48xx LED support
463   DEPENDS:=@TARGET_x86 +kmod-gpio-scx200
464   KCONFIG:=CONFIG_LEDS_NET48XX
465   FILES:=$(LINUX_DIR)/drivers/leds/leds-net48xx.ko
466   AUTOLOAD:=$(call AutoLoad,50,leds-net48xx)
467 endef
468
469 define KernelPackage/leds-net48xx/description
470  Kernel module for Soekris Net48xx LEDs
471 endef
472
473 $(eval $(call KernelPackage,leds-net48xx))
474
475 define KernelPackage/leds-net5501
476   SUBMENU:=$(OTHER_MENU)
477   TITLE:=Soekris Net5501 LED support
478   DEPENDS:=@TARGET_x86 +kmod-gpio-cs5535 +kmod-leds-gpio
479   KCONFIG:=CONFIG_LEDS_NET5501
480   FILES:=$(LINUX_DIR)/drivers/leds/leds-net5501.ko
481   AUTOLOAD:=$(call AutoLoad,50,leds-net5501)
482 endef
483
484 define KernelPackage/leds-net5501/description
485  Kernel module for Soekris Net5501 LEDs
486 endef
487
488 $(eval $(call KernelPackage,leds-net5501))
489
490
491 define KernelPackage/leds-rb750
492   SUBMENU:=$(OTHER_MENU)
493   TITLE:=RouterBOARD 750 LED support
494   DEPENDS:=@TARGET_ar71xx
495   KCONFIG:=CONFIG_LEDS_RB750
496   FILES:=$(LINUX_DIR)/drivers/leds/leds-rb750.ko
497   AUTOLOAD:=$(call AutoLoad,60,leds-rb750)
498 endef
499
500 define KernelPackage/leds-rb750/description
501  Kernel module for the LEDs on the MikroTik RouterBOARD 750.
502 endef
503
504 $(eval $(call KernelPackage,leds-rb750))
505
506
507 define KernelPackage/leds-wndr3700-usb
508   SUBMENU:=$(OTHER_MENU)
509   TITLE:=WNDR3700 USB LED support
510   DEPENDS:=@TARGET_ar71xx
511   KCONFIG:=CONFIG_LEDS_WNDR3700_USB
512   FILES:=$(LINUX_DIR)/drivers/leds/leds-wndr3700-usb.ko
513   AUTOLOAD:=$(call AutoLoad,60,leds-wndr3700-usb)
514 endef
515
516 define KernelPackage/leds-wndr3700-usb/description
517  Kernel module for the USB LED on the NETGWR WNDR3700 board.
518 endef
519
520 $(eval $(call KernelPackage,leds-wndr3700-usb))
521
522
523 define KernelPackage/leds-wrap
524   SUBMENU:=$(OTHER_MENU)
525   TITLE:=PCengines WRAP LED support
526   DEPENDS:=@TARGET_x86 +kmod-gpio-scx200
527   KCONFIG:=CONFIG_LEDS_WRAP
528   FILES:=$(LINUX_DIR)/drivers/leds/leds-wrap.ko
529   AUTOLOAD:=$(call AutoLoad,50,leds-wrap)
530 endef
531
532 define KernelPackage/leds-wrap/description
533  Kernel module for PCengines WRAP LEDs
534 endef
535
536 $(eval $(call KernelPackage,leds-wrap))
537
538
539 define KernelPackage/ledtrig-heartbeat
540   SUBMENU:=$(OTHER_MENU)
541   TITLE:=LED Heartbeat Trigger
542   KCONFIG:=CONFIG_LEDS_TRIGGER_HEARTBEAT
543   FILES:=$(LINUX_DIR)/drivers/leds/ledtrig-heartbeat.ko
544   AUTOLOAD:=$(call AutoLoad,50,ledtrig-heartbeat)
545 endef
546
547 define KernelPackage/ledtrig-gpio/description
548  Kernel module that allows LEDs to blink like heart beat
549 endef
550
551 $(eval $(call KernelPackage,ledtrig-heartbeat))
552
553
554 define KernelPackage/ledtrig-gpio
555   SUBMENU:=$(OTHER_MENU)
556   TITLE:=LED GPIO Trigger
557   KCONFIG:=CONFIG_LEDS_TRIGGER_GPIO
558   FILES:=$(LINUX_DIR)/drivers/leds/ledtrig-gpio.ko
559   AUTOLOAD:=$(call AutoLoad,50,ledtrig-gpio)
560 endef
561
562 define KernelPackage/ledtrig-gpio/description
563  Kernel module that allows LEDs to be controlled by gpio events.
564 endef
565
566 $(eval $(call KernelPackage,ledtrig-gpio))
567
568
569 define KernelPackage/ledtrig-morse
570   SUBMENU:=$(OTHER_MENU)
571   TITLE:=LED Morse Trigger
572   KCONFIG:=CONFIG_LEDS_TRIGGER_MORSE
573   FILES:=$(LINUX_DIR)/drivers/leds/ledtrig-morse.ko
574   AUTOLOAD:=$(call AutoLoad,50,ledtrig-morse)
575 endef
576
577 define KernelPackage/ledtrig-morse/description
578  Kernel module to show morse coded messages on LEDs.
579 endef
580
581 $(eval $(call KernelPackage,ledtrig-morse))
582
583
584 define KernelPackage/ledtrig-netdev
585   SUBMENU:=$(OTHER_MENU)
586   TITLE:=LED NETDEV Trigger
587   KCONFIG:=CONFIG_LEDS_TRIGGER_NETDEV
588   FILES:=$(LINUX_DIR)/drivers/leds/ledtrig-netdev.ko
589   AUTOLOAD:=$(call AutoLoad,50,ledtrig-netdev)
590 endef
591
592 define KernelPackage/ledtrig-netdev/description
593  Kernel module to drive LEDs based on network activity.
594 endef
595
596 $(eval $(call KernelPackage,ledtrig-netdev))
597
598
599 define KernelPackage/ledtrig-netfilter
600   SUBMENU:=$(OTHER_MENU)
601   TITLE:=LED NetFilter Trigger
602   DEPENDS:=kmod-ipt-core
603   KCONFIG:=CONFIG_NETFILTER_XT_TARGET_LED
604   FILES:=$(LINUX_DIR)/net/netfilter/xt_LED.ko
605   AUTOLOAD:=$(call AutoLoad,50,xt_LED)
606 endef
607
608 define KernelPackage/ledtrig-netfilter/description
609  Kernel module to flash LED when a particular packets passing through your machine.
610
611  For example to create an LED trigger for incoming SSH traffic:
612     iptables -A INPUT -p tcp --dport 22 -j LED --led-trigger-id ssh --led-delay 1000
613  Then attach the new trigger to an LED on your system:
614     echo netfilter-ssh > /sys/class/leds/<ledname>/trigger
615 endef
616
617 $(eval $(call KernelPackage,ledtrig-netfilter))
618
619 define KernelPackage/ledtrig-usbdev
620   SUBMENU:=$(OTHER_MENU)
621   TITLE:=LED USB device Trigger
622   DEPENDS:=@USB_SUPPORT +kmod-usb-core
623   KCONFIG:=CONFIG_LEDS_TRIGGER_USBDEV
624   FILES:=$(LINUX_DIR)/drivers/leds/ledtrig-usbdev.ko
625   AUTOLOAD:=$(call AutoLoad,50,ledtrig-usbdev)
626 endef
627
628 define KernelPackage/ledtrig-usbdev/description
629  Kernel module to drive LEDs based on USB device presence/activity.
630 endef
631
632 $(eval $(call KernelPackage,ledtrig-usbdev))
633
634
635 define KernelPackage/lp
636   SUBMENU:=$(OTHER_MENU)
637   TITLE:=Parallel port and line printer support
638   DEPENDS:=@BROKEN
639   KCONFIG:= \
640         CONFIG_PARPORT \
641         CONFIG_PRINTER \
642         CONFIG_PPDEV
643   FILES:= \
644         $(LINUX_DIR)/drivers/parport/parport.ko \
645         $(LINUX_DIR)/drivers/char/lp.ko \
646         $(LINUX_DIR)/drivers/char/ppdev.ko
647   AUTOLOAD:=$(call AutoLoad,50,parport lp)
648 endef
649
650 $(eval $(call KernelPackage,lp))
651
652
653 define KernelPackage/mmc
654   SUBMENU:=$(OTHER_MENU)
655   TITLE:=MMC/SD Card Support
656   KCONFIG:= \
657         CONFIG_MMC \
658         CONFIG_MMC_BLOCK \
659         CONFIG_MMC_DEBUG=n \
660         CONFIG_MMC_UNSAFE_RESUME=n \
661         CONFIG_MMC_BLOCK_BOUNCE=y \
662         CONFIG_MMC_SDHCI=n \
663         CONFIG_MMC_TIFM_SD=n \
664         CONFIG_MMC_WBSD=n \
665         CONFIG_SDIO_UART=n
666   FILES:= \
667         $(LINUX_DIR)/drivers/mmc/core/mmc_core.ko \
668         $(LINUX_DIR)/drivers/mmc/card/mmc_block.ko
669   AUTOLOAD:=$(call AutoLoad,90,mmc_core mmc_block,1)
670 endef
671
672 define KernelPackage/mmc/description
673  Kernel support for MMC/SD cards
674 endef
675
676 $(eval $(call KernelPackage,mmc))
677
678
679 define KernelPackage/mmc-atmelmci
680   SUBMENU:=$(OTHER_MENU)
681   TITLE:=Amtel MMC Support
682   DEPENDS:=@TARGET_avr32 +kmod-mmc
683   KCONFIG:=CONFIG_MMC_ATMELMCI
684   FILES:=$(LINUX_DIR)/drivers/mmc/host/atmel-mci.ko
685   AUTOLOAD:=$(call AutoLoad,90,atmel-mci)
686 endef
687
688 define KernelPackage/mmc-atmelmci/description
689  Kernel support for  Atmel Multimedia Card Interface.
690 endef
691
692 $(eval $(call KernelPackage,mmc-atmelmci,1))
693
694
695 define KernelPackage/oprofile
696   SUBMENU:=$(OTHER_MENU)
697   TITLE:=OProfile profiling support
698   KCONFIG:=CONFIG_OPROFILE
699   FILES:=$(LINUX_DIR)/arch/$(LINUX_KARCH)/oprofile/oprofile.$(LINUX_KMOD_SUFFIX)
700   DEPENDS:=@KERNEL_PROFILING
701 endef
702
703 define KernelPackage/oprofile/description
704   Kernel module for support for oprofile system profiling.
705 endef
706
707 $(eval $(call KernelPackage,oprofile))
708
709
710 define KernelPackage/rfkill
711   SUBMENU:=$(OTHER_MENU)
712   TITLE:=RF switch subsystem support
713   KCONFIG:= \
714     CONFIG_RFKILL \
715     CONFIG_RFKILL_INPUT=y \
716     CONFIG_RFKILL_LEDS=y
717 ifeq ($(CONFIG_LINUX_2_6_30),)
718   FILES:= \
719     $(LINUX_DIR)/net/rfkill/rfkill.ko
720   AUTOLOAD:=$(call AutoLoad,20,rfkill)
721 else
722   FILES:= \
723     $(LINUX_DIR)/net/rfkill/rfkill.ko \
724     $(LINUX_DIR)/net/rfkill/rfkill-input.ko
725   AUTOLOAD:=$(call AutoLoad,20,rfkill rfkill-input)
726 endif
727   $(call SetDepends/rfkill)
728 endef
729
730 define KernelPackage/rfkill/description
731   Say Y here if you want to have control over RF switches
732   found on many WiFi and Bluetooth cards.
733 endef
734
735 $(eval $(call KernelPackage,rfkill))
736
737
738 define KernelPackage/softdog
739   SUBMENU:=$(OTHER_MENU)
740   TITLE:=Software watchdog driver
741   KCONFIG:=CONFIG_SOFT_WATCHDOG
742   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/softdog.ko
743   AUTOLOAD:=$(call AutoLoad,50,softdog)
744 endef
745
746 define KernelPackage/softdog/description
747  Software watchdog driver
748 endef
749
750 $(eval $(call KernelPackage,softdog))
751
752
753 define KernelPackage/ssb
754   SUBMENU:=$(OTHER_MENU)
755   TITLE:=Silicon Sonics Backplane glue code
756   DEPENDS:=@PCI_SUPPORT @!TARGET_brcm47xx @!TARGET_brcm63xx
757   KCONFIG:=\
758         CONFIG_SSB \
759         CONFIG_SSB_B43_PCI_BRIDGE=y \
760         CONFIG_SSB_DRIVER_MIPS=n \
761         CONFIG_SSB_DRIVER_PCICORE=y \
762         CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y \
763         CONFIG_SSB_PCIHOST=y \
764         CONFIG_SSB_PCIHOST_POSSIBLE=y \
765         CONFIG_SSB_POSSIBLE=y \
766         CONFIG_SSB_SPROM=y \
767         CONFIG_SSB_SILENT=y
768   FILES:=$(LINUX_DIR)/drivers/ssb/ssb.ko
769   AUTOLOAD:=$(call AutoLoad,29,ssb)
770 endef
771
772 define KernelPackage/ssb/description
773   Silicon Sonics Backplane glue code.
774 endef
775
776 $(eval $(call KernelPackage,ssb))
777
778
779 define KernelPackage/textsearch
780 SUBMENU:=$(OTHER_MENU)
781   TITLE:=Textsearch support is selected if needed
782   KCONFIG:= \
783     CONFIG_TEXTSEARCH=y \
784     CONFIG_TEXTSEARCH_KMP \
785     CONFIG_TEXTSEARCH_BM \
786     CONFIG_TEXTSEARCH_FSM
787   FILES:= \
788     $(LINUX_DIR)/lib/ts_kmp.ko \
789     $(LINUX_DIR)/lib/ts_bm.ko \
790     $(LINUX_DIR)/lib/ts_fsm.ko
791   AUTOLOAD:=$(call AutoLoad,20,ts_kmp ts_bm ts_fsm)
792 endef
793
794 $(eval $(call KernelPackage,textsearch))
795
796
797 define KernelPackage/wdt-geode
798   SUBMENU:=$(OTHER_MENU)
799   TITLE:=Geode/LX Watchdog timer
800   DEPENDS:=@TARGET_x86
801   KCONFIG:=CONFIG_GEODE_WDT
802   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/geodewdt.ko
803   AUTOLOAD:=$(call AutoLoad,50,geodewdt)
804 endef
805
806 define KernelPackage/wdt-geode/description
807   Kernel module for Geode watchdog timer.
808 endef
809
810 $(eval $(call KernelPackage,wdt-geode))
811
812
813 define KernelPackage/wdt-omap
814   SUBMENU:=$(OTHER_MENU)
815   TITLE:=OMAP Watchdog timer
816   DEPENDS:=@(TARGET_omap24xx||TARGET_omap35xx)
817   KCONFIG:=CONFIG_OMAP_WATCHDOG
818   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/omap_wdt.ko
819   AUTOLOAD:=$(call AutoLoad,50,omap_wdt.ko)
820 endef
821
822 define KernelPackage/wdt-omap/description
823   Kernel module for TI omap watchdog timer.
824 endef
825
826 $(eval $(call KernelPackage,wdt-omap))
827
828
829 define KernelPackage/wdt-orion
830   SUBMENU:=$(OTHER_MENU)
831   TITLE:=Marvell Orion Watchdog timer
832   DEPENDS:=@TARGET_orion
833   KCONFIG:=CONFIG_ORION_WATCHDOG
834   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/orion_wdt.ko
835   AUTOLOAD:=$(call AutoLoad,50,orion_wdt)
836 endef
837
838 define KernelPackage/wdt-orion/description
839   Kernel module for Marvell orion watchdog timer.
840 endef
841
842 $(eval $(call KernelPackage,wdt-orion))
843
844
845 define KernelPackage/wdt-sc520
846   SUBMENU:=$(OTHER_MENU)
847   TITLE:=Natsemi SC520 Watchdog support
848   DEPENDS:=@TARGET_x86
849   KCONFIG:=CONFIG_SC520_WDT
850   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/sc520_wdt.ko
851   AUTOLOAD:=$(call AutoLoad,50,sc520_wdt)
852 endef
853
854 define KernelPackage/wdt-sc520/description
855   Kernel module for SC520 Watchdog
856 endef
857
858 $(eval $(call KernelPackage,wdt-sc520))
859
860
861 define KernelPackage/wdt-scx200
862   SUBMENU:=$(OTHER_MENU)
863   TITLE:=Natsemi SCX200 Watchdog support
864   DEPENDS:=@TARGET_x86
865   KCONFIG:=CONFIG_SCx200_WDT
866   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/scx200_wdt.ko
867   AUTOLOAD:=$(call AutoLoad,50,scx200_wdt)
868 endef
869
870 define KernelPackage/wdt-scx200/description
871  Kernel module for SCX200 Watchdog
872 endef
873
874 $(eval $(call KernelPackage,wdt-scx200))
875
876 define KernelPackage/pwm
877   SUBMENU:=$(OTHER_MENU)
878   TITLE:=PWM generic API
879   KCONFIG:=CONFIG_GENERIC_PWM
880   FILES:=$(LINUX_DIR)/drivers/pwm/pwm.ko
881   AUTOLOAD:=$(call AutoLoad,50,pwm)
882 endef
883
884 define KernelPackage/pwm/description
885  Kernel module that implement a generic PWM API
886 endef
887
888 $(eval $(call KernelPackage,pwm))
889
890
891 define KernelPackage/pwm-gpio
892   SUBMENU:=$(OTHER_MENU)
893   TITLE:=PWM over GPIO
894   DEPENDS:=+kmod-pwm
895   KCONFIG:=CONFIG_GPIO_PWM
896   FILES:=$(LINUX_DIR)/drivers/pwm/gpio-pwm.ko
897   AUTOLOAD:=$(call AutoLoad,51,gpio-pwm)
898 endef
899
900 define KernelPackage/pwm-gpio/description
901  Kernel module to models a single-channel PWM device using a timer and a GPIO pin
902 endef
903
904 $(eval $(call KernelPackage,pwm-gpio))
905
906 define KernelPackage/rtc-core
907   SUBMENU:=$(OTHER_MENU)
908   TITLE:=Real Time Clock class support
909   KCONFIG:=CONFIG_RTC_CLASS
910   FILES:=$(LINUX_DIR)/drivers/rtc/rtc-core.$(LINUX_KMOD_SUFFIX)
911   AUTOLOAD:=$(call AutoLoad,29,rtc-core)
912 endef
913
914 define KernelPackage/rtc-core/description
915  Generic RTC class support.
916 endef
917
918 $(eval $(call KernelPackage,rtc-core))
919
920 define KernelPackage/rtc-pcf8563
921   SUBMENU:=$(OTHER_MENU)
922   TITLE:=Philips PCF8563/Epson RTC8564 RTC support
923   DEPENDS:=+kmod-rtc-core
924   KCONFIG:=CONFIG_RTC_DRV_PCF8563
925   FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf8563.$(LINUX_KMOD_SUFFIX)
926   AUTOLOAD:=$(call AutoLoad,60,rtc-pcf8563)
927 endef
928
929 define KernelPackage/rtc-pcf8563/description
930  Kernel module for Philips PCF8563 RTC chip.
931  The Epson RTC8564 should work as well.
932 endef
933
934 $(eval $(call KernelPackage,rtc-pcf8563))
935
936
937 define KernelPackage/n810bm
938   SUBMENU:=$(OTHER_MENU)
939   TITLE:=Nokia N810 battery management driver
940   DEPENDS:=@TARGET_omap24xx
941   KCONFIG:=CONFIG_N810BM
942   FILES:=$(LINUX_DIR)/drivers/cbus/n810bm.$(LINUX_KMOD_SUFFIX)
943   AUTOLOAD:=$(call AutoLoad,01,n810bm)
944 endef
945
946 define KernelPackage/n810bm/description
947   Nokia N810 battery management driver.
948   Controls battery power management and battery charging.
949 endef
950
951 $(eval $(call KernelPackage,n810bm))