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