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