other.mk 25 KB

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