other.mk 28 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065
  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/dma-buf
  23. SUBMENU:=$(OTHER_MENU)
  24. TITLE:=DMA shared buffer support
  25. HIDDEN:=1
  26. KCONFIG:=CONFIG_DMA_SHARED_BUFFER
  27. ifeq ($(strip $(CONFIG_EXTERNAL_KERNEL_TREE)),"")
  28. ifeq ($(strip $(CONFIG_KERNEL_GIT_CLONE_URI)),"")
  29. FILES:=$(LINUX_DIR)/drivers/dma-buf/dma-shared-buffer.ko
  30. endif
  31. endif
  32. AUTOLOAD:=$(call AutoLoad,20,dma-shared-buffer)
  33. endef
  34. $(eval $(call KernelPackage,dma-buf))
  35. define KernelPackage/eeprom-93cx6
  36. SUBMENU:=$(OTHER_MENU)
  37. TITLE:=EEPROM 93CX6 support
  38. KCONFIG:=CONFIG_EEPROM_93CX6
  39. FILES:=$(LINUX_DIR)/drivers/misc/eeprom/eeprom_93cx6.ko
  40. AUTOLOAD:=$(call AutoLoad,20,eeprom_93cx6)
  41. endef
  42. define KernelPackage/eeprom-93cx6/description
  43. Kernel module for EEPROM 93CX6 support
  44. endef
  45. $(eval $(call KernelPackage,eeprom-93cx6))
  46. define KernelPackage/eeprom-at24
  47. SUBMENU:=$(OTHER_MENU)
  48. TITLE:=EEPROM AT24 support
  49. KCONFIG:=CONFIG_EEPROM_AT24
  50. DEPENDS:=+kmod-i2c-core +kmod-regmap-i2c
  51. FILES:=$(LINUX_DIR)/drivers/misc/eeprom/at24.ko
  52. AUTOLOAD:=$(call AutoProbe,at24)
  53. endef
  54. define KernelPackage/eeprom-at24/description
  55. Kernel module for most I2C EEPROMs
  56. endef
  57. $(eval $(call KernelPackage,eeprom-at24))
  58. define KernelPackage/eeprom-at25
  59. SUBMENU:=$(OTHER_MENU)
  60. TITLE:=EEPROM AT25 support
  61. KCONFIG:=CONFIG_EEPROM_AT25
  62. FILES:=$(LINUX_DIR)/drivers/misc/eeprom/at25.ko
  63. AUTOLOAD:=$(call AutoProbe,at25)
  64. endef
  65. define KernelPackage/eeprom-at25/description
  66. Kernel module for most SPI EEPROMs
  67. endef
  68. $(eval $(call KernelPackage,eeprom-at25))
  69. define KernelPackage/google-firmware
  70. SUBMENU:=$(OTHER_MENU)
  71. TITLE:=Google firmware drivers (Coreboot, VPD, Memconsole)
  72. KCONFIG:= \
  73. CONFIG_GOOGLE_FIRMWARE=y \
  74. CONFIG_GOOGLE_COREBOOT_TABLE \
  75. CONFIG_GOOGLE_MEMCONSOLE \
  76. CONFIG_GOOGLE_MEMCONSOLE_COREBOOT \
  77. CONFIG_GOOGLE_VPD
  78. FILES:= \
  79. $(LINUX_DIR)/drivers/firmware/google/coreboot_table.ko \
  80. $(LINUX_DIR)/drivers/firmware/google/memconsole.ko \
  81. $(LINUX_DIR)/drivers/firmware/google/memconsole-coreboot.ko \
  82. $(LINUX_DIR)/drivers/firmware/google/vpd-sysfs.ko
  83. AUTOLOAD:=$(call AutoProbe,coreboot_table memconsole-coreboot vpd-sysfs)
  84. endef
  85. define KernelPackage/google-firmware/description
  86. Kernel modules for Google firmware drivers. Useful for examining firmware and
  87. boot details on devices using a Google bootloader based on Coreboot. Provides
  88. files like /sys/firmware/log and /sys/firmware/vpd.
  89. endef
  90. $(eval $(call KernelPackage,google-firmware))
  91. define KernelPackage/lkdtm
  92. SUBMENU:=$(OTHER_MENU)
  93. TITLE:=Linux Kernel Dump Test Tool Module
  94. KCONFIG:=CONFIG_LKDTM
  95. FILES:=$(LINUX_DIR)/drivers/misc/lkdtm/lkdtm.ko
  96. AUTOLOAD:=$(call AutoProbe,lkdtm)
  97. endef
  98. define KernelPackage/lkdtm/description
  99. This module enables testing of the different dumping mechanisms by inducing
  100. system failures at predefined crash points.
  101. endef
  102. $(eval $(call KernelPackage,lkdtm))
  103. define KernelPackage/mlx_wdt
  104. SUBMENU:=$(OTHER_MENU)
  105. TITLE:=Mellanox Watchdog
  106. DEPENDS:=@TARGET_x86 +kmod-regmap-core
  107. KCONFIG:= \
  108. CONFIG_MELLANOX_PLATFORM=y \
  109. CONFIG_MLX_WDT
  110. FILES:=$(LINUX_DIR)/drivers/watchdog/mlx_wdt.ko
  111. AUTOLOAD:=$(call AutoProbe,mlx_wdt)
  112. endef
  113. define KernelPackage/mlx_wdt/description
  114. This is the driver for the hardware watchdog on Mellanox systems.
  115. This driver can be used together with the watchdog daemon.
  116. It can also watch your kernel to make sure it doesn't freeze,
  117. and if it does, it reboots your system after a certain amount of
  118. time.
  119. endef
  120. $(eval $(call KernelPackage,mlx_wdt))
  121. define KernelPackage/mlxreg
  122. SUBMENU:=$(OTHER_MENU)
  123. TITLE:=Mellanox platform register access
  124. DEPENDS:=@TARGET_x86 +kmod-i2c-mux-mlxcpld
  125. KCONFIG:= \
  126. CONFIG_MELLANOX_PLATFORM=y \
  127. CONFIG_MLX_PLATFORM \
  128. CONFIG_MLXREG_HOTPLUG \
  129. CONFIG_MLXREG_IO \
  130. CONFIG_SENSORS_MLXREG_FAN \
  131. CONFIG_LEDS_MLXREG
  132. FILES:= \
  133. $(LINUX_DIR)/drivers/platform/x86/mlx-platform.ko \
  134. $(LINUX_DIR)/drivers/platform/mellanox/mlxreg-hotplug.ko \
  135. $(LINUX_DIR)/drivers/platform/mellanox/mlxreg-io.ko \
  136. $(LINUX_DIR)/drivers/hwmon/mlxreg-fan.ko \
  137. $(LINUX_DIR)/drivers/leds/leds-mlxreg.ko
  138. AUTOLOAD:=$(call AutoProbe,mlx-platform mlxreg-hotplug mlxreg-io mlxreg-fan leds-mlxreg)
  139. endef
  140. define KernelPackage/mlxreg/description
  141. Allows access to Mellanox programmable device register
  142. space through sysfs interface. The sets of registers for sysfs access
  143. are defined per system type bases and include the registers related
  144. to system resets operation, system reset causes monitoring and some
  145. kinds of mux selection.
  146. endef
  147. $(eval $(call KernelPackage,mlxreg))
  148. define KernelPackage/mlxreg-lc
  149. SUBMENU:=$(OTHER_MENU)
  150. TITLE:=Mellanox line card platform support
  151. DEPENDS:=kmod-mlxreg +kmod-regmap-i2c
  152. KCONFIG:=CONFIG_MLXREG_LC
  153. FILES:=$(LINUX_DIR)/drivers/platform/mellanox/mlxreg-lc.ko
  154. AUTOLOAD:=$(call AutoProbe,mlxreg-lc)
  155. endef
  156. define KernelPackage/mlxreg-lc/description
  157. Provides support for the Mellanox MSN4800-XX line cards,
  158. which are the part of MSN4800 Ethernet modular switch systems.
  159. endef
  160. $(eval $(call KernelPackage,mlxreg-lc))
  161. define KernelPackage/mlxreg-sn2201
  162. SUBMENU:=$(OTHER_MENU)
  163. TITLE:=Nvidia SN2201 platform support
  164. DEPENDS:=kmod-mlxreg +kmod-regmap-i2c
  165. KCONFIG:=CONFIG_NVSW_SN2201
  166. FILES:=$(LINUX_DIR)/drivers/platform/mellanox/nvsw-sn2201.ko
  167. AUTOLOAD:=$(call AutoProbe,nvsw-sn2201)
  168. endef
  169. define KernelPackage/mlxreg-sn2201/description
  170. Provides support for the Nvidia SN2201 platform.
  171. endef
  172. $(eval $(call KernelPackage,mlxreg-sn2201))
  173. define KernelPackage/pinctrl-mcp23s08
  174. SUBMENU:=$(OTHER_MENU)
  175. TITLE:=Microchip MCP23xxx I/O expander
  176. HIDDEN:=1
  177. DEPENDS:=@GPIO_SUPPORT +kmod-regmap-core
  178. KCONFIG:=CONFIG_PINCTRL_MCP23S08
  179. FILES:=$(LINUX_DIR)/drivers/pinctrl/pinctrl-mcp23s08.ko
  180. AUTOLOAD:=$(call AutoLoad,40,pinctrl-mcp23s08)
  181. endef
  182. define KernelPackage/pinctrl-mcp23s08/description
  183. Kernel module for Microchip MCP23xxx I/O expander
  184. endef
  185. $(eval $(call KernelPackage,pinctrl-mcp23s08))
  186. define KernelPackage/pinctrl-mcp23s08-i2c
  187. SUBMENU:=$(OTHER_MENU)
  188. TITLE:=Microchip MCP23xxx I/O expander (I2C)
  189. DEPENDS:=@GPIO_SUPPORT \
  190. +kmod-pinctrl-mcp23s08 \
  191. +kmod-i2c-core \
  192. +kmod-regmap-i2c
  193. KCONFIG:=CONFIG_PINCTRL_MCP23S08_I2C
  194. FILES:=$(LINUX_DIR)/drivers/pinctrl/pinctrl-mcp23s08_i2c.ko
  195. AUTOLOAD:=$(call AutoLoad,40,pinctrl-mcp23s08-i2c)
  196. endef
  197. define KernelPackage/pinctrl-mcp23s08-i2c/description
  198. Kernel module for Microchip MCP23xxx I/O expander via I2C
  199. endef
  200. $(eval $(call KernelPackage,pinctrl-mcp23s08-i2c))
  201. define KernelPackage/pinctrl-mcp23s08-spi
  202. SUBMENU:=$(OTHER_MENU)
  203. TITLE:=Microchip MCP23xxx I/O expander (SPI)
  204. DEPENDS:=@GPIO_SUPPORT +kmod-pinctrl-mcp23s08
  205. KCONFIG:=CONFIG_PINCTRL_MCP23S08_SPI
  206. FILES:=$(LINUX_DIR)/drivers/pinctrl/pinctrl-mcp23s08_spi.ko
  207. AUTOLOAD:=$(call AutoLoad,40,pinctrl-mcp23s08-spi)
  208. endef
  209. define KernelPackage/pinctrl-mcp23s08-spi/description
  210. Kernel module for Microchip MCP23xxx I/O expander via SPI
  211. endef
  212. $(eval $(call KernelPackage,pinctrl-mcp23s08-spi))
  213. define KernelPackage/ppdev
  214. SUBMENU:=$(OTHER_MENU)
  215. TITLE:=Parallel port support
  216. KCONFIG:= \
  217. CONFIG_PARPORT \
  218. CONFIG_PPDEV
  219. FILES:= \
  220. $(LINUX_DIR)/drivers/parport/parport.ko \
  221. $(LINUX_DIR)/drivers/char/ppdev.ko
  222. AUTOLOAD:=$(call AutoLoad,50,parport ppdev)
  223. endef
  224. $(eval $(call KernelPackage,ppdev))
  225. define KernelPackage/parport-pc
  226. SUBMENU:=$(OTHER_MENU)
  227. TITLE:=Parallel port interface (PC-style) support
  228. DEPENDS:=+kmod-ppdev
  229. KCONFIG:= \
  230. CONFIG_KS0108=n \
  231. CONFIG_PARPORT_PC \
  232. CONFIG_PARPORT_1284=y \
  233. CONFIG_PARPORT_PC_FIFO=y \
  234. CONFIG_PARPORT_PC_PCMCIA=n \
  235. CONFIG_PARPORT_PC_SUPERIO=y \
  236. CONFIG_PARPORT_SERIAL=n \
  237. CONFIG_PARIDE=n \
  238. CONFIG_SCSI_IMM=n \
  239. CONFIG_SCSI_PPA=n
  240. FILES:= \
  241. $(LINUX_DIR)/drivers/parport/parport_pc.ko
  242. AUTOLOAD:=$(call AutoLoad,51,parport_pc)
  243. endef
  244. $(eval $(call KernelPackage,parport-pc))
  245. define KernelPackage/lp
  246. SUBMENU:=$(OTHER_MENU)
  247. TITLE:=Parallel port line printer device support
  248. DEPENDS:=+kmod-ppdev
  249. KCONFIG:= \
  250. CONFIG_PRINTER
  251. FILES:= \
  252. $(LINUX_DIR)/drivers/char/lp.ko
  253. AUTOLOAD:=$(call AutoLoad,52,lp)
  254. endef
  255. $(eval $(call KernelPackage,lp))
  256. define KernelPackage/mmc
  257. SUBMENU:=$(OTHER_MENU)
  258. TITLE:=MMC/SD Card Support
  259. DEPENDS:=@!TARGET_uml
  260. KCONFIG:= \
  261. CONFIG_MMC \
  262. CONFIG_MMC_BLOCK \
  263. CONFIG_MMC_DEBUG=n \
  264. CONFIG_MMC_UNSAFE_RESUME=n \
  265. CONFIG_MMC_TIFM_SD=n \
  266. CONFIG_MMC_WBSD=n \
  267. CONFIG_SDIO_UART=n
  268. FILES:= \
  269. $(LINUX_DIR)/drivers/mmc/core/mmc_core.ko \
  270. $(LINUX_DIR)/drivers/mmc/core/mmc_block.ko
  271. AUTOLOAD:=$(call AutoProbe,mmc_core mmc_block,1)
  272. endef
  273. define KernelPackage/mmc/description
  274. Kernel support for MMC/SD cards
  275. endef
  276. $(eval $(call KernelPackage,mmc))
  277. define KernelPackage/sdhci
  278. SUBMENU:=$(OTHER_MENU)
  279. TITLE:=Secure Digital Host Controller Interface support
  280. DEPENDS:=+kmod-mmc
  281. KCONFIG:= \
  282. CONFIG_MMC_SDHCI \
  283. CONFIG_MMC_SDHCI_PLTFM \
  284. CONFIG_MMC_SDHCI_PCI=n
  285. FILES:= \
  286. $(LINUX_DIR)/drivers/mmc/host/sdhci.ko \
  287. $(LINUX_DIR)/drivers/mmc/host/sdhci-pltfm.ko
  288. AUTOLOAD:=$(call AutoProbe,sdhci-pltfm,1)
  289. endef
  290. define KernelPackage/sdhci/description
  291. Kernel support for SDHCI Hosts
  292. endef
  293. $(eval $(call KernelPackage,sdhci))
  294. define KernelPackage/rfkill
  295. SUBMENU:=$(OTHER_MENU)
  296. TITLE:=RF switch subsystem support
  297. DEPENDS:=@USE_RFKILL +kmod-input-core
  298. KCONFIG:= \
  299. CONFIG_RFKILL_FULL \
  300. CONFIG_RFKILL_INPUT=y \
  301. CONFIG_RFKILL_LEDS=y
  302. FILES:= \
  303. $(LINUX_DIR)/net/rfkill/rfkill.ko
  304. AUTOLOAD:=$(call AutoLoad,20,rfkill)
  305. endef
  306. define KernelPackage/rfkill/description
  307. Say Y here if you want to have control over RF switches
  308. found on many WiFi and Bluetooth cards
  309. endef
  310. $(eval $(call KernelPackage,rfkill))
  311. define KernelPackage/softdog
  312. SUBMENU:=$(OTHER_MENU)
  313. TITLE:=Software watchdog driver
  314. KCONFIG:=CONFIG_SOFT_WATCHDOG \
  315. CONFIG_SOFT_WATCHDOG_PRETIMEOUT=n
  316. FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/softdog.ko
  317. AUTOLOAD:=$(call AutoLoad,50,softdog,1)
  318. endef
  319. define KernelPackage/softdog/description
  320. Software watchdog driver
  321. endef
  322. $(eval $(call KernelPackage,softdog))
  323. define KernelPackage/ssb
  324. SUBMENU:=$(OTHER_MENU)
  325. TITLE:=Silicon Sonics Backplane glue code
  326. DEPENDS:=@PCI_SUPPORT @!TARGET_bcm47xx @!TARGET_bcm63xx
  327. KCONFIG:=\
  328. CONFIG_SSB \
  329. CONFIG_SSB_B43_PCI_BRIDGE=y \
  330. CONFIG_SSB_DRIVER_MIPS=n \
  331. CONFIG_SSB_DRIVER_PCICORE=y \
  332. CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y \
  333. CONFIG_SSB_FALLBACK_SPROM=y \
  334. CONFIG_SSB_PCIHOST=y \
  335. CONFIG_SSB_PCIHOST_POSSIBLE=y \
  336. CONFIG_SSB_POSSIBLE=y \
  337. CONFIG_SSB_SPROM=y \
  338. CONFIG_SSB_SILENT=y
  339. FILES:=$(LINUX_DIR)/drivers/ssb/ssb.ko
  340. AUTOLOAD:=$(call AutoLoad,18,ssb,1)
  341. endef
  342. define KernelPackage/ssb/description
  343. Silicon Sonics Backplane glue code.
  344. endef
  345. $(eval $(call KernelPackage,ssb))
  346. define KernelPackage/bcma
  347. SUBMENU:=$(OTHER_MENU)
  348. TITLE:=BCMA support
  349. DEPENDS:=@PCI_SUPPORT @!TARGET_bcm47xx @!TARGET_bcm53xx
  350. KCONFIG:=\
  351. CONFIG_BCMA \
  352. CONFIG_BCMA_POSSIBLE=y \
  353. CONFIG_BCMA_BLOCKIO=y \
  354. CONFIG_BCMA_FALLBACK_SPROM=y \
  355. CONFIG_BCMA_HOST_PCI_POSSIBLE=y \
  356. CONFIG_BCMA_HOST_PCI=y \
  357. CONFIG_BCMA_HOST_SOC=n \
  358. CONFIG_BCMA_DRIVER_MIPS=n \
  359. CONFIG_BCMA_DRIVER_PCI_HOSTMODE=n \
  360. CONFIG_BCMA_DRIVER_GMAC_CMN=n \
  361. CONFIG_BCMA_DEBUG=n
  362. FILES:=$(LINUX_DIR)/drivers/bcma/bcma.ko
  363. AUTOLOAD:=$(call AutoLoad,29,bcma)
  364. endef
  365. define KernelPackage/bcma/description
  366. Bus driver for Broadcom specific Advanced Microcontroller Bus Architecture
  367. endef
  368. $(eval $(call KernelPackage,bcma))
  369. define KernelPackage/mfd
  370. SUBMENU:=$(OTHER_MENU)
  371. TITLE:=Multifunction device drivers
  372. HIDDEN:=1
  373. KCONFIG:=CONFIG_MFD_CORE
  374. FILES:=$(LINUX_DIR)/drivers/mfd/mfd-core.ko
  375. AUTOLOAD:=$(call AutoLoad,10,mfd-core)
  376. endef
  377. $(eval $(call KernelPackage,mfd))
  378. define KernelPackage/mtdtests
  379. SUBMENU:=$(OTHER_MENU)
  380. TITLE:=MTD subsystem tests
  381. KCONFIG:=CONFIG_MTD_TESTS
  382. FILES:=\
  383. $(LINUX_DIR)/drivers/mtd/tests/mtd_nandbiterrs.ko \
  384. $(LINUX_DIR)/drivers/mtd/tests/mtd_nandecctest.ko \
  385. $(LINUX_DIR)/drivers/mtd/tests/mtd_oobtest.ko \
  386. $(LINUX_DIR)/drivers/mtd/tests/mtd_pagetest.ko \
  387. $(LINUX_DIR)/drivers/mtd/tests/mtd_readtest.ko \
  388. $(LINUX_DIR)/drivers/mtd/tests/mtd_speedtest.ko \
  389. $(LINUX_DIR)/drivers/mtd/tests/mtd_stresstest.ko \
  390. $(LINUX_DIR)/drivers/mtd/tests/mtd_subpagetest.ko \
  391. $(LINUX_DIR)/drivers/mtd/tests/mtd_test.ko \
  392. $(LINUX_DIR)/drivers/mtd/tests/mtd_torturetest.ko
  393. endef
  394. define KernelPackage/mtdtests/description
  395. Kernel modules for MTD subsystem/driver testing
  396. endef
  397. $(eval $(call KernelPackage,mtdtests))
  398. define KernelPackage/mtdoops
  399. SUBMENU:=$(OTHER_MENU)
  400. TITLE:=Log panic/oops to an MTD buffer
  401. KCONFIG:=CONFIG_MTD_OOPS
  402. FILES:=$(LINUX_DIR)/drivers/mtd/mtdoops.ko
  403. endef
  404. define KernelPackage/mtdoops/description
  405. Kernel modules for Log panic/oops to an MTD buffer
  406. endef
  407. $(eval $(call KernelPackage,mtdoops))
  408. define KernelPackage/mtdram
  409. SUBMENU:=$(OTHER_MENU)
  410. TITLE:=Test MTD driver using RAM
  411. KCONFIG:=CONFIG_MTD_MTDRAM \
  412. CONFIG_MTDRAM_TOTAL_SIZE=4096 \
  413. CONFIG_MTDRAM_ERASE_SIZE=128
  414. FILES:=$(LINUX_DIR)/drivers/mtd/devices/mtdram.ko
  415. endef
  416. define KernelPackage/mtdram/description
  417. Test MTD driver using RAM
  418. endef
  419. $(eval $(call KernelPackage,mtdram))
  420. define KernelPackage/ramoops
  421. SUBMENU:=$(OTHER_MENU)
  422. TITLE:=Ramoops (pstore-ram)
  423. DEFAULT:=m if ALL_KMODS
  424. KCONFIG:=CONFIG_PSTORE_RAM \
  425. CONFIG_PSTORE_CONSOLE=y
  426. DEPENDS:=+kmod-pstore +kmod-reed-solomon
  427. FILES:= $(LINUX_DIR)/fs/pstore/ramoops.ko
  428. AUTOLOAD:=$(call AutoLoad,30,ramoops,1)
  429. endef
  430. define KernelPackage/ramoops/description
  431. Kernel module for pstore-ram (ramoops) crash log storage
  432. endef
  433. $(eval $(call KernelPackage,ramoops))
  434. define KernelPackage/reed-solomon
  435. SUBMENU:=$(OTHER_MENU)
  436. TITLE:=Reed-Solomon error correction
  437. DEFAULT:=m if ALL_KMODS
  438. KCONFIG:=CONFIG_REED_SOLOMON \
  439. CONFIG_REED_SOLOMON_DEC8=y \
  440. CONFIG_REED_SOLOMON_ENC8=y
  441. FILES:= $(LINUX_DIR)/lib/reed_solomon/reed_solomon.ko
  442. AUTOLOAD:=$(call AutoLoad,30,reed_solomon,1)
  443. endef
  444. define KernelPackage/reed-solomon/description
  445. Kernel module for Reed-Solomon error correction
  446. endef
  447. $(eval $(call KernelPackage,reed-solomon))
  448. define KernelPackage/serial-8250
  449. SUBMENU:=$(OTHER_MENU)
  450. TITLE:=8250 UARTs
  451. KCONFIG:= CONFIG_SERIAL_8250 \
  452. CONFIG_SERIAL_8250_PCI \
  453. CONFIG_SERIAL_8250_NR_UARTS=16 \
  454. CONFIG_SERIAL_8250_RUNTIME_UARTS=16 \
  455. CONFIG_SERIAL_8250_EXTENDED=y \
  456. CONFIG_SERIAL_8250_MANY_PORTS=y \
  457. CONFIG_SERIAL_8250_SHARE_IRQ=y \
  458. CONFIG_SERIAL_8250_DETECT_IRQ=n \
  459. CONFIG_SERIAL_8250_RSA=n
  460. FILES:= \
  461. $(LINUX_DIR)/drivers/tty/serial/8250/8250.ko \
  462. $(LINUX_DIR)/drivers/tty/serial/8250/8250_base.ko \
  463. $(if $(CONFIG_PCI),$(LINUX_DIR)/drivers/tty/serial/8250/8250_pci.ko) \
  464. $(if $(CONFIG_GPIOLIB),$(LINUX_DIR)/drivers/tty/serial/serial_mctrl_gpio.ko)
  465. AUTOLOAD:=$(call AutoProbe,8250 8250_base 8250_pci)
  466. endef
  467. define KernelPackage/serial-8250/description
  468. Kernel module for 8250 UART based serial ports
  469. endef
  470. $(eval $(call KernelPackage,serial-8250))
  471. define KernelPackage/serial-8250-exar
  472. SUBMENU:=$(OTHER_MENU)
  473. TITLE:=Exar 8250 UARTs
  474. KCONFIG:= CONFIG_SERIAL_8250_EXAR
  475. FILES:=$(LINUX_DIR)/drivers/tty/serial/8250/8250_exar.ko
  476. AUTOLOAD:=$(call AutoProbe,8250 8250_base 8250_exar)
  477. DEPENDS:=@PCI_SUPPORT +kmod-serial-8250
  478. endef
  479. define KernelPackage/serial-8250-exar/description
  480. Kernel module for Exar serial ports
  481. endef
  482. $(eval $(call KernelPackage,serial-8250-exar))
  483. define KernelPackage/regmap-core
  484. SUBMENU:=$(OTHER_MENU)
  485. TITLE:=Generic register map support
  486. HIDDEN:=1
  487. KCONFIG:=CONFIG_REGMAP
  488. ifneq ($(wildcard $(LINUX_DIR)/drivers/base/regmap/regmap-core.ko),)
  489. FILES:=$(LINUX_DIR)/drivers/base/regmap/regmap-core.ko
  490. endif
  491. endef
  492. define KernelPackage/regmap-core/description
  493. Generic register map support
  494. endef
  495. $(eval $(call KernelPackage,regmap-core))
  496. define KernelPackage/regmap-spi
  497. SUBMENU:=$(OTHER_MENU)
  498. TITLE:=SPI register map support
  499. DEPENDS:=+kmod-regmap-core
  500. HIDDEN:=1
  501. KCONFIG:=CONFIG_REGMAP_SPI \
  502. CONFIG_SPI=y
  503. FILES:=$(LINUX_DIR)/drivers/base/regmap/regmap-spi.ko
  504. endef
  505. define KernelPackage/regmap-spi/description
  506. SPI register map support
  507. endef
  508. $(eval $(call KernelPackage,regmap-spi))
  509. define KernelPackage/regmap-i2c
  510. SUBMENU:=$(OTHER_MENU)
  511. TITLE:=I2C register map support
  512. DEPENDS:=+kmod-regmap-core +kmod-i2c-core
  513. HIDDEN:=1
  514. KCONFIG:=CONFIG_REGMAP_I2C
  515. FILES:=$(LINUX_DIR)/drivers/base/regmap/regmap-i2c.ko
  516. endef
  517. define KernelPackage/regmap-i2c/description
  518. I2C register map support
  519. endef
  520. $(eval $(call KernelPackage,regmap-i2c))
  521. define KernelPackage/regmap-mmio
  522. SUBMENU:=$(OTHER_MENU)
  523. TITLE:=MMIO register map support
  524. DEPENDS:=+kmod-regmap-core
  525. HIDDEN:=1
  526. KCONFIG:=CONFIG_REGMAP_MMIO
  527. FILES:=$(LINUX_DIR)/drivers/base/regmap/regmap-mmio.ko
  528. endef
  529. define KernelPackage/regmap-mmio/description
  530. MMIO register map support
  531. endef
  532. $(eval $(call KernelPackage,regmap-mmio))
  533. define KernelPackage/ikconfig
  534. SUBMENU:=$(OTHER_MENU)
  535. TITLE:=Kernel configuration via /proc/config.gz
  536. KCONFIG:=CONFIG_IKCONFIG \
  537. CONFIG_IKCONFIG_PROC=y
  538. FILES:=$(LINUX_DIR)/kernel/configs.ko
  539. AUTOLOAD:=$(call AutoLoad,70,configs)
  540. endef
  541. define KernelPackage/ikconfig/description
  542. Kernel configuration via /proc/config.gz
  543. endef
  544. $(eval $(call KernelPackage,ikconfig))
  545. define KernelPackage/zram
  546. SUBMENU:=$(OTHER_MENU)
  547. DEPENDS:= \
  548. +(KERNEL_ZRAM_BACKEND_LZO||KERNEL_ZRAM_DEF_COMP_LZORLE||KERNEL_ZRAM_DEF_COMP_LZO):kmod-lib-lzo \
  549. +(KERNEL_ZRAM_BACKEND_LZ4||KERNEL_ZRAM_DEF_COMP_LZ4):kmod-lib-lz4 \
  550. +(KERNEL_ZRAM_BACKEND_LZ4HC||KERNEL_ZRAM_DEF_COMP_LZ4HC):kmod-lib-lz4hc \
  551. +(KERNEL_ZRAM_BACKEND_ZSTD||KERNEL_ZRAM_DEF_COMP_ZSTD):kmod-lib-zstd
  552. TITLE:=ZRAM
  553. KCONFIG:= \
  554. CONFIG_ZSMALLOC \
  555. CONFIG_ZRAM \
  556. CONFIG_ZRAM_DEBUG=n \
  557. CONFIG_ZRAM_WRITEBACK=n \
  558. CONFIG_ZSMALLOC_STAT=n
  559. FILES:= \
  560. $(LINUX_DIR)/mm/zsmalloc.ko \
  561. $(LINUX_DIR)/drivers/block/zram/zram.ko
  562. AUTOLOAD:=$(call AutoLoad,20,zsmalloc zram)
  563. endef
  564. define KernelPackage/zram/description
  565. Compressed RAM block device support
  566. endef
  567. define KernelPackage/zram/config
  568. if PACKAGE_kmod-zram
  569. if !LINUX_6_6
  570. config KERNEL_ZRAM_BACKEND_LZO
  571. bool "lzo and lzo-rle compression support" if KERNEL_ZRAM_BACKEND_LZ4 || \
  572. KERNEL_ZRAM_BACKEND_LZ4HC || KERNEL_ZRAM_BACKEND_ZSTD
  573. default !KERNEL_ZRAM_BACKEND_LZ4 && \
  574. !KERNEL_ZRAM_BACKEND_LZ4HC && !KERNEL_ZRAM_BACKEND_ZSTD
  575. config KERNEL_ZRAM_BACKEND_LZ4
  576. bool "lz4 compression support"
  577. config KERNEL_ZRAM_BACKEND_LZ4HC
  578. bool "lz4hc compression support"
  579. config KERNEL_ZRAM_BACKEND_ZSTD
  580. bool "zstd compression support"
  581. endif
  582. choice
  583. prompt "ZRAM Default compressor"
  584. default KERNEL_ZRAM_DEF_COMP_LZORLE
  585. config KERNEL_ZRAM_DEF_COMP_LZORLE
  586. bool "lzo-rle"
  587. depends on KERNEL_ZRAM_BACKEND_LZO || LINUX_6_6
  588. config KERNEL_ZRAM_DEF_COMP_LZO
  589. bool "lzo"
  590. depends on KERNEL_ZRAM_BACKEND_LZO || LINUX_6_6
  591. config KERNEL_ZRAM_DEF_COMP_LZ4
  592. bool "lz4"
  593. depends on KERNEL_ZRAM_BACKEND_LZ4 || LINUX_6_6
  594. config KERNEL_ZRAM_DEF_COMP_LZ4HC
  595. bool "lz4-hc"
  596. depends on KERNEL_ZRAM_BACKEND_LZ4HC || LINUX_6_6
  597. config KERNEL_ZRAM_DEF_COMP_ZSTD
  598. bool "zstd"
  599. depends on KERNEL_ZRAM_BACKEND_ZSTD || LINUX_6_6
  600. endchoice
  601. endif
  602. endef
  603. $(eval $(call KernelPackage,zram))
  604. define KernelPackage/pps
  605. SUBMENU:=$(OTHER_MENU)
  606. TITLE:=PPS support
  607. KCONFIG:=CONFIG_PPS
  608. FILES:=$(LINUX_DIR)/drivers/pps/pps_core.ko
  609. AUTOLOAD:=$(call AutoLoad,17,pps_core,1)
  610. endef
  611. define KernelPackage/pps/description
  612. PPS (Pulse Per Second) is a special pulse provided by some GPS
  613. antennae. Userland can use it to get a high-precision time
  614. reference.
  615. endef
  616. $(eval $(call KernelPackage,pps))
  617. define KernelPackage/pps-gpio
  618. SUBMENU:=$(OTHER_MENU)
  619. TITLE:=PPS client using GPIO
  620. DEPENDS:=+kmod-pps
  621. KCONFIG:=CONFIG_PPS_CLIENT_GPIO
  622. FILES:=$(LINUX_DIR)/drivers/pps/clients/pps-gpio.ko
  623. AUTOLOAD:=$(call AutoLoad,18,pps-gpio,1)
  624. endef
  625. define KernelPackage/pps-gpio/description
  626. Support for a PPS source using GPIO. To be useful you must
  627. also register a platform device specifying the GPIO pin and
  628. other options, usually in your board setup.
  629. endef
  630. $(eval $(call KernelPackage,pps-gpio))
  631. define KernelPackage/pps-ldisc
  632. SUBMENU:=$(OTHER_MENU)
  633. TITLE:=PPS line discipline
  634. DEPENDS:=+kmod-pps
  635. KCONFIG:=CONFIG_PPS_CLIENT_LDISC
  636. FILES:=$(LINUX_DIR)/drivers/pps/clients/pps-ldisc.ko
  637. AUTOLOAD:=$(call AutoLoad,18,pps-ldisc,1)
  638. endef
  639. define KernelPackage/pps-ldisc/description
  640. Support for a PPS source connected with the CD (Carrier
  641. Detect) pin of your serial port.
  642. endef
  643. $(eval $(call KernelPackage,pps-ldisc))
  644. define KernelPackage/ptp
  645. SUBMENU:=$(OTHER_MENU)
  646. TITLE:=PTP clock support
  647. DEPENDS:=+kmod-pps
  648. KCONFIG:= \
  649. CONFIG_PTP_1588_CLOCK \
  650. CONFIG_NET_PTP_CLASSIFY=y
  651. FILES:=$(LINUX_DIR)/drivers/ptp/ptp.ko
  652. AUTOLOAD:=$(call AutoLoad,18,ptp,1)
  653. endef
  654. define KernelPackage/ptp/description
  655. The IEEE 1588 standard defines a method to precisely
  656. synchronize distributed clocks over Ethernet networks.
  657. endef
  658. $(eval $(call KernelPackage,ptp))
  659. define KernelPackage/ptp-qoriq
  660. SUBMENU:=$(OTHER_MENU)
  661. TITLE:=Freescale QorIQ PTP support
  662. DEPENDS:=@(TARGET_mpc85xx||TARGET_qoriq) +kmod-ptp
  663. KCONFIG:=CONFIG_PTP_1588_CLOCK_QORIQ
  664. FILES:=$(LINUX_DIR)/drivers/ptp/ptp-qoriq.ko
  665. AUTOLOAD:=$(call AutoProbe,ptp-qoriq)
  666. endef
  667. define KernelPackage/ptp-qoriq/description
  668. Kernel module for IEEE 1588 support for Freescale
  669. QorIQ Ethernet drivers
  670. endef
  671. $(eval $(call KernelPackage,ptp-qoriq))
  672. define KernelPackage/random-core
  673. SUBMENU:=$(OTHER_MENU)
  674. TITLE:=Hardware Random Number Generator Core support
  675. KCONFIG:=CONFIG_HW_RANDOM
  676. FILES:=$(LINUX_DIR)/drivers/char/hw_random/rng-core.ko
  677. endef
  678. define KernelPackage/random-core/description
  679. Kernel module for the HW random number generator core infrastructure
  680. endef
  681. $(eval $(call KernelPackage,random-core))
  682. define KernelPackage/thermal
  683. SUBMENU:=$(OTHER_MENU)
  684. TITLE:=Thermal driver
  685. DEPENDS:=+kmod-hwmon-core
  686. HIDDEN:=1
  687. KCONFIG:= \
  688. CONFIG_THERMAL=y \
  689. CONFIG_THERMAL_OF=y \
  690. CONFIG_CPU_THERMAL=y \
  691. CONFIG_DEVFREQ_THERMAL=n \
  692. CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y \
  693. CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE=n \
  694. CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE=n \
  695. CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0 \
  696. CONFIG_THERMAL_GOV_FAIR_SHARE=n \
  697. CONFIG_THERMAL_GOV_STEP_WISE=y \
  698. CONFIG_THERMAL_GOV_USER_SPACE=n \
  699. CONFIG_THERMAL_HWMON=y \
  700. CONFIG_THERMAL_EMULATION=n
  701. endef
  702. define KernelPackage/thermal/description
  703. Thermal driver offers a generic mechanism for thermal management.
  704. Usually it's made up of one or more thermal zone and cooling device.
  705. endef
  706. $(eval $(call KernelPackage,thermal))
  707. define KernelPackage/echo
  708. SUBMENU:=$(OTHER_MENU)
  709. TITLE:=Line Echo Canceller
  710. KCONFIG:=CONFIG_ECHO
  711. FILES:=$(LINUX_DIR)/drivers/misc/echo/echo.ko
  712. AUTOLOAD:=$(call AutoLoad,50,echo)
  713. endef
  714. define KernelPackage/echo/description
  715. This driver provides line echo cancelling support for mISDN and
  716. DAHDI drivers
  717. endef
  718. $(eval $(call KernelPackage,echo))
  719. define KernelPackage/keys-encrypted
  720. SUBMENU:=$(OTHER_MENU)
  721. TITLE:=encrypted keys on kernel keyring
  722. DEPENDS:=@KERNEL_KEYS +kmod-crypto-cbc +kmod-crypto-hmac +kmod-crypto-rng \
  723. +kmod-crypto-sha256 +kmod-keys-trusted
  724. KCONFIG:=CONFIG_ENCRYPTED_KEYS
  725. FILES:=$(LINUX_DIR)/security/keys/encrypted-keys/encrypted-keys.ko
  726. AUTOLOAD:=$(call AutoLoad,01,encrypted-keys,1)
  727. endef
  728. define KernelPackage/keys-encrypted/description
  729. This module provides support for create/encrypting/decrypting keys
  730. in the kernel. Encrypted keys are kernel generated random numbers,
  731. which are encrypted/decrypted with a 'master' symmetric key. The
  732. 'master' key can be either a trusted-key or user-key type.
  733. Userspace only ever sees/stores encrypted blobs.
  734. endef
  735. $(eval $(call KernelPackage,keys-encrypted))
  736. define KernelPackage/keys-trusted
  737. SUBMENU:=$(OTHER_MENU)
  738. TITLE:=TPM trusted keys on kernel keyring
  739. DEPENDS:=@KERNEL_KEYS +kmod-crypto-hash +kmod-crypto-hmac +kmod-crypto-sha1 +kmod-tpm
  740. KCONFIG:=CONFIG_TRUSTED_KEYS
  741. FILES:= $(LINUX_DIR)/security/keys/trusted-keys/trusted.ko
  742. AUTOLOAD:=$(call AutoLoad,01,trusted-keys,1)
  743. endef
  744. define KernelPackage/keys-trusted/description
  745. This module provides support for creating, sealing, and unsealing
  746. keys in the kernel. Trusted keys are random number symmetric keys,
  747. generated and RSA-sealed by the TPM. The TPM only unseals the keys,
  748. if the boot PCRs and other criteria match. Userspace will only ever
  749. see encrypted blobs.
  750. endef
  751. $(eval $(call KernelPackage,keys-trusted))
  752. define KernelPackage/tpm
  753. SUBMENU:=$(OTHER_MENU)
  754. TITLE:=TPM Hardware Support
  755. DEPENDS:= +kmod-random-core +kmod-asn1-decoder \
  756. +kmod-asn1-encoder +kmod-oid-registry \
  757. +!LINUX_6_6:kmod-crypto-ecdh \
  758. +!LINUX_6_6:kmod-crypto-kpp \
  759. +!LINUX_6_6:kmod-crypto-lib-aescfb
  760. KCONFIG:= CONFIG_TCG_TPM
  761. FILES:= $(LINUX_DIR)/drivers/char/tpm/tpm.ko
  762. AUTOLOAD:=$(call AutoLoad,10,tpm,1)
  763. endef
  764. define KernelPackage/tpm/description
  765. This enables TPM Hardware Support.
  766. endef
  767. $(eval $(call KernelPackage,tpm))
  768. define KernelPackage/tpm-tis
  769. SUBMENU:=$(OTHER_MENU)
  770. TITLE:=TPM TIS 1.2 Interface / TPM 2.0 FIFO Interface
  771. DEPENDS:= @TARGET_x86 +kmod-tpm
  772. KCONFIG:= CONFIG_TCG_TIS
  773. FILES:= \
  774. $(LINUX_DIR)/drivers/char/tpm/tpm_tis.ko \
  775. $(LINUX_DIR)/drivers/char/tpm/tpm_tis_core.ko
  776. AUTOLOAD:=$(call AutoLoad,20,tpm_tis,1)
  777. endef
  778. define KernelPackage/tpm-tis/description
  779. If you have a TPM security chip that is compliant with the
  780. TCG TIS 1.2 TPM specification (TPM1.2) or the TCG PTP FIFO
  781. specification (TPM2.0) say Yes and it will be accessible from
  782. within Linux.
  783. endef
  784. $(eval $(call KernelPackage,tpm-tis))
  785. define KernelPackage/tpm-i2c-atmel
  786. SUBMENU:=$(OTHER_MENU)
  787. TITLE:=TPM I2C Atmel Support
  788. DEPENDS:= +kmod-tpm +kmod-i2c-core
  789. KCONFIG:= CONFIG_TCG_TIS_I2C_ATMEL
  790. FILES:= $(LINUX_DIR)/drivers/char/tpm/tpm_i2c_atmel.ko
  791. AUTOLOAD:=$(call AutoLoad,40,tpm_i2c_atmel,1)
  792. endef
  793. define KernelPackage/tpm-i2c-atmel/description
  794. This enables the TPM Interface Specification 1.2 Interface (I2C - Atmel)
  795. endef
  796. $(eval $(call KernelPackage,tpm-i2c-atmel))
  797. define KernelPackage/tpm-i2c-infineon
  798. SUBMENU:=$(OTHER_MENU)
  799. TITLE:= TPM I2C Infineon driver
  800. DEPENDS:= +kmod-tpm +kmod-i2c-core
  801. KCONFIG:= CONFIG_TCG_TIS_I2C_INFINEON
  802. FILES:= $(LINUX_DIR)/drivers/char/tpm/tpm_i2c_infineon.ko
  803. AUTOLOAD:= $(call AutoLoad,40,tpm_i2c_infineon,1)
  804. endef
  805. define KernelPackage/tpm-i2c-infineon/description
  806. This enables the TPM Interface Specification 1.2 Interface (I2C - Infineon)
  807. endef
  808. $(eval $(call KernelPackage,tpm-i2c-infineon))
  809. define KernelPackage/i6300esb-wdt
  810. SUBMENU:=$(OTHER_MENU)
  811. TITLE:=Intel 6300ESB Timer/Watchdog
  812. DEPENDS:=@PCI_SUPPORT @!SMALL_FLASH
  813. KCONFIG:=CONFIG_I6300ESB_WDT \
  814. CONFIG_WATCHDOG_CORE=y
  815. FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/i6300esb.ko
  816. AUTOLOAD:=$(call AutoLoad,50,i6300esb,1)
  817. endef
  818. define KernelPackage/i6300esb-wdt/description
  819. Kernel module for the watchdog timer built into the Intel
  820. 6300ESB controller hub. Also used by QEMU/libvirt.
  821. endef
  822. $(eval $(call KernelPackage,i6300esb-wdt))
  823. define KernelPackage/mhi-bus
  824. SUBMENU:=$(OTHER_MENU)
  825. TITLE:=MHI bus
  826. KCONFIG:=CONFIG_MHI_BUS \
  827. CONFIG_MHI_BUS_DEBUG=y
  828. FILES:=$(LINUX_DIR)/drivers/bus/mhi/host/mhi.ko
  829. AUTOLOAD:=$(call AutoProbe,mhi)
  830. endef
  831. define KernelPackage/mhi-bus/description
  832. Kernel module for the Qualcomm MHI bus.
  833. endef
  834. $(eval $(call KernelPackage,mhi-bus))
  835. define KernelPackage/mhi-pci-generic
  836. SUBMENU:=$(OTHER_MENU)
  837. TITLE:=MHI PCI controller driver
  838. DEPENDS:=@PCI_SUPPORT +kmod-mhi-bus
  839. KCONFIG:=CONFIG_MHI_BUS_PCI_GENERIC
  840. FILES:=$(LINUX_DIR)/drivers/bus/mhi/host/mhi_pci_generic.ko
  841. AUTOLOAD:=$(call AutoProbe,mhi_pci_generic)
  842. endef
  843. define KernelPackage/mhi-pci-generic/description
  844. Kernel module for the MHI PCI controller driver.
  845. endef
  846. $(eval $(call KernelPackage,mhi-pci-generic))