other.mk 27 KB

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