other.mk 24 KB

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