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