other.mk 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995
  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
  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-armada38x
  458. SUBMENU:=$(OTHER_MENU)
  459. TITLE:=Marvell Armada 38x SoC built-in RTC support
  460. DEPENDS:=@RTC_SUPPORT @TARGET_mvebu
  461. KCONFIG:=CONFIG_RTC_DRV_ARMADA38X
  462. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-armada38x.ko
  463. AUTOLOAD:=$(call AutoProbe,rtc-armada38x)
  464. endef
  465. define KernelPackage/rtc-armada38x/description
  466. Kernel module for Marvell Armada 38x SoC built-in RTC.
  467. endef
  468. $(eval $(call KernelPackage,rtc-armada38x))
  469. define KernelPackage/rtc-pcf8563
  470. SUBMENU:=$(OTHER_MENU)
  471. TITLE:=Philips PCF8563/Epson RTC8564 RTC support
  472. DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
  473. KCONFIG:=CONFIG_RTC_DRV_PCF8563
  474. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf8563.ko
  475. AUTOLOAD:=$(call AutoProbe,rtc-pcf8563)
  476. endef
  477. define KernelPackage/rtc-pcf8563/description
  478. Kernel module for Philips PCF8563 RTC chip.
  479. The Epson RTC8564 should work as well.
  480. endef
  481. $(eval $(call KernelPackage,rtc-pcf8563))
  482. define KernelPackage/rtc-pcf2123
  483. SUBMENU:=$(OTHER_MENU)
  484. TITLE:=Philips PCF2123 RTC support
  485. DEPENDS:=@RTC_SUPPORT
  486. KCONFIG:=CONFIG_RTC_DRV_PCF2123
  487. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf2123.ko
  488. AUTOLOAD:=$(call AutoProbe,rtc-pcf2123)
  489. endef
  490. define KernelPackage/rtc-pcf2123/description
  491. Kernel module for Philips PCF2123 RTC chip
  492. endef
  493. $(eval $(call KernelPackage,rtc-pcf2123))
  494. define KernelPackage/rtc-pt7c4338
  495. SUBMENU:=$(OTHER_MENU)
  496. TITLE:=Pericom PT7C4338 RTC support
  497. DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
  498. KCONFIG:=CONFIG_RTC_DRV_PT7C4338
  499. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pt7c4338.ko
  500. AUTOLOAD:=$(call AutoProbe,rtc-pt7c4338)
  501. endef
  502. define KernelPackage/rtc-pt7c4338/description
  503. Kernel module for Pericom PT7C4338 i2c RTC chip
  504. endef
  505. $(eval $(call KernelPackage,rtc-pt7c4338))
  506. define KernelPackage/mtdtests
  507. SUBMENU:=$(OTHER_MENU)
  508. TITLE:=MTD subsystem tests
  509. KCONFIG:=CONFIG_MTD_TESTS
  510. DEPENDS:=+kmod-nand
  511. FILES:=\
  512. $(LINUX_DIR)/drivers/mtd/tests/mtd_nandecctest.ko \
  513. $(LINUX_DIR)/drivers/mtd/tests/mtd_oobtest.ko \
  514. $(LINUX_DIR)/drivers/mtd/tests/mtd_pagetest.ko \
  515. $(LINUX_DIR)/drivers/mtd/tests/mtd_readtest.ko \
  516. $(LINUX_DIR)/drivers/mtd/tests/mtd_speedtest.ko \
  517. $(LINUX_DIR)/drivers/mtd/tests/mtd_stresstest.ko \
  518. $(LINUX_DIR)/drivers/mtd/tests/mtd_subpagetest.ko \
  519. $(LINUX_DIR)/drivers/mtd/tests/mtd_torturetest.ko
  520. endef
  521. define KernelPackage/mtdtests/description
  522. Kernel modules for MTD subsystem/driver testing
  523. endef
  524. $(eval $(call KernelPackage,mtdtests))
  525. define KernelPackage/nand
  526. SUBMENU:=$(OTHER_MENU)
  527. TITLE:=NAND flash support
  528. KCONFIG:=CONFIG_MTD_NAND \
  529. CONFIG_MTD_NAND_IDS \
  530. CONFIG_MTD_NAND_ECC
  531. FILES:= \
  532. $(LINUX_DIR)/drivers/mtd/nand/nand_ids.ko \
  533. $(LINUX_DIR)/drivers/mtd/nand/nand_ecc.ko \
  534. $(LINUX_DIR)/drivers/mtd/nand/nand.ko
  535. AUTOLOAD:=$(call AutoLoad,20,nand_ids nand_ecc nand)
  536. endef
  537. define KernelPackage/nand/description
  538. Kernel module for NAND support
  539. endef
  540. $(eval $(call KernelPackage,nand))
  541. define KernelPackage/nandsim
  542. SUBMENU:=$(OTHER_MENU)
  543. TITLE:=NAND simulator
  544. DEPENDS:=+kmod-nand
  545. KCONFIG:=CONFIG_MTD_NAND_NANDSIM
  546. FILES:=$(LINUX_DIR)/drivers/mtd/nand/nandsim.ko
  547. endef
  548. define KernelPackage/nandsim/description
  549. Kernel module for NAND flash simulation.
  550. endef
  551. $(eval $(call KernelPackage,nandsim))
  552. define KernelPackage/serial-8250
  553. SUBMENU:=$(OTHER_MENU)
  554. TITLE:=8250 UARTs
  555. KCONFIG:= CONFIG_SERIAL_8250 \
  556. CONFIG_SERIAL_8250_NR_UARTS=16 \
  557. CONFIG_SERIAL_8250_RUNTIME_UARTS=16 \
  558. CONFIG_SERIAL_8250_EXTENDED=y \
  559. CONFIG_SERIAL_8250_MANY_PORTS=y \
  560. CONFIG_SERIAL_8250_SHARE_IRQ=y \
  561. CONFIG_SERIAL_8250_DETECT_IRQ=n \
  562. CONFIG_SERIAL_8250_RSA=n
  563. FILES:=$(LINUX_DIR)/drivers/tty/serial/8250/8250.ko
  564. endef
  565. define KernelPackage/serial-8250/description
  566. Kernel module for 8250 UART based serial ports
  567. endef
  568. $(eval $(call KernelPackage,serial-8250))
  569. define KernelPackage/regmap
  570. SUBMENU:=$(OTHER_MENU)
  571. TITLE:=Generic register map support
  572. DEPENDS:=+kmod-lib-lzo +kmod-i2c-core
  573. KCONFIG:=CONFIG_REGMAP \
  574. CONFIG_REGMAP_SPI \
  575. CONFIG_REGMAP_I2C \
  576. CONFIG_SPI=y
  577. FILES:= \
  578. $(LINUX_DIR)/drivers/base/regmap/regmap-core.ko \
  579. $(LINUX_DIR)/drivers/base/regmap/regmap-i2c.ko \
  580. $(if $(CONFIG_SPI),$(LINUX_DIR)/drivers/base/regmap/regmap-spi.ko)
  581. AUTOLOAD:=$(call AutoLoad,21,regmap-core regmap-i2c regmap-spi)
  582. endef
  583. define KernelPackage/regmap/description
  584. Generic register map support
  585. endef
  586. $(eval $(call KernelPackage,regmap))
  587. define KernelPackage/ikconfig
  588. SUBMENU:=$(OTHER_MENU)
  589. TITLE:=Kernel configuration via /proc/config.gz
  590. KCONFIG:=CONFIG_IKCONFIG \
  591. CONFIG_IKCONFIG_PROC=y
  592. FILES:=$(LINUX_DIR)/kernel/configs.ko
  593. AUTOLOAD:=$(call AutoLoad,70,configs)
  594. endef
  595. define KernelPackage/ikconfig/description
  596. Kernel configuration via /proc/config.gz
  597. endef
  598. $(eval $(call KernelPackage,ikconfig))
  599. define KernelPackage/zram
  600. SUBMENU:=$(OTHER_MENU)
  601. TITLE:=ZRAM
  602. DEPENDS:=+kmod-lib-lzo +kmod-lib-lz4
  603. KCONFIG:= \
  604. CONFIG_ZSMALLOC \
  605. CONFIG_ZRAM \
  606. CONFIG_ZRAM_DEBUG=n \
  607. CONFIG_PGTABLE_MAPPING=n \
  608. CONFIG_ZSMALLOC_STAT=n \
  609. CONFIG_ZRAM_LZ4_COMPRESS=y
  610. FILES:= \
  611. $(LINUX_DIR)/mm/zsmalloc.ko \
  612. $(LINUX_DIR)/drivers/block/zram/zram.ko
  613. AUTOLOAD:=$(call AutoLoad,20,zsmalloc zram)
  614. endef
  615. define KernelPackage/zram/description
  616. Compressed RAM block device support
  617. endef
  618. $(eval $(call KernelPackage,zram))
  619. define KernelPackage/mvsdio
  620. SUBMENU:=$(OTHER_MENU)
  621. TITLE:=Marvell SDIO support
  622. DEPENDS:=@TARGET_orion||TARGET_kirkwood||TARGET_mvebu +kmod-mmc
  623. KCONFIG:=CONFIG_MMC_MVSDIO
  624. FILES:=$(LINUX_DIR)/drivers/mmc/host/mvsdio.ko
  625. AUTOLOAD:=$(call AutoProbe,mvsdio)
  626. endef
  627. define KernelPackage/mvsdio/description
  628. Kernel support for the Marvell SDIO controller
  629. endef
  630. $(eval $(call KernelPackage,mvsdio))
  631. define KernelPackage/pps
  632. SUBMENU:=$(OTHER_MENU)
  633. TITLE:=PPS support
  634. KCONFIG:=CONFIG_PPS
  635. FILES:=$(LINUX_DIR)/drivers/pps/pps_core.ko
  636. AUTOLOAD:=$(call AutoLoad,17,pps_core,1)
  637. endef
  638. define KernelPackage/pps/description
  639. PPS (Pulse Per Second) is a special pulse provided by some GPS
  640. antennae. Userland can use it to get a high-precision time
  641. reference.
  642. endef
  643. $(eval $(call KernelPackage,pps))
  644. define KernelPackage/pps-gpio
  645. SUBMENU:=$(OTHER_MENU)
  646. TITLE:=PPS client using GPIO
  647. DEPENDS:=+kmod-pps
  648. KCONFIG:=CONFIG_PPS_CLIENT_GPIO
  649. FILES:=$(LINUX_DIR)/drivers/pps/clients/pps-gpio.ko
  650. AUTOLOAD:=$(call AutoLoad,18,pps-gpio,1)
  651. endef
  652. define KernelPackage/pps-gpio/description
  653. Support for a PPS source using GPIO. To be useful you must
  654. also register a platform device specifying the GPIO pin and
  655. other options, usually in your board setup.
  656. endef
  657. $(eval $(call KernelPackage,pps-gpio))
  658. define KernelPackage/ptp
  659. SUBMENU:=$(OTHER_MENU)
  660. TITLE:=PTP clock support
  661. DEPENDS:=+kmod-pps
  662. KCONFIG:=CONFIG_PTP_1588_CLOCK
  663. FILES:=$(LINUX_DIR)/drivers/ptp/ptp.ko
  664. AUTOLOAD:=$(call AutoLoad,18,ptp,1)
  665. endef
  666. define KernelPackage/ptp/description
  667. The IEEE 1588 standard defines a method to precisely
  668. synchronize distributed clocks over Ethernet networks.
  669. endef
  670. $(eval $(call KernelPackage,ptp))
  671. define KernelPackage/ptp-gianfar
  672. SUBMENU:=$(OTHER_MENU)
  673. TITLE:=Freescale Gianfar PTP support
  674. DEPENDS:=@TARGET_mpc85xx +kmod-gianfar +kmod-ptp
  675. KCONFIG:=CONFIG_PTP_1588_CLOCK_GIANFAR
  676. FILES:=$(LINUX_DIR)/drivers/net/ethernet/freescale/gianfar_ptp.ko
  677. AUTOLOAD:=$(call AutoProbe,gianfar_ptp)
  678. endef
  679. define KernelPackage/ptp-gianfar/description
  680. Kernel module for IEEE 1588 support for Freescale
  681. Gianfar Ethernet drivers
  682. endef
  683. $(eval $(call KernelPackage,ptp-gianfar))
  684. define KernelPackage/random-core
  685. SUBMENU:=$(OTHER_MENU)
  686. TITLE:=Hardware Random Number Generator Core support
  687. KCONFIG:=CONFIG_HW_RANDOM
  688. FILES:=$(LINUX_DIR)/drivers/char/hw_random/rng-core.ko
  689. endef
  690. define KernelPackage/random-core/description
  691. Kernel module for the HW random number generator core infrastructure
  692. endef
  693. $(eval $(call KernelPackage,random-core))
  694. define KernelPackage/thermal
  695. SUBMENU:=$(OTHER_MENU)
  696. TITLE:=Generic Thermal sysfs driver
  697. DEPENDS:=+kmod-hwmon-core
  698. HIDDEN:=1
  699. KCONFIG:= \
  700. CONFIG_THERMAL \
  701. CONFIG_THERMAL_OF=y \
  702. CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y \
  703. CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE=n \
  704. CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE=n \
  705. CONFIG_THERMAL_GOV_FAIR_SHARE=n \
  706. CONFIG_THERMAL_GOV_STEP_WISE=y \
  707. CONFIG_THERMAL_GOV_USER_SPACE=n \
  708. CONFIG_THERMAL_HWMON=y \
  709. CONFIG_THERMAL_EMULATION=n
  710. FILES:=$(LINUX_DIR)/drivers/thermal/thermal_sys.ko
  711. AUTOLOAD:=$(call AutoProbe,thermal_sys)
  712. endef
  713. define KernelPackage/thermal/description
  714. Generic Thermal Sysfs driver offers a generic mechanism for thermal
  715. management. Usually it's made up of one or more thermal zone and cooling
  716. device.
  717. endef
  718. $(eval $(call KernelPackage,thermal))
  719. define KernelPackage/thermal-armada
  720. SUBMENU:=$(OTHER_MENU)
  721. TITLE:=Armada 370/XP thermal management
  722. DEPENDS:=@TARGET_mvebu +kmod-thermal
  723. KCONFIG:=CONFIG_ARMADA_THERMAL
  724. FILES:=$(LINUX_DIR)/drivers/thermal/armada_thermal.ko
  725. AUTOLOAD:=$(call AutoProbe,armada_thermal)
  726. endef
  727. define KernelPackage/thermal-armada/description
  728. Enable this module if you want to have support for thermal management
  729. controller present in Armada 370 and Armada XP SoC.
  730. endef
  731. $(eval $(call KernelPackage,thermal-armada))
  732. define KernelPackage/thermal-imx
  733. SUBMENU:=$(OTHER_MENU)
  734. TITLE:=Temperature sensor driver for Freescale i.MX SoCs
  735. DEPENDS:=@TARGET_imx6 +kmod-thermal
  736. KCONFIG:= \
  737. CONFIG_CPU_THERMAL=y \
  738. CONFIG_IMX_THERMAL
  739. FILES:=$(LINUX_DIR)/drivers/thermal/imx_thermal.ko
  740. AUTOLOAD:=$(call AutoProbe,imx_thermal)
  741. endef
  742. define KernelPackage/thermal-imx/description
  743. Support for Temperature Monitor (TEMPMON) found on Freescale i.MX SoCs.
  744. It supports one critical trip point and one passive trip point. The
  745. cpufreq is used as the cooling device to throttle CPUs when the
  746. passive trip is crossed.
  747. endef
  748. $(eval $(call KernelPackage,thermal-imx))
  749. define KernelPackage/thermal-kirkwood
  750. SUBMENU:=$(OTHER_MENU)
  751. TITLE:=Temperature sensor on Marvell Kirkwood SoCs
  752. DEPENDS:=@TARGET_kirkwood +kmod-thermal
  753. KCONFIG:=CONFIG_KIRKWOOD_THERMAL
  754. FILES:=$(LINUX_DIR)/drivers/thermal/kirkwood_thermal.ko
  755. AUTOLOAD:=$(call AutoProbe,kirkwood_thermal)
  756. endef
  757. define KernelPackage/thermal-kirkwood/description
  758. Support for the Kirkwood thermal sensor driver into the Linux thermal
  759. framework. Only kirkwood 88F6282 and 88F6283 have this sensor.
  760. endef
  761. $(eval $(call KernelPackage,thermal-kirkwood))
  762. define KernelPackage/gpio-beeper
  763. SUBMENU:=$(OTHER_MENU)
  764. TITLE:=GPIO beeper support
  765. DEPENDS:=+kmod-input-core
  766. KCONFIG:= \
  767. CONFIG_INPUT_MISC=y \
  768. CONFIG_INPUT_GPIO_BEEPER
  769. FILES:= \
  770. $(LINUX_DIR)/drivers/input/misc/gpio-beeper.ko
  771. AUTOLOAD:=$(call AutoLoad,50,gpio-beeper)
  772. endef
  773. define KernelPackage/gpio-beeper/description
  774. This enables playing beeps through an GPIO-connected buzzer
  775. endef
  776. $(eval $(call KernelPackage,gpio-beeper))
  777. define KernelPackage/echo
  778. SUBMENU:=$(OTHER_MENU)
  779. TITLE:=Line Echo Canceller
  780. KCONFIG:=CONFIG_ECHO
  781. FILES:=$(LINUX_DIR)/drivers/misc/echo/echo.ko
  782. AUTOLOAD:=$(call AutoLoad,50,echo)
  783. endef
  784. define KernelPackage/echo/description
  785. This driver provides line echo cancelling support for mISDN and
  786. DAHDI drivers
  787. endef
  788. $(eval $(call KernelPackage,echo))