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