other.mk 25 KB

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