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