kernel: make most modules use AutoProbe
[openwrt/openwrt.git] / package / kernel / linux / modules / other.mk
1 #
2 # Copyright (C) 2006-2012 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 +kmod-crypto-hash
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=y \
28 CONFIG_BT_SCO=y \
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 CONFIG_HID_SUPPORT=y
37 $(call AddDepends/crc16)
38 $(call AddDepends/hid)
39 $(call AddDepends/rfkill)
40 FILES:= \
41 $(LINUX_DIR)/net/bluetooth/bluetooth.ko \
42 $(LINUX_DIR)/net/bluetooth/rfcomm/rfcomm.ko \
43 $(LINUX_DIR)/net/bluetooth/bnep/bnep.ko \
44 $(LINUX_DIR)/net/bluetooth/hidp/hidp.ko \
45 $(LINUX_DIR)/drivers/bluetooth/hci_uart.ko \
46 $(LINUX_DIR)/drivers/bluetooth/btusb.ko
47 AUTOLOAD:=$(call AutoProbe,bluetooth rfcomm bnep hidp hci_uart btusb)
48 endef
49
50 define KernelPackage/bluetooth/description
51 Kernel support for Bluetooth devices
52 endef
53
54 $(eval $(call KernelPackage,bluetooth))
55
56
57 define KernelPackage/bluetooth-hci-h4p
58 SUBMENU:=$(OTHER_MENU)
59 TITLE:=HCI driver with H4 Nokia extensions
60 DEPENDS:=@TARGET_omap24xx +kmod-bluetooth
61 KCONFIG:=CONFIG_BT_HCIH4P
62 FILES:=$(LINUX_DIR)/drivers/bluetooth/hci_h4p/hci_h4p.ko
63 AUTOLOAD:=$(call AutoProbe,hci_h4p)
64 endef
65
66 define KernelPackage/bluetooth-hci-h4p/description
67 HCI driver with H4 Nokia extensions
68 endef
69
70 $(eval $(call KernelPackage,bluetooth-hci-h4p))
71
72
73 define KernelPackage/eeprom-93cx6
74 SUBMENU:=$(OTHER_MENU)
75 TITLE:=EEPROM 93CX6 support
76 KCONFIG:=CONFIG_EEPROM_93CX6
77 FILES:=$(LINUX_DIR)/drivers/misc/eeprom/eeprom_93cx6.ko
78 AUTOLOAD:=$(call AutoLoad,20,eeprom_93cx6)
79 endef
80
81 define KernelPackage/eeprom-93cx6/description
82 Kernel module for EEPROM 93CX6 support
83 endef
84
85 $(eval $(call KernelPackage,eeprom-93cx6))
86
87
88 define KernelPackage/eeprom-at24
89 SUBMENU:=$(OTHER_MENU)
90 TITLE:=EEPROM AT24 support
91 KCONFIG:=CONFIG_EEPROM_AT24
92 DEPENDS:=+kmod-i2c-core
93 FILES:=$(LINUX_DIR)/drivers/misc/eeprom/at24.ko
94 AUTOLOAD:=$(call AutoProbe,at24)
95 endef
96
97 define KernelPackage/eeprom-at24/description
98 Kernel module for most I2C EEPROMs
99 endef
100
101 $(eval $(call KernelPackage,eeprom-at24))
102
103
104 define KernelPackage/eeprom-at25
105 SUBMENU:=$(OTHER_MENU)
106 TITLE:=EEPROM AT25 support
107 KCONFIG:=CONFIG_EEPROM_AT25
108 FILES:=$(LINUX_DIR)/drivers/misc/eeprom/at25.ko
109 AUTOLOAD:=$(call AutoProbe,at25)
110 endef
111
112 define KernelPackage/eeprom-at25/description
113 Kernel module for most SPI EEPROMs
114 endef
115
116 $(eval $(call KernelPackage,eeprom-at25))
117
118
119 define KernelPackage/gpio-dev
120 SUBMENU:=$(OTHER_MENU)
121 TITLE:=Generic GPIO char device support
122 DEPENDS:=@GPIO_SUPPORT
123 KCONFIG:=CONFIG_GPIO_DEVICE
124 FILES:=$(LINUX_DIR)/drivers/char/gpio_dev.ko
125 AUTOLOAD:=$(call AutoLoad,40,gpio_dev)
126 endef
127
128 define KernelPackage/gpio-dev/description
129 Kernel module to allows control of GPIO pins using a character device.
130 endef
131
132 $(eval $(call KernelPackage,gpio-dev))
133
134
135 define KernelPackage/gpio-mcp23s08
136 SUBMENU:=$(OTHER_MENU)
137 TITLE:=Microchip MCP23xxx I/O expander
138 DEPENDS:=@GPIO_SUPPORT +PACKAGE_kmod-i2c-core:kmod-i2c-core
139 KCONFIG:=CONFIG_GPIO_MCP23S08
140 FILES:=$(LINUX_DIR)/drivers/gpio/gpio-mcp23s08.ko
141 AUTOLOAD:=$(call AutoLoad,40,gpio-mcp23s08)
142 endef
143
144 define KernelPackage/gpio-mcp23s08/description
145 Kernel module for Microchip MCP23xxx SPI/I2C I/O expander
146 endef
147
148 $(eval $(call KernelPackage,gpio-mcp23s08))
149
150
151 define KernelPackage/gpio-nxp-74hc164
152 SUBMENU:=$(OTHER_MENU)
153 TITLE:=NXP 74HC164 GPIO expander support
154 KCONFIG:=CONFIG_GPIO_NXP_74HC164
155 FILES:=$(LINUX_DIR)/drivers/gpio/nxp_74hc164.ko
156 AUTOLOAD:=$(call AutoProbe,nxp_74hc164)
157 endef
158
159 define KernelPackage/gpio-nxp-74hc164/description
160 Kernel module for NXP 74HC164 GPIO expander
161 endef
162
163 $(eval $(call KernelPackage,gpio-nxp-74hc164))
164
165 define KernelPackage/gpio-pcf857x
166 SUBMENU:=$(OTHER_MENU)
167 DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core
168 TITLE:=PCX857x, PCA967x and MAX732X I2C GPIO expanders
169 KCONFIG:=CONFIG_GPIO_PCF857X
170 FILES:=$(LINUX_DIR)/drivers/gpio/gpio-pcf857x.ko
171 AUTOLOAD:=$(call AutoLoad,55,gpio-pcf857x)
172 endef
173
174 define KernelPackage/gpio-pcf857x/description
175 Kernel module for PCF857x, PCA{85,96}7x, and MAX732[89] I2C GPIO expanders
176 endef
177
178 $(eval $(call KernelPackage,gpio-pcf857x))
179
180 define KernelPackage/lp
181 SUBMENU:=$(OTHER_MENU)
182 TITLE:=Parallel port and line printer support
183 DEPENDS:=@BROKEN
184 KCONFIG:= \
185 CONFIG_PARPORT \
186 CONFIG_PRINTER \
187 CONFIG_PPDEV
188 FILES:= \
189 $(LINUX_DIR)/drivers/parport/parport.ko \
190 $(LINUX_DIR)/drivers/char/lp.ko \
191 $(LINUX_DIR)/drivers/char/ppdev.ko
192 AUTOLOAD:=$(call AutoLoad,50,parport lp)
193 endef
194
195 $(eval $(call KernelPackage,lp))
196
197
198 define KernelPackage/mmc
199 SUBMENU:=$(OTHER_MENU)
200 TITLE:=MMC/SD Card Support
201 KCONFIG:= \
202 CONFIG_MMC \
203 CONFIG_MMC_BLOCK \
204 CONFIG_MMC_DEBUG=n \
205 CONFIG_MMC_UNSAFE_RESUME=n \
206 CONFIG_MMC_BLOCK_BOUNCE=y \
207 CONFIG_MMC_SDHCI=n \
208 CONFIG_MMC_TIFM_SD=n \
209 CONFIG_MMC_WBSD=n \
210 CONFIG_SDIO_UART=n
211 FILES:= \
212 $(LINUX_DIR)/drivers/mmc/core/mmc_core.ko \
213 $(LINUX_DIR)/drivers/mmc/card/mmc_block.ko
214 AUTOLOAD:=$(call AutoProbe,mmc_core mmc_block,1)
215 endef
216
217 define KernelPackage/mmc/description
218 Kernel support for MMC/SD cards
219 endef
220
221 $(eval $(call KernelPackage,mmc))
222
223
224 define KernelPackage/oprofile
225 SUBMENU:=$(OTHER_MENU)
226 TITLE:=OProfile profiling support
227 KCONFIG:=CONFIG_OPROFILE
228 FILES:=$(LINUX_DIR)/arch/$(LINUX_KARCH)/oprofile/oprofile.ko
229 DEPENDS:=@KERNEL_PROFILING
230 endef
231
232 define KernelPackage/oprofile/description
233 Kernel module for support for oprofile system profiling
234 endef
235
236 $(eval $(call KernelPackage,oprofile))
237
238
239 define KernelPackage/rfkill
240 SUBMENU:=$(OTHER_MENU)
241 TITLE:=RF switch subsystem support
242 DEPENDS:=@USE_RFKILL +kmod-input-core
243 KCONFIG:= \
244 CONFIG_RFKILL \
245 CONFIG_RFKILL_INPUT=y \
246 CONFIG_RFKILL_LEDS=y \
247 CONFIG_RFKILL_GPIO=y
248 FILES:= \
249 $(LINUX_DIR)/net/rfkill/rfkill.ko
250 AUTOLOAD:=$(call AutoLoad,20,rfkill)
251 endef
252
253 define KernelPackage/rfkill/description
254 Say Y here if you want to have control over RF switches
255 found on many WiFi and Bluetooth cards
256 endef
257
258 $(eval $(call KernelPackage,rfkill))
259
260
261 define KernelPackage/softdog
262 SUBMENU:=$(OTHER_MENU)
263 TITLE:=Software watchdog driver
264 KCONFIG:=CONFIG_SOFT_WATCHDOG
265 FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/softdog.ko
266 AUTOLOAD:=$(call AutoLoad,50,softdog)
267 endef
268
269 define KernelPackage/softdog/description
270 Software watchdog driver
271 endef
272
273 $(eval $(call KernelPackage,softdog))
274
275
276 define KernelPackage/ssb
277 SUBMENU:=$(OTHER_MENU)
278 TITLE:=Silicon Sonics Backplane glue code
279 DEPENDS:=@PCI_SUPPORT @!TARGET_brcm47xx @!TARGET_brcm63xx
280 KCONFIG:=\
281 CONFIG_SSB \
282 CONFIG_SSB_B43_PCI_BRIDGE=y \
283 CONFIG_SSB_DRIVER_MIPS=n \
284 CONFIG_SSB_DRIVER_PCICORE=y \
285 CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y \
286 CONFIG_SSB_PCIHOST=y \
287 CONFIG_SSB_PCIHOST_POSSIBLE=y \
288 CONFIG_SSB_POSSIBLE=y \
289 CONFIG_SSB_SPROM=y \
290 CONFIG_SSB_SILENT=y
291 FILES:=$(LINUX_DIR)/drivers/ssb/ssb.ko
292 AUTOLOAD:=$(call AutoLoad,18,ssb,1)
293 endef
294
295 define KernelPackage/ssb/description
296 Silicon Sonics Backplane glue code.
297 endef
298
299 $(eval $(call KernelPackage,ssb))
300
301
302 define KernelPackage/bcma
303 SUBMENU:=$(OTHER_MENU)
304 TITLE:=BCMA support
305 DEPENDS:=@PCI_SUPPORT @!TARGET_brcm47xx
306 KCONFIG:=\
307 CONFIG_BCMA \
308 CONFIG_BCMA_POSSIBLE=y \
309 CONFIG_BCMA_BLOCKIO=y \
310 CONFIG_BCMA_HOST_PCI_POSSIBLE=y \
311 CONFIG_BCMA_HOST_PCI=y \
312 CONFIG_BCMA_HOST_SOC=n \
313 CONFIG_BCMA_DRIVER_MIPS=n \
314 CONFIG_BCMA_DRIVER_PCI_HOSTMODE=n \
315 CONFIG_BCMA_DRIVER_GMAC_CMN=n \
316 CONFIG_BCMA_DEBUG=n
317 FILES:=$(LINUX_DIR)/drivers/bcma/bcma.ko
318 AUTOLOAD:=$(call AutoLoad,29,bcma)
319 endef
320
321 define KernelPackage/bcma/description
322 Bus driver for Broadcom specific Advanced Microcontroller Bus Architecture
323 endef
324
325 $(eval $(call KernelPackage,bcma))
326
327
328 define KernelPackage/wdt-omap
329 SUBMENU:=$(OTHER_MENU)
330 TITLE:=OMAP Watchdog timer
331 DEPENDS:=@(TARGET_omap24xx||TARGET_omap35xx)
332 KCONFIG:=CONFIG_OMAP_WATCHDOG
333 FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/omap_wdt.ko
334 AUTOLOAD:=$(call AutoLoad,50,omap_wdt.ko)
335 endef
336
337 define KernelPackage/wdt-omap/description
338 Kernel module for TI omap watchdog timer
339 endef
340
341 $(eval $(call KernelPackage,wdt-omap))
342
343
344 define KernelPackage/wdt-orion
345 SUBMENU:=$(OTHER_MENU)
346 TITLE:=Marvell Orion Watchdog timer
347 DEPENDS:=@TARGET_orion||TARGET_kirkwood||TARGET_mvebu
348 KCONFIG:=CONFIG_ORION_WATCHDOG
349 FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/orion_wdt.ko
350 AUTOLOAD:=$(call AutoLoad,50,orion_wdt)
351 endef
352
353 define KernelPackage/wdt-orion/description
354 Kernel module for Marvell Orion, Kirkwood and Armada XP/370 watchdog timer
355 endef
356
357 $(eval $(call KernelPackage,wdt-orion))
358
359
360 define KernelPackage/booke-wdt
361 SUBMENU:=$(OTHER_MENU)
362 TITLE:=PowerPC Book-E Watchdog Timer
363 DEPENDS:=@(TARGET_mpc85xx||TARGET_ppc40x||TARGET_ppc44x)
364 KCONFIG:=CONFIG_BOOKE_WDT
365 FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/booke_wdt.ko
366 AUTOLOAD:=$(call AutoLoad,50,booke_wdt)
367 endef
368
369 define KernelPackage/booke-wdt/description
370 Kernel module for PowerPC Book-E Watchdog Timer
371 endef
372
373 $(eval $(call KernelPackage,booke-wdt))
374
375
376 define KernelPackage/pwm
377 SUBMENU:=$(OTHER_MENU)
378 TITLE:=PWM generic API
379 KCONFIG:=CONFIG_GENERIC_PWM
380 FILES:=$(LINUX_DIR)/drivers/pwm/pwm.ko
381 endef
382
383 define KernelPackage/pwm/description
384 Kernel module that implement a generic PWM API
385 endef
386
387 $(eval $(call KernelPackage,pwm))
388
389
390 define KernelPackage/pwm-gpio
391 SUBMENU:=$(OTHER_MENU)
392 TITLE:=PWM over GPIO
393 DEPENDS:=+kmod-pwm
394 KCONFIG:=CONFIG_GPIO_PWM
395 FILES:=$(LINUX_DIR)/drivers/pwm/gpio-pwm.ko
396 AUTOLOAD:=$(call AutoProbe,gpio-pwm)
397 endef
398
399 define KernelPackage/pwm-gpio/description
400 Kernel module to models a single-channel PWM device using a timer and a GPIO pin
401 endef
402
403 $(eval $(call KernelPackage,pwm-gpio))
404
405
406 define KernelPackage/rtc-isl1208
407 SUBMENU:=$(OTHER_MENU)
408 TITLE:=Intersil ISL1208 RTC support
409 $(call AddDepends/rtc)
410 DEPENDS+=+kmod-i2c-core
411 KCONFIG:=CONFIG_RTC_DRV_ISL1208
412 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-isl1208.ko
413 AUTOLOAD:=$(call AutoProbe,rtc-isl1208)
414 endef
415
416 define KernelPackage/rtc-isl1208/description
417 Kernel module for Intersil ISL1208 RTC.
418 endef
419
420 $(eval $(call KernelPackage,rtc-isl1208))
421
422
423 define KernelPackage/rtc-marvell
424 SUBMENU:=$(OTHER_MENU)
425 TITLE:=Marvell SoC built-in RTC support
426 $(call AddDepends/rtc)
427 DEPENDS+=@TARGET_kirkwood||TARGET_orion||TARGET_mvebu
428 KCONFIG:=CONFIG_RTC_DRV_MV
429 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-mv.ko
430 AUTOLOAD:=$(call AutoProbe,rtc-mv)
431 endef
432
433 define KernelPackage/rtc-marvell/description
434 Kernel module for Marvell SoC built-in RTC.
435 endef
436
437 $(eval $(call KernelPackage,rtc-marvell))
438
439 define KernelPackage/rtc-pcf8563
440 SUBMENU:=$(OTHER_MENU)
441 TITLE:=Philips PCF8563/Epson RTC8564 RTC support
442 $(call AddDepends/rtc,+kmod-i2c-core)
443 KCONFIG:=CONFIG_RTC_DRV_PCF8563
444 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf8563.ko
445 AUTOLOAD:=$(call AutoProbe,rtc-pcf8563)
446 endef
447
448 define KernelPackage/rtc-pcf8563/description
449 Kernel module for Philips PCF8563 RTC chip.
450 The Epson RTC8564 should work as well.
451 endef
452
453 $(eval $(call KernelPackage,rtc-pcf8563))
454
455
456 define KernelPackage/rtc-pcf2123
457 SUBMENU:=$(OTHER_MENU)
458 TITLE:=Philips PCF2123 RTC support
459 $(call AddDepends/rtc)
460 KCONFIG:=CONFIG_RTC_DRV_PCF2123
461 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf2123.ko
462 AUTOLOAD:=$(call AutoProbe,rtc-pcf2123)
463 endef
464
465 define KernelPackage/rtc-pcf2123/description
466 Kernel module for Philips PCF2123 RTC chip
467 endef
468
469 $(eval $(call KernelPackage,rtc-pcf2123))
470
471 define KernelPackage/rtc-pt7c4338
472 SUBMENU:=$(OTHER_MENU)
473 TITLE:=Pericom PT7C4338 RTC support
474 $(call AddDepends/rtc,+kmod-i2c-core)
475 KCONFIG:=CONFIG_RTC_DRV_PT7C4338
476 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pt7c4338.ko
477 AUTOLOAD:=$(call AutoProbe,rtc-pt7c4338)
478 endef
479
480 define KernelPackage/rtc-pt7c4338/description
481 Kernel module for Pericom PT7C4338 i2c RTC chip
482 endef
483
484 $(eval $(call KernelPackage,rtc-pt7c4338))
485
486
487 define KernelPackage/mtdtests
488 SUBMENU:=$(OTHER_MENU)
489 TITLE:=MTD subsystem tests
490 KCONFIG:=CONFIG_MTD_TESTS
491 DEPENDS:=+kmod-nand
492 FILES:=\
493 $(LINUX_DIR)/drivers/mtd/tests/mtd_nandecctest.ko \
494 $(LINUX_DIR)/drivers/mtd/tests/mtd_oobtest.ko \
495 $(LINUX_DIR)/drivers/mtd/tests/mtd_pagetest.ko \
496 $(LINUX_DIR)/drivers/mtd/tests/mtd_readtest.ko \
497 $(LINUX_DIR)/drivers/mtd/tests/mtd_speedtest.ko \
498 $(LINUX_DIR)/drivers/mtd/tests/mtd_stresstest.ko \
499 $(LINUX_DIR)/drivers/mtd/tests/mtd_subpagetest.ko \
500 $(LINUX_DIR)/drivers/mtd/tests/mtd_torturetest.ko
501 endef
502
503 define KernelPackage/mtdtests/description
504 Kernel modules for MTD subsystem/driver testing
505 endef
506
507 $(eval $(call KernelPackage,mtdtests))
508
509
510 define KernelPackage/nand
511 SUBMENU:=$(OTHER_MENU)
512 TITLE:=NAND flash support
513 KCONFIG:=CONFIG_MTD_NAND \
514 CONFIG_MTD_NAND_IDS \
515 CONFIG_MTD_NAND_ECC
516 FILES:= \
517 $(LINUX_DIR)/drivers/mtd/nand/nand_ids.ko \
518 $(LINUX_DIR)/drivers/mtd/nand/nand_ecc.ko \
519 $(LINUX_DIR)/drivers/mtd/nand/nand.ko
520 AUTOLOAD:=$(call AutoLoad,20,nand_ids nand_ecc nand)
521 endef
522
523 define KernelPackage/nand/description
524 Kernel module for NAND support
525 endef
526
527 $(eval $(call KernelPackage,nand))
528
529
530 define KernelPackage/nandsim
531 SUBMENU:=$(OTHER_MENU)
532 TITLE:=NAND simulator
533 DEPENDS:=+kmod-nand
534 KCONFIG:=CONFIG_MTD_NAND_NANDSIM
535 FILES:=$(LINUX_DIR)/drivers/mtd/nand/nandsim.ko
536 endef
537
538 define KernelPackage/nandsim/description
539 Kernel module for NAND flash simulation.
540 endef
541
542 $(eval $(call KernelPackage,nandsim))
543
544 define KernelPackage/serial-8250
545 SUBMENU:=$(OTHER_MENU)
546 TITLE:=8250 UARTs
547 KCONFIG:= CONFIG_SERIAL_8250 \
548 CONFIG_SERIAL_8250_NR_UARTS=16 \
549 CONFIG_SERIAL_8250_RUNTIME_UARTS=16 \
550 CONFIG_SERIAL_8250_EXTENDED=y \
551 CONFIG_SERIAL_8250_MANY_PORTS=y \
552 CONFIG_SERIAL_8250_SHARE_IRQ=y \
553 CONFIG_SERIAL_8250_DETECT_IRQ=n \
554 CONFIG_SERIAL_8250_RSA=n
555 FILES:=$(LINUX_DIR)/drivers/tty/serial/8250/8250$(if $(call kernel_patchver_ge,3.7),$(if $(call kernel_patchver_le,3.8),_core)).ko
556 endef
557
558 define KernelPackage/serial-8250/description
559 Kernel module for 8250 UART based serial ports
560 endef
561
562 $(eval $(call KernelPackage,serial-8250))
563
564
565 define KernelPackage/regmap
566 SUBMENU:=$(OTHER_MENU)
567 TITLE:=Generic register map support
568 DEPENDS:=+kmod-lib-lzo +kmod-i2c-core
569 KCONFIG:=CONFIG_REGMAP \
570 CONFIG_REGMAP_SPI \
571 CONFIG_REGMAP_I2C \
572 CONFIG_SPI=y
573 FILES:= \
574 $(LINUX_DIR)/drivers/base/regmap/regmap-core.ko \
575 $(LINUX_DIR)/drivers/base/regmap/regmap-i2c.ko \
576 $(LINUX_DIR)/drivers/base/regmap/regmap-spi.ko
577 AUTOLOAD:=$(call AutoLoad,21,regmap-core regmap-i2c regmap-spi)
578 endef
579
580 define KernelPackage/regmap/description
581 Generic register map support
582 endef
583
584 $(eval $(call KernelPackage,regmap))
585
586 define KernelPackage/ikconfig
587 SUBMENU:=$(OTHER_MENU)
588 TITLE:=Kernel configuration via /proc/config.gz
589 KCONFIG:=CONFIG_IKCONFIG \
590 CONFIG_IKCONFIG_PROC=y
591 FILES:=$(LINUX_DIR)/kernel/configs.ko
592 AUTOLOAD:=$(call AutoLoad,70,configs)
593 endef
594
595 define KernelPackage/ikconfig/description
596 Kernel configuration via /proc/config.gz
597 endef
598
599 $(eval $(call KernelPackage,ikconfig))
600
601
602 define KernelPackage/zram
603 SUBMENU:=$(OTHER_MENU)
604 TITLE:=ZRAM
605 DEPENDS:=@!LINUX_3_3 +kmod-lib-lzo
606 KCONFIG:= \
607 CONFIG_ZSMALLOC \
608 CONFIG_ZRAM \
609 CONFIG_ZRAM_DEBUG=n
610 FILES:= \
611 $(LINUX_DIR)/drivers/staging/zsmalloc/zsmalloc.ko \
612 $(LINUX_DIR)/drivers/staging/zram/zram.ko
613 AUTOLOAD:=$(call AutoLoad,20,zsmalloc zram)
614 endef
615
616 define KernelPackage/zram/description
617 Compressed RAM block device support
618 endef
619
620 $(eval $(call KernelPackage,zram))
621
622
623 define KernelPackage/mvsdio
624 SUBMENU:=$(OTHER_MENU)
625 TITLE:=Marvell SDIO support
626 DEPENDS:=@TARGET_orion||TARGET_kirkwood||TARGET_mvebu +kmod-mmc
627 KCONFIG:=CONFIG_MMC_MVSDIO
628 FILES:=$(LINUX_DIR)/drivers/mmc/host/mvsdio.ko
629 AUTOLOAD:=$(call AutoProbe,mvsdio)
630 endef
631
632 define KernelPacakge/mvsdio/description
633 Kernel support for the Marvell SDIO controller
634 endef
635
636 $(eval $(call KernelPackage,mvsdio))
637
638
639 define KernelPackage/pps
640 SUBMENU:=$(OTHER_MENU)
641 TITLE:=PPS support
642 KCONFIG:=CONFIG_PPS
643 FILES:=$(LINUX_DIR)/drivers/pps/pps_core.ko
644 AUTOLOAD:=$(call AutoLoad,17,pps_core,1)
645 endef
646
647 define KernelPacakge/pps/description
648 PPS (Pulse Per Second) is a special pulse provided by some GPS
649 antennae. Userland can use it to get a high-precision time
650 reference.
651 endef
652
653 $(eval $(call KernelPackage,pps))
654
655
656 define KernelPackage/ptp
657 SUBMENU:=$(OTHER_MENU)
658 TITLE:=PTP clock support
659 DEPENDS:=+kmod-pps
660 KCONFIG:=CONFIG_PTP_1588_CLOCK
661 FILES:=$(LINUX_DIR)/drivers/ptp/ptp.ko
662 AUTOLOAD:=$(call AutoLoad,18,ptp,1)
663 endef
664
665 define KernelPacakge/ptp/description
666 The IEEE 1588 standard defines a method to precisely
667 synchronize distributed clocks over Ethernet networks.
668 endef
669
670 $(eval $(call KernelPackage,ptp))
671
672
673 define KernelPackage/ptp-gianfar
674 SUBMENU:=$(OTHER_MENU)
675 TITLE:=Freescale Gianfar PTP support
676 DEPENDS:=@TARGET_mpc85xx +kmod-gianfar +kmod-ptp
677 KCONFIG:=CONFIG_PTP_1588_CLOCK_GIANFAR
678 FILES:=$(LINUX_DIR)/drivers/net/ethernet/freescale/gianfar_ptp.ko
679 AUTOLOAD:=$(call AutoProbe,gianfar_ptp)
680 endef
681
682 define KernelPacakge/ptp-gianfar/description
683 Kernel module for IEEE 1588 support for Freescale
684 Gianfar Ethernet drivers
685 endef
686
687 $(eval $(call KernelPackage,ptp-gianfar))
688
689
690 define KernelPackage/random-core
691 SUBMENU:=$(OTHER_MENU)
692 TITLE:=Hardware Random Number Generator Core support
693 KCONFIG:=CONFIG_HW_RANDOM
694 FILES:=$(LINUX_DIR)/drivers/char/hw_random/rng-core.ko
695 endef
696
697 define KernelPackage/random-core/description
698 Kernel module for the HW random number generator core infrastructure
699 endef
700
701 $(eval $(call KernelPackage,random-core))