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