other.mk 32 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262
  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 +kmod-crypto-cmac +kmod-regmap-core +kmod-crypto-ecdh
  26. KCONFIG:= \
  27. CONFIG_BT \
  28. CONFIG_BT_BREDR=y \
  29. CONFIG_BT_DEBUGFS=n \
  30. CONFIG_BT_LE=y \
  31. CONFIG_BT_RFCOMM \
  32. CONFIG_BT_BNEP \
  33. CONFIG_BT_HCIBTUSB \
  34. CONFIG_BT_HCIBTUSB_BCM=n \
  35. CONFIG_BT_HCIUART \
  36. CONFIG_BT_HCIUART_BCM=n \
  37. CONFIG_BT_HCIUART_INTEL=n \
  38. CONFIG_BT_HCIUART_H4 \
  39. CONFIG_BT_HCIUART_NOKIA=n \
  40. CONFIG_BT_HIDP
  41. $(call AddDepends/rfkill)
  42. FILES:= \
  43. $(LINUX_DIR)/net/bluetooth/bluetooth.ko \
  44. $(LINUX_DIR)/net/bluetooth/rfcomm/rfcomm.ko \
  45. $(LINUX_DIR)/net/bluetooth/bnep/bnep.ko \
  46. $(LINUX_DIR)/net/bluetooth/hidp/hidp.ko \
  47. $(LINUX_DIR)/drivers/bluetooth/hci_uart.ko \
  48. $(LINUX_DIR)/drivers/bluetooth/btusb.ko \
  49. $(LINUX_DIR)/drivers/bluetooth/btintel.ko
  50. AUTOLOAD:=$(call AutoProbe,bluetooth rfcomm bnep hidp hci_uart btusb)
  51. endef
  52. define KernelPackage/bluetooth/description
  53. Kernel support for Bluetooth devices
  54. endef
  55. $(eval $(call KernelPackage,bluetooth))
  56. define KernelPackage/ath3k
  57. SUBMENU:=$(OTHER_MENU)
  58. TITLE:=ATH3K Kernel Module support
  59. DEPENDS:=+kmod-bluetooth +ar3k-firmware
  60. KCONFIG:= \
  61. CONFIG_BT_ATH3K \
  62. CONFIG_BT_HCIUART_ATH3K=y
  63. $(call AddDepends/bluetooth)
  64. FILES:= \
  65. $(LINUX_DIR)/drivers/bluetooth/ath3k.ko
  66. AUTOLOAD:=$(call AutoProbe,ath3k)
  67. endef
  68. define KernelPackage/ath3k/description
  69. Kernel support for ATH3K Module
  70. endef
  71. $(eval $(call KernelPackage,ath3k))
  72. define KernelPackage/bluetooth-6lowpan
  73. SUBMENU:=$(OTHER_MENU)
  74. TITLE:=Bluetooth 6LoWPAN support
  75. DEPENDS:=+kmod-6lowpan +kmod-bluetooth
  76. KCONFIG:=CONFIG_BT_6LOWPAN
  77. FILES:=$(LINUX_DIR)/net/bluetooth/bluetooth_6lowpan.ko
  78. AUTOLOAD:=$(call AutoProbe,bluetooth_6lowpan)
  79. endef
  80. define KernelPackage/bluetooth-6lowpan/description
  81. Kernel support for 6LoWPAN over Bluetooth Low Energy devices
  82. endef
  83. $(eval $(call KernelPackage,bluetooth-6lowpan))
  84. define KernelPackage/btmrvl
  85. SUBMENU:=$(OTHER_MENU)
  86. TITLE:=Marvell Bluetooth Kernel Module support
  87. DEPENDS:=+kmod-mmc +kmod-bluetooth +mwifiex-sdio-firmware
  88. KCONFIG:= \
  89. CONFIG_BT_MRVL \
  90. CONFIG_BT_MRVL_SDIO
  91. $(call AddDepends/bluetooth)
  92. FILES:= \
  93. $(LINUX_DIR)/drivers/bluetooth/btmrvl.ko \
  94. $(LINUX_DIR)/drivers/bluetooth/btmrvl_sdio.ko
  95. AUTOLOAD:=$(call AutoProbe,btmrvl btmrvl_sdio)
  96. endef
  97. define KernelPackage/btmrvl/description
  98. Kernel support for Marvell SDIO Bluetooth Module
  99. endef
  100. $(eval $(call KernelPackage,btmrvl))
  101. define KernelPackage/dma-buf
  102. SUBMENU:=$(OTHER_MENU)
  103. TITLE:=DMA shared buffer support
  104. HIDDEN:=1
  105. KCONFIG:=CONFIG_DMA_SHARED_BUFFER
  106. ifeq ($(strip $(CONFIG_EXTERNAL_KERNEL_TREE)),"")
  107. ifeq ($(strip $(CONFIG_KERNEL_GIT_CLONE_URI)),"")
  108. FILES:=$(LINUX_DIR)/drivers/dma-buf/dma-shared-buffer.ko
  109. endif
  110. endif
  111. AUTOLOAD:=$(call AutoLoad,20,dma-shared-buffer)
  112. endef
  113. $(eval $(call KernelPackage,dma-buf))
  114. define KernelPackage/nvmem
  115. SUBMENU:=$(OTHER_MENU)
  116. TITLE:=Non Volatile Memory support
  117. DEPENDS:=@!LINUX_5_4
  118. KCONFIG:=CONFIG_NVMEM
  119. HIDDEN:=1
  120. FILES:=$(LINUX_DIR)/drivers/nvmem/nvmem_core.ko
  121. endef
  122. define KernelPackage/nvmem/description
  123. Support for NVMEM(Non Volatile Memory) devices like EEPROM, EFUSES, etc.
  124. endef
  125. $(eval $(call KernelPackage,nvmem))
  126. define KernelPackage/eeprom-93cx6
  127. SUBMENU:=$(OTHER_MENU)
  128. TITLE:=EEPROM 93CX6 support
  129. KCONFIG:=CONFIG_EEPROM_93CX6
  130. FILES:=$(LINUX_DIR)/drivers/misc/eeprom/eeprom_93cx6.ko
  131. AUTOLOAD:=$(call AutoLoad,20,eeprom_93cx6)
  132. endef
  133. define KernelPackage/eeprom-93cx6/description
  134. Kernel module for EEPROM 93CX6 support
  135. endef
  136. $(eval $(call KernelPackage,eeprom-93cx6))
  137. define KernelPackage/eeprom-at24
  138. SUBMENU:=$(OTHER_MENU)
  139. TITLE:=EEPROM AT24 support
  140. KCONFIG:=CONFIG_EEPROM_AT24
  141. DEPENDS:=+kmod-i2c-core +!LINUX_5_4:kmod-nvmem +!LINUX_4_14:kmod-regmap-i2c
  142. FILES:=$(LINUX_DIR)/drivers/misc/eeprom/at24.ko
  143. AUTOLOAD:=$(call AutoProbe,at24)
  144. endef
  145. define KernelPackage/eeprom-at24/description
  146. Kernel module for most I2C EEPROMs
  147. endef
  148. $(eval $(call KernelPackage,eeprom-at24))
  149. define KernelPackage/eeprom-at25
  150. SUBMENU:=$(OTHER_MENU)
  151. TITLE:=EEPROM AT25 support
  152. KCONFIG:=CONFIG_EEPROM_AT25
  153. DEPENDS:=+!LINUX_5_4:kmod-nvmem
  154. FILES:=$(LINUX_DIR)/drivers/misc/eeprom/at25.ko
  155. AUTOLOAD:=$(call AutoProbe,at25)
  156. endef
  157. define KernelPackage/eeprom-at25/description
  158. Kernel module for most SPI EEPROMs
  159. endef
  160. $(eval $(call KernelPackage,eeprom-at25))
  161. define KernelPackage/gpio-dev
  162. SUBMENU:=$(OTHER_MENU)
  163. TITLE:=Generic GPIO char device support
  164. DEPENDS:=@GPIO_SUPPORT
  165. KCONFIG:=CONFIG_GPIO_DEVICE
  166. FILES:=$(LINUX_DIR)/drivers/char/gpio_dev.ko
  167. AUTOLOAD:=$(call AutoLoad,40,gpio_dev)
  168. endef
  169. define KernelPackage/gpio-dev/description
  170. Kernel module to allows control of GPIO pins using a character device.
  171. endef
  172. $(eval $(call KernelPackage,gpio-dev))
  173. define KernelPackage/gpio-f7188x
  174. SUBMENU:=$(OTHER_MENU)
  175. TITLE:=Fintek F718xx/F818xx GPIO Support
  176. DEPENDS:=@GPIO_SUPPORT @TARGET_x86
  177. KCONFIG:=CONFIG_GPIO_F7188X
  178. FILES:=$(LINUX_DIR)/drivers/gpio/gpio-f7188x.ko
  179. AUTOLOAD:=$(call AutoProbe,gpio-f7188x)
  180. endef
  181. define KernelPackage/gpio-f7188x/description
  182. Kernel module for the GPIOs found on many Fintek Super-IO chips.
  183. endef
  184. $(eval $(call KernelPackage,gpio-f7188x))
  185. define KernelPackage/gpio-mcp23s08
  186. SUBMENU:=$(OTHER_MENU)
  187. TITLE:=Microchip MCP23xxx I/O expander
  188. DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core +kmod-regmap-i2c
  189. KCONFIG:= \
  190. CONFIG_GPIO_MCP23S08 \
  191. CONFIG_PINCTRL_MCP23S08
  192. FILES:= \
  193. $(LINUX_DIR)/drivers/pinctrl/pinctrl-mcp23s08.ko
  194. AUTOLOAD:=$(call AutoLoad,40,pinctrl-mcp23s08)
  195. endef
  196. define KernelPackage/gpio-mcp23s08/description
  197. Kernel module for Microchip MCP23xxx SPI/I2C I/O expander
  198. endef
  199. $(eval $(call KernelPackage,gpio-mcp23s08))
  200. define KernelPackage/gpio-nxp-74hc164
  201. SUBMENU:=$(OTHER_MENU)
  202. TITLE:=NXP 74HC164 GPIO expander support
  203. KCONFIG:=CONFIG_GPIO_74X164
  204. FILES:=$(LINUX_DIR)/drivers/gpio/gpio-74x164.ko
  205. AUTOLOAD:=$(call AutoProbe,gpio-74x164)
  206. endef
  207. define KernelPackage/gpio-nxp-74hc164/description
  208. Kernel module for NXP 74HC164 GPIO expander
  209. endef
  210. $(eval $(call KernelPackage,gpio-nxp-74hc164))
  211. define KernelPackage/gpio-pca953x
  212. SUBMENU:=$(OTHER_MENU)
  213. DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core +LINUX_5_4:kmod-regmap-i2c
  214. TITLE:=PCA95xx, TCA64xx, and MAX7310 I/O ports
  215. KCONFIG:=CONFIG_GPIO_PCA953X
  216. FILES:=$(LINUX_DIR)/drivers/gpio/gpio-pca953x.ko
  217. AUTOLOAD:=$(call AutoLoad,55,gpio-pca953x)
  218. endef
  219. define KernelPackage/gpio-pca953x/description
  220. Kernel module for MAX731{0,2,3,5}, PCA6107, PCA953{4-9}, PCA955{4-7},
  221. PCA957{4,5} and TCA64{08,16} I2C GPIO expanders
  222. endef
  223. $(eval $(call KernelPackage,gpio-pca953x))
  224. define KernelPackage/gpio-pcf857x
  225. SUBMENU:=$(OTHER_MENU)
  226. DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core
  227. TITLE:=PCX857x, PCA967x and MAX732X I2C GPIO expanders
  228. KCONFIG:=CONFIG_GPIO_PCF857X
  229. FILES:=$(LINUX_DIR)/drivers/gpio/gpio-pcf857x.ko
  230. AUTOLOAD:=$(call AutoLoad,55,gpio-pcf857x)
  231. endef
  232. define KernelPackage/gpio-pcf857x/description
  233. Kernel module for PCF857x, PCA{85,96}7x, and MAX732[89] I2C GPIO expanders
  234. endef
  235. $(eval $(call KernelPackage,gpio-pcf857x))
  236. define KernelPackage/ppdev
  237. SUBMENU:=$(OTHER_MENU)
  238. TITLE:=Parallel port support
  239. KCONFIG:= \
  240. CONFIG_PARPORT \
  241. CONFIG_PPDEV
  242. FILES:= \
  243. $(LINUX_DIR)/drivers/parport/parport.ko \
  244. $(LINUX_DIR)/drivers/char/ppdev.ko
  245. AUTOLOAD:=$(call AutoLoad,50,parport ppdev)
  246. endef
  247. $(eval $(call KernelPackage,ppdev))
  248. define KernelPackage/parport-pc
  249. SUBMENU:=$(OTHER_MENU)
  250. TITLE:=Parallel port interface (PC-style) support
  251. DEPENDS:=+kmod-ppdev
  252. KCONFIG:= \
  253. CONFIG_KS0108=n \
  254. CONFIG_PARPORT_PC \
  255. CONFIG_PARPORT_1284=y \
  256. CONFIG_PARPORT_PC_FIFO=y \
  257. CONFIG_PARPORT_PC_PCMCIA=n \
  258. CONFIG_PARPORT_PC_SUPERIO=y \
  259. CONFIG_PARPORT_SERIAL=n \
  260. CONFIG_PARIDE=n \
  261. CONFIG_SCSI_IMM=n \
  262. CONFIG_SCSI_PPA=n
  263. FILES:= \
  264. $(LINUX_DIR)/drivers/parport/parport_pc.ko
  265. AUTOLOAD:=$(call AutoLoad,51,parport_pc)
  266. endef
  267. $(eval $(call KernelPackage,parport-pc))
  268. define KernelPackage/lp
  269. SUBMENU:=$(OTHER_MENU)
  270. TITLE:=Parallel port line printer device support
  271. DEPENDS:=+kmod-ppdev
  272. KCONFIG:= \
  273. CONFIG_PRINTER
  274. FILES:= \
  275. $(LINUX_DIR)/drivers/char/lp.ko
  276. AUTOLOAD:=$(call AutoLoad,52,lp)
  277. endef
  278. $(eval $(call KernelPackage,lp))
  279. define KernelPackage/mmc
  280. SUBMENU:=$(OTHER_MENU)
  281. TITLE:=MMC/SD Card Support
  282. DEPENDS:=@!TARGET_uml
  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/core/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. CONFIG_SOFT_WATCHDOG_PRETIMEOUT=n
  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_bcm47xx @!TARGET_bcm63xx
  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_bcm47xx @!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. DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
  395. DEPENDS:=+kmod-i2c-core +kmod-regmap-i2c +kmod-hwmon-core
  396. KCONFIG:=CONFIG_RTC_DRV_DS1307 \
  397. CONFIG_RTC_CLASS=y
  398. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1307.ko
  399. AUTOLOAD:=$(call AutoProbe,rtc-ds1307)
  400. endef
  401. define KernelPackage/rtc-ds1307/description
  402. Kernel module for Dallas/Maxim DS1307/DS1337/DS1338/DS1340/DS1388/DS3231,
  403. Epson RX-8025 and various other compatible RTC chips connected via I2C.
  404. endef
  405. $(eval $(call KernelPackage,rtc-ds1307))
  406. define KernelPackage/rtc-ds1374
  407. SUBMENU:=$(OTHER_MENU)
  408. TITLE:=Dallas/Maxim DS1374 RTC support
  409. DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
  410. DEPENDS:=+kmod-i2c-core
  411. KCONFIG:=CONFIG_RTC_DRV_DS1374 \
  412. CONFIG_RTC_DRV_DS1374_WDT=n \
  413. CONFIG_RTC_CLASS=y
  414. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1374.ko
  415. AUTOLOAD:=$(call AutoProbe,rtc-ds1374)
  416. endef
  417. define KernelPackage/rtc-ds1374/description
  418. Kernel module for Dallas/Maxim DS1374.
  419. endef
  420. $(eval $(call KernelPackage,rtc-ds1374))
  421. define KernelPackage/rtc-ds1672
  422. SUBMENU:=$(OTHER_MENU)
  423. TITLE:=Dallas/Maxim DS1672 RTC support
  424. DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
  425. DEPENDS:=+kmod-i2c-core
  426. KCONFIG:=CONFIG_RTC_DRV_DS1672 \
  427. CONFIG_RTC_CLASS=y
  428. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1672.ko
  429. AUTOLOAD:=$(call AutoProbe,rtc-ds1672)
  430. endef
  431. define KernelPackage/rtc-ds1672/description
  432. Kernel module for Dallas/Maxim DS1672 RTC.
  433. endef
  434. $(eval $(call KernelPackage,rtc-ds1672))
  435. define KernelPackage/rtc-em3027
  436. SUBMENU:=$(OTHER_MENU)
  437. TITLE:=Microelectronic EM3027 RTC support
  438. DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
  439. DEPENDS:=+kmod-i2c-core
  440. KCONFIG:=CONFIG_RTC_DRV_EM3027 \
  441. CONFIG_RTC_CLASS=y
  442. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-em3027.ko
  443. AUTOLOAD:=$(call AutoProbe,rtc-em3027)
  444. endef
  445. define KernelPackage/rtc-em3027/description
  446. Kernel module for Microelectronic EM3027 RTC.
  447. endef
  448. $(eval $(call KernelPackage,rtc-em3027))
  449. define KernelPackage/rtc-isl1208
  450. SUBMENU:=$(OTHER_MENU)
  451. TITLE:=Intersil ISL1208 RTC support
  452. DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
  453. DEPENDS:=+kmod-i2c-core
  454. KCONFIG:=CONFIG_RTC_DRV_ISL1208 \
  455. CONFIG_RTC_CLASS=y
  456. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-isl1208.ko
  457. AUTOLOAD:=$(call AutoProbe,rtc-isl1208)
  458. endef
  459. define KernelPackage/rtc-isl1208/description
  460. Kernel module for Intersil ISL1208 RTC.
  461. endef
  462. $(eval $(call KernelPackage,rtc-isl1208))
  463. define KernelPackage/rtc-pcf8563
  464. SUBMENU:=$(OTHER_MENU)
  465. TITLE:=Philips PCF8563/Epson RTC8564 RTC support
  466. DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
  467. DEPENDS:=+kmod-i2c-core
  468. KCONFIG:=CONFIG_RTC_DRV_PCF8563 \
  469. CONFIG_RTC_CLASS=y
  470. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf8563.ko
  471. AUTOLOAD:=$(call AutoProbe,rtc-pcf8563)
  472. endef
  473. define KernelPackage/rtc-pcf8563/description
  474. Kernel module for Philips PCF8563 RTC chip.
  475. The Epson RTC8564 should work as well.
  476. endef
  477. $(eval $(call KernelPackage,rtc-pcf8563))
  478. define KernelPackage/rtc-pcf2123
  479. SUBMENU:=$(OTHER_MENU)
  480. TITLE:=Philips PCF2123 RTC support
  481. DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
  482. DEPENDS:=+LINUX_5_4:kmod-regmap-spi
  483. KCONFIG:=CONFIG_RTC_DRV_PCF2123 \
  484. CONFIG_RTC_CLASS=y
  485. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf2123.ko
  486. AUTOLOAD:=$(call AutoProbe,rtc-pcf2123)
  487. endef
  488. define KernelPackage/rtc-pcf2123/description
  489. Kernel module for Philips PCF2123 RTC chip
  490. endef
  491. $(eval $(call KernelPackage,rtc-pcf2123))
  492. define KernelPackage/rtc-pcf2127
  493. SUBMENU:=$(OTHER_MENU)
  494. TITLE:=NXP PCF2127 and PCF2129 RTC support
  495. DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
  496. DEPENDS:=+kmod-i2c-core +kmod-regmap-spi
  497. KCONFIG:=CONFIG_RTC_DRV_PCF2127 \
  498. CONFIG_RTC_CLASS=y
  499. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf2127.ko
  500. AUTOLOAD:=$(call AutoProbe,rtc-pcf2127)
  501. endef
  502. define KernelPackage/rtc-pcf2127/description
  503. Kernel module for NXP PCF2127 and PCF2129 RTC chip
  504. endef
  505. $(eval $(call KernelPackage,rtc-pcf2127))
  506. define KernelPackage/rtc-pt7c4338
  507. SUBMENU:=$(OTHER_MENU)
  508. TITLE:=Pericom PT7C4338 RTC support
  509. DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
  510. DEPENDS:=+kmod-i2c-core
  511. KCONFIG:=CONFIG_RTC_DRV_PT7C4338 \
  512. CONFIG_RTC_CLASS=y
  513. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pt7c4338.ko
  514. AUTOLOAD:=$(call AutoProbe,rtc-pt7c4338)
  515. endef
  516. define KernelPackage/rtc-pt7c4338/description
  517. Kernel module for Pericom PT7C4338 i2c RTC chip
  518. endef
  519. $(eval $(call KernelPackage,rtc-pt7c4338))
  520. define KernelPackage/rtc-rs5c372a
  521. SUBMENU:=$(OTHER_MENU)
  522. TITLE:=Ricoh R2025S/D, RS5C372A/B, RV5C386, RV5C387A
  523. DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
  524. DEPENDS:=+kmod-i2c-core
  525. KCONFIG:=CONFIG_RTC_DRV_RS5C372 \
  526. CONFIG_RTC_CLASS=y
  527. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-rs5c372.ko
  528. AUTOLOAD:=$(call AutoLoad,50,rtc-rs5c372,1)
  529. endef
  530. define KernelPackage/rtc-rs5c372a/description
  531. Kernel module for Ricoh R2025S/D, RS5C372A/B, RV5C386, RV5C387A RTC on chip module
  532. endef
  533. $(eval $(call KernelPackage,rtc-rs5c372a))
  534. define KernelPackage/rtc-rx8025
  535. SUBMENU:=$(OTHER_MENU)
  536. TITLE:=Epson RX-8025 / RX-8035
  537. DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
  538. DEPENDS:=+kmod-i2c-core
  539. KCONFIG:=CONFIG_RTC_DRV_RX8025 \
  540. CONFIG_RTC_CLASS=y
  541. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-rx8025.ko
  542. AUTOLOAD:=$(call AutoLoad,50,rtc-rx8025,1)
  543. endef
  544. define KernelPackage/rtc-rx8025/description
  545. Kernel module for Epson RX-8025 and RX-8035 I2C RTC chip
  546. endef
  547. $(eval $(call KernelPackage,rtc-rx8025))
  548. define KernelPackage/mtdtests
  549. SUBMENU:=$(OTHER_MENU)
  550. TITLE:=MTD subsystem tests
  551. KCONFIG:=CONFIG_MTD_TESTS
  552. FILES:=\
  553. $(LINUX_DIR)/drivers/mtd/tests/mtd_nandecctest.ko \
  554. $(LINUX_DIR)/drivers/mtd/tests/mtd_oobtest.ko \
  555. $(LINUX_DIR)/drivers/mtd/tests/mtd_pagetest.ko \
  556. $(LINUX_DIR)/drivers/mtd/tests/mtd_readtest.ko \
  557. $(LINUX_DIR)/drivers/mtd/tests/mtd_speedtest.ko \
  558. $(LINUX_DIR)/drivers/mtd/tests/mtd_stresstest.ko \
  559. $(LINUX_DIR)/drivers/mtd/tests/mtd_subpagetest.ko \
  560. $(LINUX_DIR)/drivers/mtd/tests/mtd_torturetest.ko
  561. endef
  562. define KernelPackage/mtdtests/description
  563. Kernel modules for MTD subsystem/driver testing
  564. endef
  565. $(eval $(call KernelPackage,mtdtests))
  566. define KernelPackage/mtdoops
  567. SUBMENU:=$(OTHER_MENU)
  568. TITLE:=Log panic/oops to an MTD buffer
  569. KCONFIG:=CONFIG_MTD_OOPS
  570. FILES:=$(LINUX_DIR)/drivers/mtd/mtdoops.ko
  571. endef
  572. define KernelPackage/mtdoops/description
  573. Kernel modules for Log panic/oops to an MTD buffer
  574. endef
  575. $(eval $(call KernelPackage,mtdoops))
  576. define KernelPackage/mtdram
  577. SUBMENU:=$(OTHER_MENU)
  578. TITLE:=Test MTD driver using RAM
  579. KCONFIG:=CONFIG_MTD_MTDRAM \
  580. CONFIG_MTDRAM_TOTAL_SIZE=4096 \
  581. CONFIG_MTDRAM_ERASE_SIZE=128
  582. FILES:=$(LINUX_DIR)/drivers/mtd/devices/mtdram.ko
  583. endef
  584. define KernelPackage/mtdram/description
  585. Test MTD driver using RAM
  586. endef
  587. $(eval $(call KernelPackage,mtdram))
  588. define KernelPackage/serial-8250
  589. SUBMENU:=$(OTHER_MENU)
  590. TITLE:=8250 UARTs
  591. KCONFIG:= CONFIG_SERIAL_8250 \
  592. CONFIG_SERIAL_8250_PCI \
  593. CONFIG_SERIAL_8250_NR_UARTS=16 \
  594. CONFIG_SERIAL_8250_RUNTIME_UARTS=16 \
  595. CONFIG_SERIAL_8250_EXTENDED=y \
  596. CONFIG_SERIAL_8250_MANY_PORTS=y \
  597. CONFIG_SERIAL_8250_SHARE_IRQ=y \
  598. CONFIG_SERIAL_8250_DETECT_IRQ=n \
  599. CONFIG_SERIAL_8250_RSA=n
  600. FILES:= \
  601. $(LINUX_DIR)/drivers/tty/serial/8250/8250.ko \
  602. $(LINUX_DIR)/drivers/tty/serial/8250/8250_base.ko \
  603. $(if $(CONFIG_PCI),$(LINUX_DIR)/drivers/tty/serial/8250/8250_pci.ko) \
  604. $(if $(CONFIG_GPIOLIB),$(LINUX_DIR)/drivers/tty/serial/[email protected])
  605. AUTOLOAD:=$(call AutoProbe,8250 8250_base 8250_pci)
  606. endef
  607. define KernelPackage/serial-8250/description
  608. Kernel module for 8250 UART based serial ports
  609. endef
  610. $(eval $(call KernelPackage,serial-8250))
  611. define KernelPackage/serial-8250-exar
  612. SUBMENU:=$(OTHER_MENU)
  613. TITLE:=Exar 8250 UARTs
  614. KCONFIG:= CONFIG_SERIAL_8250_EXAR
  615. FILES:=$(LINUX_DIR)/drivers/tty/serial/8250/8250_exar.ko
  616. AUTOLOAD:=$(call AutoProbe,8250 8250_base 8250_exar)
  617. DEPENDS:=+kmod-serial-8250
  618. endef
  619. define KernelPackage/serial-8250-exar/description
  620. Kernel module for Exar serial ports
  621. endef
  622. $(eval $(call KernelPackage,serial-8250-exar))
  623. define KernelPackage/regmap-core
  624. SUBMENU:=$(OTHER_MENU)
  625. TITLE:=Generic register map support
  626. HIDDEN:=1
  627. KCONFIG:=CONFIG_REGMAP
  628. ifneq ($(wildcard $(LINUX_DIR)/drivers/base/regmap/regmap-core.ko),)
  629. FILES:=$(LINUX_DIR)/drivers/base/regmap/regmap-core.ko
  630. endif
  631. endef
  632. define KernelPackage/regmap-core/description
  633. Generic register map support
  634. endef
  635. $(eval $(call KernelPackage,regmap-core))
  636. define KernelPackage/regmap-spi
  637. SUBMENU:=$(OTHER_MENU)
  638. TITLE:=SPI register map support
  639. DEPENDS:=+kmod-regmap-core
  640. HIDDEN:=1
  641. KCONFIG:=CONFIG_REGMAP_SPI \
  642. CONFIG_SPI=y
  643. FILES:=$(LINUX_DIR)/drivers/base/regmap/regmap-spi.ko
  644. endef
  645. define KernelPackage/regmap-spi/description
  646. SPI register map support
  647. endef
  648. $(eval $(call KernelPackage,regmap-spi))
  649. define KernelPackage/regmap-i2c
  650. SUBMENU:=$(OTHER_MENU)
  651. TITLE:=I2C register map support
  652. DEPENDS:=+kmod-regmap-core +kmod-i2c-core
  653. HIDDEN:=1
  654. KCONFIG:=CONFIG_REGMAP_I2C
  655. FILES:=$(LINUX_DIR)/drivers/base/regmap/regmap-i2c.ko
  656. endef
  657. define KernelPackage/regmap-i2c/description
  658. I2C register map support
  659. endef
  660. $(eval $(call KernelPackage,regmap-i2c))
  661. define KernelPackage/regmap-mmio
  662. SUBMENU:=$(OTHER_MENU)
  663. TITLE:=MMIO register map support
  664. DEPENDS:=+kmod-regmap-core
  665. HIDDEN:=1
  666. KCONFIG:=CONFIG_REGMAP_MMIO
  667. FILES:=$(LINUX_DIR)/drivers/base/regmap/regmap-mmio.ko
  668. endef
  669. define KernelPackage/regmap-mmio/description
  670. MMIO register map support
  671. endef
  672. $(eval $(call KernelPackage,regmap-mmio))
  673. define KernelPackage/ikconfig
  674. SUBMENU:=$(OTHER_MENU)
  675. TITLE:=Kernel configuration via /proc/config.gz
  676. KCONFIG:=CONFIG_IKCONFIG \
  677. CONFIG_IKCONFIG_PROC=y
  678. FILES:=$(LINUX_DIR)/kernel/configs.ko
  679. AUTOLOAD:=$(call AutoLoad,70,configs)
  680. endef
  681. define KernelPackage/ikconfig/description
  682. Kernel configuration via /proc/config.gz
  683. endef
  684. $(eval $(call KernelPackage,ikconfig))
  685. define KernelPackage/zram
  686. SUBMENU:=$(OTHER_MENU)
  687. TITLE:=ZRAM
  688. DEPENDS:=+kmod-lib-lzo +kmod-lib-lz4
  689. KCONFIG:= \
  690. CONFIG_ZSMALLOC \
  691. CONFIG_ZRAM \
  692. CONFIG_ZRAM_DEBUG=n \
  693. CONFIG_PGTABLE_MAPPING=n \
  694. CONFIG_ZRAM_WRITEBACK=n \
  695. CONFIG_ZSMALLOC_STAT=n \
  696. CONFIG_ZRAM_LZ4_COMPRESS=y
  697. FILES:= \
  698. $(LINUX_DIR)/mm/zsmalloc.ko \
  699. $(LINUX_DIR)/drivers/block/zram/zram.ko
  700. AUTOLOAD:=$(call AutoLoad,20,zsmalloc zram)
  701. endef
  702. define KernelPackage/zram/description
  703. Compressed RAM block device support
  704. endef
  705. $(eval $(call KernelPackage,zram))
  706. define KernelPackage/pps
  707. SUBMENU:=$(OTHER_MENU)
  708. TITLE:=PPS support
  709. KCONFIG:=CONFIG_PPS
  710. FILES:=$(LINUX_DIR)/drivers/pps/pps_core.ko
  711. AUTOLOAD:=$(call AutoLoad,17,pps_core,1)
  712. endef
  713. define KernelPackage/pps/description
  714. PPS (Pulse Per Second) is a special pulse provided by some GPS
  715. antennae. Userland can use it to get a high-precision time
  716. reference.
  717. endef
  718. $(eval $(call KernelPackage,pps))
  719. define KernelPackage/pps-gpio
  720. SUBMENU:=$(OTHER_MENU)
  721. TITLE:=PPS client using GPIO
  722. DEPENDS:=+kmod-pps
  723. KCONFIG:=CONFIG_PPS_CLIENT_GPIO
  724. FILES:=$(LINUX_DIR)/drivers/pps/clients/pps-gpio.ko
  725. AUTOLOAD:=$(call AutoLoad,18,pps-gpio,1)
  726. endef
  727. define KernelPackage/pps-gpio/description
  728. Support for a PPS source using GPIO. To be useful you must
  729. also register a platform device specifying the GPIO pin and
  730. other options, usually in your board setup.
  731. endef
  732. $(eval $(call KernelPackage,pps-gpio))
  733. define KernelPackage/pps-ldisc
  734. SUBMENU:=$(OTHER_MENU)
  735. TITLE:=PPS line discipline
  736. DEPENDS:=+kmod-pps
  737. KCONFIG:=CONFIG_PPS_CLIENT_LDISC
  738. FILES:=$(LINUX_DIR)/drivers/pps/clients/pps-ldisc.ko
  739. AUTOLOAD:=$(call AutoLoad,18,pps-ldisc,1)
  740. endef
  741. define KernelPackage/pps-ldisc/description
  742. Support for a PPS source connected with the CD (Carrier
  743. Detect) pin of your serial port.
  744. endef
  745. $(eval $(call KernelPackage,pps-ldisc))
  746. define KernelPackage/ptp
  747. SUBMENU:=$(OTHER_MENU)
  748. TITLE:=PTP clock support
  749. DEPENDS:=+kmod-pps
  750. KCONFIG:= \
  751. CONFIG_PTP_1588_CLOCK \
  752. CONFIG_NET_PTP_CLASSIFY=y
  753. FILES:=$(LINUX_DIR)/drivers/ptp/ptp.ko
  754. AUTOLOAD:=$(call AutoLoad,18,ptp,1)
  755. endef
  756. define KernelPackage/ptp/description
  757. The IEEE 1588 standard defines a method to precisely
  758. synchronize distributed clocks over Ethernet networks.
  759. endef
  760. $(eval $(call KernelPackage,ptp))
  761. define KernelPackage/ptp-gianfar
  762. SUBMENU:=$(OTHER_MENU)
  763. TITLE:=Freescale Gianfar PTP support
  764. DEPENDS:=@TARGET_mpc85xx +kmod-ptp @LINUX_4_14
  765. KCONFIG:=CONFIG_PTP_1588_CLOCK_GIANFAR
  766. FILES:=$(LINUX_DIR)/drivers/net/ethernet/freescale/gianfar_ptp.ko
  767. AUTOLOAD:=$(call AutoProbe,gianfar_ptp)
  768. endef
  769. define KernelPackage/ptp-gianfar/description
  770. Kernel module for IEEE 1588 support for Freescale
  771. Gianfar Ethernet drivers
  772. endef
  773. $(eval $(call KernelPackage,ptp-gianfar))
  774. define KernelPackage/ptp-qoriq
  775. SUBMENU:=$(OTHER_MENU)
  776. TITLE:=Freescale QorIQ PTP support
  777. DEPENDS:=@TARGET_mpc85xx +kmod-ptp @!LINUX_4_14
  778. KCONFIG:=CONFIG_PTP_1588_CLOCK_QORIQ
  779. FILES:=$(LINUX_DIR)/drivers/ptp/ptp_qoriq.o
  780. AUTOLOAD:=$(call AutoProbe,ptp_qoriq)
  781. endef
  782. define KernelPackage/ptp-qoriq/description
  783. Kernel module for IEEE 1588 support for Freescale
  784. QorIQ Ethernet drivers
  785. endef
  786. $(eval $(call KernelPackage,ptp-qoriq))
  787. define KernelPackage/random-core
  788. SUBMENU:=$(OTHER_MENU)
  789. TITLE:=Hardware Random Number Generator Core support
  790. KCONFIG:=CONFIG_HW_RANDOM
  791. FILES:=$(LINUX_DIR)/drivers/char/hw_random/rng-core.ko
  792. endef
  793. define KernelPackage/random-core/description
  794. Kernel module for the HW random number generator core infrastructure
  795. endef
  796. $(eval $(call KernelPackage,random-core))
  797. define KernelPackage/random-tpm
  798. SUBMENU:=$(OTHER_MENU)
  799. TITLE:=Hardware Random Number Generator TPM support
  800. KCONFIG:=CONFIG_HW_RANDOM_TPM
  801. FILES:=$(LINUX_DIR)/drivers/char/hw_random/tpm-rng.ko
  802. DEPENDS:= +kmod-random-core +kmod-tpm @LINUX_4_14
  803. AUTOLOAD:=$(call AutoProbe,tpm-rng)
  804. endef
  805. define KernelPackage/random-tpm/description
  806. Kernel module for the Random Number Generator
  807. in the Trusted Platform Module.
  808. endef
  809. $(eval $(call KernelPackage,random-tpm))
  810. define KernelPackage/thermal
  811. SUBMENU:=$(OTHER_MENU)
  812. TITLE:=Generic Thermal sysfs driver
  813. DEPENDS:=+kmod-hwmon-core
  814. HIDDEN:=1
  815. KCONFIG:= \
  816. CONFIG_THERMAL \
  817. CONFIG_THERMAL_OF=y \
  818. CONFIG_CPU_THERMAL=y \
  819. CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y \
  820. CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE=n \
  821. CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE=n \
  822. CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0 \
  823. CONFIG_THERMAL_GOV_FAIR_SHARE=n \
  824. CONFIG_THERMAL_GOV_STEP_WISE=y \
  825. CONFIG_THERMAL_GOV_USER_SPACE=n \
  826. CONFIG_THERMAL_HWMON=y \
  827. CONFIG_THERMAL_EMULATION=n
  828. FILES:=$(LINUX_DIR)/drivers/thermal/thermal_sys.ko
  829. AUTOLOAD:=$(call AutoProbe,thermal_sys)
  830. endef
  831. define KernelPackage/thermal/description
  832. Generic Thermal Sysfs driver offers a generic mechanism for thermal
  833. management. Usually it's made up of one or more thermal zone and cooling
  834. device.
  835. endef
  836. $(eval $(call KernelPackage,thermal))
  837. define KernelPackage/gpio-beeper
  838. SUBMENU:=$(OTHER_MENU)
  839. TITLE:=GPIO beeper support
  840. DEPENDS:=+kmod-input-core
  841. KCONFIG:= \
  842. CONFIG_INPUT_MISC=y \
  843. CONFIG_INPUT_GPIO_BEEPER
  844. FILES:= \
  845. $(LINUX_DIR)/drivers/input/misc/gpio-beeper.ko
  846. AUTOLOAD:=$(call AutoLoad,50,gpio-beeper)
  847. endef
  848. define KernelPackage/gpio-beeper/description
  849. This enables playing beeps through an GPIO-connected buzzer
  850. endef
  851. $(eval $(call KernelPackage,gpio-beeper))
  852. define KernelPackage/echo
  853. SUBMENU:=$(OTHER_MENU)
  854. TITLE:=Line Echo Canceller
  855. KCONFIG:=CONFIG_ECHO
  856. FILES:=$(LINUX_DIR)/drivers/misc/echo/echo.ko
  857. AUTOLOAD:=$(call AutoLoad,50,echo)
  858. endef
  859. define KernelPackage/echo/description
  860. This driver provides line echo cancelling support for mISDN and
  861. DAHDI drivers
  862. endef
  863. $(eval $(call KernelPackage,echo))
  864. define KernelPackage/bmp085
  865. SUBMENU:=$(OTHER_MENU)
  866. TITLE:=BMP085/BMP18x pressure sensor
  867. DEPENDS:= +kmod-regmap-core
  868. KCONFIG:= CONFIG_BMP085
  869. FILES:= $(LINUX_DIR)/drivers/misc/bmp085.ko
  870. endef
  871. define KernelPackage/bmp085/description
  872. This driver adds support for Bosch Sensortec's digital pressure
  873. sensors BMP085 and BMP18x.
  874. endef
  875. $(eval $(call KernelPackage,bmp085))
  876. define KernelPackage/bmp085-i2c
  877. SUBMENU:=$(OTHER_MENU)
  878. TITLE:=BMP085/BMP18x pressure sensor I2C
  879. DEPENDS:= +kmod-bmp085
  880. KCONFIG:= CONFIG_BMP085_I2C
  881. FILES:= $(LINUX_DIR)/drivers/misc/bmp085-i2c.ko
  882. AUTOLOAD:=$(call AutoProbe,bmp085-i2c)
  883. endef
  884. define KernelPackage/bmp085-i2c/description
  885. This driver adds support for Bosch Sensortec's digital pressure
  886. sensor connected via I2C.
  887. endef
  888. $(eval $(call KernelPackage,bmp085-i2c))
  889. define KernelPackage/bmp085-spi
  890. SUBMENU:=$(OTHER_MENU)
  891. TITLE:=BMP085/BMP18x pressure sensor SPI
  892. DEPENDS:= +kmod-bmp085
  893. KCONFIG:= CONFIG_BMP085_SPI
  894. FILES:= $(LINUX_DIR)/drivers/misc/bmp085-spi.ko
  895. AUTOLOAD:=$(call AutoProbe,bmp085-spi)
  896. endef
  897. define KernelPackage/bmp085-spi/description
  898. This driver adds support for Bosch Sensortec's digital pressure
  899. sensor connected via SPI.
  900. endef
  901. $(eval $(call KernelPackage,bmp085-spi))
  902. define KernelPackage/tpm
  903. SUBMENU:=$(OTHER_MENU)
  904. TITLE:=TPM Hardware Support
  905. DEPENDS:= +!LINUX_4_14:kmod-random-core
  906. KCONFIG:= CONFIG_TCG_TPM
  907. FILES:= $(LINUX_DIR)/drivers/char/tpm/tpm.ko
  908. AUTOLOAD:=$(call AutoLoad,10,tpm,1)
  909. endef
  910. define KernelPackage/tpm/description
  911. This enables TPM Hardware Support.
  912. endef
  913. $(eval $(call KernelPackage,tpm))
  914. define KernelPackage/tpm-tis
  915. SUBMENU:=$(OTHER_MENU)
  916. TITLE:=TPM TIS 1.2 Interface / TPM 2.0 FIFO Interface
  917. DEPENDS:= @TARGET_x86 +kmod-tpm
  918. KCONFIG:= CONFIG_TCG_TIS
  919. FILES:= \
  920. $(LINUX_DIR)/drivers/char/tpm/tpm_tis.ko \
  921. $(LINUX_DIR)/drivers/char/tpm/tpm_tis_core.ko
  922. AUTOLOAD:=$(call AutoLoad,20,tpm_tis,1)
  923. endef
  924. define KernelPackage/tpm-tis/description
  925. If you have a TPM security chip that is compliant with the
  926. TCG TIS 1.2 TPM specification (TPM1.2) or the TCG PTP FIFO
  927. specification (TPM2.0) say Yes and it will be accessible from
  928. within Linux.
  929. endef
  930. $(eval $(call KernelPackage,tpm-tis))
  931. define KernelPackage/tpm-i2c-atmel
  932. SUBMENU:=$(OTHER_MENU)
  933. TITLE:=TPM I2C Atmel Support
  934. DEPENDS:= +kmod-tpm +kmod-i2c-core
  935. KCONFIG:= CONFIG_TCG_TIS_I2C_ATMEL
  936. FILES:= $(LINUX_DIR)/drivers/char/tpm/tpm_i2c_atmel.ko
  937. AUTOLOAD:=$(call AutoLoad,40,tpm_i2c_atmel,1)
  938. endef
  939. define KernelPackage/tpm-i2c-atmel/description
  940. This enables the TPM Interface Specification 1.2 Interface (I2C - Atmel)
  941. endef
  942. $(eval $(call KernelPackage,tpm-i2c-atmel))
  943. define KernelPackage/tpm-i2c-infineon
  944. SUBMENU:=$(OTHER_MENU)
  945. TITLE:= TPM I2C Infineon driver
  946. DEPENDS:= +kmod-tpm +kmod-i2c-core
  947. KCONFIG:= CONFIG_TCG_TIS_I2C_INFINEON
  948. FILES:= $(LINUX_DIR)/drivers/char/tpm/tpm_i2c_infineon.ko
  949. AUTOLOAD:= $(call AutoLoad,40,tpm_i2c_infineon,1)
  950. endef
  951. define KernelPackage/tpm-i2c-infineon/description
  952. This enables the TPM Interface Specification 1.2 Interface (I2C - Infineon)
  953. endef
  954. $(eval $(call KernelPackage,tpm-i2c-infineon))
  955. define KernelPackage/w83627hf-wdt
  956. SUBMENU:=$(OTHER_MENU)
  957. TITLE:=Winbond 83627HF Watchdog Timer
  958. KCONFIG:=CONFIG_W83627HF_WDT
  959. FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/w83627hf_wdt.ko
  960. AUTOLOAD:=$(call AutoLoad,50,w83627hf-wdt,1)
  961. endef
  962. define KernelPackage/w83627hf-wdt/description
  963. Kernel module for Winbond 83627HF Watchdog Timer
  964. endef
  965. $(eval $(call KernelPackage,w83627hf-wdt))
  966. define KernelPackage/itco-wdt
  967. SUBMENU:=$(OTHER_MENU)
  968. TITLE:=Intel iTCO Watchdog Timer
  969. KCONFIG:=CONFIG_ITCO_WDT \
  970. CONFIG_ITCO_VENDOR_SUPPORT=y
  971. FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/iTCO_wdt.ko \
  972. $(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/iTCO_vendor_support.ko
  973. AUTOLOAD:=$(call AutoLoad,50,iTCO_vendor_support iTCO_wdt,1)
  974. endef
  975. define KernelPackage/itco-wdt/description
  976. Kernel module for Intel iTCO Watchdog Timer
  977. endef
  978. $(eval $(call KernelPackage,itco-wdt))
  979. define KernelPackage/it87-wdt
  980. SUBMENU:=$(OTHER_MENU)
  981. TITLE:=ITE IT87 Watchdog Timer
  982. KCONFIG:=CONFIG_IT87_WDT
  983. FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/it87_wdt.ko
  984. AUTOLOAD:=$(call AutoLoad,50,it87-wdt,1)
  985. MODPARAMS.it87-wdt:= \
  986. nogameport=1 \
  987. nocir=1
  988. endef
  989. define KernelPackage/it87-wdt/description
  990. Kernel module for ITE IT87 Watchdog Timer
  991. endef
  992. $(eval $(call KernelPackage,it87-wdt))
  993. define KernelPackage/f71808e-wdt
  994. SUBMENU:=$(OTHER_MENU)
  995. TITLE:=Fintek F718xx/F818xx Watchdog Timer
  996. DEPENDS:=@TARGET_x86
  997. KCONFIG:=CONFIG_F71808E_WDT
  998. FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/f71808e_wdt.ko
  999. AUTOLOAD:=$(call AutoProbe,f71808e-wdt,1)
  1000. endef
  1001. define KernelPackage/f71808e-wdt/description
  1002. Kernel module for the watchdog timer found on many Fintek Super-IO chips.
  1003. endef
  1004. $(eval $(call KernelPackage,f71808e-wdt))