other.mk 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843
  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_SDHCI=n \
  218. CONFIG_MMC_TIFM_SD=n \
  219. CONFIG_MMC_WBSD=n \
  220. CONFIG_SDIO_UART=n
  221. FILES:= \
  222. $(LINUX_DIR)/drivers/mmc/core/mmc_core.ko \
  223. $(LINUX_DIR)/drivers/mmc/card/mmc_block.ko
  224. AUTOLOAD:=$(call AutoProbe,mmc_core mmc_block,1)
  225. endef
  226. define KernelPackage/mmc/description
  227. Kernel support for MMC/SD cards
  228. endef
  229. $(eval $(call KernelPackage,mmc))
  230. define KernelPackage/oprofile
  231. SUBMENU:=$(OTHER_MENU)
  232. TITLE:=OProfile profiling support
  233. KCONFIG:=CONFIG_OPROFILE
  234. FILES:=$(LINUX_DIR)/arch/$(LINUX_KARCH)/oprofile/oprofile.ko
  235. DEPENDS:=@KERNEL_PROFILING
  236. endef
  237. define KernelPackage/oprofile/description
  238. Kernel module for support for oprofile system profiling
  239. endef
  240. $(eval $(call KernelPackage,oprofile))
  241. define KernelPackage/rfkill
  242. SUBMENU:=$(OTHER_MENU)
  243. TITLE:=RF switch subsystem support
  244. DEPENDS:=@USE_RFKILL +kmod-input-core
  245. KCONFIG:= \
  246. CONFIG_RFKILL \
  247. CONFIG_RFKILL_INPUT=y \
  248. CONFIG_RFKILL_LEDS=y \
  249. CONFIG_RFKILL_GPIO=y
  250. FILES:= \
  251. $(LINUX_DIR)/net/rfkill/rfkill.ko
  252. AUTOLOAD:=$(call AutoLoad,20,rfkill)
  253. endef
  254. define KernelPackage/rfkill/description
  255. Say Y here if you want to have control over RF switches
  256. found on many WiFi and Bluetooth cards
  257. endef
  258. $(eval $(call KernelPackage,rfkill))
  259. define KernelPackage/softdog
  260. SUBMENU:=$(OTHER_MENU)
  261. TITLE:=Software watchdog driver
  262. KCONFIG:=CONFIG_SOFT_WATCHDOG
  263. FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/softdog.ko
  264. AUTOLOAD:=$(call AutoLoad,50,softdog)
  265. endef
  266. define KernelPackage/softdog/description
  267. Software watchdog driver
  268. endef
  269. $(eval $(call KernelPackage,softdog))
  270. define KernelPackage/ssb
  271. SUBMENU:=$(OTHER_MENU)
  272. TITLE:=Silicon Sonics Backplane glue code
  273. DEPENDS:=@PCI_SUPPORT @!TARGET_brcm47xx @!TARGET_brcm63xx
  274. KCONFIG:=\
  275. CONFIG_SSB \
  276. CONFIG_SSB_B43_PCI_BRIDGE=y \
  277. CONFIG_SSB_DRIVER_MIPS=n \
  278. CONFIG_SSB_DRIVER_PCICORE=y \
  279. CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y \
  280. CONFIG_SSB_PCIHOST=y \
  281. CONFIG_SSB_PCIHOST_POSSIBLE=y \
  282. CONFIG_SSB_POSSIBLE=y \
  283. CONFIG_SSB_SPROM=y \
  284. CONFIG_SSB_SILENT=y
  285. FILES:=$(LINUX_DIR)/drivers/ssb/ssb.ko
  286. AUTOLOAD:=$(call AutoLoad,18,ssb,1)
  287. endef
  288. define KernelPackage/ssb/description
  289. Silicon Sonics Backplane glue code.
  290. endef
  291. $(eval $(call KernelPackage,ssb))
  292. define KernelPackage/bcma
  293. SUBMENU:=$(OTHER_MENU)
  294. TITLE:=BCMA support
  295. DEPENDS:=@PCI_SUPPORT @!TARGET_brcm47xx
  296. KCONFIG:=\
  297. CONFIG_BCMA \
  298. CONFIG_BCMA_POSSIBLE=y \
  299. CONFIG_BCMA_BLOCKIO=y \
  300. CONFIG_BCMA_HOST_PCI_POSSIBLE=y \
  301. CONFIG_BCMA_HOST_PCI=y \
  302. CONFIG_BCMA_HOST_SOC=n \
  303. CONFIG_BCMA_DRIVER_MIPS=n \
  304. CONFIG_BCMA_DRIVER_PCI_HOSTMODE=n \
  305. CONFIG_BCMA_DRIVER_GMAC_CMN=n \
  306. CONFIG_BCMA_DEBUG=n
  307. FILES:=$(LINUX_DIR)/drivers/bcma/bcma.ko
  308. AUTOLOAD:=$(call AutoLoad,29,bcma)
  309. endef
  310. define KernelPackage/bcma/description
  311. Bus driver for Broadcom specific Advanced Microcontroller Bus Architecture
  312. endef
  313. $(eval $(call KernelPackage,bcma))
  314. define KernelPackage/wdt-omap
  315. SUBMENU:=$(OTHER_MENU)
  316. TITLE:=OMAP Watchdog timer
  317. DEPENDS:=@(TARGET_omap24xx||TARGET_omap35xx)
  318. KCONFIG:=CONFIG_OMAP_WATCHDOG
  319. FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/omap_wdt.ko
  320. AUTOLOAD:=$(call AutoLoad,50,omap_wdt.ko)
  321. endef
  322. define KernelPackage/wdt-omap/description
  323. Kernel module for TI omap watchdog timer
  324. endef
  325. $(eval $(call KernelPackage,wdt-omap))
  326. define KernelPackage/wdt-orion
  327. SUBMENU:=$(OTHER_MENU)
  328. TITLE:=Marvell Orion Watchdog timer
  329. DEPENDS:=@TARGET_orion||TARGET_kirkwood||TARGET_mvebu
  330. KCONFIG:=CONFIG_ORION_WATCHDOG
  331. FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/orion_wdt.ko
  332. AUTOLOAD:=$(call AutoLoad,50,orion_wdt)
  333. endef
  334. define KernelPackage/wdt-orion/description
  335. Kernel module for Marvell Orion, Kirkwood and Armada XP/370 watchdog timer
  336. endef
  337. $(eval $(call KernelPackage,wdt-orion))
  338. define KernelPackage/booke-wdt
  339. SUBMENU:=$(OTHER_MENU)
  340. TITLE:=PowerPC Book-E Watchdog Timer
  341. DEPENDS:=@(TARGET_mpc85xx||TARGET_ppc40x||TARGET_ppc44x)
  342. KCONFIG:=CONFIG_BOOKE_WDT
  343. FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/booke_wdt.ko
  344. AUTOLOAD:=$(call AutoLoad,50,booke_wdt)
  345. endef
  346. define KernelPackage/booke-wdt/description
  347. Kernel module for PowerPC Book-E Watchdog Timer
  348. endef
  349. $(eval $(call KernelPackage,booke-wdt))
  350. define KernelPackage/pwm
  351. SUBMENU:=$(OTHER_MENU)
  352. TITLE:=PWM generic API
  353. KCONFIG:=CONFIG_GENERIC_PWM
  354. FILES:=$(LINUX_DIR)/drivers/pwm/pwm.ko
  355. endef
  356. define KernelPackage/pwm/description
  357. Kernel module that implement a generic PWM API
  358. endef
  359. $(eval $(call KernelPackage,pwm))
  360. define KernelPackage/pwm-gpio
  361. SUBMENU:=$(OTHER_MENU)
  362. TITLE:=PWM over GPIO
  363. DEPENDS:=+kmod-pwm
  364. KCONFIG:=CONFIG_GPIO_PWM
  365. FILES:=$(LINUX_DIR)/drivers/pwm/gpio-pwm.ko
  366. AUTOLOAD:=$(call AutoProbe,gpio-pwm)
  367. endef
  368. define KernelPackage/pwm-gpio/description
  369. Kernel module to models a single-channel PWM device using a timer and a GPIO pin
  370. endef
  371. $(eval $(call KernelPackage,pwm-gpio))
  372. define KernelPackage/rtc-isl1208
  373. SUBMENU:=$(OTHER_MENU)
  374. TITLE:=Intersil ISL1208 RTC support
  375. $(call AddDepends/rtc)
  376. DEPENDS+=+kmod-i2c-core
  377. KCONFIG:=CONFIG_RTC_DRV_ISL1208
  378. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-isl1208.ko
  379. AUTOLOAD:=$(call AutoProbe,rtc-isl1208)
  380. endef
  381. define KernelPackage/rtc-isl1208/description
  382. Kernel module for Intersil ISL1208 RTC.
  383. endef
  384. $(eval $(call KernelPackage,rtc-isl1208))
  385. define KernelPackage/rtc-marvell
  386. SUBMENU:=$(OTHER_MENU)
  387. TITLE:=Marvell SoC built-in RTC support
  388. $(call AddDepends/rtc)
  389. DEPENDS+=@TARGET_kirkwood||TARGET_orion||TARGET_mvebu
  390. KCONFIG:=CONFIG_RTC_DRV_MV
  391. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-mv.ko
  392. AUTOLOAD:=$(call AutoProbe,rtc-mv)
  393. endef
  394. define KernelPackage/rtc-marvell/description
  395. Kernel module for Marvell SoC built-in RTC.
  396. endef
  397. $(eval $(call KernelPackage,rtc-marvell))
  398. define KernelPackage/rtc-pcf8563
  399. SUBMENU:=$(OTHER_MENU)
  400. TITLE:=Philips PCF8563/Epson RTC8564 RTC support
  401. $(call AddDepends/rtc,+kmod-i2c-core)
  402. KCONFIG:=CONFIG_RTC_DRV_PCF8563
  403. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf8563.ko
  404. AUTOLOAD:=$(call AutoProbe,rtc-pcf8563)
  405. endef
  406. define KernelPackage/rtc-pcf8563/description
  407. Kernel module for Philips PCF8563 RTC chip.
  408. The Epson RTC8564 should work as well.
  409. endef
  410. $(eval $(call KernelPackage,rtc-pcf8563))
  411. define KernelPackage/rtc-pcf2123
  412. SUBMENU:=$(OTHER_MENU)
  413. TITLE:=Philips PCF2123 RTC support
  414. $(call AddDepends/rtc)
  415. KCONFIG:=CONFIG_RTC_DRV_PCF2123
  416. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf2123.ko
  417. AUTOLOAD:=$(call AutoProbe,rtc-pcf2123)
  418. endef
  419. define KernelPackage/rtc-pcf2123/description
  420. Kernel module for Philips PCF2123 RTC chip
  421. endef
  422. $(eval $(call KernelPackage,rtc-pcf2123))
  423. define KernelPackage/rtc-pt7c4338
  424. SUBMENU:=$(OTHER_MENU)
  425. TITLE:=Pericom PT7C4338 RTC support
  426. $(call AddDepends/rtc,+kmod-i2c-core)
  427. KCONFIG:=CONFIG_RTC_DRV_PT7C4338
  428. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pt7c4338.ko
  429. AUTOLOAD:=$(call AutoProbe,rtc-pt7c4338)
  430. endef
  431. define KernelPackage/rtc-pt7c4338/description
  432. Kernel module for Pericom PT7C4338 i2c RTC chip
  433. endef
  434. $(eval $(call KernelPackage,rtc-pt7c4338))
  435. define KernelPackage/mtdtests
  436. SUBMENU:=$(OTHER_MENU)
  437. TITLE:=MTD subsystem tests
  438. KCONFIG:=CONFIG_MTD_TESTS
  439. DEPENDS:=+kmod-nand
  440. FILES:=\
  441. $(LINUX_DIR)/drivers/mtd/tests/mtd_nandecctest.ko \
  442. $(LINUX_DIR)/drivers/mtd/tests/mtd_oobtest.ko \
  443. $(LINUX_DIR)/drivers/mtd/tests/mtd_pagetest.ko \
  444. $(LINUX_DIR)/drivers/mtd/tests/mtd_readtest.ko \
  445. $(LINUX_DIR)/drivers/mtd/tests/mtd_speedtest.ko \
  446. $(LINUX_DIR)/drivers/mtd/tests/mtd_stresstest.ko \
  447. $(LINUX_DIR)/drivers/mtd/tests/mtd_subpagetest.ko \
  448. $(LINUX_DIR)/drivers/mtd/tests/mtd_torturetest.ko
  449. endef
  450. define KernelPackage/mtdtests/description
  451. Kernel modules for MTD subsystem/driver testing
  452. endef
  453. $(eval $(call KernelPackage,mtdtests))
  454. define KernelPackage/nand
  455. SUBMENU:=$(OTHER_MENU)
  456. TITLE:=NAND flash support
  457. KCONFIG:=CONFIG_MTD_NAND \
  458. CONFIG_MTD_NAND_IDS \
  459. CONFIG_MTD_NAND_ECC
  460. FILES:= \
  461. $(LINUX_DIR)/drivers/mtd/nand/nand_ids.ko \
  462. $(LINUX_DIR)/drivers/mtd/nand/nand_ecc.ko \
  463. $(LINUX_DIR)/drivers/mtd/nand/nand.ko
  464. AUTOLOAD:=$(call AutoLoad,20,nand_ids nand_ecc nand)
  465. endef
  466. define KernelPackage/nand/description
  467. Kernel module for NAND support
  468. endef
  469. $(eval $(call KernelPackage,nand))
  470. define KernelPackage/nandsim
  471. SUBMENU:=$(OTHER_MENU)
  472. TITLE:=NAND simulator
  473. DEPENDS:=+kmod-nand
  474. KCONFIG:=CONFIG_MTD_NAND_NANDSIM
  475. FILES:=$(LINUX_DIR)/drivers/mtd/nand/nandsim.ko
  476. endef
  477. define KernelPackage/nandsim/description
  478. Kernel module for NAND flash simulation.
  479. endef
  480. $(eval $(call KernelPackage,nandsim))
  481. define KernelPackage/serial-8250
  482. SUBMENU:=$(OTHER_MENU)
  483. TITLE:=8250 UARTs
  484. KCONFIG:= CONFIG_SERIAL_8250 \
  485. CONFIG_SERIAL_8250_NR_UARTS=16 \
  486. CONFIG_SERIAL_8250_RUNTIME_UARTS=16 \
  487. CONFIG_SERIAL_8250_EXTENDED=y \
  488. CONFIG_SERIAL_8250_MANY_PORTS=y \
  489. CONFIG_SERIAL_8250_SHARE_IRQ=y \
  490. CONFIG_SERIAL_8250_DETECT_IRQ=n \
  491. CONFIG_SERIAL_8250_RSA=n
  492. FILES:=$(LINUX_DIR)/drivers/tty/serial/8250/8250$(if $(call kernel_patchver_ge,3.7),$(if $(call kernel_patchver_le,3.8),_core)).ko
  493. endef
  494. define KernelPackage/serial-8250/description
  495. Kernel module for 8250 UART based serial ports
  496. endef
  497. $(eval $(call KernelPackage,serial-8250))
  498. define KernelPackage/regmap
  499. SUBMENU:=$(OTHER_MENU)
  500. TITLE:=Generic register map support
  501. DEPENDS:=+kmod-lib-lzo +kmod-i2c-core
  502. KCONFIG:=CONFIG_REGMAP \
  503. CONFIG_REGMAP_SPI \
  504. CONFIG_REGMAP_I2C \
  505. CONFIG_SPI=y
  506. FILES:= \
  507. $(LINUX_DIR)/drivers/base/regmap/regmap-core.ko \
  508. $(LINUX_DIR)/drivers/base/regmap/regmap-i2c.ko \
  509. $(if $(CONFIG_SPI),$(LINUX_DIR)/drivers/base/regmap/regmap-spi.ko)
  510. AUTOLOAD:=$(call AutoLoad,21,regmap-core regmap-i2c regmap-spi)
  511. endef
  512. define KernelPackage/regmap/description
  513. Generic register map support
  514. endef
  515. $(eval $(call KernelPackage,regmap))
  516. define KernelPackage/ikconfig
  517. SUBMENU:=$(OTHER_MENU)
  518. TITLE:=Kernel configuration via /proc/config.gz
  519. KCONFIG:=CONFIG_IKCONFIG \
  520. CONFIG_IKCONFIG_PROC=y
  521. FILES:=$(LINUX_DIR)/kernel/configs.ko
  522. AUTOLOAD:=$(call AutoLoad,70,configs)
  523. endef
  524. define KernelPackage/ikconfig/description
  525. Kernel configuration via /proc/config.gz
  526. endef
  527. $(eval $(call KernelPackage,ikconfig))
  528. define KernelPackage/zram
  529. SUBMENU:=$(OTHER_MENU)
  530. TITLE:=ZRAM
  531. DEPENDS:=@!LINUX_3_3 +kmod-lib-lzo
  532. KCONFIG:= \
  533. CONFIG_ZSMALLOC \
  534. CONFIG_ZRAM \
  535. CONFIG_ZRAM_DEBUG=n
  536. FILES:= \
  537. $(LINUX_DIR)/drivers/staging/zsmalloc/zsmalloc.ko \
  538. $(LINUX_DIR)/drivers/staging/zram/zram.ko
  539. AUTOLOAD:=$(call AutoLoad,20,zsmalloc zram)
  540. endef
  541. define KernelPackage/zram/description
  542. Compressed RAM block device support
  543. endef
  544. $(eval $(call KernelPackage,zram))
  545. define KernelPackage/mvsdio
  546. SUBMENU:=$(OTHER_MENU)
  547. TITLE:=Marvell SDIO support
  548. DEPENDS:=@TARGET_orion||TARGET_kirkwood||TARGET_mvebu +kmod-mmc
  549. KCONFIG:=CONFIG_MMC_MVSDIO
  550. FILES:=$(LINUX_DIR)/drivers/mmc/host/mvsdio.ko
  551. AUTOLOAD:=$(call AutoProbe,mvsdio)
  552. endef
  553. define KernelPacakge/mvsdio/description
  554. Kernel support for the Marvell SDIO controller
  555. endef
  556. $(eval $(call KernelPackage,mvsdio))
  557. define KernelPackage/pps
  558. SUBMENU:=$(OTHER_MENU)
  559. TITLE:=PPS support
  560. KCONFIG:=CONFIG_PPS
  561. FILES:=$(LINUX_DIR)/drivers/pps/pps_core.ko
  562. AUTOLOAD:=$(call AutoLoad,17,pps_core,1)
  563. endef
  564. define KernelPacakge/pps/description
  565. PPS (Pulse Per Second) is a special pulse provided by some GPS
  566. antennae. Userland can use it to get a high-precision time
  567. reference.
  568. endef
  569. $(eval $(call KernelPackage,pps))
  570. define KernelPackage/ptp
  571. SUBMENU:=$(OTHER_MENU)
  572. TITLE:=PTP clock support
  573. DEPENDS:=+kmod-pps
  574. KCONFIG:=CONFIG_PTP_1588_CLOCK
  575. FILES:=$(LINUX_DIR)/drivers/ptp/ptp.ko
  576. AUTOLOAD:=$(call AutoLoad,18,ptp,1)
  577. endef
  578. define KernelPacakge/ptp/description
  579. The IEEE 1588 standard defines a method to precisely
  580. synchronize distributed clocks over Ethernet networks.
  581. endef
  582. $(eval $(call KernelPackage,ptp))
  583. define KernelPackage/ptp-gianfar
  584. SUBMENU:=$(OTHER_MENU)
  585. TITLE:=Freescale Gianfar PTP support
  586. DEPENDS:=@TARGET_mpc85xx +kmod-gianfar +kmod-ptp
  587. KCONFIG:=CONFIG_PTP_1588_CLOCK_GIANFAR
  588. FILES:=$(LINUX_DIR)/drivers/net/ethernet/freescale/gianfar_ptp.ko
  589. AUTOLOAD:=$(call AutoProbe,gianfar_ptp)
  590. endef
  591. define KernelPacakge/ptp-gianfar/description
  592. Kernel module for IEEE 1588 support for Freescale
  593. Gianfar Ethernet drivers
  594. endef
  595. $(eval $(call KernelPackage,ptp-gianfar))
  596. define KernelPackage/random-core
  597. SUBMENU:=$(OTHER_MENU)
  598. TITLE:=Hardware Random Number Generator Core support
  599. KCONFIG:=CONFIG_HW_RANDOM
  600. FILES:=$(LINUX_DIR)/drivers/char/hw_random/rng-core.ko
  601. endef
  602. define KernelPackage/random-core/description
  603. Kernel module for the HW random number generator core infrastructure
  604. endef
  605. $(eval $(call KernelPackage,random-core))
  606. define KernelPackage/thermal
  607. SUBMENU:=$(OTHER_MENU)
  608. TITLE:=Generic Thermal sysfs driver
  609. HIDDEN:=1
  610. KCONFIG:= \
  611. CONFIG_THERMAL \
  612. CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y \
  613. CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE=n \
  614. CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE=n \
  615. CONFIG_THERMAL_GOV_FAIR_SHARE=n \
  616. CONFIG_THERMAL_GOV_STEP_WISE=y \
  617. CONFIG_THERMAL_GOV_USER_SPACE=n \
  618. CONFIG_THERMAL_EMULATION=n
  619. FILES:=$(LINUX_DIR)/drivers/thermal/thermal_sys.ko
  620. AUTOLOAD:=$(call AutoProbe,thermal_sys)
  621. endef
  622. define KernelPackage/thermal/description
  623. Generic Thermal Sysfs driver offers a generic mechanism for thermal
  624. management. Usually it's made up of one or more thermal zone and cooling
  625. device.
  626. endef
  627. $(eval $(call KernelPackage,thermal))
  628. define KernelPackage/thermal-armada
  629. SUBMENU:=$(OTHER_MENU)
  630. TITLE:=Armada 370/XP thermal management
  631. DEPENDS:=@TARGET_mvebu +kmod-thermal
  632. KCONFIG:=CONFIG_ARMADA_THERMAL
  633. FILES:=$(LINUX_DIR)/drivers/thermal/armada_thermal.ko
  634. AUTOLOAD:=$(call AutoProbe,armada_thermal)
  635. endef
  636. define KernelPackage/thermal-armada/description
  637. Enable this module if you want to have support for thermal management
  638. controller present in Armada 370 and Armada XP SoC.
  639. endef
  640. $(eval $(call KernelPackage,thermal-armada))
  641. define KernelPackage/thermal-imx
  642. SUBMENU:=$(OTHER_MENU)
  643. TITLE:=Temperature sensor driver for Freescale i.MX SoCs
  644. DEPENDS:=@TARGET_imx6 +kmod-thermal
  645. KCONFIG:= \
  646. CONFIG_CPU_THERMAL=y \
  647. CONFIG_IMX_THERMAL
  648. FILES:=$(LINUX_DIR)/drivers/thermal/imx_thermal.ko
  649. AUTOLOAD:=$(call AutoProbe,imx_thermal)
  650. endef
  651. define KernelPackage/thermal-imx/description
  652. Support for Temperature Monitor (TEMPMON) found on Freescale i.MX SoCs.
  653. It supports one critical trip point and one passive trip point. The
  654. cpufreq is used as the cooling device to throttle CPUs when the
  655. passive trip is crossed.
  656. endef
  657. $(eval $(call KernelPackage,thermal-imx))
  658. define KernelPackage/thermal-kirkwood
  659. SUBMENU:=$(OTHER_MENU)
  660. TITLE:=Temperature sensor on Marvell Kirkwood SoCs
  661. DEPENDS:=@TARGET_kirkwood +kmod-thermal
  662. KCONFIG:=CONFIG_KIRKWOOD_THERMAL
  663. FILES:=$(LINUX_DIR)/drivers/thermal/kirkwood_thermal.ko
  664. AUTOLOAD:=$(call AutoProbe,kirkwood_thermal)
  665. endef
  666. define KernelPackage/thermal-kirkwood/description
  667. Support for the Kirkwood thermal sensor driver into the Linux thermal
  668. framework. Only kirkwood 88F6282 and 88F6283 have this sensor.
  669. endef
  670. $(eval $(call KernelPackage,thermal-kirkwood))