mvebu: add support for the in-CPU RTC on the Armada 38x
[openwrt/staging/chunkeey.git] / package / kernel / linux / modules / other.mk
1 #
2 # Copyright (C) 2006-2015 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/6lowpan-iphc
14 USBMENU:=$(OTHER_MENU)
15 TITLE:=6lowpan shared code
16 KCONFIG:=CONFIG_6LOWPAN_IPHC
17 HIDDEN:=1
18 FILES:=$(LINUX_DIR)/net/ieee802154/6lowpan_iphc.ko
19 AUTOLOAD:=$(call Autoprobe,6lowpan_iphc)
20 endef
21
22 define KernelPackage/6lowpan-iphc/description
23 Shared 6lowpan code for IEEE 802.15.4 and Bluetooth.
24 endef
25
26 $(eval $(call KernelPackage,6lowpan-iphc))
27
28 define KernelPackage/bluetooth
29 SUBMENU:=$(OTHER_MENU)
30 TITLE:=Bluetooth support
31 DEPENDS:=@USB_SUPPORT +kmod-usb-core +kmod-crypto-hash +kmod-6lowpan-iphc +kmod-lib-crc16 +kmod-hid
32 KCONFIG:= \
33 CONFIG_BLUEZ \
34 CONFIG_BLUEZ_L2CAP \
35 CONFIG_BLUEZ_SCO \
36 CONFIG_BLUEZ_RFCOMM \
37 CONFIG_BLUEZ_BNEP \
38 CONFIG_BLUEZ_HCIUART \
39 CONFIG_BLUEZ_HCIUSB \
40 CONFIG_BLUEZ_HIDP \
41 CONFIG_BT \
42 CONFIG_BT_L2CAP=y \
43 CONFIG_BT_SCO=y \
44 CONFIG_BT_RFCOMM \
45 CONFIG_BT_BNEP \
46 CONFIG_BT_HCIBTUSB \
47 CONFIG_BT_HCIUSB \
48 CONFIG_BT_HCIUART \
49 CONFIG_BT_HCIUART_H4 \
50 CONFIG_BT_HIDP \
51 CONFIG_HID_SUPPORT=y
52 $(call AddDepends/rfkill)
53 FILES:= \
54 $(LINUX_DIR)/net/bluetooth/bluetooth.ko \
55 $(LINUX_DIR)/net/bluetooth/rfcomm/rfcomm.ko \
56 $(LINUX_DIR)/net/bluetooth/bnep/bnep.ko \
57 $(LINUX_DIR)/net/bluetooth/hidp/hidp.ko \
58 $(LINUX_DIR)/drivers/bluetooth/hci_uart.ko \
59 $(LINUX_DIR)/drivers/bluetooth/btusb.ko
60 AUTOLOAD:=$(call AutoProbe,bluetooth rfcomm bnep hidp hci_uart btusb)
61 endef
62
63 define KernelPackage/bluetooth/description
64 Kernel support for Bluetooth devices
65 endef
66
67 $(eval $(call KernelPackage,bluetooth))
68
69
70 define KernelPackage/bluetooth_6lowpan
71 SUBMENU:=$(OTHER_MENU)
72 TITLE:=Bluetooth 6LoWPAN support
73 DEPENDS:=+kmod-bluetooth
74 KCONFIG:= \
75 CONFIG_6LOWPAN=m \
76 CONFIG_BT_6LOWPAN=m
77 FILES:= \
78 $(LINUX_DIR)/net/bluetooth/bluetooth_6lowpan.ko \
79 $(LINUX_DIR)/net/6lowpan/6lowpan.ko
80 AUTOLOAD:=$(call AutoProbe,bluetooth)
81 endef
82
83 define KernelPackage/bluetooth_6lowpan/description
84 Kernel support for 6LoWPAN over Bluetooth Low Energy devices
85 endef
86
87 $(eval $(call KernelPackage,bluetooth_6lowpan))
88
89
90 define KernelPackage/bluetooth-hci-h4p
91 SUBMENU:=$(OTHER_MENU)
92 TITLE:=HCI driver with H4 Nokia extensions
93 DEPENDS:=@TARGET_omap24xx +kmod-bluetooth
94 KCONFIG:=CONFIG_BT_HCIH4P
95 FILES:=$(LINUX_DIR)/drivers/bluetooth/hci_h4p/hci_h4p.ko
96 AUTOLOAD:=$(call AutoProbe,hci_h4p)
97 endef
98
99 define KernelPackage/bluetooth-hci-h4p/description
100 HCI driver with H4 Nokia extensions
101 endef
102
103 $(eval $(call KernelPackage,bluetooth-hci-h4p))
104
105
106 define KernelPackage/eeprom-93cx6
107 SUBMENU:=$(OTHER_MENU)
108 TITLE:=EEPROM 93CX6 support
109 KCONFIG:=CONFIG_EEPROM_93CX6
110 FILES:=$(LINUX_DIR)/drivers/misc/eeprom/eeprom_93cx6.ko
111 AUTOLOAD:=$(call AutoLoad,20,eeprom_93cx6)
112 endef
113
114 define KernelPackage/eeprom-93cx6/description
115 Kernel module for EEPROM 93CX6 support
116 endef
117
118 $(eval $(call KernelPackage,eeprom-93cx6))
119
120
121 define KernelPackage/eeprom-at24
122 SUBMENU:=$(OTHER_MENU)
123 TITLE:=EEPROM AT24 support
124 KCONFIG:=CONFIG_EEPROM_AT24
125 DEPENDS:=+kmod-i2c-core
126 FILES:=$(LINUX_DIR)/drivers/misc/eeprom/at24.ko
127 AUTOLOAD:=$(call AutoProbe,at24)
128 endef
129
130 define KernelPackage/eeprom-at24/description
131 Kernel module for most I2C EEPROMs
132 endef
133
134 $(eval $(call KernelPackage,eeprom-at24))
135
136
137 define KernelPackage/eeprom-at25
138 SUBMENU:=$(OTHER_MENU)
139 TITLE:=EEPROM AT25 support
140 KCONFIG:=CONFIG_EEPROM_AT25
141 FILES:=$(LINUX_DIR)/drivers/misc/eeprom/at25.ko
142 AUTOLOAD:=$(call AutoProbe,at25)
143 endef
144
145 define KernelPackage/eeprom-at25/description
146 Kernel module for most SPI EEPROMs
147 endef
148
149 $(eval $(call KernelPackage,eeprom-at25))
150
151
152 define KernelPackage/gpio-dev
153 SUBMENU:=$(OTHER_MENU)
154 TITLE:=Generic GPIO char device support
155 DEPENDS:=@GPIO_SUPPORT
156 KCONFIG:=CONFIG_GPIO_DEVICE
157 FILES:=$(LINUX_DIR)/drivers/char/gpio_dev.ko
158 AUTOLOAD:=$(call AutoLoad,40,gpio_dev)
159 endef
160
161 define KernelPackage/gpio-dev/description
162 Kernel module to allows control of GPIO pins using a character device.
163 endef
164
165 $(eval $(call KernelPackage,gpio-dev))
166
167
168 define KernelPackage/gpio-mcp23s08
169 SUBMENU:=$(OTHER_MENU)
170 TITLE:=Microchip MCP23xxx I/O expander
171 DEPENDS:=@GPIO_SUPPORT +PACKAGE_kmod-i2c-core:kmod-i2c-core
172 KCONFIG:=CONFIG_GPIO_MCP23S08
173 FILES:=$(LINUX_DIR)/drivers/gpio/gpio-mcp23s08.ko
174 AUTOLOAD:=$(call AutoLoad,40,gpio-mcp23s08)
175 endef
176
177 define KernelPackage/gpio-mcp23s08/description
178 Kernel module for Microchip MCP23xxx SPI/I2C I/O expander
179 endef
180
181 $(eval $(call KernelPackage,gpio-mcp23s08))
182
183
184 define KernelPackage/gpio-nxp-74hc164
185 SUBMENU:=$(OTHER_MENU)
186 TITLE:=NXP 74HC164 GPIO expander support
187 KCONFIG:=CONFIG_GPIO_NXP_74HC164
188 FILES:=$(LINUX_DIR)/drivers/gpio/nxp_74hc164.ko
189 AUTOLOAD:=$(call AutoProbe,nxp_74hc164)
190 endef
191
192 define KernelPackage/gpio-nxp-74hc164/description
193 Kernel module for NXP 74HC164 GPIO expander
194 endef
195
196 $(eval $(call KernelPackage,gpio-nxp-74hc164))
197
198 define KernelPackage/gpio-pca953x
199 SUBMENU:=$(OTHER_MENU)
200 DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core
201 TITLE:=PCA95xx, TCA64xx, and MAX7310 I/O ports
202 KCONFIG:=CONFIG_GPIO_PCA953X
203 FILES:=$(LINUX_DIR)/drivers/gpio/gpio-pca953x.ko
204 AUTOLOAD:=$(call AutoLoad,55,gpio-pca953x)
205 endef
206
207 define KernelPackage/gpio-pca953x/description
208 Kernel module for MAX731{0,2,3,5}, PCA6107, PCA953{4-9}, PCA955{4-7},
209 PCA957{4,5} and TCA64{08,16} I2C GPIO expanders
210 endef
211
212 $(eval $(call KernelPackage,gpio-pca953x))
213
214 define KernelPackage/gpio-pcf857x
215 SUBMENU:=$(OTHER_MENU)
216 DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core
217 TITLE:=PCX857x, PCA967x and MAX732X I2C GPIO expanders
218 KCONFIG:=CONFIG_GPIO_PCF857X
219 FILES:=$(LINUX_DIR)/drivers/gpio/gpio-pcf857x.ko
220 AUTOLOAD:=$(call AutoLoad,55,gpio-pcf857x)
221 endef
222
223 define KernelPackage/gpio-pcf857x/description
224 Kernel module for PCF857x, PCA{85,96}7x, and MAX732[89] I2C GPIO expanders
225 endef
226
227 $(eval $(call KernelPackage,gpio-pcf857x))
228
229 define KernelPackage/iio-core
230 SUBMENU:=$(OTHER_MENU)
231 TITLE:=Industrial IO core
232 KCONFIG:= \
233 CONFIG_IIO \
234 CONFIG_IIO_BUFFER=y \
235 CONFIG_IIO_KFIFO_BUF \
236 CONFIG_IIO_TRIGGER=y \
237 CONFIG_IIO_TRIGGERED_BUFFER
238 FILES:= \
239 $(LINUX_DIR)/drivers/iio/industrialio.ko \
240 $(if $(CONFIG_IIO_TRIGGERED_BUFFER),$(LINUX_DIR)/drivers/iio/industrialio-triggered-buffer.ko) \
241 $(LINUX_DIR)/drivers/iio/kfifo_buf.ko
242 AUTOLOAD:=$(call AutoLoad,55,industrialio kfifo_buf industrialio-triggered-buffer)
243 endef
244
245 define KernelPackage/iio-core/description
246 The industrial I/O subsystem provides a unified framework for
247 drivers for many different types of embedded sensors using a
248 number of different physical interfaces (i2c, spi, etc)
249 endef
250
251 $(eval $(call KernelPackage,iio-core))
252
253
254 define KernelPackage/iio-ad799x
255 SUBMENU:=$(OTHER_MENU)
256 DEPENDS:=kmod-i2c-core kmod-iio-core
257 TITLE:=Analog Devices AD799x ADC driver
258 KCONFIG:= \
259 CONFIG_AD799X_RING_BUFFER=y \
260 CONFIG_AD799X
261 FILES:= \
262 $(LINUX_DIR)/drivers/staging/iio/adc/ad799x.ko@lt3.16 \
263 $(LINUX_DIR)/drivers/iio/adc/ad799x.ko@ge3.16
264 AUTOLOAD:=$(call AutoLoad,56,ad799x)
265 endef
266
267 define KernelPackage/iio-ad799x/description
268 support for Analog Devices:
269 ad7991, ad7995, ad7999, ad7992, ad7993, ad7994, ad7997, ad7998
270 i2c analog to digital converters (ADC).
271 endef
272
273 $(eval $(call KernelPackage,iio-ad799x))
274
275
276 define KernelPackage/iio-dht11
277 SUBMENU:=$(OTHER_MENU)
278 DEPENDS:=kmod-iio-core @GPIO_SUPPORT @USES_DEVICETREE
279 TITLE:=DHT11 (and compatible) humidity and temperature sensors
280 KCONFIG:= \
281 CONFIG_DHT11
282 FILES:=$(LINUX_DIR)/drivers/iio/humidity/dht11.ko
283 AUTOLOAD:=$(call AutoLoad,56,dht11)
284 endef
285
286 define KernelPackage/iio-dht11/description
287 support for DHT11 and DHT22 digitial humidity and temperature sensors
288 attached at GPIO lines. You will need a custom device tree file to
289 specify the GPIO line to use.
290 endef
291
292 $(eval $(call KernelPackage,iio-dht11))
293
294
295 define KernelPackage/lp
296 SUBMENU:=$(OTHER_MENU)
297 TITLE:=Parallel port and line printer support
298 DEPENDS:=@BROKEN
299 KCONFIG:= \
300 CONFIG_PARPORT \
301 CONFIG_PRINTER \
302 CONFIG_PPDEV
303 FILES:= \
304 $(LINUX_DIR)/drivers/parport/parport.ko \
305 $(LINUX_DIR)/drivers/char/lp.ko \
306 $(LINUX_DIR)/drivers/char/ppdev.ko
307 AUTOLOAD:=$(call AutoLoad,50,parport lp)
308 endef
309
310 $(eval $(call KernelPackage,lp))
311
312
313 define KernelPackage/mmc
314 SUBMENU:=$(OTHER_MENU)
315 TITLE:=MMC/SD Card Support
316 KCONFIG:= \
317 CONFIG_MMC \
318 CONFIG_MMC_BLOCK \
319 CONFIG_MMC_DEBUG=n \
320 CONFIG_MMC_UNSAFE_RESUME=n \
321 CONFIG_MMC_BLOCK_BOUNCE=y \
322 CONFIG_MMC_TIFM_SD=n \
323 CONFIG_MMC_WBSD=n \
324 CONFIG_SDIO_UART=n
325 FILES:= \
326 $(LINUX_DIR)/drivers/mmc/core/mmc_core.ko \
327 $(LINUX_DIR)/drivers/mmc/card/mmc_block.ko
328 AUTOLOAD:=$(call AutoProbe,mmc_core mmc_block,1)
329 endef
330
331 define KernelPackage/mmc/description
332 Kernel support for MMC/SD cards
333 endef
334
335 $(eval $(call KernelPackage,mmc))
336
337
338 define KernelPackage/sdhci
339 SUBMENU:=$(OTHER_MENU)
340 TITLE:=Secure Digital Host Controller Interface support
341 DEPENDS:=+kmod-mmc
342 KCONFIG:= \
343 CONFIG_MMC_SDHCI \
344 CONFIG_MMC_SDHCI_PLTFM \
345 CONFIG_MMC_SDHCI_PCI=n
346 FILES:= \
347 $(LINUX_DIR)/drivers/mmc/host/sdhci.ko \
348 $(LINUX_DIR)/drivers/mmc/host/sdhci-pltfm.ko
349
350 AUTOLOAD:=$(call AutoProbe,sdhci sdhci-pltfm,1)
351 endef
352
353 define KernelPackage/sdhci/description
354 Kernel support for SDHCI Hosts
355 endef
356
357 $(eval $(call KernelPackage,sdhci))
358
359
360 define KernelPackage/oprofile
361 SUBMENU:=$(OTHER_MENU)
362 TITLE:=OProfile profiling support
363 KCONFIG:=CONFIG_OPROFILE
364 FILES:=$(LINUX_DIR)/arch/$(LINUX_KARCH)/oprofile/oprofile.ko
365 DEPENDS:=@KERNEL_PROFILING
366 endef
367
368 define KernelPackage/oprofile/description
369 Kernel module for support for oprofile system profiling
370 endef
371
372 $(eval $(call KernelPackage,oprofile))
373
374
375 define KernelPackage/rfkill
376 SUBMENU:=$(OTHER_MENU)
377 TITLE:=RF switch subsystem support
378 DEPENDS:=@USE_RFKILL +kmod-input-core
379 KCONFIG:= \
380 CONFIG_RFKILL \
381 CONFIG_RFKILL_INPUT=y \
382 CONFIG_RFKILL_LEDS=y \
383 CONFIG_RFKILL_GPIO=y
384 FILES:= \
385 $(LINUX_DIR)/net/rfkill/rfkill.ko
386 AUTOLOAD:=$(call AutoLoad,20,rfkill)
387 endef
388
389 define KernelPackage/rfkill/description
390 Say Y here if you want to have control over RF switches
391 found on many WiFi and Bluetooth cards
392 endef
393
394 $(eval $(call KernelPackage,rfkill))
395
396
397 define KernelPackage/softdog
398 SUBMENU:=$(OTHER_MENU)
399 TITLE:=Software watchdog driver
400 KCONFIG:=CONFIG_SOFT_WATCHDOG
401 FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/softdog.ko
402 AUTOLOAD:=$(call AutoLoad,50,softdog)
403 endef
404
405 define KernelPackage/softdog/description
406 Software watchdog driver
407 endef
408
409 $(eval $(call KernelPackage,softdog))
410
411
412 define KernelPackage/ssb
413 SUBMENU:=$(OTHER_MENU)
414 TITLE:=Silicon Sonics Backplane glue code
415 DEPENDS:=@PCI_SUPPORT @!TARGET_brcm47xx @!TARGET_brcm63xx
416 KCONFIG:=\
417 CONFIG_SSB \
418 CONFIG_SSB_B43_PCI_BRIDGE=y \
419 CONFIG_SSB_DRIVER_MIPS=n \
420 CONFIG_SSB_DRIVER_PCICORE=y \
421 CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y \
422 CONFIG_SSB_PCIHOST=y \
423 CONFIG_SSB_PCIHOST_POSSIBLE=y \
424 CONFIG_SSB_POSSIBLE=y \
425 CONFIG_SSB_SPROM=y \
426 CONFIG_SSB_SILENT=y
427 FILES:=$(LINUX_DIR)/drivers/ssb/ssb.ko
428 AUTOLOAD:=$(call AutoLoad,18,ssb,1)
429 endef
430
431 define KernelPackage/ssb/description
432 Silicon Sonics Backplane glue code.
433 endef
434
435 $(eval $(call KernelPackage,ssb))
436
437
438 define KernelPackage/bcma
439 SUBMENU:=$(OTHER_MENU)
440 TITLE:=BCMA support
441 DEPENDS:=@PCI_SUPPORT @!TARGET_brcm47xx
442 KCONFIG:=\
443 CONFIG_BCMA \
444 CONFIG_BCMA_POSSIBLE=y \
445 CONFIG_BCMA_BLOCKIO=y \
446 CONFIG_BCMA_HOST_PCI_POSSIBLE=y \
447 CONFIG_BCMA_HOST_PCI=y \
448 CONFIG_BCMA_HOST_SOC=n \
449 CONFIG_BCMA_DRIVER_MIPS=n \
450 CONFIG_BCMA_DRIVER_PCI_HOSTMODE=n \
451 CONFIG_BCMA_DRIVER_GMAC_CMN=n \
452 CONFIG_BCMA_DEBUG=n
453 FILES:=$(LINUX_DIR)/drivers/bcma/bcma.ko
454 AUTOLOAD:=$(call AutoLoad,29,bcma)
455 endef
456
457 define KernelPackage/bcma/description
458 Bus driver for Broadcom specific Advanced Microcontroller Bus Architecture
459 endef
460
461 $(eval $(call KernelPackage,bcma))
462
463
464 define KernelPackage/wdt-omap
465 SUBMENU:=$(OTHER_MENU)
466 TITLE:=OMAP Watchdog timer
467 DEPENDS:=@(TARGET_omap24xx||TARGET_omap35xx)
468 KCONFIG:=CONFIG_OMAP_WATCHDOG
469 FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/omap_wdt.ko
470 AUTOLOAD:=$(call AutoLoad,50,omap_wdt.ko,1)
471 endef
472
473 define KernelPackage/wdt-omap/description
474 Kernel module for TI omap watchdog timer
475 endef
476
477 $(eval $(call KernelPackage,wdt-omap))
478
479
480 define KernelPackage/wdt-orion
481 SUBMENU:=$(OTHER_MENU)
482 TITLE:=Marvell Orion Watchdog timer
483 DEPENDS:=@TARGET_orion||TARGET_kirkwood||TARGET_mvebu
484 KCONFIG:=CONFIG_ORION_WATCHDOG
485 FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/orion_wdt.ko
486 AUTOLOAD:=$(call AutoLoad,50,orion_wdt,1)
487 endef
488
489 define KernelPackage/wdt-orion/description
490 Kernel module for Marvell Orion, Kirkwood and Armada XP/370 watchdog timer
491 endef
492
493 $(eval $(call KernelPackage,wdt-orion))
494
495
496 define KernelPackage/booke-wdt
497 SUBMENU:=$(OTHER_MENU)
498 TITLE:=PowerPC Book-E Watchdog Timer
499 DEPENDS:=@(TARGET_mpc85xx||TARGET_ppc40x||TARGET_ppc44x)
500 KCONFIG:=CONFIG_BOOKE_WDT
501 FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/booke_wdt.ko
502 AUTOLOAD:=$(call AutoLoad,50,booke_wdt,1)
503 endef
504
505 define KernelPackage/booke-wdt/description
506 Kernel module for PowerPC Book-E Watchdog Timer
507 endef
508
509 $(eval $(call KernelPackage,booke-wdt))
510
511
512 define KernelPackage/rtc-ds1307
513 SUBMENU:=$(OTHER_MENU)
514 TITLE:=Dallas/Maxim DS1307 (and compatible) RTC support
515 DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
516 KCONFIG:=CONFIG_RTC_DRV_DS1307
517 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1307.ko
518 AUTOLOAD:=$(call AutoProbe,rtc-ds1307)
519 endef
520
521 define KernelPackage/rtc-ds1307/description
522 Kernel module for Dallas/Maxim DS1307/DS1337/DS1338/DS1340/DS1388/DS3231,
523 Epson RX-8025 and various other compatible RTC chips connected via I2C.
524 endef
525
526 $(eval $(call KernelPackage,rtc-ds1307))
527
528
529 define KernelPackage/rtc-ds1672
530 SUBMENU:=$(OTHER_MENU)
531 TITLE:=Dallas/Maxim DS1672 RTC support
532 DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
533 KCONFIG:=CONFIG_RTC_DRV_DS1672
534 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1672.ko
535 AUTOLOAD:=$(call AutoProbe,rtc-ds1672)
536 endef
537
538 define KernelPackage/rtc-ds1672/description
539 Kernel module for Dallas/Maxim DS1672 RTC.
540 endef
541
542 $(eval $(call KernelPackage,rtc-ds1672))
543
544
545 define KernelPackage/rtc-isl1208
546 SUBMENU:=$(OTHER_MENU)
547 TITLE:=Intersil ISL1208 RTC support
548 DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
549 KCONFIG:=CONFIG_RTC_DRV_ISL1208
550 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-isl1208.ko
551 AUTOLOAD:=$(call AutoProbe,rtc-isl1208)
552 endef
553
554 define KernelPackage/rtc-isl1208/description
555 Kernel module for Intersil ISL1208 RTC.
556 endef
557
558 $(eval $(call KernelPackage,rtc-isl1208))
559
560
561 define KernelPackage/rtc-marvell
562 SUBMENU:=$(OTHER_MENU)
563 TITLE:=Marvell SoC built-in RTC support
564 DEPENDS:=@RTC_SUPPORT @TARGET_kirkwood||TARGET_orion||TARGET_mvebu
565 KCONFIG:=CONFIG_RTC_DRV_MV
566 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-mv.ko
567 AUTOLOAD:=$(call AutoProbe,rtc-mv)
568 endef
569
570 define KernelPackage/rtc-marvell/description
571 Kernel module for Marvell SoC built-in RTC.
572 endef
573
574 $(eval $(call KernelPackage,rtc-marvell))
575
576
577 define KernelPackage/rtc-armada38x
578 SUBMENU:=$(OTHER_MENU)
579 TITLE:=Marvell Armada 38x SoC built-in RTC support
580 DEPENDS:=@RTC_SUPPORT @TARGET_mvebu
581 KCONFIG:=CONFIG_RTC_DRV_ARMADA38X
582 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-armada38x.ko
583 AUTOLOAD:=$(call AutoProbe,rtc-armada38x)
584 endef
585
586 define KernelPackage/rtc-armada38x/description
587 Kernel module for Marvell Armada 38x SoC built-in RTC.
588 endef
589
590 $(eval $(call KernelPackage,rtc-armada38x))
591
592
593 define KernelPackage/rtc-pcf8563
594 SUBMENU:=$(OTHER_MENU)
595 TITLE:=Philips PCF8563/Epson RTC8564 RTC support
596 DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
597 KCONFIG:=CONFIG_RTC_DRV_PCF8563
598 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf8563.ko
599 AUTOLOAD:=$(call AutoProbe,rtc-pcf8563)
600 endef
601
602 define KernelPackage/rtc-pcf8563/description
603 Kernel module for Philips PCF8563 RTC chip.
604 The Epson RTC8564 should work as well.
605 endef
606
607 $(eval $(call KernelPackage,rtc-pcf8563))
608
609
610 define KernelPackage/rtc-pcf2123
611 SUBMENU:=$(OTHER_MENU)
612 TITLE:=Philips PCF2123 RTC support
613 DEPENDS:=@RTC_SUPPORT
614 KCONFIG:=CONFIG_RTC_DRV_PCF2123
615 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf2123.ko
616 AUTOLOAD:=$(call AutoProbe,rtc-pcf2123)
617 endef
618
619 define KernelPackage/rtc-pcf2123/description
620 Kernel module for Philips PCF2123 RTC chip
621 endef
622
623 $(eval $(call KernelPackage,rtc-pcf2123))
624
625 define KernelPackage/rtc-pt7c4338
626 SUBMENU:=$(OTHER_MENU)
627 TITLE:=Pericom PT7C4338 RTC support
628 DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
629 KCONFIG:=CONFIG_RTC_DRV_PT7C4338
630 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pt7c4338.ko
631 AUTOLOAD:=$(call AutoProbe,rtc-pt7c4338)
632 endef
633
634 define KernelPackage/rtc-pt7c4338/description
635 Kernel module for Pericom PT7C4338 i2c RTC chip
636 endef
637
638 $(eval $(call KernelPackage,rtc-pt7c4338))
639
640
641 define KernelPackage/mtdtests
642 SUBMENU:=$(OTHER_MENU)
643 TITLE:=MTD subsystem tests
644 KCONFIG:=CONFIG_MTD_TESTS
645 DEPENDS:=+kmod-nand
646 FILES:=\
647 $(LINUX_DIR)/drivers/mtd/tests/mtd_nandecctest.ko \
648 $(LINUX_DIR)/drivers/mtd/tests/mtd_oobtest.ko \
649 $(LINUX_DIR)/drivers/mtd/tests/mtd_pagetest.ko \
650 $(LINUX_DIR)/drivers/mtd/tests/mtd_readtest.ko \
651 $(LINUX_DIR)/drivers/mtd/tests/mtd_speedtest.ko \
652 $(LINUX_DIR)/drivers/mtd/tests/mtd_stresstest.ko \
653 $(LINUX_DIR)/drivers/mtd/tests/mtd_subpagetest.ko \
654 $(LINUX_DIR)/drivers/mtd/tests/mtd_torturetest.ko
655 endef
656
657 define KernelPackage/mtdtests/description
658 Kernel modules for MTD subsystem/driver testing
659 endef
660
661 $(eval $(call KernelPackage,mtdtests))
662
663
664 define KernelPackage/nand
665 SUBMENU:=$(OTHER_MENU)
666 TITLE:=NAND flash support
667 KCONFIG:=CONFIG_MTD_NAND \
668 CONFIG_MTD_NAND_IDS \
669 CONFIG_MTD_NAND_ECC
670 FILES:= \
671 $(LINUX_DIR)/drivers/mtd/nand/nand_ids.ko \
672 $(LINUX_DIR)/drivers/mtd/nand/nand_ecc.ko \
673 $(LINUX_DIR)/drivers/mtd/nand/nand.ko
674 AUTOLOAD:=$(call AutoLoad,20,nand_ids nand_ecc nand)
675 endef
676
677 define KernelPackage/nand/description
678 Kernel module for NAND support
679 endef
680
681 $(eval $(call KernelPackage,nand))
682
683
684 define KernelPackage/nandsim
685 SUBMENU:=$(OTHER_MENU)
686 TITLE:=NAND simulator
687 DEPENDS:=+kmod-nand
688 KCONFIG:=CONFIG_MTD_NAND_NANDSIM
689 FILES:=$(LINUX_DIR)/drivers/mtd/nand/nandsim.ko
690 endef
691
692 define KernelPackage/nandsim/description
693 Kernel module for NAND flash simulation.
694 endef
695
696 $(eval $(call KernelPackage,nandsim))
697
698 define KernelPackage/serial-8250
699 SUBMENU:=$(OTHER_MENU)
700 TITLE:=8250 UARTs
701 KCONFIG:= CONFIG_SERIAL_8250 \
702 CONFIG_SERIAL_8250_NR_UARTS=16 \
703 CONFIG_SERIAL_8250_RUNTIME_UARTS=16 \
704 CONFIG_SERIAL_8250_EXTENDED=y \
705 CONFIG_SERIAL_8250_MANY_PORTS=y \
706 CONFIG_SERIAL_8250_SHARE_IRQ=y \
707 CONFIG_SERIAL_8250_DETECT_IRQ=n \
708 CONFIG_SERIAL_8250_RSA=n
709 FILES:=$(LINUX_DIR)/drivers/tty/serial/8250/8250.ko
710 endef
711
712 define KernelPackage/serial-8250/description
713 Kernel module for 8250 UART based serial ports
714 endef
715
716 $(eval $(call KernelPackage,serial-8250))
717
718
719 define KernelPackage/regmap
720 SUBMENU:=$(OTHER_MENU)
721 TITLE:=Generic register map support
722 DEPENDS:=+kmod-lib-lzo +kmod-i2c-core
723 KCONFIG:=CONFIG_REGMAP \
724 CONFIG_REGMAP_SPI \
725 CONFIG_REGMAP_I2C \
726 CONFIG_SPI=y
727 FILES:= \
728 $(LINUX_DIR)/drivers/base/regmap/regmap-core.ko \
729 $(LINUX_DIR)/drivers/base/regmap/regmap-i2c.ko \
730 $(if $(CONFIG_SPI),$(LINUX_DIR)/drivers/base/regmap/regmap-spi.ko)
731 AUTOLOAD:=$(call AutoLoad,21,regmap-core regmap-i2c regmap-spi)
732 endef
733
734 define KernelPackage/regmap/description
735 Generic register map support
736 endef
737
738 $(eval $(call KernelPackage,regmap))
739
740 define KernelPackage/ikconfig
741 SUBMENU:=$(OTHER_MENU)
742 TITLE:=Kernel configuration via /proc/config.gz
743 KCONFIG:=CONFIG_IKCONFIG \
744 CONFIG_IKCONFIG_PROC=y
745 FILES:=$(LINUX_DIR)/kernel/configs.ko
746 AUTOLOAD:=$(call AutoLoad,70,configs)
747 endef
748
749 define KernelPackage/ikconfig/description
750 Kernel configuration via /proc/config.gz
751 endef
752
753 $(eval $(call KernelPackage,ikconfig))
754
755
756 define KernelPackage/zram
757 SUBMENU:=$(OTHER_MENU)
758 TITLE:=ZRAM
759 DEPENDS:=+kmod-lib-lzo +kmod-lib-lz4
760 KCONFIG:= \
761 CONFIG_ZSMALLOC \
762 CONFIG_ZRAM \
763 CONFIG_ZRAM_DEBUG=n \
764 CONFIG_PGTABLE_MAPPING=n \
765 CONFIG_ZSMALLOC_STAT=n \
766 CONFIG_ZRAM_LZ4_COMPRESS=y
767 FILES:= \
768 $(LINUX_DIR)/mm/zsmalloc.ko \
769 $(LINUX_DIR)/drivers/block/zram/zram.ko
770 AUTOLOAD:=$(call AutoLoad,20,zsmalloc zram)
771 endef
772
773 define KernelPackage/zram/description
774 Compressed RAM block device support
775 endef
776
777 $(eval $(call KernelPackage,zram))
778
779
780 define KernelPackage/mvsdio
781 SUBMENU:=$(OTHER_MENU)
782 TITLE:=Marvell SDIO support
783 DEPENDS:=@TARGET_orion||TARGET_kirkwood||TARGET_mvebu +kmod-mmc
784 KCONFIG:=CONFIG_MMC_MVSDIO
785 FILES:=$(LINUX_DIR)/drivers/mmc/host/mvsdio.ko
786 AUTOLOAD:=$(call AutoProbe,mvsdio)
787 endef
788
789 define KernelPackage/mvsdio/description
790 Kernel support for the Marvell SDIO controller
791 endef
792
793 $(eval $(call KernelPackage,mvsdio))
794
795
796 define KernelPackage/pps
797 SUBMENU:=$(OTHER_MENU)
798 TITLE:=PPS support
799 KCONFIG:=CONFIG_PPS
800 FILES:=$(LINUX_DIR)/drivers/pps/pps_core.ko
801 AUTOLOAD:=$(call AutoLoad,17,pps_core,1)
802 endef
803
804 define KernelPackage/pps/description
805 PPS (Pulse Per Second) is a special pulse provided by some GPS
806 antennae. Userland can use it to get a high-precision time
807 reference.
808 endef
809
810 $(eval $(call KernelPackage,pps))
811
812
813 define KernelPackage/pps-gpio
814 SUBMENU:=$(OTHER_MENU)
815 TITLE:=PPS client using GPIO
816 DEPENDS:=+kmod-pps
817 KCONFIG:=CONFIG_PPS_CLIENT_GPIO
818 FILES:=$(LINUX_DIR)/drivers/pps/clients/pps-gpio.ko
819 AUTOLOAD:=$(call AutoLoad,18,pps-gpio,1)
820 endef
821
822 define KernelPackage/pps-gpio/description
823 Support for a PPS source using GPIO. To be useful you must
824 also register a platform device specifying the GPIO pin and
825 other options, usually in your board setup.
826 endef
827
828 $(eval $(call KernelPackage,pps-gpio))
829
830
831 define KernelPackage/ptp
832 SUBMENU:=$(OTHER_MENU)
833 TITLE:=PTP clock support
834 DEPENDS:=+kmod-pps
835 KCONFIG:=CONFIG_PTP_1588_CLOCK
836 FILES:=$(LINUX_DIR)/drivers/ptp/ptp.ko
837 AUTOLOAD:=$(call AutoLoad,18,ptp,1)
838 endef
839
840 define KernelPackage/ptp/description
841 The IEEE 1588 standard defines a method to precisely
842 synchronize distributed clocks over Ethernet networks.
843 endef
844
845 $(eval $(call KernelPackage,ptp))
846
847
848 define KernelPackage/ptp-gianfar
849 SUBMENU:=$(OTHER_MENU)
850 TITLE:=Freescale Gianfar PTP support
851 DEPENDS:=@TARGET_mpc85xx +kmod-gianfar +kmod-ptp
852 KCONFIG:=CONFIG_PTP_1588_CLOCK_GIANFAR
853 FILES:=$(LINUX_DIR)/drivers/net/ethernet/freescale/gianfar_ptp.ko
854 AUTOLOAD:=$(call AutoProbe,gianfar_ptp)
855 endef
856
857 define KernelPackage/ptp-gianfar/description
858 Kernel module for IEEE 1588 support for Freescale
859 Gianfar Ethernet drivers
860 endef
861
862 $(eval $(call KernelPackage,ptp-gianfar))
863
864
865 define KernelPackage/random-core
866 SUBMENU:=$(OTHER_MENU)
867 TITLE:=Hardware Random Number Generator Core support
868 KCONFIG:=CONFIG_HW_RANDOM
869 FILES:=$(LINUX_DIR)/drivers/char/hw_random/rng-core.ko
870 endef
871
872 define KernelPackage/random-core/description
873 Kernel module for the HW random number generator core infrastructure
874 endef
875
876 $(eval $(call KernelPackage,random-core))
877
878
879 define KernelPackage/thermal
880 SUBMENU:=$(OTHER_MENU)
881 TITLE:=Generic Thermal sysfs driver
882 DEPENDS:=+kmod-hwmon-core
883 HIDDEN:=1
884 KCONFIG:= \
885 CONFIG_THERMAL \
886 CONFIG_THERMAL_OF=y \
887 CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y \
888 CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE=n \
889 CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE=n \
890 CONFIG_THERMAL_GOV_FAIR_SHARE=n \
891 CONFIG_THERMAL_GOV_STEP_WISE=y \
892 CONFIG_THERMAL_GOV_USER_SPACE=n \
893 CONFIG_THERMAL_HWMON=y \
894 CONFIG_THERMAL_EMULATION=n
895 FILES:=$(LINUX_DIR)/drivers/thermal/thermal_sys.ko
896 AUTOLOAD:=$(call AutoProbe,thermal_sys)
897 endef
898
899 define KernelPackage/thermal/description
900 Generic Thermal Sysfs driver offers a generic mechanism for thermal
901 management. Usually it's made up of one or more thermal zone and cooling
902 device.
903 endef
904
905 $(eval $(call KernelPackage,thermal))
906
907
908 define KernelPackage/thermal-armada
909 SUBMENU:=$(OTHER_MENU)
910 TITLE:=Armada 370/XP thermal management
911 DEPENDS:=@TARGET_mvebu +kmod-thermal
912 KCONFIG:=CONFIG_ARMADA_THERMAL
913 FILES:=$(LINUX_DIR)/drivers/thermal/armada_thermal.ko
914 AUTOLOAD:=$(call AutoProbe,armada_thermal)
915 endef
916
917 define KernelPackage/thermal-armada/description
918 Enable this module if you want to have support for thermal management
919 controller present in Armada 370 and Armada XP SoC.
920 endef
921
922 $(eval $(call KernelPackage,thermal-armada))
923
924
925 define KernelPackage/thermal-imx
926 SUBMENU:=$(OTHER_MENU)
927 TITLE:=Temperature sensor driver for Freescale i.MX SoCs
928 DEPENDS:=@TARGET_imx6 +kmod-thermal
929 KCONFIG:= \
930 CONFIG_CPU_THERMAL=y \
931 CONFIG_IMX_THERMAL
932 FILES:=$(LINUX_DIR)/drivers/thermal/imx_thermal.ko
933 AUTOLOAD:=$(call AutoProbe,imx_thermal)
934 endef
935
936 define KernelPackage/thermal-imx/description
937 Support for Temperature Monitor (TEMPMON) found on Freescale i.MX SoCs.
938 It supports one critical trip point and one passive trip point. The
939 cpufreq is used as the cooling device to throttle CPUs when the
940 passive trip is crossed.
941 endef
942
943 $(eval $(call KernelPackage,thermal-imx))
944
945
946 define KernelPackage/thermal-kirkwood
947 SUBMENU:=$(OTHER_MENU)
948 TITLE:=Temperature sensor on Marvell Kirkwood SoCs
949 DEPENDS:=@TARGET_kirkwood +kmod-thermal
950 KCONFIG:=CONFIG_KIRKWOOD_THERMAL
951 FILES:=$(LINUX_DIR)/drivers/thermal/kirkwood_thermal.ko
952 AUTOLOAD:=$(call AutoProbe,kirkwood_thermal)
953 endef
954
955 define KernelPackage/thermal-kirkwood/description
956 Support for the Kirkwood thermal sensor driver into the Linux thermal
957 framework. Only kirkwood 88F6282 and 88F6283 have this sensor.
958 endef
959
960 $(eval $(call KernelPackage,thermal-kirkwood))
961
962
963 define KernelPackage/gpio-beeper
964 SUBMENU:=$(OTHER_MENU)
965 TITLE:=GPIO beeper support
966 DEPENDS:=+kmod-input-core
967 KCONFIG:= \
968 CONFIG_INPUT_MISC=y \
969 CONFIG_INPUT_GPIO_BEEPER
970 FILES:= \
971 $(LINUX_DIR)/drivers/input/misc/gpio-beeper.ko
972 AUTOLOAD:=$(call AutoLoad,50,gpio-beeper)
973 endef
974
975 define KernelPackage/gpio-beeper/description
976 This enables playing beeps through an GPIO-connected buzzer
977 endef
978
979 $(eval $(call KernelPackage,gpio-beeper))
980
981
982 define KernelPackage/echo
983 SUBMENU:=$(OTHER_MENU)
984 TITLE:=Line Echo Canceller
985 KCONFIG:=CONFIG_ECHO
986 FILES:=$(LINUX_DIR)/drivers/misc/echo/echo.ko
987 AUTOLOAD:=$(call AutoLoad,50,echo)
988 endef
989
990 define KernelPackage/echo/description
991 This driver provides line echo cancelling support for mISDN and
992 DAHDI drivers
993 endef
994
995 $(eval $(call KernelPackage,echo))