kernel: add gpio-amd-fch module description
[oweals/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 +kmod-crypto-cmac +kmod-regmap-core +kmod-crypto-ecdh
34   KCONFIG:= \
35         CONFIG_BT \
36         CONFIG_BT_BREDR=y \
37         CONFIG_BT_DEBUGFS=n \
38         CONFIG_BT_LE=y \
39         CONFIG_BT_RFCOMM \
40         CONFIG_BT_BNEP \
41         CONFIG_BT_HCIBTUSB \
42         CONFIG_BT_HCIBTUSB_BCM=n \
43         CONFIG_BT_HCIUART \
44         CONFIG_BT_HCIUART_BCM=n \
45         CONFIG_BT_HCIUART_INTEL=n \
46         CONFIG_BT_HCIUART_H4 \
47         CONFIG_BT_HCIUART_NOKIA=n \
48         CONFIG_BT_HIDP
49   $(call AddDepends/rfkill)
50   FILES:= \
51         $(LINUX_DIR)/net/bluetooth/bluetooth.ko \
52         $(LINUX_DIR)/net/bluetooth/rfcomm/rfcomm.ko \
53         $(LINUX_DIR)/net/bluetooth/bnep/bnep.ko \
54         $(LINUX_DIR)/net/bluetooth/hidp/hidp.ko \
55         $(LINUX_DIR)/drivers/bluetooth/hci_uart.ko \
56         $(LINUX_DIR)/drivers/bluetooth/btusb.ko \
57         $(LINUX_DIR)/drivers/bluetooth/btintel.ko
58   AUTOLOAD:=$(call AutoProbe,bluetooth rfcomm bnep hidp hci_uart btusb)
59 endef
60
61 define KernelPackage/bluetooth/description
62  Kernel support for Bluetooth devices
63 endef
64
65 $(eval $(call KernelPackage,bluetooth))
66
67 define KernelPackage/ath3k
68   SUBMENU:=$(OTHER_MENU)
69   TITLE:=ATH3K Kernel Module support
70   DEPENDS:=+kmod-bluetooth +ar3k-firmware
71   KCONFIG:= \
72         CONFIG_BT_ATH3K \
73         CONFIG_BT_HCIUART_ATH3K=y
74   $(call AddDepends/bluetooth)
75   FILES:= \
76         $(LINUX_DIR)/drivers/bluetooth/ath3k.ko
77   AUTOLOAD:=$(call AutoProbe,ath3k)
78 endef
79
80 define KernelPackage/ath3k/description
81  Kernel support for ATH3K Module
82 endef
83
84 $(eval $(call KernelPackage,ath3k))
85
86
87 define KernelPackage/bluetooth-6lowpan
88   SUBMENU:=$(OTHER_MENU)
89   TITLE:=Bluetooth 6LoWPAN support
90   DEPENDS:=+kmod-6lowpan +kmod-bluetooth
91   KCONFIG:=CONFIG_BT_6LOWPAN
92   FILES:=$(LINUX_DIR)/net/bluetooth/bluetooth_6lowpan.ko
93   AUTOLOAD:=$(call AutoProbe,bluetooth_6lowpan)
94 endef
95
96 define KernelPackage/bluetooth-6lowpan/description
97  Kernel support for 6LoWPAN over Bluetooth Low Energy devices
98 endef
99
100 $(eval $(call KernelPackage,bluetooth-6lowpan))
101
102
103 define KernelPackage/btmrvl
104   SUBMENU:=$(OTHER_MENU)
105   TITLE:=Marvell Bluetooth Kernel Module support
106   DEPENDS:=+kmod-mmc +kmod-bluetooth +mwifiex-sdio-firmware
107   KCONFIG:= \
108         CONFIG_BT_MRVL \
109         CONFIG_BT_MRVL_SDIO
110   $(call AddDepends/bluetooth)
111   FILES:= \
112         $(LINUX_DIR)/drivers/bluetooth/btmrvl.ko \
113         $(LINUX_DIR)/drivers/bluetooth/btmrvl_sdio.ko
114   AUTOLOAD:=$(call AutoProbe,btmrvl btmrvl_sdio)
115 endef
116
117 define KernelPackage/btmrvl/description
118  Kernel support for Marvell SDIO Bluetooth Module
119 endef
120
121 $(eval $(call KernelPackage,btmrvl))
122
123
124 define KernelPackage/dma-buf
125   SUBMENU:=$(OTHER_MENU)
126   TITLE:=DMA shared buffer support
127   HIDDEN:=1
128   KCONFIG:=CONFIG_DMA_SHARED_BUFFER
129   ifeq ($(strip $(CONFIG_EXTERNAL_KERNEL_TREE)),"")
130     ifeq ($(strip $(CONFIG_KERNEL_GIT_CLONE_URI)),"")
131       FILES:=$(LINUX_DIR)/drivers/dma-buf/dma-shared-buffer.ko
132     endif
133   endif
134   AUTOLOAD:=$(call AutoLoad,20,dma-shared-buffer)
135 endef
136 $(eval $(call KernelPackage,dma-buf))
137
138
139 define KernelPackage/nvmem
140   SUBMENU:=$(OTHER_MENU)
141   TITLE:=Non Volatile Memory support
142   DEPENDS:=@!LINUX_5_4
143   KCONFIG:=CONFIG_NVMEM
144   HIDDEN:=1
145   FILES:=$(LINUX_DIR)/drivers/nvmem/nvmem_core.ko
146 endef
147
148 define KernelPackage/nvmem/description
149   Support for NVMEM(Non Volatile Memory) devices like EEPROM, EFUSES, etc.
150 endef
151
152 $(eval $(call KernelPackage,nvmem))
153
154 define KernelPackage/eeprom-93cx6
155   SUBMENU:=$(OTHER_MENU)
156   TITLE:=EEPROM 93CX6 support
157   KCONFIG:=CONFIG_EEPROM_93CX6
158   FILES:=$(LINUX_DIR)/drivers/misc/eeprom/eeprom_93cx6.ko
159   AUTOLOAD:=$(call AutoLoad,20,eeprom_93cx6)
160 endef
161
162 define KernelPackage/eeprom-93cx6/description
163  Kernel module for EEPROM 93CX6 support
164 endef
165
166 $(eval $(call KernelPackage,eeprom-93cx6))
167
168
169 define KernelPackage/eeprom-at24
170   SUBMENU:=$(OTHER_MENU)
171   TITLE:=EEPROM AT24 support
172   KCONFIG:=CONFIG_EEPROM_AT24
173   DEPENDS:=+kmod-i2c-core +!LINUX_5_4:kmod-nvmem +!LINUX_4_14:kmod-regmap-i2c
174   FILES:=$(LINUX_DIR)/drivers/misc/eeprom/at24.ko
175   AUTOLOAD:=$(call AutoProbe,at24)
176 endef
177
178 define KernelPackage/eeprom-at24/description
179  Kernel module for most I2C EEPROMs
180 endef
181
182 $(eval $(call KernelPackage,eeprom-at24))
183
184
185 define KernelPackage/eeprom-at25
186   SUBMENU:=$(OTHER_MENU)
187   TITLE:=EEPROM AT25 support
188   KCONFIG:=CONFIG_EEPROM_AT25
189   DEPENDS:=+!LINUX_5_4:kmod-nvmem
190   FILES:=$(LINUX_DIR)/drivers/misc/eeprom/at25.ko
191   AUTOLOAD:=$(call AutoProbe,at25)
192 endef
193
194 define KernelPackage/eeprom-at25/description
195  Kernel module for most SPI EEPROMs
196 endef
197
198 $(eval $(call KernelPackage,eeprom-at25))
199
200
201 define KernelPackage/gpio-dev
202   SUBMENU:=$(OTHER_MENU)
203   TITLE:=Generic GPIO char device support
204   DEPENDS:=@GPIO_SUPPORT
205   KCONFIG:=CONFIG_GPIO_DEVICE
206   FILES:=$(LINUX_DIR)/drivers/char/gpio_dev.ko
207   AUTOLOAD:=$(call AutoLoad,40,gpio_dev)
208 endef
209
210 define KernelPackage/gpio-dev/description
211  Kernel module to allows control of GPIO pins using a character device.
212 endef
213
214 $(eval $(call KernelPackage,gpio-dev))
215
216
217 define KernelPackage/gpio-f7188x
218   SUBMENU:=$(OTHER_MENU)
219   TITLE:=Fintek F718xx/F818xx GPIO Support
220   DEPENDS:=@GPIO_SUPPORT @TARGET_x86
221   KCONFIG:=CONFIG_GPIO_F7188X
222   FILES:=$(LINUX_DIR)/drivers/gpio/gpio-f7188x.ko
223   AUTOLOAD:=$(call AutoProbe,gpio-f7188x)
224 endef
225
226 define KernelPackage/gpio-f7188x/description
227   Kernel module for the GPIOs found on many Fintek Super-IO chips.
228 endef
229
230 $(eval $(call KernelPackage,gpio-f7188x))
231
232
233 define KernelPackage/gpio-mcp23s08
234   SUBMENU:=$(OTHER_MENU)
235   TITLE:=Microchip MCP23xxx I/O expander
236   DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core +kmod-regmap-i2c
237   KCONFIG:= \
238         CONFIG_GPIO_MCP23S08 \
239         CONFIG_PINCTRL_MCP23S08
240   FILES:= \
241         $(LINUX_DIR)/drivers/pinctrl/pinctrl-mcp23s08.ko
242   AUTOLOAD:=$(call AutoLoad,40,pinctrl-mcp23s08)
243 endef
244
245 define KernelPackage/gpio-mcp23s08/description
246  Kernel module for Microchip MCP23xxx SPI/I2C I/O expander
247 endef
248
249 $(eval $(call KernelPackage,gpio-mcp23s08))
250
251
252 define KernelPackage/gpio-nxp-74hc164
253   SUBMENU:=$(OTHER_MENU)
254   TITLE:=NXP 74HC164 GPIO expander support
255   KCONFIG:=CONFIG_GPIO_74X164
256   FILES:=$(LINUX_DIR)/drivers/gpio/gpio-74x164.ko
257   AUTOLOAD:=$(call AutoProbe,gpio-74x164)
258 endef
259
260 define KernelPackage/gpio-nxp-74hc164/description
261  Kernel module for NXP 74HC164 GPIO expander
262 endef
263
264 $(eval $(call KernelPackage,gpio-nxp-74hc164))
265
266 define KernelPackage/gpio-pca953x
267   SUBMENU:=$(OTHER_MENU)
268   DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core +LINUX_5_4:kmod-regmap-i2c
269   TITLE:=PCA95xx, TCA64xx, and MAX7310 I/O ports
270   KCONFIG:=CONFIG_GPIO_PCA953X
271   FILES:=$(LINUX_DIR)/drivers/gpio/gpio-pca953x.ko
272   AUTOLOAD:=$(call AutoLoad,55,gpio-pca953x)
273 endef
274
275 define KernelPackage/gpio-pca953x/description
276  Kernel module for MAX731{0,2,3,5}, PCA6107, PCA953{4-9}, PCA955{4-7},
277  PCA957{4,5} and TCA64{08,16} I2C GPIO expanders
278 endef
279
280 $(eval $(call KernelPackage,gpio-pca953x))
281
282 define KernelPackage/gpio-pcf857x
283   SUBMENU:=$(OTHER_MENU)
284   DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core
285   TITLE:=PCX857x, PCA967x and MAX732X I2C GPIO expanders
286   KCONFIG:=CONFIG_GPIO_PCF857X
287   FILES:=$(LINUX_DIR)/drivers/gpio/gpio-pcf857x.ko
288   AUTOLOAD:=$(call AutoLoad,55,gpio-pcf857x)
289 endef
290
291 define KernelPackage/gpio-pcf857x/description
292  Kernel module for PCF857x, PCA{85,96}7x, and MAX732[89] I2C GPIO expanders
293 endef
294
295 $(eval $(call KernelPackage,gpio-pcf857x))
296
297
298 define KernelPackage/gpio-it87
299   SUBMENU:=$(OTHER_MENU)
300   DEPENDS:=@GPIO_SUPPORT @TARGET_x86
301   TITLE:=GPIO support for IT87xx Super I/O chips
302   KCONFIG:=CONFIG_GPIO_IT87
303   FILES:=$(LINUX_DIR)/drivers/gpio/gpio-it87.ko
304   AUTOLOAD:=$(call AutoLoad,25,gpio-it87,1)
305 endef
306
307 define KernelPackage/gpio-it87/description
308   This driver is tested with ITE IT8728 and IT8732 Super I/O chips, and
309   supports the IT8761E, IT8613, IT8620E, and IT8628E Super I/O chips as
310   well.
311 endef
312
313 $(eval $(call KernelPackage,gpio-it87))
314
315
316 define KernelPackage/gpio-amd-fch
317   SUBMENU:=$(OTHER_MENU)
318   DEPENDS:=@GPIO_SUPPORT @TARGET_x86
319   TITLE:=GPIO support for AMD Fusion Controller Hub (G-series SOCs)
320   KCONFIG:=CONFIG_GPIO_AMD_FCH
321   FILES:=$(LINUX_DIR)/drivers/gpio/gpio-amd-fch.ko
322   AUTOLOAD:=$(call AutoLoad,25,gpio-amd-fch,1)
323 endef
324
325 define KernelPackage/gpio-amd-fch/description
326   This option enables driver for GPIO on AMDs Fusion Controller Hub,
327   as found on G-series SOCs (eg. GX-412TC)
328 endef
329
330 $(eval $(call KernelPackage,gpio-amd-fch))
331
332
333 define KernelPackage/ppdev
334   SUBMENU:=$(OTHER_MENU)
335   TITLE:=Parallel port support
336   KCONFIG:= \
337         CONFIG_PARPORT \
338         CONFIG_PPDEV
339   FILES:= \
340         $(LINUX_DIR)/drivers/parport/parport.ko \
341         $(LINUX_DIR)/drivers/char/ppdev.ko
342   AUTOLOAD:=$(call AutoLoad,50,parport ppdev)
343 endef
344
345 $(eval $(call KernelPackage,ppdev))
346
347
348 define KernelPackage/parport-pc
349   SUBMENU:=$(OTHER_MENU)
350   TITLE:=Parallel port interface (PC-style) support
351   DEPENDS:=+kmod-ppdev
352   KCONFIG:= \
353         CONFIG_KS0108=n \
354         CONFIG_PARPORT_PC \
355         CONFIG_PARPORT_1284=y \
356         CONFIG_PARPORT_PC_FIFO=y \
357         CONFIG_PARPORT_PC_PCMCIA=n \
358         CONFIG_PARPORT_PC_SUPERIO=y \
359         CONFIG_PARPORT_SERIAL=n \
360         CONFIG_PARIDE=n \
361         CONFIG_SCSI_IMM=n \
362         CONFIG_SCSI_PPA=n
363   FILES:= \
364         $(LINUX_DIR)/drivers/parport/parport_pc.ko
365   AUTOLOAD:=$(call AutoLoad,51,parport_pc)
366 endef
367
368 $(eval $(call KernelPackage,parport-pc))
369
370
371 define KernelPackage/lp
372   SUBMENU:=$(OTHER_MENU)
373   TITLE:=Parallel port line printer device support
374   DEPENDS:=+kmod-ppdev
375   KCONFIG:= \
376         CONFIG_PRINTER
377   FILES:= \
378         $(LINUX_DIR)/drivers/char/lp.ko
379   AUTOLOAD:=$(call AutoLoad,52,lp)
380 endef
381
382 $(eval $(call KernelPackage,lp))
383
384
385 define KernelPackage/mmc
386   SUBMENU:=$(OTHER_MENU)
387   TITLE:=MMC/SD Card Support
388   DEPENDS:=@!TARGET_uml
389   KCONFIG:= \
390         CONFIG_MMC \
391         CONFIG_MMC_BLOCK \
392         CONFIG_MMC_DEBUG=n \
393         CONFIG_MMC_UNSAFE_RESUME=n \
394         CONFIG_MMC_BLOCK_BOUNCE=y \
395         CONFIG_MMC_TIFM_SD=n \
396         CONFIG_MMC_WBSD=n \
397         CONFIG_SDIO_UART=n
398   FILES:= \
399         $(LINUX_DIR)/drivers/mmc/core/mmc_core.ko \
400         $(LINUX_DIR)/drivers/mmc/core/mmc_block.ko
401   AUTOLOAD:=$(call AutoProbe,mmc_core mmc_block,1)
402 endef
403
404 define KernelPackage/mmc/description
405  Kernel support for MMC/SD cards
406 endef
407
408 $(eval $(call KernelPackage,mmc))
409
410
411 define KernelPackage/mvsdio
412   SUBMENU:=$(OTHER_MENU)
413   TITLE:=Marvell MMC/SD/SDIO host driver
414   DEPENDS:=+kmod-mmc @TARGET_kirkwood
415   KCONFIG:= CONFIG_MMC_MVSDIO
416   FILES:= \
417         $(LINUX_DIR)/drivers/mmc/host/mvsdio.ko
418   AUTOLOAD:=$(call AutoProbe,mvsdio,1)
419 endef
420
421 define KernelPackage/mvsdio/description
422  Kernel support for the Marvell SDIO host driver.
423 endef
424
425 $(eval $(call KernelPackage,mvsdio))
426
427
428 define KernelPackage/sdhci
429   SUBMENU:=$(OTHER_MENU)
430   TITLE:=Secure Digital Host Controller Interface support
431   DEPENDS:=+kmod-mmc
432   KCONFIG:= \
433         CONFIG_MMC_SDHCI \
434         CONFIG_MMC_SDHCI_PLTFM \
435         CONFIG_MMC_SDHCI_PCI=n
436   FILES:= \
437         $(LINUX_DIR)/drivers/mmc/host/sdhci.ko \
438         $(LINUX_DIR)/drivers/mmc/host/sdhci-pltfm.ko
439
440   AUTOLOAD:=$(call AutoProbe,sdhci-pltfm,1)
441 endef
442
443 define KernelPackage/sdhci/description
444  Kernel support for SDHCI Hosts
445 endef
446
447 $(eval $(call KernelPackage,sdhci))
448
449
450 define KernelPackage/rfkill
451   SUBMENU:=$(OTHER_MENU)
452   TITLE:=RF switch subsystem support
453   DEPENDS:=@USE_RFKILL +kmod-input-core
454   KCONFIG:= \
455     CONFIG_RFKILL_FULL \
456     CONFIG_RFKILL_INPUT=y \
457     CONFIG_RFKILL_LEDS=y
458   FILES:= \
459     $(LINUX_DIR)/net/rfkill/rfkill.ko
460   AUTOLOAD:=$(call AutoLoad,20,rfkill)
461 endef
462
463 define KernelPackage/rfkill/description
464  Say Y here if you want to have control over RF switches
465  found on many WiFi and Bluetooth cards
466 endef
467
468 $(eval $(call KernelPackage,rfkill))
469
470
471 define KernelPackage/softdog
472   SUBMENU:=$(OTHER_MENU)
473   TITLE:=Software watchdog driver
474   KCONFIG:=CONFIG_SOFT_WATCHDOG \
475         CONFIG_SOFT_WATCHDOG_PRETIMEOUT=n
476   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/softdog.ko
477   AUTOLOAD:=$(call AutoLoad,50,softdog,1)
478 endef
479
480 define KernelPackage/softdog/description
481  Software watchdog driver
482 endef
483
484 $(eval $(call KernelPackage,softdog))
485
486
487 define KernelPackage/ssb
488   SUBMENU:=$(OTHER_MENU)
489   TITLE:=Silicon Sonics Backplane glue code
490   DEPENDS:=@PCI_SUPPORT @!TARGET_bcm47xx @!TARGET_bcm63xx
491   KCONFIG:=\
492         CONFIG_SSB \
493         CONFIG_SSB_B43_PCI_BRIDGE=y \
494         CONFIG_SSB_DRIVER_MIPS=n \
495         CONFIG_SSB_DRIVER_PCICORE=y \
496         CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y \
497         CONFIG_SSB_PCIHOST=y \
498         CONFIG_SSB_PCIHOST_POSSIBLE=y \
499         CONFIG_SSB_POSSIBLE=y \
500         CONFIG_SSB_SPROM=y \
501         CONFIG_SSB_SILENT=y
502   FILES:=$(LINUX_DIR)/drivers/ssb/ssb.ko
503   AUTOLOAD:=$(call AutoLoad,18,ssb,1)
504 endef
505
506 define KernelPackage/ssb/description
507  Silicon Sonics Backplane glue code.
508 endef
509
510 $(eval $(call KernelPackage,ssb))
511
512
513 define KernelPackage/bcma
514   SUBMENU:=$(OTHER_MENU)
515   TITLE:=BCMA support
516   DEPENDS:=@PCI_SUPPORT @!TARGET_bcm47xx @!TARGET_bcm53xx
517   KCONFIG:=\
518         CONFIG_BCMA \
519         CONFIG_BCMA_POSSIBLE=y \
520         CONFIG_BCMA_BLOCKIO=y \
521         CONFIG_BCMA_HOST_PCI_POSSIBLE=y \
522         CONFIG_BCMA_HOST_PCI=y \
523         CONFIG_BCMA_HOST_SOC=n \
524         CONFIG_BCMA_DRIVER_MIPS=n \
525         CONFIG_BCMA_DRIVER_PCI_HOSTMODE=n \
526         CONFIG_BCMA_DRIVER_GMAC_CMN=n \
527         CONFIG_BCMA_DEBUG=n
528   FILES:=$(LINUX_DIR)/drivers/bcma/bcma.ko
529   AUTOLOAD:=$(call AutoLoad,29,bcma)
530 endef
531
532 define KernelPackage/bcma/description
533  Bus driver for Broadcom specific Advanced Microcontroller Bus Architecture
534 endef
535
536 $(eval $(call KernelPackage,bcma))
537
538
539 define KernelPackage/rtc-ds1307
540   SUBMENU:=$(OTHER_MENU)
541   TITLE:=Dallas/Maxim DS1307 (and compatible) RTC support
542   DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
543   DEPENDS:=+kmod-i2c-core +kmod-regmap-i2c +kmod-hwmon-core
544   KCONFIG:=CONFIG_RTC_DRV_DS1307 \
545         CONFIG_RTC_CLASS=y
546   FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1307.ko
547   AUTOLOAD:=$(call AutoProbe,rtc-ds1307)
548 endef
549
550 define KernelPackage/rtc-ds1307/description
551  Kernel module for Dallas/Maxim DS1307/DS1337/DS1338/DS1340/DS1388/DS3231,
552  Epson RX-8025 and various other compatible RTC chips connected via I2C.
553 endef
554
555 $(eval $(call KernelPackage,rtc-ds1307))
556
557
558 define KernelPackage/rtc-ds1374
559   SUBMENU:=$(OTHER_MENU)
560   TITLE:=Dallas/Maxim DS1374 RTC support
561   DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
562   DEPENDS:=+kmod-i2c-core
563   KCONFIG:=CONFIG_RTC_DRV_DS1374 \
564         CONFIG_RTC_DRV_DS1374_WDT=n \
565         CONFIG_RTC_CLASS=y
566   FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1374.ko
567   AUTOLOAD:=$(call AutoProbe,rtc-ds1374)
568 endef
569
570 define KernelPackage/rtc-ds1374/description
571  Kernel module for Dallas/Maxim DS1374.
572 endef
573
574 $(eval $(call KernelPackage,rtc-ds1374))
575
576
577 define KernelPackage/rtc-ds1672
578   SUBMENU:=$(OTHER_MENU)
579   TITLE:=Dallas/Maxim DS1672 RTC support
580   DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
581   DEPENDS:=+kmod-i2c-core
582   KCONFIG:=CONFIG_RTC_DRV_DS1672 \
583         CONFIG_RTC_CLASS=y
584   FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1672.ko
585   AUTOLOAD:=$(call AutoProbe,rtc-ds1672)
586 endef
587
588 define KernelPackage/rtc-ds1672/description
589  Kernel module for Dallas/Maxim DS1672 RTC.
590 endef
591
592 $(eval $(call KernelPackage,rtc-ds1672))
593
594
595 define KernelPackage/rtc-em3027
596   SUBMENU:=$(OTHER_MENU)
597   TITLE:=Microelectronic EM3027 RTC support
598   DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
599   DEPENDS:=+kmod-i2c-core
600   KCONFIG:=CONFIG_RTC_DRV_EM3027 \
601         CONFIG_RTC_CLASS=y
602   FILES:=$(LINUX_DIR)/drivers/rtc/rtc-em3027.ko
603   AUTOLOAD:=$(call AutoProbe,rtc-em3027)
604 endef
605
606 define KernelPackage/rtc-em3027/description
607  Kernel module for Microelectronic EM3027 RTC.
608 endef
609
610 $(eval $(call KernelPackage,rtc-em3027))
611
612
613 define KernelPackage/rtc-isl1208
614   SUBMENU:=$(OTHER_MENU)
615   TITLE:=Intersil ISL1208 RTC support
616   DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
617   DEPENDS:=+kmod-i2c-core
618   KCONFIG:=CONFIG_RTC_DRV_ISL1208 \
619         CONFIG_RTC_CLASS=y
620   FILES:=$(LINUX_DIR)/drivers/rtc/rtc-isl1208.ko
621   AUTOLOAD:=$(call AutoProbe,rtc-isl1208)
622 endef
623
624 define KernelPackage/rtc-isl1208/description
625  Kernel module for Intersil ISL1208 RTC.
626 endef
627
628 $(eval $(call KernelPackage,rtc-isl1208))
629
630
631 define KernelPackage/rtc-pcf8563
632   SUBMENU:=$(OTHER_MENU)
633   TITLE:=Philips PCF8563/Epson RTC8564 RTC support
634   DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
635   DEPENDS:=+kmod-i2c-core
636   KCONFIG:=CONFIG_RTC_DRV_PCF8563 \
637         CONFIG_RTC_CLASS=y
638   FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf8563.ko
639   AUTOLOAD:=$(call AutoProbe,rtc-pcf8563)
640 endef
641
642 define KernelPackage/rtc-pcf8563/description
643  Kernel module for Philips PCF8563 RTC chip.
644  The Epson RTC8564 should work as well.
645 endef
646
647 $(eval $(call KernelPackage,rtc-pcf8563))
648
649
650 define KernelPackage/rtc-pcf2123
651   SUBMENU:=$(OTHER_MENU)
652   TITLE:=Philips PCF2123 RTC support
653   DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
654   DEPENDS:=+LINUX_5_4:kmod-regmap-spi
655   KCONFIG:=CONFIG_RTC_DRV_PCF2123 \
656         CONFIG_RTC_CLASS=y
657   FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf2123.ko
658   AUTOLOAD:=$(call AutoProbe,rtc-pcf2123)
659 endef
660
661 define KernelPackage/rtc-pcf2123/description
662  Kernel module for Philips PCF2123 RTC chip
663 endef
664
665 $(eval $(call KernelPackage,rtc-pcf2123))
666
667 define KernelPackage/rtc-pcf2127
668   SUBMENU:=$(OTHER_MENU)
669   TITLE:=NXP PCF2127 and PCF2129 RTC support
670   DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
671   DEPENDS:=+kmod-i2c-core +kmod-regmap-spi
672   KCONFIG:=CONFIG_RTC_DRV_PCF2127 \
673         CONFIG_RTC_CLASS=y
674   FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf2127.ko
675   AUTOLOAD:=$(call AutoProbe,rtc-pcf2127)
676 endef
677
678 define KernelPackage/rtc-pcf2127/description
679  Kernel module for NXP PCF2127 and PCF2129 RTC chip
680 endef
681
682 $(eval $(call KernelPackage,rtc-pcf2127))
683
684 define KernelPackage/rtc-pt7c4338
685   SUBMENU:=$(OTHER_MENU)
686   TITLE:=Pericom PT7C4338 RTC support
687   DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
688   DEPENDS:=+kmod-i2c-core
689   KCONFIG:=CONFIG_RTC_DRV_PT7C4338 \
690         CONFIG_RTC_CLASS=y
691   FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pt7c4338.ko
692   AUTOLOAD:=$(call AutoProbe,rtc-pt7c4338)
693 endef
694
695 define KernelPackage/rtc-pt7c4338/description
696  Kernel module for Pericom PT7C4338 i2c RTC chip
697 endef
698
699 $(eval $(call KernelPackage,rtc-pt7c4338))
700
701 define KernelPackage/rtc-rs5c372a
702   SUBMENU:=$(OTHER_MENU)
703   TITLE:=Ricoh R2025S/D, RS5C372A/B, RV5C386, RV5C387A
704   DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
705   DEPENDS:=+kmod-i2c-core
706   KCONFIG:=CONFIG_RTC_DRV_RS5C372 \
707         CONFIG_RTC_CLASS=y
708   FILES:=$(LINUX_DIR)/drivers/rtc/rtc-rs5c372.ko
709   AUTOLOAD:=$(call AutoLoad,50,rtc-rs5c372,1)
710 endef
711
712 define KernelPackage/rtc-rs5c372a/description
713  Kernel module for Ricoh R2025S/D, RS5C372A/B, RV5C386, RV5C387A RTC on chip module
714 endef
715
716 $(eval $(call KernelPackage,rtc-rs5c372a))
717
718 define KernelPackage/rtc-rx8025
719   SUBMENU:=$(OTHER_MENU)
720   TITLE:=Epson RX-8025 / RX-8035
721   DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
722   DEPENDS:=+kmod-i2c-core
723   KCONFIG:=CONFIG_RTC_DRV_RX8025 \
724         CONFIG_RTC_CLASS=y
725   FILES:=$(LINUX_DIR)/drivers/rtc/rtc-rx8025.ko
726   AUTOLOAD:=$(call AutoLoad,50,rtc-rx8025,1)
727 endef
728
729 define KernelPackage/rtc-rx8025/description
730  Kernel module for Epson RX-8025 and RX-8035 I2C RTC chip
731 endef
732
733 $(eval $(call KernelPackage,rtc-rx8025))
734
735
736 define KernelPackage/mtdtests
737   SUBMENU:=$(OTHER_MENU)
738   TITLE:=MTD subsystem tests
739   KCONFIG:=CONFIG_MTD_TESTS
740   FILES:=\
741         $(LINUX_DIR)/drivers/mtd/tests/mtd_nandecctest.ko \
742         $(LINUX_DIR)/drivers/mtd/tests/mtd_oobtest.ko \
743         $(LINUX_DIR)/drivers/mtd/tests/mtd_pagetest.ko \
744         $(LINUX_DIR)/drivers/mtd/tests/mtd_readtest.ko \
745         $(LINUX_DIR)/drivers/mtd/tests/mtd_speedtest.ko \
746         $(LINUX_DIR)/drivers/mtd/tests/mtd_stresstest.ko \
747         $(LINUX_DIR)/drivers/mtd/tests/mtd_subpagetest.ko \
748         $(LINUX_DIR)/drivers/mtd/tests/mtd_torturetest.ko
749 endef
750
751 define KernelPackage/mtdtests/description
752  Kernel modules for MTD subsystem/driver testing
753 endef
754
755 $(eval $(call KernelPackage,mtdtests))
756
757
758 define KernelPackage/mtdoops
759   SUBMENU:=$(OTHER_MENU)
760   TITLE:=Log panic/oops to an MTD buffer
761   KCONFIG:=CONFIG_MTD_OOPS
762   FILES:=$(LINUX_DIR)/drivers/mtd/mtdoops.ko
763 endef
764
765 define KernelPackage/mtdoops/description
766  Kernel modules for Log panic/oops to an MTD buffer
767 endef
768
769 $(eval $(call KernelPackage,mtdoops))
770
771
772 define KernelPackage/mtdram
773   SUBMENU:=$(OTHER_MENU)
774   TITLE:=Test MTD driver using RAM
775   KCONFIG:=CONFIG_MTD_MTDRAM \
776     CONFIG_MTDRAM_TOTAL_SIZE=4096 \
777     CONFIG_MTDRAM_ERASE_SIZE=128
778   FILES:=$(LINUX_DIR)/drivers/mtd/devices/mtdram.ko
779 endef
780
781 define KernelPackage/mtdram/description
782   Test MTD driver using RAM
783 endef
784
785 $(eval $(call KernelPackage,mtdram))
786
787
788 define KernelPackage/serial-8250
789   SUBMENU:=$(OTHER_MENU)
790   TITLE:=8250 UARTs
791   KCONFIG:= CONFIG_SERIAL_8250 \
792         CONFIG_SERIAL_8250_PCI \
793         CONFIG_SERIAL_8250_NR_UARTS=16 \
794         CONFIG_SERIAL_8250_RUNTIME_UARTS=16 \
795         CONFIG_SERIAL_8250_EXTENDED=y \
796         CONFIG_SERIAL_8250_MANY_PORTS=y \
797         CONFIG_SERIAL_8250_SHARE_IRQ=y \
798         CONFIG_SERIAL_8250_DETECT_IRQ=n \
799         CONFIG_SERIAL_8250_RSA=n
800   FILES:= \
801         $(LINUX_DIR)/drivers/tty/serial/8250/8250.ko \
802         $(LINUX_DIR)/drivers/tty/serial/8250/8250_base.ko \
803         $(if $(CONFIG_PCI),$(LINUX_DIR)/drivers/tty/serial/8250/8250_pci.ko) \
804         $(if $(CONFIG_GPIOLIB),$(LINUX_DIR)/drivers/tty/serial/serial_mctrl_gpio.ko@ge5.3)
805   AUTOLOAD:=$(call AutoProbe,8250 8250_base 8250_pci)
806 endef
807
808 define KernelPackage/serial-8250/description
809  Kernel module for 8250 UART based serial ports
810 endef
811
812 $(eval $(call KernelPackage,serial-8250))
813
814
815 define KernelPackage/serial-8250-exar
816   SUBMENU:=$(OTHER_MENU)
817   TITLE:=Exar 8250 UARTs
818   KCONFIG:= CONFIG_SERIAL_8250_EXAR
819   FILES:=$(LINUX_DIR)/drivers/tty/serial/8250/8250_exar.ko
820   AUTOLOAD:=$(call AutoProbe,8250 8250_base 8250_exar)
821   DEPENDS:=+kmod-serial-8250
822 endef
823
824 define KernelPackage/serial-8250-exar/description
825  Kernel module for Exar serial ports
826 endef
827
828 $(eval $(call KernelPackage,serial-8250-exar))
829
830
831 define KernelPackage/regmap-core
832   SUBMENU:=$(OTHER_MENU)
833   TITLE:=Generic register map support
834   HIDDEN:=1
835   KCONFIG:=CONFIG_REGMAP
836 ifneq ($(wildcard $(LINUX_DIR)/drivers/base/regmap/regmap-core.ko),)
837   FILES:=$(LINUX_DIR)/drivers/base/regmap/regmap-core.ko
838 endif
839 endef
840
841 define KernelPackage/regmap-core/description
842  Generic register map support
843 endef
844
845 $(eval $(call KernelPackage,regmap-core))
846
847
848 define KernelPackage/regmap-spi
849   SUBMENU:=$(OTHER_MENU)
850   TITLE:=SPI register map support
851   DEPENDS:=+kmod-regmap-core
852   HIDDEN:=1
853   KCONFIG:=CONFIG_REGMAP_SPI \
854            CONFIG_SPI=y
855   FILES:=$(LINUX_DIR)/drivers/base/regmap/regmap-spi.ko
856 endef
857
858 define KernelPackage/regmap-spi/description
859  SPI register map support
860 endef
861
862 $(eval $(call KernelPackage,regmap-spi))
863
864
865 define KernelPackage/regmap-i2c
866   SUBMENU:=$(OTHER_MENU)
867   TITLE:=I2C register map support
868   DEPENDS:=+kmod-regmap-core +kmod-i2c-core
869   HIDDEN:=1
870   KCONFIG:=CONFIG_REGMAP_I2C
871   FILES:=$(LINUX_DIR)/drivers/base/regmap/regmap-i2c.ko
872 endef
873
874 define KernelPackage/regmap-i2c/description
875  I2C register map support
876 endef
877
878 $(eval $(call KernelPackage,regmap-i2c))
879
880
881 define KernelPackage/regmap-mmio
882   SUBMENU:=$(OTHER_MENU)
883   TITLE:=MMIO register map support
884   DEPENDS:=+kmod-regmap-core
885   HIDDEN:=1
886   KCONFIG:=CONFIG_REGMAP_MMIO
887   FILES:=$(LINUX_DIR)/drivers/base/regmap/regmap-mmio.ko
888 endef
889
890 define KernelPackage/regmap-mmio/description
891  MMIO register map support
892 endef
893
894 $(eval $(call KernelPackage,regmap-mmio))
895
896
897 define KernelPackage/ikconfig
898   SUBMENU:=$(OTHER_MENU)
899   TITLE:=Kernel configuration via /proc/config.gz
900   KCONFIG:=CONFIG_IKCONFIG \
901            CONFIG_IKCONFIG_PROC=y
902   FILES:=$(LINUX_DIR)/kernel/configs.ko
903   AUTOLOAD:=$(call AutoLoad,70,configs)
904 endef
905
906 define KernelPackage/ikconfig/description
907  Kernel configuration via /proc/config.gz
908 endef
909
910 $(eval $(call KernelPackage,ikconfig))
911
912
913 define KernelPackage/zram
914   SUBMENU:=$(OTHER_MENU)
915   TITLE:=ZRAM
916   DEPENDS:=+kmod-lib-lzo +kmod-lib-lz4
917   KCONFIG:= \
918         CONFIG_ZSMALLOC \
919         CONFIG_ZRAM \
920         CONFIG_ZRAM_DEBUG=n \
921         CONFIG_PGTABLE_MAPPING=n \
922         CONFIG_ZRAM_WRITEBACK=n \
923         CONFIG_ZSMALLOC_STAT=n \
924         CONFIG_ZRAM_LZ4_COMPRESS=y
925   FILES:= \
926         $(LINUX_DIR)/mm/zsmalloc.ko \
927         $(LINUX_DIR)/drivers/block/zram/zram.ko
928   AUTOLOAD:=$(call AutoLoad,20,zsmalloc zram)
929 endef
930
931 define KernelPackage/zram/description
932  Compressed RAM block device support
933 endef
934
935 $(eval $(call KernelPackage,zram))
936
937
938 define KernelPackage/pps
939   SUBMENU:=$(OTHER_MENU)
940   TITLE:=PPS support
941   KCONFIG:=CONFIG_PPS
942   FILES:=$(LINUX_DIR)/drivers/pps/pps_core.ko
943   AUTOLOAD:=$(call AutoLoad,17,pps_core,1)
944 endef
945
946 define KernelPackage/pps/description
947  PPS (Pulse Per Second) is a special pulse provided by some GPS
948  antennae. Userland can use it to get a high-precision time
949  reference.
950 endef
951
952 $(eval $(call KernelPackage,pps))
953
954
955 define KernelPackage/pps-gpio
956   SUBMENU:=$(OTHER_MENU)
957   TITLE:=PPS client using GPIO
958   DEPENDS:=+kmod-pps
959   KCONFIG:=CONFIG_PPS_CLIENT_GPIO
960   FILES:=$(LINUX_DIR)/drivers/pps/clients/pps-gpio.ko
961   AUTOLOAD:=$(call AutoLoad,18,pps-gpio,1)
962 endef
963
964 define KernelPackage/pps-gpio/description
965  Support for a PPS source using GPIO. To be useful you must
966  also register a platform device specifying the GPIO pin and
967  other options, usually in your board setup.
968 endef
969
970 $(eval $(call KernelPackage,pps-gpio))
971
972
973 define KernelPackage/pps-ldisc
974   SUBMENU:=$(OTHER_MENU)
975   TITLE:=PPS line discipline
976   DEPENDS:=+kmod-pps
977   KCONFIG:=CONFIG_PPS_CLIENT_LDISC
978   FILES:=$(LINUX_DIR)/drivers/pps/clients/pps-ldisc.ko
979   AUTOLOAD:=$(call AutoLoad,18,pps-ldisc,1)
980 endef
981
982 define KernelPackage/pps-ldisc/description
983  Support for a PPS source connected with the CD (Carrier
984  Detect) pin of your serial port.
985 endef
986
987 $(eval $(call KernelPackage,pps-ldisc))
988
989
990 define KernelPackage/ptp
991   SUBMENU:=$(OTHER_MENU)
992   TITLE:=PTP clock support
993   DEPENDS:=+kmod-pps
994   KCONFIG:= \
995         CONFIG_PTP_1588_CLOCK \
996         CONFIG_NET_PTP_CLASSIFY=y
997   FILES:=$(LINUX_DIR)/drivers/ptp/ptp.ko
998   AUTOLOAD:=$(call AutoLoad,18,ptp,1)
999 endef
1000
1001 define KernelPackage/ptp/description
1002  The IEEE 1588 standard defines a method to precisely
1003  synchronize distributed clocks over Ethernet networks.
1004 endef
1005
1006 $(eval $(call KernelPackage,ptp))
1007
1008
1009 define KernelPackage/ptp-gianfar
1010   SUBMENU:=$(OTHER_MENU)
1011   TITLE:=Freescale Gianfar PTP support
1012   DEPENDS:=@TARGET_mpc85xx +kmod-ptp @LINUX_4_14
1013   KCONFIG:=CONFIG_PTP_1588_CLOCK_GIANFAR
1014   FILES:=$(LINUX_DIR)/drivers/net/ethernet/freescale/gianfar_ptp.ko
1015   AUTOLOAD:=$(call AutoProbe,gianfar_ptp)
1016 endef
1017
1018 define KernelPackage/ptp-gianfar/description
1019  Kernel module for IEEE 1588 support for Freescale
1020  Gianfar Ethernet drivers
1021 endef
1022
1023 $(eval $(call KernelPackage,ptp-gianfar))
1024
1025 define KernelPackage/ptp-qoriq
1026   SUBMENU:=$(OTHER_MENU)
1027   TITLE:=Freescale QorIQ PTP support
1028   DEPENDS:=@TARGET_mpc85xx +kmod-ptp @!LINUX_4_14
1029   KCONFIG:=CONFIG_PTP_1588_CLOCK_QORIQ
1030   FILES:=$(LINUX_DIR)/drivers/ptp/ptp-qoriq.ko
1031   AUTOLOAD:=$(call AutoProbe,ptp-qoriq)
1032 endef
1033
1034
1035 define KernelPackage/ptp-qoriq/description
1036  Kernel module for IEEE 1588 support for Freescale
1037  QorIQ Ethernet drivers
1038 endef
1039
1040 $(eval $(call KernelPackage,ptp-qoriq))
1041
1042 define KernelPackage/random-core
1043   SUBMENU:=$(OTHER_MENU)
1044   TITLE:=Hardware Random Number Generator Core support
1045   KCONFIG:=CONFIG_HW_RANDOM
1046   FILES:=$(LINUX_DIR)/drivers/char/hw_random/rng-core.ko
1047 endef
1048
1049 define KernelPackage/random-core/description
1050  Kernel module for the HW random number generator core infrastructure
1051 endef
1052
1053 $(eval $(call KernelPackage,random-core))
1054
1055
1056 define KernelPackage/random-tpm
1057   SUBMENU:=$(OTHER_MENU)
1058   TITLE:=Hardware Random Number Generator TPM support
1059   KCONFIG:=CONFIG_HW_RANDOM_TPM
1060   FILES:=$(LINUX_DIR)/drivers/char/hw_random/tpm-rng.ko
1061   DEPENDS:= +kmod-random-core +kmod-tpm @LINUX_4_14
1062   AUTOLOAD:=$(call AutoProbe,tpm-rng)
1063 endef
1064
1065 define KernelPackage/random-tpm/description
1066  Kernel module for the Random Number Generator
1067  in the Trusted Platform Module.
1068 endef
1069
1070 $(eval $(call KernelPackage,random-tpm))
1071
1072 define KernelPackage/thermal
1073   SUBMENU:=$(OTHER_MENU)
1074   TITLE:=Generic Thermal sysfs driver
1075   DEPENDS:=+kmod-hwmon-core
1076   HIDDEN:=1
1077   KCONFIG:= \
1078         CONFIG_THERMAL \
1079         CONFIG_THERMAL_OF=y \
1080         CONFIG_CPU_THERMAL=y \
1081         CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y \
1082         CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE=n \
1083         CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE=n \
1084         CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0 \
1085         CONFIG_THERMAL_GOV_FAIR_SHARE=n \
1086         CONFIG_THERMAL_GOV_STEP_WISE=y \
1087         CONFIG_THERMAL_GOV_USER_SPACE=n \
1088         CONFIG_THERMAL_HWMON=y \
1089         CONFIG_THERMAL_EMULATION=n
1090   FILES:=$(LINUX_DIR)/drivers/thermal/thermal_sys.ko
1091   AUTOLOAD:=$(call AutoProbe,thermal_sys)
1092 endef
1093
1094 define KernelPackage/thermal/description
1095  Generic Thermal Sysfs driver offers a generic mechanism for thermal
1096  management. Usually it's made up of one or more thermal zone and cooling
1097  device.
1098 endef
1099
1100 $(eval $(call KernelPackage,thermal))
1101
1102
1103 define KernelPackage/gpio-beeper
1104   SUBMENU:=$(OTHER_MENU)
1105   TITLE:=GPIO beeper support
1106   DEPENDS:=+kmod-input-core
1107   KCONFIG:= \
1108         CONFIG_INPUT_MISC=y \
1109         CONFIG_INPUT_GPIO_BEEPER
1110   FILES:= \
1111         $(LINUX_DIR)/drivers/input/misc/gpio-beeper.ko
1112   AUTOLOAD:=$(call AutoLoad,50,gpio-beeper)
1113 endef
1114
1115 define KernelPackage/gpio-beeper/description
1116  This enables playing beeps through an GPIO-connected buzzer
1117 endef
1118
1119 $(eval $(call KernelPackage,gpio-beeper))
1120
1121
1122 define KernelPackage/echo
1123   SUBMENU:=$(OTHER_MENU)
1124   TITLE:=Line Echo Canceller
1125   KCONFIG:=CONFIG_ECHO
1126   FILES:=$(LINUX_DIR)/drivers/misc/echo/echo.ko
1127   AUTOLOAD:=$(call AutoLoad,50,echo)
1128 endef
1129
1130 define KernelPackage/echo/description
1131  This driver provides line echo cancelling support for mISDN and
1132  DAHDI drivers
1133 endef
1134
1135 $(eval $(call KernelPackage,echo))
1136
1137
1138 define KernelPackage/bmp085
1139   SUBMENU:=$(OTHER_MENU)
1140   TITLE:=BMP085/BMP18x pressure sensor
1141   DEPENDS:= +kmod-regmap-core
1142   KCONFIG:= CONFIG_BMP085
1143   FILES:= $(LINUX_DIR)/drivers/misc/bmp085.ko
1144 endef
1145
1146 define KernelPackage/bmp085/description
1147  This driver adds support for Bosch Sensortec's digital pressure
1148  sensors BMP085 and BMP18x.
1149 endef
1150
1151 $(eval $(call KernelPackage,bmp085))
1152
1153
1154 define KernelPackage/bmp085-i2c
1155   SUBMENU:=$(OTHER_MENU)
1156   TITLE:=BMP085/BMP18x pressure sensor I2C
1157   DEPENDS:= +kmod-bmp085
1158   KCONFIG:= CONFIG_BMP085_I2C
1159   FILES:= $(LINUX_DIR)/drivers/misc/bmp085-i2c.ko
1160   AUTOLOAD:=$(call AutoProbe,bmp085-i2c)
1161 endef
1162 define KernelPackage/bmp085-i2c/description
1163  This driver adds support for Bosch Sensortec's digital pressure
1164  sensor connected via I2C.
1165 endef
1166
1167 $(eval $(call KernelPackage,bmp085-i2c))
1168
1169
1170 define KernelPackage/bmp085-spi
1171   SUBMENU:=$(OTHER_MENU)
1172   TITLE:=BMP085/BMP18x pressure sensor SPI
1173   DEPENDS:= +kmod-bmp085
1174   KCONFIG:= CONFIG_BMP085_SPI
1175   FILES:= $(LINUX_DIR)/drivers/misc/bmp085-spi.ko
1176   AUTOLOAD:=$(call AutoProbe,bmp085-spi)
1177 endef
1178 define KernelPackage/bmp085-spi/description
1179  This driver adds support for Bosch Sensortec's digital pressure
1180  sensor connected via SPI.
1181 endef
1182
1183 $(eval $(call KernelPackage,bmp085-spi))
1184
1185 define KernelPackage/tpm
1186   SUBMENU:=$(OTHER_MENU)
1187   TITLE:=TPM Hardware Support
1188   DEPENDS:= +!LINUX_4_14:kmod-random-core
1189   KCONFIG:= CONFIG_TCG_TPM
1190   FILES:= $(LINUX_DIR)/drivers/char/tpm/tpm.ko
1191   AUTOLOAD:=$(call AutoLoad,10,tpm,1)
1192 endef
1193
1194 define KernelPackage/tpm/description
1195         This enables TPM Hardware Support.
1196 endef
1197
1198 $(eval $(call KernelPackage,tpm))
1199
1200 define KernelPackage/tpm-tis
1201   SUBMENU:=$(OTHER_MENU)
1202   TITLE:=TPM TIS 1.2 Interface / TPM 2.0 FIFO Interface
1203         DEPENDS:= @TARGET_x86 +kmod-tpm
1204   KCONFIG:= CONFIG_TCG_TIS
1205   FILES:= \
1206         $(LINUX_DIR)/drivers/char/tpm/tpm_tis.ko \
1207         $(LINUX_DIR)/drivers/char/tpm/tpm_tis_core.ko
1208   AUTOLOAD:=$(call AutoLoad,20,tpm_tis,1)
1209 endef
1210
1211 define KernelPackage/tpm-tis/description
1212         If you have a TPM security chip that is compliant with the
1213         TCG TIS 1.2 TPM specification (TPM1.2) or the TCG PTP FIFO
1214         specification (TPM2.0) say Yes and it will be accessible from
1215         within Linux.
1216 endef
1217
1218 $(eval $(call KernelPackage,tpm-tis))
1219
1220 define KernelPackage/tpm-i2c-atmel
1221   SUBMENU:=$(OTHER_MENU)
1222   TITLE:=TPM I2C Atmel Support
1223   DEPENDS:= +kmod-tpm +kmod-i2c-core
1224   KCONFIG:= CONFIG_TCG_TIS_I2C_ATMEL
1225   FILES:= $(LINUX_DIR)/drivers/char/tpm/tpm_i2c_atmel.ko
1226   AUTOLOAD:=$(call AutoLoad,40,tpm_i2c_atmel,1)
1227 endef
1228
1229 define KernelPackage/tpm-i2c-atmel/description
1230         This enables the TPM Interface Specification 1.2 Interface (I2C - Atmel)
1231 endef
1232
1233 $(eval $(call KernelPackage,tpm-i2c-atmel))
1234
1235 define KernelPackage/tpm-i2c-infineon
1236   SUBMENU:=$(OTHER_MENU)
1237   TITLE:= TPM I2C Infineon driver
1238   DEPENDS:= +kmod-tpm +kmod-i2c-core
1239   KCONFIG:= CONFIG_TCG_TIS_I2C_INFINEON
1240   FILES:= $(LINUX_DIR)/drivers/char/tpm/tpm_i2c_infineon.ko
1241   AUTOLOAD:= $(call AutoLoad,40,tpm_i2c_infineon,1)
1242 endef
1243
1244 define KernelPackage/tpm-i2c-infineon/description
1245         This enables the TPM Interface Specification 1.2 Interface (I2C - Infineon)
1246 endef
1247
1248 $(eval $(call KernelPackage,tpm-i2c-infineon))
1249
1250
1251 define KernelPackage/w83627hf-wdt
1252   SUBMENU:=$(OTHER_MENU)
1253   TITLE:=Winbond 83627HF Watchdog Timer
1254   KCONFIG:=CONFIG_W83627HF_WDT
1255   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/w83627hf_wdt.ko
1256   AUTOLOAD:=$(call AutoLoad,50,w83627hf-wdt,1)
1257 endef
1258
1259 define KernelPackage/w83627hf-wdt/description
1260   Kernel module for Winbond 83627HF Watchdog Timer
1261 endef
1262
1263 $(eval $(call KernelPackage,w83627hf-wdt))
1264
1265
1266 define KernelPackage/itco-wdt
1267   SUBMENU:=$(OTHER_MENU)
1268   TITLE:=Intel iTCO Watchdog Timer
1269   KCONFIG:=CONFIG_ITCO_WDT \
1270            CONFIG_ITCO_VENDOR_SUPPORT=y
1271   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/iTCO_wdt.ko \
1272          $(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/iTCO_vendor_support.ko
1273   AUTOLOAD:=$(call AutoLoad,50,iTCO_vendor_support iTCO_wdt,1)
1274 endef
1275
1276 define KernelPackage/itco-wdt/description
1277   Kernel module for Intel iTCO Watchdog Timer
1278 endef
1279
1280 $(eval $(call KernelPackage,itco-wdt))
1281
1282
1283 define KernelPackage/it87-wdt
1284   SUBMENU:=$(OTHER_MENU)
1285   TITLE:=ITE IT87 Watchdog Timer
1286   KCONFIG:=CONFIG_IT87_WDT
1287   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/it87_wdt.ko
1288   AUTOLOAD:=$(call AutoLoad,50,it87-wdt,1)
1289   MODPARAMS.it87-wdt:= \
1290         nogameport=1 \
1291         nocir=1
1292 endef
1293
1294 define KernelPackage/it87-wdt/description
1295   Kernel module for ITE IT87 Watchdog Timer
1296 endef
1297
1298 $(eval $(call KernelPackage,it87-wdt))
1299
1300
1301 define KernelPackage/f71808e-wdt
1302   SUBMENU:=$(OTHER_MENU)
1303   TITLE:=Fintek F718xx/F818xx Watchdog Timer
1304   DEPENDS:=@TARGET_x86
1305   KCONFIG:=CONFIG_F71808E_WDT
1306   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/f71808e_wdt.ko
1307   AUTOLOAD:=$(call AutoProbe,f71808e-wdt,1)
1308 endef
1309
1310 define KernelPackage/f71808e-wdt/description
1311   Kernel module for the watchdog timer found on many Fintek Super-IO chips.
1312 endef
1313
1314 $(eval $(call KernelPackage,f71808e-wdt))