other.mk 22 KB

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