other.mk 25 KB

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