other.mk 34 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330
  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/gpio-it87
  237. SUBMENU:=$(OTHER_MENU)
  238. DEPENDS:=@GPIO_SUPPORT @TARGET_x86
  239. TITLE:=GPIO support for IT87xx Super I/O chips
  240. KCONFIG:=CONFIG_GPIO_IT87
  241. FILES:=$(LINUX_DIR)/drivers/gpio/gpio-it87.ko
  242. AUTOLOAD:=$(call AutoLoad,25,gpio-it87,1)
  243. endef
  244. define KernelPackage/gpio-it87/description
  245. This driver is tested with ITE IT8728 and IT8732 Super I/O chips, and
  246. supports the IT8761E, IT8613, IT8620E, and IT8628E Super I/O chips as
  247. well.
  248. endef
  249. $(eval $(call KernelPackage,gpio-it87))
  250. define KernelPackage/gpio-amd-fch
  251. SUBMENU:=$(OTHER_MENU)
  252. DEPENDS:=@GPIO_SUPPORT @TARGET_x86
  253. TITLE:=GPIO support for AMD Fusion Controller Hub (G-series SOCs)
  254. KCONFIG:=CONFIG_GPIO_AMD_FCH
  255. FILES:=$(LINUX_DIR)/drivers/gpio/gpio-amd-fch.ko
  256. AUTOLOAD:=$(call AutoLoad,25,gpio-amd-fch,1)
  257. endef
  258. define KernelPackage/gpio-amd-fch/description
  259. This option enables driver for GPIO on AMDs Fusion Controller Hub,
  260. as found on G-series SOCs (eg. GX-412TC)
  261. endef
  262. $(eval $(call KernelPackage,gpio-amd-fch))
  263. define KernelPackage/ppdev
  264. SUBMENU:=$(OTHER_MENU)
  265. TITLE:=Parallel port support
  266. KCONFIG:= \
  267. CONFIG_PARPORT \
  268. CONFIG_PPDEV
  269. FILES:= \
  270. $(LINUX_DIR)/drivers/parport/parport.ko \
  271. $(LINUX_DIR)/drivers/char/ppdev.ko
  272. AUTOLOAD:=$(call AutoLoad,50,parport ppdev)
  273. endef
  274. $(eval $(call KernelPackage,ppdev))
  275. define KernelPackage/parport-pc
  276. SUBMENU:=$(OTHER_MENU)
  277. TITLE:=Parallel port interface (PC-style) support
  278. DEPENDS:=+kmod-ppdev
  279. KCONFIG:= \
  280. CONFIG_KS0108=n \
  281. CONFIG_PARPORT_PC \
  282. CONFIG_PARPORT_1284=y \
  283. CONFIG_PARPORT_PC_FIFO=y \
  284. CONFIG_PARPORT_PC_PCMCIA=n \
  285. CONFIG_PARPORT_PC_SUPERIO=y \
  286. CONFIG_PARPORT_SERIAL=n \
  287. CONFIG_PARIDE=n \
  288. CONFIG_SCSI_IMM=n \
  289. CONFIG_SCSI_PPA=n
  290. FILES:= \
  291. $(LINUX_DIR)/drivers/parport/parport_pc.ko
  292. AUTOLOAD:=$(call AutoLoad,51,parport_pc)
  293. endef
  294. $(eval $(call KernelPackage,parport-pc))
  295. define KernelPackage/lp
  296. SUBMENU:=$(OTHER_MENU)
  297. TITLE:=Parallel port line printer device support
  298. DEPENDS:=+kmod-ppdev
  299. KCONFIG:= \
  300. CONFIG_PRINTER
  301. FILES:= \
  302. $(LINUX_DIR)/drivers/char/lp.ko
  303. AUTOLOAD:=$(call AutoLoad,52,lp)
  304. endef
  305. $(eval $(call KernelPackage,lp))
  306. define KernelPackage/mmc
  307. SUBMENU:=$(OTHER_MENU)
  308. TITLE:=MMC/SD Card Support
  309. DEPENDS:=@!TARGET_uml
  310. KCONFIG:= \
  311. CONFIG_MMC \
  312. CONFIG_MMC_BLOCK \
  313. CONFIG_MMC_DEBUG=n \
  314. CONFIG_MMC_UNSAFE_RESUME=n \
  315. CONFIG_MMC_BLOCK_BOUNCE=y \
  316. CONFIG_MMC_TIFM_SD=n \
  317. CONFIG_MMC_WBSD=n \
  318. CONFIG_SDIO_UART=n
  319. FILES:= \
  320. $(LINUX_DIR)/drivers/mmc/core/mmc_core.ko \
  321. $(LINUX_DIR)/drivers/mmc/core/mmc_block.ko
  322. AUTOLOAD:=$(call AutoProbe,mmc_core mmc_block,1)
  323. endef
  324. define KernelPackage/mmc/description
  325. Kernel support for MMC/SD cards
  326. endef
  327. $(eval $(call KernelPackage,mmc))
  328. define KernelPackage/mvsdio
  329. SUBMENU:=$(OTHER_MENU)
  330. TITLE:=Marvell MMC/SD/SDIO host driver
  331. DEPENDS:=+kmod-mmc @TARGET_kirkwood
  332. KCONFIG:= CONFIG_MMC_MVSDIO
  333. FILES:= \
  334. $(LINUX_DIR)/drivers/mmc/host/mvsdio.ko
  335. AUTOLOAD:=$(call AutoProbe,mvsdio,1)
  336. endef
  337. define KernelPackage/mvsdio/description
  338. Kernel support for the Marvell SDIO host driver.
  339. endef
  340. $(eval $(call KernelPackage,mvsdio))
  341. define KernelPackage/sdhci
  342. SUBMENU:=$(OTHER_MENU)
  343. TITLE:=Secure Digital Host Controller Interface support
  344. DEPENDS:=+kmod-mmc
  345. KCONFIG:= \
  346. CONFIG_MMC_SDHCI \
  347. CONFIG_MMC_SDHCI_PLTFM \
  348. CONFIG_MMC_SDHCI_PCI=n
  349. FILES:= \
  350. $(LINUX_DIR)/drivers/mmc/host/sdhci.ko \
  351. $(LINUX_DIR)/drivers/mmc/host/sdhci-pltfm.ko
  352. AUTOLOAD:=$(call AutoProbe,sdhci-pltfm,1)
  353. endef
  354. define KernelPackage/sdhci/description
  355. Kernel support for SDHCI Hosts
  356. endef
  357. $(eval $(call KernelPackage,sdhci))
  358. define KernelPackage/rfkill
  359. SUBMENU:=$(OTHER_MENU)
  360. TITLE:=RF switch subsystem support
  361. DEPENDS:=@USE_RFKILL +kmod-input-core
  362. KCONFIG:= \
  363. CONFIG_RFKILL_FULL \
  364. CONFIG_RFKILL_INPUT=y \
  365. CONFIG_RFKILL_LEDS=y
  366. FILES:= \
  367. $(LINUX_DIR)/net/rfkill/rfkill.ko
  368. AUTOLOAD:=$(call AutoLoad,20,rfkill)
  369. endef
  370. define KernelPackage/rfkill/description
  371. Say Y here if you want to have control over RF switches
  372. found on many WiFi and Bluetooth cards
  373. endef
  374. $(eval $(call KernelPackage,rfkill))
  375. define KernelPackage/softdog
  376. SUBMENU:=$(OTHER_MENU)
  377. TITLE:=Software watchdog driver
  378. KCONFIG:=CONFIG_SOFT_WATCHDOG \
  379. CONFIG_SOFT_WATCHDOG_PRETIMEOUT=n
  380. FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/softdog.ko
  381. AUTOLOAD:=$(call AutoLoad,50,softdog,1)
  382. endef
  383. define KernelPackage/softdog/description
  384. Software watchdog driver
  385. endef
  386. $(eval $(call KernelPackage,softdog))
  387. define KernelPackage/ssb
  388. SUBMENU:=$(OTHER_MENU)
  389. TITLE:=Silicon Sonics Backplane glue code
  390. DEPENDS:=@PCI_SUPPORT @!TARGET_bcm47xx @!TARGET_bcm63xx
  391. KCONFIG:=\
  392. CONFIG_SSB \
  393. CONFIG_SSB_B43_PCI_BRIDGE=y \
  394. CONFIG_SSB_DRIVER_MIPS=n \
  395. CONFIG_SSB_DRIVER_PCICORE=y \
  396. CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y \
  397. CONFIG_SSB_PCIHOST=y \
  398. CONFIG_SSB_PCIHOST_POSSIBLE=y \
  399. CONFIG_SSB_POSSIBLE=y \
  400. CONFIG_SSB_SPROM=y \
  401. CONFIG_SSB_SILENT=y
  402. FILES:=$(LINUX_DIR)/drivers/ssb/ssb.ko
  403. AUTOLOAD:=$(call AutoLoad,18,ssb,1)
  404. endef
  405. define KernelPackage/ssb/description
  406. Silicon Sonics Backplane glue code.
  407. endef
  408. $(eval $(call KernelPackage,ssb))
  409. define KernelPackage/bcma
  410. SUBMENU:=$(OTHER_MENU)
  411. TITLE:=BCMA support
  412. DEPENDS:=@PCI_SUPPORT @!TARGET_bcm47xx @!TARGET_bcm53xx
  413. KCONFIG:=\
  414. CONFIG_BCMA \
  415. CONFIG_BCMA_POSSIBLE=y \
  416. CONFIG_BCMA_BLOCKIO=y \
  417. CONFIG_BCMA_HOST_PCI_POSSIBLE=y \
  418. CONFIG_BCMA_HOST_PCI=y \
  419. CONFIG_BCMA_HOST_SOC=n \
  420. CONFIG_BCMA_DRIVER_MIPS=n \
  421. CONFIG_BCMA_DRIVER_PCI_HOSTMODE=n \
  422. CONFIG_BCMA_DRIVER_GMAC_CMN=n \
  423. CONFIG_BCMA_DEBUG=n
  424. FILES:=$(LINUX_DIR)/drivers/bcma/bcma.ko
  425. AUTOLOAD:=$(call AutoLoad,29,bcma)
  426. endef
  427. define KernelPackage/bcma/description
  428. Bus driver for Broadcom specific Advanced Microcontroller Bus Architecture
  429. endef
  430. $(eval $(call KernelPackage,bcma))
  431. define KernelPackage/rtc-ds1307
  432. SUBMENU:=$(OTHER_MENU)
  433. TITLE:=Dallas/Maxim DS1307 (and compatible) RTC support
  434. DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
  435. DEPENDS:=+kmod-i2c-core +kmod-regmap-i2c +kmod-hwmon-core
  436. KCONFIG:=CONFIG_RTC_DRV_DS1307 \
  437. CONFIG_RTC_CLASS=y
  438. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1307.ko
  439. AUTOLOAD:=$(call AutoProbe,rtc-ds1307)
  440. endef
  441. define KernelPackage/rtc-ds1307/description
  442. Kernel module for Dallas/Maxim DS1307/DS1337/DS1338/DS1340/DS1388/DS3231,
  443. Epson RX-8025 and various other compatible RTC chips connected via I2C.
  444. endef
  445. $(eval $(call KernelPackage,rtc-ds1307))
  446. define KernelPackage/rtc-ds1374
  447. SUBMENU:=$(OTHER_MENU)
  448. TITLE:=Dallas/Maxim DS1374 RTC support
  449. DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
  450. DEPENDS:=+kmod-i2c-core
  451. KCONFIG:=CONFIG_RTC_DRV_DS1374 \
  452. CONFIG_RTC_DRV_DS1374_WDT=n \
  453. CONFIG_RTC_CLASS=y
  454. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1374.ko
  455. AUTOLOAD:=$(call AutoProbe,rtc-ds1374)
  456. endef
  457. define KernelPackage/rtc-ds1374/description
  458. Kernel module for Dallas/Maxim DS1374.
  459. endef
  460. $(eval $(call KernelPackage,rtc-ds1374))
  461. define KernelPackage/rtc-ds1672
  462. SUBMENU:=$(OTHER_MENU)
  463. TITLE:=Dallas/Maxim DS1672 RTC support
  464. DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
  465. DEPENDS:=+kmod-i2c-core
  466. KCONFIG:=CONFIG_RTC_DRV_DS1672 \
  467. CONFIG_RTC_CLASS=y
  468. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1672.ko
  469. AUTOLOAD:=$(call AutoProbe,rtc-ds1672)
  470. endef
  471. define KernelPackage/rtc-ds1672/description
  472. Kernel module for Dallas/Maxim DS1672 RTC.
  473. endef
  474. $(eval $(call KernelPackage,rtc-ds1672))
  475. define KernelPackage/rtc-em3027
  476. SUBMENU:=$(OTHER_MENU)
  477. TITLE:=Microelectronic EM3027 RTC support
  478. DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
  479. DEPENDS:=+kmod-i2c-core
  480. KCONFIG:=CONFIG_RTC_DRV_EM3027 \
  481. CONFIG_RTC_CLASS=y
  482. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-em3027.ko
  483. AUTOLOAD:=$(call AutoProbe,rtc-em3027)
  484. endef
  485. define KernelPackage/rtc-em3027/description
  486. Kernel module for Microelectronic EM3027 RTC.
  487. endef
  488. $(eval $(call KernelPackage,rtc-em3027))
  489. define KernelPackage/rtc-isl1208
  490. SUBMENU:=$(OTHER_MENU)
  491. TITLE:=Intersil ISL1208 RTC support
  492. DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
  493. DEPENDS:=+kmod-i2c-core
  494. KCONFIG:=CONFIG_RTC_DRV_ISL1208 \
  495. CONFIG_RTC_CLASS=y
  496. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-isl1208.ko
  497. AUTOLOAD:=$(call AutoProbe,rtc-isl1208)
  498. endef
  499. define KernelPackage/rtc-isl1208/description
  500. Kernel module for Intersil ISL1208 RTC.
  501. endef
  502. $(eval $(call KernelPackage,rtc-isl1208))
  503. define KernelPackage/rtc-pcf8563
  504. SUBMENU:=$(OTHER_MENU)
  505. TITLE:=Philips PCF8563/Epson RTC8564 RTC support
  506. DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
  507. DEPENDS:=+kmod-i2c-core
  508. KCONFIG:=CONFIG_RTC_DRV_PCF8563 \
  509. CONFIG_RTC_CLASS=y
  510. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf8563.ko
  511. AUTOLOAD:=$(call AutoProbe,rtc-pcf8563)
  512. endef
  513. define KernelPackage/rtc-pcf8563/description
  514. Kernel module for Philips PCF8563 RTC chip.
  515. The Epson RTC8564 should work as well.
  516. endef
  517. $(eval $(call KernelPackage,rtc-pcf8563))
  518. define KernelPackage/rtc-pcf2123
  519. SUBMENU:=$(OTHER_MENU)
  520. TITLE:=Philips PCF2123 RTC support
  521. DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
  522. DEPENDS:=+LINUX_5_4:kmod-regmap-spi
  523. KCONFIG:=CONFIG_RTC_DRV_PCF2123 \
  524. CONFIG_RTC_CLASS=y
  525. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf2123.ko
  526. AUTOLOAD:=$(call AutoProbe,rtc-pcf2123)
  527. endef
  528. define KernelPackage/rtc-pcf2123/description
  529. Kernel module for Philips PCF2123 RTC chip
  530. endef
  531. $(eval $(call KernelPackage,rtc-pcf2123))
  532. define KernelPackage/rtc-pcf2127
  533. SUBMENU:=$(OTHER_MENU)
  534. TITLE:=NXP PCF2127 and PCF2129 RTC support
  535. DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
  536. DEPENDS:=+kmod-i2c-core +kmod-regmap-spi
  537. KCONFIG:=CONFIG_RTC_DRV_PCF2127 \
  538. CONFIG_RTC_CLASS=y
  539. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf2127.ko
  540. AUTOLOAD:=$(call AutoProbe,rtc-pcf2127)
  541. endef
  542. define KernelPackage/rtc-pcf2127/description
  543. Kernel module for NXP PCF2127 and PCF2129 RTC chip
  544. endef
  545. $(eval $(call KernelPackage,rtc-pcf2127))
  546. define KernelPackage/rtc-pt7c4338
  547. SUBMENU:=$(OTHER_MENU)
  548. TITLE:=Pericom PT7C4338 RTC support
  549. DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
  550. DEPENDS:=+kmod-i2c-core
  551. KCONFIG:=CONFIG_RTC_DRV_PT7C4338 \
  552. CONFIG_RTC_CLASS=y
  553. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pt7c4338.ko
  554. AUTOLOAD:=$(call AutoProbe,rtc-pt7c4338)
  555. endef
  556. define KernelPackage/rtc-pt7c4338/description
  557. Kernel module for Pericom PT7C4338 i2c RTC chip
  558. endef
  559. $(eval $(call KernelPackage,rtc-pt7c4338))
  560. define KernelPackage/rtc-rs5c372a
  561. SUBMENU:=$(OTHER_MENU)
  562. TITLE:=Ricoh R2025S/D, RS5C372A/B, RV5C386, RV5C387A
  563. DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
  564. DEPENDS:=+kmod-i2c-core
  565. KCONFIG:=CONFIG_RTC_DRV_RS5C372 \
  566. CONFIG_RTC_CLASS=y
  567. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-rs5c372.ko
  568. AUTOLOAD:=$(call AutoLoad,50,rtc-rs5c372,1)
  569. endef
  570. define KernelPackage/rtc-rs5c372a/description
  571. Kernel module for Ricoh R2025S/D, RS5C372A/B, RV5C386, RV5C387A RTC on chip module
  572. endef
  573. $(eval $(call KernelPackage,rtc-rs5c372a))
  574. define KernelPackage/rtc-rx8025
  575. SUBMENU:=$(OTHER_MENU)
  576. TITLE:=Epson RX-8025 / RX-8035
  577. DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
  578. DEPENDS:=+kmod-i2c-core
  579. KCONFIG:=CONFIG_RTC_DRV_RX8025 \
  580. CONFIG_RTC_CLASS=y
  581. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-rx8025.ko
  582. AUTOLOAD:=$(call AutoLoad,50,rtc-rx8025,1)
  583. endef
  584. define KernelPackage/rtc-rx8025/description
  585. Kernel module for Epson RX-8025 and RX-8035 I2C RTC chip
  586. endef
  587. $(eval $(call KernelPackage,rtc-rx8025))
  588. define KernelPackage/rtc-s35390a
  589. SUBMENU:=$(OTHER_MENU)
  590. TITLE:=Seico S-35390A
  591. DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
  592. DEPENDS:=+kmod-i2c-core
  593. KCONFIG:=CONFIG_RTC_DRV_S35390A \
  594. CONFIG_RTC_CLASS=y
  595. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-s35390a.ko
  596. AUTOLOAD:=$(call AutoLoad,50,rtc-s35390a,1)
  597. endef
  598. define KernelPackage/rtc-s35390a/description
  599. Kernel module for Seiko Instruments S-35390A I2C RTC chip
  600. endef
  601. $(eval $(call KernelPackage,rtc-s35390a))
  602. define KernelPackage/mtdtests
  603. SUBMENU:=$(OTHER_MENU)
  604. TITLE:=MTD subsystem tests
  605. KCONFIG:=CONFIG_MTD_TESTS
  606. FILES:=\
  607. $(LINUX_DIR)/drivers/mtd/tests/mtd_nandecctest.ko \
  608. $(LINUX_DIR)/drivers/mtd/tests/mtd_oobtest.ko \
  609. $(LINUX_DIR)/drivers/mtd/tests/mtd_pagetest.ko \
  610. $(LINUX_DIR)/drivers/mtd/tests/mtd_readtest.ko \
  611. $(LINUX_DIR)/drivers/mtd/tests/mtd_speedtest.ko \
  612. $(LINUX_DIR)/drivers/mtd/tests/mtd_stresstest.ko \
  613. $(LINUX_DIR)/drivers/mtd/tests/mtd_subpagetest.ko \
  614. $(LINUX_DIR)/drivers/mtd/tests/mtd_torturetest.ko
  615. endef
  616. define KernelPackage/mtdtests/description
  617. Kernel modules for MTD subsystem/driver testing
  618. endef
  619. $(eval $(call KernelPackage,mtdtests))
  620. define KernelPackage/mtdoops
  621. SUBMENU:=$(OTHER_MENU)
  622. TITLE:=Log panic/oops to an MTD buffer
  623. KCONFIG:=CONFIG_MTD_OOPS
  624. FILES:=$(LINUX_DIR)/drivers/mtd/mtdoops.ko
  625. endef
  626. define KernelPackage/mtdoops/description
  627. Kernel modules for Log panic/oops to an MTD buffer
  628. endef
  629. $(eval $(call KernelPackage,mtdoops))
  630. define KernelPackage/mtdram
  631. SUBMENU:=$(OTHER_MENU)
  632. TITLE:=Test MTD driver using RAM
  633. KCONFIG:=CONFIG_MTD_MTDRAM \
  634. CONFIG_MTDRAM_TOTAL_SIZE=4096 \
  635. CONFIG_MTDRAM_ERASE_SIZE=128
  636. FILES:=$(LINUX_DIR)/drivers/mtd/devices/mtdram.ko
  637. endef
  638. define KernelPackage/mtdram/description
  639. Test MTD driver using RAM
  640. endef
  641. $(eval $(call KernelPackage,mtdram))
  642. define KernelPackage/serial-8250
  643. SUBMENU:=$(OTHER_MENU)
  644. TITLE:=8250 UARTs
  645. KCONFIG:= CONFIG_SERIAL_8250 \
  646. CONFIG_SERIAL_8250_PCI \
  647. CONFIG_SERIAL_8250_NR_UARTS=16 \
  648. CONFIG_SERIAL_8250_RUNTIME_UARTS=16 \
  649. CONFIG_SERIAL_8250_EXTENDED=y \
  650. CONFIG_SERIAL_8250_MANY_PORTS=y \
  651. CONFIG_SERIAL_8250_SHARE_IRQ=y \
  652. CONFIG_SERIAL_8250_DETECT_IRQ=n \
  653. CONFIG_SERIAL_8250_RSA=n
  654. FILES:= \
  655. $(LINUX_DIR)/drivers/tty/serial/8250/8250.ko \
  656. $(LINUX_DIR)/drivers/tty/serial/8250/8250_base.ko \
  657. $(if $(CONFIG_PCI),$(LINUX_DIR)/drivers/tty/serial/8250/8250_pci.ko) \
  658. $(if $(CONFIG_GPIOLIB),$(LINUX_DIR)/drivers/tty/serial/[email protected])
  659. AUTOLOAD:=$(call AutoProbe,8250 8250_base 8250_pci)
  660. endef
  661. define KernelPackage/serial-8250/description
  662. Kernel module for 8250 UART based serial ports
  663. endef
  664. $(eval $(call KernelPackage,serial-8250))
  665. define KernelPackage/serial-8250-exar
  666. SUBMENU:=$(OTHER_MENU)
  667. TITLE:=Exar 8250 UARTs
  668. KCONFIG:= CONFIG_SERIAL_8250_EXAR
  669. FILES:=$(LINUX_DIR)/drivers/tty/serial/8250/8250_exar.ko
  670. AUTOLOAD:=$(call AutoProbe,8250 8250_base 8250_exar)
  671. DEPENDS:=+kmod-serial-8250
  672. endef
  673. define KernelPackage/serial-8250-exar/description
  674. Kernel module for Exar serial ports
  675. endef
  676. $(eval $(call KernelPackage,serial-8250-exar))
  677. define KernelPackage/regmap-core
  678. SUBMENU:=$(OTHER_MENU)
  679. TITLE:=Generic register map support
  680. HIDDEN:=1
  681. KCONFIG:=CONFIG_REGMAP
  682. ifneq ($(wildcard $(LINUX_DIR)/drivers/base/regmap/regmap-core.ko),)
  683. FILES:=$(LINUX_DIR)/drivers/base/regmap/regmap-core.ko
  684. endif
  685. endef
  686. define KernelPackage/regmap-core/description
  687. Generic register map support
  688. endef
  689. $(eval $(call KernelPackage,regmap-core))
  690. define KernelPackage/regmap-spi
  691. SUBMENU:=$(OTHER_MENU)
  692. TITLE:=SPI register map support
  693. DEPENDS:=+kmod-regmap-core
  694. HIDDEN:=1
  695. KCONFIG:=CONFIG_REGMAP_SPI \
  696. CONFIG_SPI=y
  697. FILES:=$(LINUX_DIR)/drivers/base/regmap/regmap-spi.ko
  698. endef
  699. define KernelPackage/regmap-spi/description
  700. SPI register map support
  701. endef
  702. $(eval $(call KernelPackage,regmap-spi))
  703. define KernelPackage/regmap-i2c
  704. SUBMENU:=$(OTHER_MENU)
  705. TITLE:=I2C register map support
  706. DEPENDS:=+kmod-regmap-core +kmod-i2c-core
  707. HIDDEN:=1
  708. KCONFIG:=CONFIG_REGMAP_I2C
  709. FILES:=$(LINUX_DIR)/drivers/base/regmap/regmap-i2c.ko
  710. endef
  711. define KernelPackage/regmap-i2c/description
  712. I2C register map support
  713. endef
  714. $(eval $(call KernelPackage,regmap-i2c))
  715. define KernelPackage/regmap-mmio
  716. SUBMENU:=$(OTHER_MENU)
  717. TITLE:=MMIO register map support
  718. DEPENDS:=+kmod-regmap-core
  719. HIDDEN:=1
  720. KCONFIG:=CONFIG_REGMAP_MMIO
  721. FILES:=$(LINUX_DIR)/drivers/base/regmap/regmap-mmio.ko
  722. endef
  723. define KernelPackage/regmap-mmio/description
  724. MMIO register map support
  725. endef
  726. $(eval $(call KernelPackage,regmap-mmio))
  727. define KernelPackage/ikconfig
  728. SUBMENU:=$(OTHER_MENU)
  729. TITLE:=Kernel configuration via /proc/config.gz
  730. KCONFIG:=CONFIG_IKCONFIG \
  731. CONFIG_IKCONFIG_PROC=y
  732. FILES:=$(LINUX_DIR)/kernel/configs.ko
  733. AUTOLOAD:=$(call AutoLoad,70,configs)
  734. endef
  735. define KernelPackage/ikconfig/description
  736. Kernel configuration via /proc/config.gz
  737. endef
  738. $(eval $(call KernelPackage,ikconfig))
  739. define KernelPackage/zram
  740. SUBMENU:=$(OTHER_MENU)
  741. TITLE:=ZRAM
  742. DEPENDS:=+kmod-lib-lzo
  743. KCONFIG:= \
  744. CONFIG_ZSMALLOC \
  745. CONFIG_ZRAM \
  746. CONFIG_ZRAM_DEBUG=n \
  747. CONFIG_PGTABLE_MAPPING=n \
  748. CONFIG_ZRAM_WRITEBACK=n \
  749. CONFIG_ZSMALLOC_STAT=n
  750. FILES:= \
  751. $(LINUX_DIR)/mm/zsmalloc.ko \
  752. $(LINUX_DIR)/drivers/block/zram/zram.ko
  753. AUTOLOAD:=$(call AutoLoad,20,zsmalloc zram)
  754. endef
  755. define KernelPackage/zram/description
  756. Compressed RAM block device support
  757. endef
  758. $(eval $(call KernelPackage,zram))
  759. define KernelPackage/pps
  760. SUBMENU:=$(OTHER_MENU)
  761. TITLE:=PPS support
  762. KCONFIG:=CONFIG_PPS
  763. FILES:=$(LINUX_DIR)/drivers/pps/pps_core.ko
  764. AUTOLOAD:=$(call AutoLoad,17,pps_core,1)
  765. endef
  766. define KernelPackage/pps/description
  767. PPS (Pulse Per Second) is a special pulse provided by some GPS
  768. antennae. Userland can use it to get a high-precision time
  769. reference.
  770. endef
  771. $(eval $(call KernelPackage,pps))
  772. define KernelPackage/pps-gpio
  773. SUBMENU:=$(OTHER_MENU)
  774. TITLE:=PPS client using GPIO
  775. DEPENDS:=+kmod-pps
  776. KCONFIG:=CONFIG_PPS_CLIENT_GPIO
  777. FILES:=$(LINUX_DIR)/drivers/pps/clients/pps-gpio.ko
  778. AUTOLOAD:=$(call AutoLoad,18,pps-gpio,1)
  779. endef
  780. define KernelPackage/pps-gpio/description
  781. Support for a PPS source using GPIO. To be useful you must
  782. also register a platform device specifying the GPIO pin and
  783. other options, usually in your board setup.
  784. endef
  785. $(eval $(call KernelPackage,pps-gpio))
  786. define KernelPackage/pps-ldisc
  787. SUBMENU:=$(OTHER_MENU)
  788. TITLE:=PPS line discipline
  789. DEPENDS:=+kmod-pps
  790. KCONFIG:=CONFIG_PPS_CLIENT_LDISC
  791. FILES:=$(LINUX_DIR)/drivers/pps/clients/pps-ldisc.ko
  792. AUTOLOAD:=$(call AutoLoad,18,pps-ldisc,1)
  793. endef
  794. define KernelPackage/pps-ldisc/description
  795. Support for a PPS source connected with the CD (Carrier
  796. Detect) pin of your serial port.
  797. endef
  798. $(eval $(call KernelPackage,pps-ldisc))
  799. define KernelPackage/ptp
  800. SUBMENU:=$(OTHER_MENU)
  801. TITLE:=PTP clock support
  802. DEPENDS:=+kmod-pps
  803. KCONFIG:= \
  804. CONFIG_PTP_1588_CLOCK \
  805. CONFIG_NET_PTP_CLASSIFY=y
  806. FILES:=$(LINUX_DIR)/drivers/ptp/ptp.ko
  807. AUTOLOAD:=$(call AutoLoad,18,ptp,1)
  808. endef
  809. define KernelPackage/ptp/description
  810. The IEEE 1588 standard defines a method to precisely
  811. synchronize distributed clocks over Ethernet networks.
  812. endef
  813. $(eval $(call KernelPackage,ptp))
  814. define KernelPackage/ptp-gianfar
  815. SUBMENU:=$(OTHER_MENU)
  816. TITLE:=Freescale Gianfar PTP support
  817. DEPENDS:=@TARGET_mpc85xx +kmod-ptp @LINUX_4_14
  818. KCONFIG:=CONFIG_PTP_1588_CLOCK_GIANFAR
  819. FILES:=$(LINUX_DIR)/drivers/net/ethernet/freescale/gianfar_ptp.ko
  820. AUTOLOAD:=$(call AutoProbe,gianfar_ptp)
  821. endef
  822. define KernelPackage/ptp-gianfar/description
  823. Kernel module for IEEE 1588 support for Freescale
  824. Gianfar Ethernet drivers
  825. endef
  826. $(eval $(call KernelPackage,ptp-gianfar))
  827. define KernelPackage/ptp-qoriq
  828. SUBMENU:=$(OTHER_MENU)
  829. TITLE:=Freescale QorIQ PTP support
  830. DEPENDS:=@TARGET_mpc85xx +kmod-ptp @!LINUX_4_14
  831. KCONFIG:=CONFIG_PTP_1588_CLOCK_QORIQ
  832. FILES:=$(LINUX_DIR)/drivers/ptp/ptp-qoriq.ko
  833. AUTOLOAD:=$(call AutoProbe,ptp-qoriq)
  834. endef
  835. define KernelPackage/ptp-qoriq/description
  836. Kernel module for IEEE 1588 support for Freescale
  837. QorIQ Ethernet drivers
  838. endef
  839. $(eval $(call KernelPackage,ptp-qoriq))
  840. define KernelPackage/random-core
  841. SUBMENU:=$(OTHER_MENU)
  842. TITLE:=Hardware Random Number Generator Core support
  843. KCONFIG:=CONFIG_HW_RANDOM
  844. FILES:=$(LINUX_DIR)/drivers/char/hw_random/rng-core.ko
  845. endef
  846. define KernelPackage/random-core/description
  847. Kernel module for the HW random number generator core infrastructure
  848. endef
  849. $(eval $(call KernelPackage,random-core))
  850. define KernelPackage/random-tpm
  851. SUBMENU:=$(OTHER_MENU)
  852. TITLE:=Hardware Random Number Generator TPM support
  853. KCONFIG:=CONFIG_HW_RANDOM_TPM
  854. FILES:=$(LINUX_DIR)/drivers/char/hw_random/tpm-rng.ko
  855. DEPENDS:= +kmod-random-core +kmod-tpm @LINUX_4_14
  856. AUTOLOAD:=$(call AutoProbe,tpm-rng)
  857. endef
  858. define KernelPackage/random-tpm/description
  859. Kernel module for the Random Number Generator
  860. in the Trusted Platform Module.
  861. endef
  862. $(eval $(call KernelPackage,random-tpm))
  863. define KernelPackage/thermal
  864. SUBMENU:=$(OTHER_MENU)
  865. TITLE:=Generic Thermal sysfs driver
  866. DEPENDS:=+kmod-hwmon-core
  867. HIDDEN:=1
  868. KCONFIG:= \
  869. CONFIG_THERMAL \
  870. CONFIG_THERMAL_OF=y \
  871. CONFIG_CPU_THERMAL=y \
  872. CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y \
  873. CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE=n \
  874. CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE=n \
  875. CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0 \
  876. CONFIG_THERMAL_GOV_FAIR_SHARE=n \
  877. CONFIG_THERMAL_GOV_STEP_WISE=y \
  878. CONFIG_THERMAL_GOV_USER_SPACE=n \
  879. CONFIG_THERMAL_HWMON=y \
  880. CONFIG_THERMAL_EMULATION=n
  881. FILES:=$(LINUX_DIR)/drivers/thermal/thermal_sys.ko
  882. AUTOLOAD:=$(call AutoProbe,thermal_sys)
  883. endef
  884. define KernelPackage/thermal/description
  885. Generic Thermal Sysfs driver offers a generic mechanism for thermal
  886. management. Usually it's made up of one or more thermal zone and cooling
  887. device.
  888. endef
  889. $(eval $(call KernelPackage,thermal))
  890. define KernelPackage/gpio-beeper
  891. SUBMENU:=$(OTHER_MENU)
  892. TITLE:=GPIO beeper support
  893. DEPENDS:=+kmod-input-core
  894. KCONFIG:= \
  895. CONFIG_INPUT_MISC=y \
  896. CONFIG_INPUT_GPIO_BEEPER
  897. FILES:= \
  898. $(LINUX_DIR)/drivers/input/misc/gpio-beeper.ko
  899. AUTOLOAD:=$(call AutoLoad,50,gpio-beeper)
  900. endef
  901. define KernelPackage/gpio-beeper/description
  902. This enables playing beeps through an GPIO-connected buzzer
  903. endef
  904. $(eval $(call KernelPackage,gpio-beeper))
  905. define KernelPackage/echo
  906. SUBMENU:=$(OTHER_MENU)
  907. TITLE:=Line Echo Canceller
  908. KCONFIG:=CONFIG_ECHO
  909. FILES:=$(LINUX_DIR)/drivers/misc/echo/echo.ko
  910. AUTOLOAD:=$(call AutoLoad,50,echo)
  911. endef
  912. define KernelPackage/echo/description
  913. This driver provides line echo cancelling support for mISDN and
  914. DAHDI drivers
  915. endef
  916. $(eval $(call KernelPackage,echo))
  917. define KernelPackage/bmp085
  918. SUBMENU:=$(OTHER_MENU)
  919. TITLE:=BMP085/BMP18x pressure sensor
  920. DEPENDS:= +kmod-regmap-core
  921. KCONFIG:= CONFIG_BMP085
  922. FILES:= $(LINUX_DIR)/drivers/misc/bmp085.ko
  923. endef
  924. define KernelPackage/bmp085/description
  925. This driver adds support for Bosch Sensortec's digital pressure
  926. sensors BMP085 and BMP18x.
  927. endef
  928. $(eval $(call KernelPackage,bmp085))
  929. define KernelPackage/bmp085-i2c
  930. SUBMENU:=$(OTHER_MENU)
  931. TITLE:=BMP085/BMP18x pressure sensor I2C
  932. DEPENDS:= +kmod-bmp085
  933. KCONFIG:= CONFIG_BMP085_I2C
  934. FILES:= $(LINUX_DIR)/drivers/misc/bmp085-i2c.ko
  935. AUTOLOAD:=$(call AutoProbe,bmp085-i2c)
  936. endef
  937. define KernelPackage/bmp085-i2c/description
  938. This driver adds support for Bosch Sensortec's digital pressure
  939. sensor connected via I2C.
  940. endef
  941. $(eval $(call KernelPackage,bmp085-i2c))
  942. define KernelPackage/bmp085-spi
  943. SUBMENU:=$(OTHER_MENU)
  944. TITLE:=BMP085/BMP18x pressure sensor SPI
  945. DEPENDS:= +kmod-bmp085
  946. KCONFIG:= CONFIG_BMP085_SPI
  947. FILES:= $(LINUX_DIR)/drivers/misc/bmp085-spi.ko
  948. AUTOLOAD:=$(call AutoProbe,bmp085-spi)
  949. endef
  950. define KernelPackage/bmp085-spi/description
  951. This driver adds support for Bosch Sensortec's digital pressure
  952. sensor connected via SPI.
  953. endef
  954. $(eval $(call KernelPackage,bmp085-spi))
  955. define KernelPackage/tpm
  956. SUBMENU:=$(OTHER_MENU)
  957. TITLE:=TPM Hardware Support
  958. DEPENDS:= +!LINUX_4_14:kmod-random-core
  959. KCONFIG:= CONFIG_TCG_TPM
  960. FILES:= $(LINUX_DIR)/drivers/char/tpm/tpm.ko
  961. AUTOLOAD:=$(call AutoLoad,10,tpm,1)
  962. endef
  963. define KernelPackage/tpm/description
  964. This enables TPM Hardware Support.
  965. endef
  966. $(eval $(call KernelPackage,tpm))
  967. define KernelPackage/tpm-tis
  968. SUBMENU:=$(OTHER_MENU)
  969. TITLE:=TPM TIS 1.2 Interface / TPM 2.0 FIFO Interface
  970. DEPENDS:= @TARGET_x86 +kmod-tpm
  971. KCONFIG:= CONFIG_TCG_TIS
  972. FILES:= \
  973. $(LINUX_DIR)/drivers/char/tpm/tpm_tis.ko \
  974. $(LINUX_DIR)/drivers/char/tpm/tpm_tis_core.ko
  975. AUTOLOAD:=$(call AutoLoad,20,tpm_tis,1)
  976. endef
  977. define KernelPackage/tpm-tis/description
  978. If you have a TPM security chip that is compliant with the
  979. TCG TIS 1.2 TPM specification (TPM1.2) or the TCG PTP FIFO
  980. specification (TPM2.0) say Yes and it will be accessible from
  981. within Linux.
  982. endef
  983. $(eval $(call KernelPackage,tpm-tis))
  984. define KernelPackage/tpm-i2c-atmel
  985. SUBMENU:=$(OTHER_MENU)
  986. TITLE:=TPM I2C Atmel Support
  987. DEPENDS:= +kmod-tpm +kmod-i2c-core
  988. KCONFIG:= CONFIG_TCG_TIS_I2C_ATMEL
  989. FILES:= $(LINUX_DIR)/drivers/char/tpm/tpm_i2c_atmel.ko
  990. AUTOLOAD:=$(call AutoLoad,40,tpm_i2c_atmel,1)
  991. endef
  992. define KernelPackage/tpm-i2c-atmel/description
  993. This enables the TPM Interface Specification 1.2 Interface (I2C - Atmel)
  994. endef
  995. $(eval $(call KernelPackage,tpm-i2c-atmel))
  996. define KernelPackage/tpm-i2c-infineon
  997. SUBMENU:=$(OTHER_MENU)
  998. TITLE:= TPM I2C Infineon driver
  999. DEPENDS:= +kmod-tpm +kmod-i2c-core
  1000. KCONFIG:= CONFIG_TCG_TIS_I2C_INFINEON
  1001. FILES:= $(LINUX_DIR)/drivers/char/tpm/tpm_i2c_infineon.ko
  1002. AUTOLOAD:= $(call AutoLoad,40,tpm_i2c_infineon,1)
  1003. endef
  1004. define KernelPackage/tpm-i2c-infineon/description
  1005. This enables the TPM Interface Specification 1.2 Interface (I2C - Infineon)
  1006. endef
  1007. $(eval $(call KernelPackage,tpm-i2c-infineon))
  1008. define KernelPackage/w83627hf-wdt
  1009. SUBMENU:=$(OTHER_MENU)
  1010. TITLE:=Winbond 83627HF Watchdog Timer
  1011. KCONFIG:=CONFIG_W83627HF_WDT
  1012. FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/w83627hf_wdt.ko
  1013. AUTOLOAD:=$(call AutoLoad,50,w83627hf-wdt,1)
  1014. endef
  1015. define KernelPackage/w83627hf-wdt/description
  1016. Kernel module for Winbond 83627HF Watchdog Timer
  1017. endef
  1018. $(eval $(call KernelPackage,w83627hf-wdt))
  1019. define KernelPackage/itco-wdt
  1020. SUBMENU:=$(OTHER_MENU)
  1021. TITLE:=Intel iTCO Watchdog Timer
  1022. KCONFIG:=CONFIG_ITCO_WDT \
  1023. CONFIG_ITCO_VENDOR_SUPPORT=y
  1024. FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/iTCO_wdt.ko \
  1025. $(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/iTCO_vendor_support.ko
  1026. AUTOLOAD:=$(call AutoLoad,50,iTCO_vendor_support iTCO_wdt,1)
  1027. endef
  1028. define KernelPackage/itco-wdt/description
  1029. Kernel module for Intel iTCO Watchdog Timer
  1030. endef
  1031. $(eval $(call KernelPackage,itco-wdt))
  1032. define KernelPackage/it87-wdt
  1033. SUBMENU:=$(OTHER_MENU)
  1034. TITLE:=ITE IT87 Watchdog Timer
  1035. KCONFIG:=CONFIG_IT87_WDT
  1036. FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/it87_wdt.ko
  1037. AUTOLOAD:=$(call AutoLoad,50,it87-wdt,1)
  1038. MODPARAMS.it87-wdt:= \
  1039. nogameport=1 \
  1040. nocir=1
  1041. endef
  1042. define KernelPackage/it87-wdt/description
  1043. Kernel module for ITE IT87 Watchdog Timer
  1044. endef
  1045. $(eval $(call KernelPackage,it87-wdt))
  1046. define KernelPackage/f71808e-wdt
  1047. SUBMENU:=$(OTHER_MENU)
  1048. TITLE:=Fintek F718xx/F818xx Watchdog Timer
  1049. DEPENDS:=@TARGET_x86
  1050. KCONFIG:=CONFIG_F71808E_WDT
  1051. FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/f71808e_wdt.ko
  1052. AUTOLOAD:=$(call AutoProbe,f71808e-wdt,1)
  1053. endef
  1054. define KernelPackage/f71808e-wdt/description
  1055. Kernel module for the watchdog timer found on many Fintek Super-IO chips.
  1056. endef
  1057. $(eval $(call KernelPackage,f71808e-wdt))