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