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