2
0

other.mk 24 KB

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