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