ath9k: fix a few remaining issues in the xmit queue cleanup patch - reduces packet...
[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/cpu-msr
59   SUBMENU:=$(OTHER_MENU)
60   TITLE:=x86 CPU MSR support
61   DEPENDS:=@TARGET_x86
62   KCONFIG:=CONFIG_X86_MSR
63   FILES:=$(LINUX_DIR)/arch/x86/kernel/msr.$(LINUX_KMOD_SUFFIX)
64   AUTOLOAD:=$(call AutoLoad,20,msr)
65 endef
66
67 define KernelPackage/cpu-msr/description
68  Kernel module for Model Specific Registers support in x86 CPUs
69 endef
70
71 $(eval $(call KernelPackage,cpu-msr))
72
73
74 define KernelPackage/crc-ccitt
75   SUBMENU:=$(OTHER_MENU)
76   TITLE:=CRC-CCITT support
77   KCONFIG:=CONFIG_CRC_CCITT
78   FILES:=$(LINUX_DIR)/lib/crc-ccitt.ko
79   AUTOLOAD:=$(call AutoLoad,20,crc-ccitt)
80 endef
81
82 define KernelPackage/crc-ccitt/description
83  Kernel module for CRC-CCITT support
84 endef
85
86 $(eval $(call KernelPackage,crc-ccitt))
87
88
89 define KernelPackage/crc-itu-t
90   SUBMENU:=$(OTHER_MENU)
91   TITLE:=CRC ITU-T V.41 support
92   KCONFIG:=CONFIG_CRC_ITU_T
93   FILES:=$(LINUX_DIR)/lib/crc-itu-t.ko
94   AUTOLOAD:=$(call AutoLoad,20,crc-itu-t)
95 endef
96
97 define KernelPackage/crc-itu-t/description
98  Kernel module for CRC ITU-T V.41 support
99 endef
100
101 $(eval $(call KernelPackage,crc-itu-t))
102
103
104 define KernelPackage/crc7
105   SUBMENU:=$(OTHER_MENU)
106   TITLE:=CRC7 support
107   KCONFIG:=CONFIG_CRC7
108   FILES:=$(LINUX_DIR)/lib/crc7.ko
109   AUTOLOAD:=$(call AutoLoad,20,crc7)
110 endef
111
112 define KernelPackage/crc7/description
113  Kernel module for CRC7 support
114 endef
115
116 $(eval $(call KernelPackage,crc7))
117
118
119 define KernelPackage/crc16
120   SUBMENU:=$(OTHER_MENU)
121   TITLE:=CRC16 support
122   KCONFIG:=CONFIG_CRC16
123   FILES:=$(LINUX_DIR)/lib/crc16.ko
124   AUTOLOAD:=$(call AutoLoad,20,crc16,1)
125   $(call SetDepends/crc16)
126 endef
127
128 define KernelPackage/crc16/description
129  Kernel module for CRC16 support
130 endef
131
132 $(eval $(call KernelPackage,crc16))
133
134
135 define KernelPackage/libcrc32c
136   SUBMENU:=$(OTHER_MENU)
137   TITLE:=CRC32 library support
138   KCONFIG:=CONFIG_LIBCRC32C
139   DEPENDS:=+kmod-crypto-core +kmod-crypto-misc 
140   FILES:=$(LINUX_DIR)/lib/libcrc32c.ko
141   AUTOLOAD:=$(call AutoLoad,20,crc32c libcrc32c,1)
142 endef
143
144 define KernelPackage/libcrc32c/description
145  Kernel module for CRC32 support
146 endef
147
148 $(eval $(call KernelPackage,libcrc32c))
149
150
151 define KernelPackage/eeprom-93cx6
152   SUBMENU:=$(OTHER_MENU)
153   TITLE:=EEPROM 93CX6 support
154   KCONFIG:=CONFIG_EEPROM_93CX6
155   FILES:=$(LINUX_DIR)/drivers/misc/eeprom/eeprom_93cx6.ko
156   AUTOLOAD:=$(call AutoLoad,20,eeprom_93cx6)
157 endef
158
159 define KernelPackage/eeprom-93cx6/description
160  Kernel module for EEPROM 93CX6 support
161 endef
162
163 $(eval $(call KernelPackage,eeprom-93cx6))
164
165
166 define KernelPackage/gpio-cs5535
167   SUBMENU:=$(OTHER_MENU)
168   TITLE:=AMD CS5535/CS5536 GPIO driver
169   DEPENDS:=@TARGET_x86
170   KCONFIG:=CONFIG_CS5535_GPIO \
171            CONFIG_GPIO_CS5535
172 ifeq ($(CONFIG_LINUX_2_6_32),y)
173   FILES:=$(LINUX_DIR)/drivers/char/cs5535_gpio.ko
174   AUTOLOAD:=$(call AutoLoad,50,cs5535_gpio)
175 else
176   FILES:=$(LINUX_DIR)/drivers/gpio/cs5535-gpio.ko
177   AUTOLOAD:=$(call AutoLoad,50,cs5535-gpio)
178 endif
179 endef
180
181 define KernelPackage/gpio-cs5535/description
182  This package contains the AMD CS5535/CS5536 GPIO driver
183 endef
184
185 $(eval $(call KernelPackage,gpio-cs5535))
186
187
188 define KernelPackage/gpio-dev
189   SUBMENU:=$(OTHER_MENU)
190   TITLE:=Generic GPIO char device support
191   DEPENDS:=@GPIO_SUPPORT
192   KCONFIG:=CONFIG_GPIO_DEVICE
193   FILES:=$(LINUX_DIR)/drivers/char/gpio_dev.ko
194   AUTOLOAD:=$(call AutoLoad,40,gpio_dev)
195 endef
196
197 define KernelPackage/gpio-dev/description
198   Kernel module to allows control of GPIO pins using a character device.
199 endef
200
201 $(eval $(call KernelPackage,gpio-dev))
202
203
204 define KernelPackage/gpio-nsc
205   SUBMENU:=$(OTHER_MENU)
206   TITLE:=Natsemi GPIO support
207   DEPENDS:=@TARGET_x86
208   KCONFIG:=CONFIG_NSC_GPIO
209   FILES:=$(LINUX_DIR)/drivers/char/nsc_gpio.ko
210   AUTOLOAD:=$(call AutoLoad,40,nsc_gpio)
211 endef
212
213 define KernelPackage/gpio-nsc/description
214  Kernel module for Natsemi GPIO
215 endef
216
217 $(eval $(call KernelPackage,gpio-nsc))
218
219
220 define KernelPackage/gpio-pc8736x
221   SUBMENU:=$(OTHER_MENU)
222   TITLE:=PC8736x GPIO support
223   DEPENDS:=@TARGET_x86
224   KCONFIG:=CONFIG_PC8736x_GPIO
225   FILES:=$(LINUX_DIR)/drivers/char/pc8736x_gpio.ko
226   AUTOLOAD:=$(call AutoLoad,40,pc8736x_gpio)
227 endef
228
229 define KernelPackage/gpio-pc8736x/description
230  Kernel module for PC8736x GPIO
231 endef
232
233 $(eval $(call KernelPackage,gpio-pc8736x))
234
235
236 define KernelPackage/gpio-scx200
237   SUBMENU:=$(OTHER_MENU)
238   TITLE:=Natsemi SCX200 GPIO support
239   DEPENDS:=@TARGET_x86 +kmod-gpio-nsc
240   KCONFIG:=CONFIG_SCx200_GPIO
241   FILES:=$(LINUX_DIR)/drivers/char/scx200_gpio.ko
242   AUTOLOAD:=$(call AutoLoad,50,scx200_gpio)
243 endef
244
245 define KernelPackage/gpio-scx200/description
246  Kernel module for SCX200 GPIO
247 endef
248
249 $(eval $(call KernelPackage,gpio-scx200))
250
251 define KernelPackage/gpio-nxp-74hc164
252   SUBMENU:=$(OTHER_MENU)
253   TITLE:=NXP 74HC164 GPIO expander support
254   DEPENDS:=@TARGET_brcm63xx
255   KCONFIG:=CONFIG_GPIO_NXP_74HC164
256   FILES:=$(LINUX_DIR)/drivers/gpio/nxp_74hc164.ko
257   AUTOLOAD:=$(call AutoLoad,99,nxp_74hc164)
258 endef
259
260 define KernelPackage/gpio-nxp-74hc164/description
261   Kernel module for NXP 74HC164 GPIO expander
262 endef
263
264 $(eval $(call KernelPackage,gpio-nxp-74hc164))
265
266 define KernelPackage/hid
267   SUBMENU:=$(OTHER_MENU)
268   TITLE:=HID Devices
269   DEPENDS:=+kmod-input-evdev
270   KCONFIG:=CONFIG_HID
271   FILES:=$(LINUX_DIR)/drivers/hid/hid.ko
272   AUTOLOAD:=$(call AutoLoad,61,hid)
273   $(call SetDepends/hid)
274   $(call AddDepends/input)
275 endef
276
277 define KernelPackage/hid/description
278  Kernel modules for HID devices
279 endef
280
281 $(eval $(call KernelPackage,hid))
282
283
284 define KernelPackage/input-core
285   SUBMENU:=$(OTHER_MENU)
286   TITLE:=Input device core
287   KCONFIG:=CONFIG_INPUT
288   $(call SetDepends/input)
289   FILES:=$(LINUX_DIR)/drivers/input/input-core.ko
290   AUTOLOAD:=$(call AutoLoad,19,input-core)
291 endef
292
293 define KernelPackage/input-core/description
294  Kernel modules for support of input device
295 endef
296
297 $(eval $(call KernelPackage,input-core))
298
299
300 define KernelPackage/input-evdev
301   SUBMENU:=$(OTHER_MENU)
302   TITLE:=Input event device
303   KCONFIG:=CONFIG_INPUT_EVDEV
304   FILES:=$(LINUX_DIR)/drivers/input/evdev.ko
305   AUTOLOAD:=$(call AutoLoad,60,evdev)
306   $(call AddDepends/input)
307 endef
308
309 define KernelPackage/input-evdev/description
310  Kernel modules for support of input device events
311 endef
312
313 $(eval $(call KernelPackage,input-evdev))
314
315
316 define KernelPackage/input-gpio-buttons
317   SUBMENU:=$(OTHER_MENU)
318   TITLE:=Polled GPIO buttons input device
319   DEPENDS:=@GPIO_SUPPORT +kmod-input-polldev
320   KCONFIG:= \
321         CONFIG_INPUT_GPIO_BUTTONS \
322         CONFIG_INPUT_MISC=y
323   FILES:=$(LINUX_DIR)/drivers/input/misc/gpio_buttons.ko
324   AUTOLOAD:=$(call AutoLoad,62,gpio_buttons)
325 endef
326
327 define KernelPackage/input-gpio-buttons/description
328  Kernel module for support polled GPIO buttons input device
329 endef
330
331 $(eval $(call KernelPackage,input-gpio-buttons))
332
333
334 define KernelPackage/input-gpio-keys
335   SUBMENU:=$(OTHER_MENU)
336   TITLE:=GPIO key support
337   DEPENDS:= @GPIO_SUPPORT
338   KCONFIG:=CONFIG_KEYBOARD_GPIO
339   FILES:=$(LINUX_DIR)/drivers/input/keyboard/gpio_keys.ko
340   AUTOLOAD:=$(call AutoLoad,60,gpio_keys)
341   $(call AddDepends/input)
342 endef
343
344 define KernelPackage/input-gpio-keys/description
345  This driver implements support for buttons connected
346  to GPIO pins of various CPUs (and some other chips).
347 endef
348
349 $(eval $(call KernelPackage,input-gpio-keys))
350
351
352 define KernelPackage/input-gpio-encoder
353   SUBMENU:=$(OTHER_MENU)
354   TITLE:=GPIO rotay encoder
355   KCONFIG:=CONFIG_INPUT_GPIO_ROTARY_ENCODER
356   FILES:=$(LINUX_DIR)/drivers/input/misc/rotary_encoder.ko
357   AUTOLOAD:=$(call AutoLoad,62,rotary_encoder)
358   $(call AddDepends/input,@GPIO_SUPPORT)
359 endef
360
361 define KernelPackage/gpio-encoder/description
362  Kernel module to use rotary encoders connected to GPIO pins
363 endef
364
365 $(eval $(call KernelPackage,input-gpio-encoder))
366
367
368 define KernelPackage/input-joydev
369   SUBMENU:=$(OTHER_MENU)
370   TITLE:=Joystick device support
371   KCONFIG:=CONFIG_INPUT_JOYDEV
372   FILES:=$(LINUX_DIR)/drivers/input/joydev.ko
373   AUTOLOAD:=$(call AutoLoad,62,joydev)
374   $(call AddDepends/input)
375 endef
376
377 define KernelPackage/input-joydev/description
378   Kernel module for joystick support
379 endef
380
381 $(eval $(call KernelPackage,input-joydev))
382
383
384 define KernelPackage/input-polldev
385   SUBMENU:=$(OTHER_MENU)
386   TITLE:=Polled Input device support
387   KCONFIG:=CONFIG_INPUT_POLLDEV
388   FILES:=$(LINUX_DIR)/drivers/input/input-polldev.ko
389   AUTOLOAD:=$(call AutoLoad,20,input-polldev)
390   $(call AddDepends/input)
391 endef
392
393 define KernelPackage/input-polldev/description
394  Kernel module for support of polled input devices
395 endef
396
397 $(eval $(call KernelPackage,input-polldev))
398
399
400 define KernelPackage/leds-alix
401   SUBMENU:=$(OTHER_MENU)
402   TITLE:=PCengines ALIX LED support
403   DEPENDS:=@TARGET_x86
404   KCONFIG:=CONFIG_LEDS_ALIX2
405   FILES:=$(LINUX_DIR)/drivers/leds/leds-alix2.ko
406   AUTOLOAD:=$(call AutoLoad,50,leds-alix2)
407 endef
408
409 define KernelPackage/leds-alix/description
410  Kernel module for PCengines ALIX LEDs
411 endef
412
413 $(eval $(call KernelPackage,leds-alix))
414
415
416 define KernelPackage/leds-gpio
417   SUBMENU:=$(OTHER_MENU)
418   TITLE:=GPIO LED support
419   DEPENDS:= @GPIO_SUPPORT
420   KCONFIG:=CONFIG_LEDS_GPIO
421   FILES:=$(LINUX_DIR)/drivers/leds/leds-gpio.ko
422   AUTOLOAD:=$(call AutoLoad,60,leds-gpio)
423 endef
424
425 define KernelPackage/leds-gpio/description
426  Kernel module for LEDs on GPIO lines
427 endef
428
429 $(eval $(call KernelPackage,leds-gpio))
430
431
432 define KernelPackage/leds-net48xx
433   SUBMENU:=$(OTHER_MENU)
434   TITLE:=Soekris Net48xx LED support
435   DEPENDS:=@TARGET_x86 +kmod-gpio-scx200
436   KCONFIG:=CONFIG_LEDS_NET48XX
437   FILES:=$(LINUX_DIR)/drivers/leds/leds-net48xx.ko
438   AUTOLOAD:=$(call AutoLoad,50,leds-net48xx)
439 endef
440
441 define KernelPackage/leds-net48xx/description
442  Kernel module for Soekris Net48xx LEDs
443 endef
444
445 $(eval $(call KernelPackage,leds-net48xx))
446
447 define KernelPackage/leds-net5501
448   SUBMENU:=$(OTHER_MENU)
449   TITLE:=Soekris Net5501 LED support
450   DEPENDS:=@TARGET_x86 +kmod-gpio-cs5535 +kmod-leds-gpio
451   KCONFIG:=CONFIG_LEDS_NET5501
452   FILES:=$(LINUX_DIR)/drivers/leds/leds-net5501.ko
453   AUTOLOAD:=$(call AutoLoad,50,leds-net5501)
454 endef
455
456 define KernelPackage/leds-net5501/description
457  Kernel module for Soekris Net5501 LEDs
458 endef
459
460 $(eval $(call KernelPackage,leds-net5501))
461
462
463 define KernelPackage/leds-rb750
464   SUBMENU:=$(OTHER_MENU)
465   TITLE:=RouterBOARD 750 LED support
466   DEPENDS:=@TARGET_ar71xx
467   KCONFIG:=CONFIG_LEDS_RB750
468   FILES:=$(LINUX_DIR)/drivers/leds/leds-rb750.ko
469   AUTOLOAD:=$(call AutoLoad,60,leds-rb750)
470 endef
471
472 define KernelPackage/leds-rb750/description
473  Kernel module for the LEDs on the MikroTik RouterBOARD 750.
474 endef
475
476 $(eval $(call KernelPackage,leds-rb750))
477
478
479 define KernelPackage/leds-wndr3700-usb
480   SUBMENU:=$(OTHER_MENU)
481   TITLE:=WNDR3700 USB LED support
482   DEPENDS:=@TARGET_ar71xx
483   KCONFIG:=CONFIG_LEDS_WNDR3700_USB
484   FILES:=$(LINUX_DIR)/drivers/leds/leds-wndr3700-usb.ko
485   AUTOLOAD:=$(call AutoLoad,60,leds-wndr3700-usb)
486 endef
487
488 define KernelPackage/leds-wndr3700-usb/description
489  Kernel module for the USB LED on the NETGWR WNDR3700 board.
490 endef
491
492 $(eval $(call KernelPackage,leds-wndr3700-usb))
493
494
495 define KernelPackage/leds-wrap
496   SUBMENU:=$(OTHER_MENU)
497   TITLE:=PCengines WRAP LED support
498   DEPENDS:=@TARGET_x86 +kmod-gpio-scx200
499   KCONFIG:=CONFIG_LEDS_WRAP
500   FILES:=$(LINUX_DIR)/drivers/leds/leds-wrap.ko
501   AUTOLOAD:=$(call AutoLoad,50,leds-wrap)
502 endef
503
504 define KernelPackage/leds-wrap/description
505  Kernel module for PCengines WRAP LEDs
506 endef
507
508 $(eval $(call KernelPackage,leds-wrap))
509
510
511 define KernelPackage/ledtrig-morse
512   SUBMENU:=$(OTHER_MENU)
513   TITLE:=LED Morse Trigger
514   KCONFIG:=CONFIG_LEDS_TRIGGER_MORSE
515   FILES:=$(LINUX_DIR)/drivers/leds/ledtrig-morse.ko
516   AUTOLOAD:=$(call AutoLoad,50,ledtrig-morse)
517 endef
518
519 define KernelPackage/ledtrig-morse/description
520  Kernel module to show morse coded messages on LEDs.
521 endef
522
523 $(eval $(call KernelPackage,ledtrig-morse))
524
525
526 define KernelPackage/ledtrig-netdev
527   SUBMENU:=$(OTHER_MENU)
528   TITLE:=LED NETDEV Trigger
529   KCONFIG:=CONFIG_LEDS_TRIGGER_NETDEV
530   FILES:=$(LINUX_DIR)/drivers/leds/ledtrig-netdev.ko
531   AUTOLOAD:=$(call AutoLoad,50,ledtrig-netdev)
532 endef
533
534 define KernelPackage/ledtrig-netdev/description
535  Kernel module to drive LEDs based on network activity.
536 endef
537
538 $(eval $(call KernelPackage,ledtrig-netdev))
539
540
541 define KernelPackage/lp
542   SUBMENU:=$(OTHER_MENU)
543   TITLE:=Parallel port and line printer support
544   DEPENDS:=@BROKEN
545   KCONFIG:= \
546         CONFIG_PARPORT \
547         CONFIG_PRINTER \
548         CONFIG_PPDEV
549   FILES:= \
550         $(LINUX_DIR)/drivers/parport/parport.ko \
551         $(LINUX_DIR)/drivers/char/lp.ko \
552         $(LINUX_DIR)/drivers/char/ppdev.ko
553   AUTOLOAD:=$(call AutoLoad,50,parport lp)
554 endef
555
556 $(eval $(call KernelPackage,lp))
557
558
559 define KernelPackage/mmc
560   SUBMENU:=$(OTHER_MENU)
561   TITLE:=MMC/SD Card Support
562   KCONFIG:= \
563         CONFIG_MMC \
564         CONFIG_MMC_BLOCK \
565         CONFIG_MMC_DEBUG=n \
566         CONFIG_MMC_UNSAFE_RESUME=n \
567         CONFIG_MMC_BLOCK_BOUNCE=y \
568         CONFIG_MMC_SDHCI=n \
569         CONFIG_MMC_TIFM_SD=n \
570         CONFIG_MMC_WBSD=n \
571         CONFIG_SDIO_UART=n
572   FILES:= \
573         $(LINUX_DIR)/drivers/mmc/core/mmc_core.ko \
574         $(LINUX_DIR)/drivers/mmc/card/mmc_block.ko
575   AUTOLOAD:=$(call AutoLoad,90,mmc_core mmc_block,1)
576 endef
577
578 define KernelPackage/mmc/description
579  Kernel support for MMC/SD cards
580 endef
581
582 $(eval $(call KernelPackage,mmc))
583
584
585 define KernelPackage/mmc-atmelmci
586   SUBMENU:=$(OTHER_MENU)
587   TITLE:=Amtel MMC Support
588   DEPENDS:=@TARGET_avr32 +kmod-mmc
589   KCONFIG:=CONFIG_MMC_ATMELMCI
590   FILES:=$(LINUX_DIR)/drivers/mmc/host/atmel-mci.ko
591   AUTOLOAD:=$(call AutoLoad,90,atmel-mci)
592 endef
593
594 define KernelPackage/mmc-atmelmci/description
595  Kernel support for  Atmel Multimedia Card Interface.
596 endef
597
598 $(eval $(call KernelPackage,mmc-atmelmci,1))
599
600
601 define KernelPackage/rfkill
602   SUBMENU:=$(OTHER_MENU)
603   TITLE:=RF switch subsystem support
604   KCONFIG:= \
605     CONFIG_RFKILL \
606     CONFIG_RFKILL_INPUT=y \
607     CONFIG_RFKILL_LEDS=y
608 ifeq ($(CONFIG_LINUX_2_6_30),)
609   FILES:= \
610     $(LINUX_DIR)/net/rfkill/rfkill.ko
611   AUTOLOAD:=$(call AutoLoad,20,rfkill)
612 else
613   FILES:= \
614     $(LINUX_DIR)/net/rfkill/rfkill.ko \
615     $(LINUX_DIR)/net/rfkill/rfkill-input.ko
616   AUTOLOAD:=$(call AutoLoad,20,rfkill rfkill-input)
617 endif
618   $(call SetDepends/rfkill)
619 endef
620
621 define KernelPackage/rfkill/description
622   Say Y here if you want to have control over RF switches
623   found on many WiFi and Bluetooth cards.
624 endef
625
626 $(eval $(call KernelPackage,rfkill))
627
628
629 define KernelPackage/softdog
630   SUBMENU:=$(OTHER_MENU)
631   TITLE:=Software watchdog driver
632   KCONFIG:=CONFIG_SOFT_WATCHDOG
633   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/softdog.ko
634   AUTOLOAD:=$(call AutoLoad,50,softdog)
635 endef
636
637 define KernelPackage/softdog/description
638  Software watchdog driver
639 endef
640
641 $(eval $(call KernelPackage,softdog))
642
643
644 define KernelPackage/ssb
645   SUBMENU:=$(OTHER_MENU)
646   TITLE:=Silicon Sonics Backplane glue code
647   DEPENDS:=@PCI_SUPPORT @!TARGET_brcm47xx @!TARGET_brcm63xx
648   KCONFIG:=\
649         CONFIG_SSB \
650         CONFIG_SSB_B43_PCI_BRIDGE=y \
651         CONFIG_SSB_DRIVER_MIPS=n \
652         CONFIG_SSB_DRIVER_PCICORE=y \
653         CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y \
654         CONFIG_SSB_PCIHOST=y \
655         CONFIG_SSB_PCIHOST_POSSIBLE=y \
656         CONFIG_SSB_POSSIBLE=y \
657         CONFIG_SSB_SPROM=y \
658         CONFIG_SSB_SILENT=y
659   FILES:=$(LINUX_DIR)/drivers/ssb/ssb.ko
660   AUTOLOAD:=$(call AutoLoad,29,ssb)
661 endef
662
663 define KernelPackage/ssb/description
664   Silicon Sonics Backplane glue code.
665 endef
666
667 $(eval $(call KernelPackage,ssb))
668
669
670 define KernelPackage/textsearch
671 SUBMENU:=$(OTHER_MENU)
672   TITLE:=Textsearch support is selected if needed
673   KCONFIG:= \
674     CONFIG_TEXTSEARCH=y \
675     CONFIG_TEXTSEARCH_KMP \
676     CONFIG_TEXTSEARCH_BM \
677     CONFIG_TEXTSEARCH_FSM
678   FILES:= \
679     $(LINUX_DIR)/lib/ts_kmp.ko \
680     $(LINUX_DIR)/lib/ts_bm.ko \
681     $(LINUX_DIR)/lib/ts_fsm.ko
682   AUTOLOAD:=$(call AutoLoad,20,ts_kmp ts_bm ts_fsm)
683 endef
684
685 $(eval $(call KernelPackage,textsearch))
686
687
688 define KernelPackage/wdt-geode
689   SUBMENU:=$(OTHER_MENU)
690   TITLE:=Geode/LX Watchdog timer
691   DEPENDS:=@TARGET_x86
692   KCONFIG:=CONFIG_GEODE_WDT
693   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/geodewdt.ko
694   AUTOLOAD:=$(call AutoLoad,50,geodewdt)
695 endef
696
697 define KernelPackage/wdt-geode/description
698   Kernel module for Geode watchdog timer.
699 endef
700
701 $(eval $(call KernelPackage,wdt-geode))
702
703
704 define KernelPackage/wdt-omap
705   SUBMENU:=$(OTHER_MENU)
706   TITLE:=OMAP Watchdog timer
707   DEPENDS:=@(TARGET_omap24xx||TARGET_omap35xx)
708   KCONFIG:=CONFIG_OMAP_WATCHDOG
709   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/omap_wdt.ko
710   AUTOLOAD:=$(call AutoLoad,50,omap_wdt.ko)
711 endef
712
713 define KernelPackage/wdt-omap/description
714   Kernel module for TI omap watchdog timer.
715 endef
716
717 $(eval $(call KernelPackage,wdt-omap))
718
719
720 define KernelPackage/wdt-sc520
721   SUBMENU:=$(OTHER_MENU)
722   TITLE:=Natsemi SC520 Watchdog support
723   DEPENDS:=@TARGET_x86
724   KCONFIG:=CONFIG_SC520_WDT
725   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/sc520_wdt.ko
726   AUTOLOAD:=$(call AutoLoad,50,sc520_wdt)
727 endef
728
729 define KernelPackage/wdt-sc520/description
730   Kernel module for SC520 Watchdog
731 endef
732
733 $(eval $(call KernelPackage,wdt-sc520))
734
735
736 define KernelPackage/wdt-scx200
737   SUBMENU:=$(OTHER_MENU)
738   TITLE:=Natsemi SCX200 Watchdog support
739   DEPENDS:=@TARGET_x86
740   KCONFIG:=CONFIG_SCx200_WDT
741   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/scx200_wdt.ko
742   AUTOLOAD:=$(call AutoLoad,50,scx200_wdt)
743 endef
744
745 define KernelPackage/wdt-scx200/description
746  Kernel module for SCX200 Watchdog
747 endef
748
749 $(eval $(call KernelPackage,wdt-scx200))
750
751
752 define KernelPackage/pwm
753   SUBMENU:=$(OTHER_MENU)
754   TITLE:=PWM generic API
755   KCONFIG:=CONFIG_GENERIC_PWM
756   FILES:=$(LINUX_DIR)/drivers/pwm/pwm.ko
757   AUTOLOAD:=$(call AutoLoad,50,pwm)
758 endef
759
760 define KernelPackage/pwm/description
761  Kernel module that implement a generic PWM API
762 endef
763
764 $(eval $(call KernelPackage,pwm))
765
766
767 define KernelPackage/pwm-gpio
768   SUBMENU:=$(OTHER_MENU)
769   TITLE:=PWM over GPIO
770   DEPENDS:=+kmod-pwm
771   KCONFIG:=CONFIG_GPIO_PWM
772   FILES:=$(LINUX_DIR)/drivers/pwm/gpio-pwm.ko
773   AUTOLOAD:=$(call AutoLoad,51,gpio-pwm)
774 endef
775
776 define KernelPackage/pwm-gpio/description
777  Kernel module to models a single-channel PWM device using a timer and a GPIO pin
778 endef
779
780 $(eval $(call KernelPackage,pwm-gpio))