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