other.mk 25 KB

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