other.mk 36 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399
  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_HCIBTUSB_MTK=y \
  36. CONFIG_BT_HCIBTUSB_RTL=y \
  37. CONFIG_BT_HCIUART \
  38. CONFIG_BT_HCIUART_BCM=n \
  39. CONFIG_BT_HCIUART_INTEL=n \
  40. CONFIG_BT_HCIUART_H4 \
  41. CONFIG_BT_HCIUART_NOKIA=n \
  42. CONFIG_BT_HIDP
  43. $(call AddDepends/rfkill)
  44. FILES:= \
  45. $(LINUX_DIR)/net/bluetooth/bluetooth.ko \
  46. $(LINUX_DIR)/net/bluetooth/rfcomm/rfcomm.ko \
  47. $(LINUX_DIR)/net/bluetooth/bnep/bnep.ko \
  48. $(LINUX_DIR)/net/bluetooth/hidp/hidp.ko \
  49. $(LINUX_DIR)/drivers/bluetooth/hci_uart.ko \
  50. $(LINUX_DIR)/drivers/bluetooth/btusb.ko \
  51. $(LINUX_DIR)/drivers/bluetooth/btintel.ko \
  52. $(LINUX_DIR)/drivers/bluetooth/btrtl.ko \
  53. $(LINUX_DIR)/drivers/bluetooth/[email protected]
  54. AUTOLOAD:=$(call AutoProbe,bluetooth rfcomm bnep hidp hci_uart btusb)
  55. endef
  56. define KernelPackage/bluetooth/description
  57. Kernel support for Bluetooth devices
  58. endef
  59. $(eval $(call KernelPackage,bluetooth))
  60. define KernelPackage/ath3k
  61. SUBMENU:=$(OTHER_MENU)
  62. TITLE:=ATH3K Kernel Module support
  63. DEPENDS:=+kmod-bluetooth +ar3k-firmware
  64. KCONFIG:= \
  65. CONFIG_BT_ATH3K \
  66. CONFIG_BT_HCIUART_ATH3K=y
  67. FILES:= \
  68. $(LINUX_DIR)/drivers/bluetooth/ath3k.ko
  69. AUTOLOAD:=$(call AutoProbe,ath3k)
  70. endef
  71. define KernelPackage/ath3k/description
  72. Kernel support for ATH3K Module
  73. endef
  74. $(eval $(call KernelPackage,ath3k))
  75. define KernelPackage/bluetooth-6lowpan
  76. SUBMENU:=$(OTHER_MENU)
  77. TITLE:=Bluetooth 6LoWPAN support
  78. DEPENDS:=+kmod-6lowpan +kmod-bluetooth
  79. KCONFIG:=CONFIG_BT_6LOWPAN
  80. FILES:=$(LINUX_DIR)/net/bluetooth/bluetooth_6lowpan.ko
  81. AUTOLOAD:=$(call AutoProbe,bluetooth_6lowpan)
  82. endef
  83. define KernelPackage/bluetooth-6lowpan/description
  84. Kernel support for 6LoWPAN over Bluetooth Low Energy devices
  85. endef
  86. $(eval $(call KernelPackage,bluetooth-6lowpan))
  87. define KernelPackage/btmrvl
  88. SUBMENU:=$(OTHER_MENU)
  89. TITLE:=Marvell Bluetooth Kernel Module support
  90. DEPENDS:=+kmod-mmc +kmod-bluetooth +mwifiex-sdio-firmware
  91. KCONFIG:= \
  92. CONFIG_BT_MRVL \
  93. CONFIG_BT_MRVL_SDIO
  94. FILES:= \
  95. $(LINUX_DIR)/drivers/bluetooth/btmrvl.ko \
  96. $(LINUX_DIR)/drivers/bluetooth/btmrvl_sdio.ko
  97. AUTOLOAD:=$(call AutoProbe,btmrvl btmrvl_sdio)
  98. endef
  99. define KernelPackage/btmrvl/description
  100. Kernel support for Marvell SDIO Bluetooth Module
  101. endef
  102. $(eval $(call KernelPackage,btmrvl))
  103. define KernelPackage/btsdio
  104. SUBMENU:=$(OTHER_MENU)
  105. TITLE:=Bluetooth HCI SDIO driver
  106. DEPENDS:=+kmod-bluetooth +kmod-mmc
  107. KCONFIG:= \
  108. CONFIG_BT_HCIBTSDIO
  109. FILES:= \
  110. $(LINUX_DIR)/drivers/bluetooth/btsdio.ko
  111. AUTOLOAD:=$(call AutoProbe,btsdio)
  112. endef
  113. define KernelPackage/btsdio/description
  114. Kernel support for Bluetooth device with SDIO interface
  115. endef
  116. $(eval $(call KernelPackage,btsdio))
  117. define KernelPackage/dma-buf
  118. SUBMENU:=$(OTHER_MENU)
  119. TITLE:=DMA shared buffer support
  120. HIDDEN:=1
  121. KCONFIG:=CONFIG_DMA_SHARED_BUFFER
  122. ifeq ($(strip $(CONFIG_EXTERNAL_KERNEL_TREE)),"")
  123. ifeq ($(strip $(CONFIG_KERNEL_GIT_CLONE_URI)),"")
  124. FILES:=$(LINUX_DIR)/drivers/dma-buf/dma-shared-buffer.ko
  125. endif
  126. endif
  127. AUTOLOAD:=$(call AutoLoad,20,dma-shared-buffer)
  128. endef
  129. $(eval $(call KernelPackage,dma-buf))
  130. define KernelPackage/eeprom-93cx6
  131. SUBMENU:=$(OTHER_MENU)
  132. TITLE:=EEPROM 93CX6 support
  133. KCONFIG:=CONFIG_EEPROM_93CX6
  134. FILES:=$(LINUX_DIR)/drivers/misc/eeprom/eeprom_93cx6.ko
  135. AUTOLOAD:=$(call AutoLoad,20,eeprom_93cx6)
  136. endef
  137. define KernelPackage/eeprom-93cx6/description
  138. Kernel module for EEPROM 93CX6 support
  139. endef
  140. $(eval $(call KernelPackage,eeprom-93cx6))
  141. define KernelPackage/eeprom-at24
  142. SUBMENU:=$(OTHER_MENU)
  143. TITLE:=EEPROM AT24 support
  144. KCONFIG:=CONFIG_EEPROM_AT24
  145. DEPENDS:=+kmod-i2c-core +kmod-regmap-i2c
  146. FILES:=$(LINUX_DIR)/drivers/misc/eeprom/at24.ko
  147. AUTOLOAD:=$(call AutoProbe,at24)
  148. endef
  149. define KernelPackage/eeprom-at24/description
  150. Kernel module for most I2C EEPROMs
  151. endef
  152. $(eval $(call KernelPackage,eeprom-at24))
  153. define KernelPackage/eeprom-at25
  154. SUBMENU:=$(OTHER_MENU)
  155. TITLE:=EEPROM AT25 support
  156. KCONFIG:=CONFIG_EEPROM_AT25
  157. FILES:=$(LINUX_DIR)/drivers/misc/eeprom/at25.ko
  158. AUTOLOAD:=$(call AutoProbe,at25)
  159. endef
  160. define KernelPackage/eeprom-at25/description
  161. Kernel module for most SPI EEPROMs
  162. endef
  163. $(eval $(call KernelPackage,eeprom-at25))
  164. define KernelPackage/google-firmware
  165. SUBMENU:=$(OTHER_MENU)
  166. TITLE:=Google firmware drivers (Coreboot, VPD, Memconsole)
  167. KCONFIG:= \
  168. CONFIG_GOOGLE_FIRMWARE=y \
  169. CONFIG_GOOGLE_COREBOOT_TABLE \
  170. CONFIG_GOOGLE_MEMCONSOLE \
  171. CONFIG_GOOGLE_MEMCONSOLE_COREBOOT \
  172. CONFIG_GOOGLE_VPD
  173. FILES:= \
  174. $(LINUX_DIR)/drivers/firmware/google/coreboot_table.ko \
  175. $(LINUX_DIR)/drivers/firmware/google/memconsole.ko \
  176. $(LINUX_DIR)/drivers/firmware/google/memconsole-coreboot.ko \
  177. $(LINUX_DIR)/drivers/firmware/google/vpd-sysfs.ko
  178. AUTOLOAD:=$(call AutoProbe,coreboot_table memconsole-coreboot vpd-sysfs)
  179. endef
  180. define KernelPackage/google-firmware/description
  181. Kernel modules for Google firmware drivers. Useful for examining firmware and
  182. boot details on devices using a Google bootloader based on Coreboot. Provides
  183. files like /sys/firmware/log and /sys/firmware/vpd.
  184. endef
  185. $(eval $(call KernelPackage,google-firmware))
  186. define KernelPackage/gpio-f7188x
  187. SUBMENU:=$(OTHER_MENU)
  188. TITLE:=Fintek F718xx/F818xx GPIO Support
  189. DEPENDS:=@GPIO_SUPPORT @TARGET_x86
  190. KCONFIG:=CONFIG_GPIO_F7188X
  191. FILES:=$(LINUX_DIR)/drivers/gpio/gpio-f7188x.ko
  192. AUTOLOAD:=$(call AutoProbe,gpio-f7188x)
  193. endef
  194. define KernelPackage/gpio-f7188x/description
  195. Kernel module for the GPIOs found on many Fintek Super-IO chips.
  196. endef
  197. $(eval $(call KernelPackage,gpio-f7188x))
  198. define KernelPackage/lkdtm
  199. SUBMENU:=$(OTHER_MENU)
  200. TITLE:=Linux Kernel Dump Test Tool Module
  201. KCONFIG:=CONFIG_LKDTM
  202. FILES:=$(LINUX_DIR)/drivers/misc/lkdtm/lkdtm.ko
  203. AUTOLOAD:=$(call AutoProbe,lkdtm)
  204. endef
  205. define KernelPackage/lkdtm/description
  206. This module enables testing of the different dumping mechanisms by inducing
  207. system failures at predefined crash points.
  208. endef
  209. $(eval $(call KernelPackage,lkdtm))
  210. define KernelPackage/pinctrl-mcp23s08
  211. SUBMENU:=$(OTHER_MENU)
  212. TITLE:=Microchip MCP23xxx I/O expander
  213. HIDDEN:=1
  214. DEPENDS:=@GPIO_SUPPORT +kmod-regmap-core
  215. KCONFIG:=CONFIG_PINCTRL_MCP23S08
  216. FILES:=$(LINUX_DIR)/drivers/pinctrl/pinctrl-mcp23s08.ko
  217. AUTOLOAD:=$(call AutoLoad,40,pinctrl-mcp23s08)
  218. endef
  219. define KernelPackage/pinctrl-mcp23s08/description
  220. Kernel module for Microchip MCP23xxx I/O expander
  221. endef
  222. $(eval $(call KernelPackage,pinctrl-mcp23s08))
  223. define KernelPackage/pinctrl-mcp23s08-i2c
  224. SUBMENU:=$(OTHER_MENU)
  225. TITLE:=Microchip MCP23xxx I/O expander (I2C)
  226. DEPENDS:=@GPIO_SUPPORT \
  227. +kmod-pinctrl-mcp23s08 \
  228. +kmod-i2c-core \
  229. +kmod-regmap-i2c
  230. KCONFIG:=CONFIG_PINCTRL_MCP23S08_I2C
  231. FILES:=$(LINUX_DIR)/drivers/pinctrl/pinctrl-mcp23s08_i2c.ko
  232. AUTOLOAD:=$(call AutoLoad,40,pinctrl-mcp23s08-i2c)
  233. endef
  234. define KernelPackage/pinctrl-mcp23s08-i2c/description
  235. Kernel module for Microchip MCP23xxx I/O expander via I2C
  236. endef
  237. $(eval $(call KernelPackage,pinctrl-mcp23s08-i2c))
  238. define KernelPackage/pinctrl-mcp23s08-spi
  239. SUBMENU:=$(OTHER_MENU)
  240. TITLE:=Microchip MCP23xxx I/O expander (SPI)
  241. DEPENDS:=@GPIO_SUPPORT +kmod-pinctrl-mcp23s08
  242. KCONFIG:=CONFIG_PINCTRL_MCP23S08_SPI
  243. FILES:=$(LINUX_DIR)/drivers/pinctrl/pinctrl-mcp23s08_spi.ko
  244. AUTOLOAD:=$(call AutoLoad,40,pinctrl-mcp23s08-spi)
  245. endef
  246. define KernelPackage/pinctrl-mcp23s08-spi/description
  247. Kernel module for Microchip MCP23xxx I/O expander via SPI
  248. endef
  249. $(eval $(call KernelPackage,pinctrl-mcp23s08-spi))
  250. define KernelPackage/gpio-nxp-74hc164
  251. SUBMENU:=$(OTHER_MENU)
  252. TITLE:=NXP 74HC164 GPIO expander support
  253. KCONFIG:=CONFIG_GPIO_74X164
  254. FILES:=$(LINUX_DIR)/drivers/gpio/gpio-74x164.ko
  255. AUTOLOAD:=$(call AutoProbe,gpio-74x164)
  256. endef
  257. define KernelPackage/gpio-nxp-74hc164/description
  258. Kernel module for NXP 74HC164 GPIO expander
  259. endef
  260. $(eval $(call KernelPackage,gpio-nxp-74hc164))
  261. define KernelPackage/gpio-pca953x
  262. SUBMENU:=$(OTHER_MENU)
  263. DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core +kmod-regmap-i2c
  264. TITLE:=PCA95xx, TCA64xx, and MAX7310 I/O ports
  265. KCONFIG:=CONFIG_GPIO_PCA953X
  266. FILES:=$(LINUX_DIR)/drivers/gpio/gpio-pca953x.ko
  267. AUTOLOAD:=$(call AutoLoad,55,gpio-pca953x)
  268. endef
  269. define KernelPackage/gpio-pca953x/description
  270. Kernel module for MAX731{0,2,3,5}, PCA6107, PCA953{4-9}, PCA955{4-7},
  271. PCA957{4,5} and TCA64{08,16} I2C GPIO expanders
  272. endef
  273. $(eval $(call KernelPackage,gpio-pca953x))
  274. define KernelPackage/gpio-pcf857x
  275. SUBMENU:=$(OTHER_MENU)
  276. DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core
  277. TITLE:=PCX857x, PCA967x and MAX732X I2C GPIO expanders
  278. KCONFIG:=CONFIG_GPIO_PCF857X
  279. FILES:=$(LINUX_DIR)/drivers/gpio/gpio-pcf857x.ko
  280. AUTOLOAD:=$(call AutoLoad,55,gpio-pcf857x)
  281. endef
  282. define KernelPackage/gpio-pcf857x/description
  283. Kernel module for PCF857x, PCA{85,96}7x, and MAX732[89] I2C GPIO expanders
  284. endef
  285. $(eval $(call KernelPackage,gpio-pcf857x))
  286. define KernelPackage/gpio-it87
  287. SUBMENU:=$(OTHER_MENU)
  288. DEPENDS:=@GPIO_SUPPORT @TARGET_x86
  289. TITLE:=GPIO support for IT87xx Super I/O chips
  290. KCONFIG:=CONFIG_GPIO_IT87
  291. FILES:=$(LINUX_DIR)/drivers/gpio/gpio-it87.ko
  292. AUTOLOAD:=$(call AutoLoad,25,gpio-it87,1)
  293. endef
  294. define KernelPackage/gpio-it87/description
  295. This driver is tested with ITE IT8728 and IT8732 Super I/O chips, and
  296. supports the IT8761E, IT8613, IT8620E, and IT8628E Super I/O chips as
  297. well.
  298. endef
  299. $(eval $(call KernelPackage,gpio-it87))
  300. define KernelPackage/gpio-amd-fch
  301. SUBMENU:=$(OTHER_MENU)
  302. DEPENDS:=@GPIO_SUPPORT @TARGET_x86
  303. TITLE:=GPIO support for AMD Fusion Controller Hub (G-series SOCs)
  304. KCONFIG:=CONFIG_GPIO_AMD_FCH
  305. FILES:=$(LINUX_DIR)/drivers/gpio/gpio-amd-fch.ko
  306. AUTOLOAD:=$(call AutoLoad,25,gpio-amd-fch,1)
  307. endef
  308. define KernelPackage/gpio-amd-fch/description
  309. This option enables driver for GPIO on AMDs Fusion Controller Hub,
  310. as found on G-series SOCs (eg. GX-412TC)
  311. endef
  312. $(eval $(call KernelPackage,gpio-amd-fch))
  313. define KernelPackage/ppdev
  314. SUBMENU:=$(OTHER_MENU)
  315. TITLE:=Parallel port support
  316. KCONFIG:= \
  317. CONFIG_PARPORT \
  318. CONFIG_PPDEV
  319. FILES:= \
  320. $(LINUX_DIR)/drivers/parport/parport.ko \
  321. $(LINUX_DIR)/drivers/char/ppdev.ko
  322. AUTOLOAD:=$(call AutoLoad,50,parport ppdev)
  323. endef
  324. $(eval $(call KernelPackage,ppdev))
  325. define KernelPackage/parport-pc
  326. SUBMENU:=$(OTHER_MENU)
  327. TITLE:=Parallel port interface (PC-style) support
  328. DEPENDS:=+kmod-ppdev
  329. KCONFIG:= \
  330. CONFIG_KS0108=n \
  331. CONFIG_PARPORT_PC \
  332. CONFIG_PARPORT_1284=y \
  333. CONFIG_PARPORT_PC_FIFO=y \
  334. CONFIG_PARPORT_PC_PCMCIA=n \
  335. CONFIG_PARPORT_PC_SUPERIO=y \
  336. CONFIG_PARPORT_SERIAL=n \
  337. CONFIG_PARIDE=n \
  338. CONFIG_SCSI_IMM=n \
  339. CONFIG_SCSI_PPA=n
  340. FILES:= \
  341. $(LINUX_DIR)/drivers/parport/parport_pc.ko
  342. AUTOLOAD:=$(call AutoLoad,51,parport_pc)
  343. endef
  344. $(eval $(call KernelPackage,parport-pc))
  345. define KernelPackage/lp
  346. SUBMENU:=$(OTHER_MENU)
  347. TITLE:=Parallel port line printer device support
  348. DEPENDS:=+kmod-ppdev
  349. KCONFIG:= \
  350. CONFIG_PRINTER
  351. FILES:= \
  352. $(LINUX_DIR)/drivers/char/lp.ko
  353. AUTOLOAD:=$(call AutoLoad,52,lp)
  354. endef
  355. $(eval $(call KernelPackage,lp))
  356. define KernelPackage/mmc
  357. SUBMENU:=$(OTHER_MENU)
  358. TITLE:=MMC/SD Card Support
  359. DEPENDS:=@!TARGET_uml
  360. KCONFIG:= \
  361. CONFIG_MMC \
  362. CONFIG_MMC_BLOCK \
  363. CONFIG_MMC_DEBUG=n \
  364. CONFIG_MMC_UNSAFE_RESUME=n \
  365. CONFIG_MMC_TIFM_SD=n \
  366. CONFIG_MMC_WBSD=n \
  367. CONFIG_SDIO_UART=n
  368. FILES:= \
  369. $(LINUX_DIR)/drivers/mmc/core/mmc_core.ko \
  370. $(LINUX_DIR)/drivers/mmc/core/mmc_block.ko
  371. AUTOLOAD:=$(call AutoProbe,mmc_core mmc_block,1)
  372. endef
  373. define KernelPackage/mmc/description
  374. Kernel support for MMC/SD cards
  375. endef
  376. $(eval $(call KernelPackage,mmc))
  377. define KernelPackage/sdhci
  378. SUBMENU:=$(OTHER_MENU)
  379. TITLE:=Secure Digital Host Controller Interface support
  380. DEPENDS:=+kmod-mmc
  381. KCONFIG:= \
  382. CONFIG_MMC_SDHCI \
  383. CONFIG_MMC_SDHCI_PLTFM \
  384. CONFIG_MMC_SDHCI_PCI=n
  385. FILES:= \
  386. $(LINUX_DIR)/drivers/mmc/host/sdhci.ko \
  387. $(LINUX_DIR)/drivers/mmc/host/sdhci-pltfm.ko
  388. AUTOLOAD:=$(call AutoProbe,sdhci-pltfm,1)
  389. endef
  390. define KernelPackage/sdhci/description
  391. Kernel support for SDHCI Hosts
  392. endef
  393. $(eval $(call KernelPackage,sdhci))
  394. define KernelPackage/rfkill
  395. SUBMENU:=$(OTHER_MENU)
  396. TITLE:=RF switch subsystem support
  397. DEPENDS:=@USE_RFKILL +kmod-input-core
  398. KCONFIG:= \
  399. CONFIG_RFKILL_FULL \
  400. CONFIG_RFKILL_INPUT=y \
  401. CONFIG_RFKILL_LEDS=y
  402. FILES:= \
  403. $(LINUX_DIR)/net/rfkill/rfkill.ko
  404. AUTOLOAD:=$(call AutoLoad,20,rfkill)
  405. endef
  406. define KernelPackage/rfkill/description
  407. Say Y here if you want to have control over RF switches
  408. found on many WiFi and Bluetooth cards
  409. endef
  410. $(eval $(call KernelPackage,rfkill))
  411. define KernelPackage/softdog
  412. SUBMENU:=$(OTHER_MENU)
  413. TITLE:=Software watchdog driver
  414. KCONFIG:=CONFIG_SOFT_WATCHDOG \
  415. CONFIG_SOFT_WATCHDOG_PRETIMEOUT=n
  416. FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/softdog.ko
  417. AUTOLOAD:=$(call AutoLoad,50,softdog,1)
  418. endef
  419. define KernelPackage/softdog/description
  420. Software watchdog driver
  421. endef
  422. $(eval $(call KernelPackage,softdog))
  423. define KernelPackage/ssb
  424. SUBMENU:=$(OTHER_MENU)
  425. TITLE:=Silicon Sonics Backplane glue code
  426. DEPENDS:=@PCI_SUPPORT @!TARGET_bcm47xx @!TARGET_bcm63xx
  427. KCONFIG:=\
  428. CONFIG_SSB \
  429. CONFIG_SSB_B43_PCI_BRIDGE=y \
  430. CONFIG_SSB_DRIVER_MIPS=n \
  431. CONFIG_SSB_DRIVER_PCICORE=y \
  432. CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y \
  433. CONFIG_SSB_FALLBACK_SPROM=y \
  434. CONFIG_SSB_PCIHOST=y \
  435. CONFIG_SSB_PCIHOST_POSSIBLE=y \
  436. CONFIG_SSB_POSSIBLE=y \
  437. CONFIG_SSB_SPROM=y \
  438. CONFIG_SSB_SILENT=y
  439. FILES:=$(LINUX_DIR)/drivers/ssb/ssb.ko
  440. AUTOLOAD:=$(call AutoLoad,18,ssb,1)
  441. endef
  442. define KernelPackage/ssb/description
  443. Silicon Sonics Backplane glue code.
  444. endef
  445. $(eval $(call KernelPackage,ssb))
  446. define KernelPackage/bcma
  447. SUBMENU:=$(OTHER_MENU)
  448. TITLE:=BCMA support
  449. DEPENDS:=@PCI_SUPPORT @!TARGET_bcm47xx @!TARGET_bcm53xx
  450. KCONFIG:=\
  451. CONFIG_BCMA \
  452. CONFIG_BCMA_POSSIBLE=y \
  453. CONFIG_BCMA_BLOCKIO=y \
  454. CONFIG_BCMA_FALLBACK_SPROM=y \
  455. CONFIG_BCMA_HOST_PCI_POSSIBLE=y \
  456. CONFIG_BCMA_HOST_PCI=y \
  457. CONFIG_BCMA_HOST_SOC=n \
  458. CONFIG_BCMA_DRIVER_MIPS=n \
  459. CONFIG_BCMA_DRIVER_PCI_HOSTMODE=n \
  460. CONFIG_BCMA_DRIVER_GMAC_CMN=n \
  461. CONFIG_BCMA_DEBUG=n
  462. FILES:=$(LINUX_DIR)/drivers/bcma/bcma.ko
  463. AUTOLOAD:=$(call AutoLoad,29,bcma)
  464. endef
  465. define KernelPackage/bcma/description
  466. Bus driver for Broadcom specific Advanced Microcontroller Bus Architecture
  467. endef
  468. $(eval $(call KernelPackage,bcma))
  469. define KernelPackage/rtc-ds1307
  470. SUBMENU:=$(OTHER_MENU)
  471. TITLE:=Dallas/Maxim DS1307 (and compatible) RTC support
  472. DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
  473. DEPENDS:=+kmod-i2c-core +kmod-regmap-i2c +kmod-hwmon-core
  474. KCONFIG:=CONFIG_RTC_DRV_DS1307 \
  475. CONFIG_RTC_CLASS=y
  476. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1307.ko
  477. AUTOLOAD:=$(call AutoProbe,rtc-ds1307)
  478. endef
  479. define KernelPackage/rtc-ds1307/description
  480. Kernel module for Dallas/Maxim DS1307/DS1337/DS1338/DS1340/DS1388/DS3231,
  481. Epson RX-8025 and various other compatible RTC chips connected via I2C.
  482. endef
  483. $(eval $(call KernelPackage,rtc-ds1307))
  484. define KernelPackage/rtc-ds1374
  485. SUBMENU:=$(OTHER_MENU)
  486. TITLE:=Dallas/Maxim DS1374 RTC support
  487. DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
  488. DEPENDS:=+kmod-i2c-core
  489. KCONFIG:=CONFIG_RTC_DRV_DS1374 \
  490. CONFIG_RTC_DRV_DS1374_WDT=n \
  491. CONFIG_RTC_CLASS=y
  492. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1374.ko
  493. AUTOLOAD:=$(call AutoProbe,rtc-ds1374)
  494. endef
  495. define KernelPackage/rtc-ds1374/description
  496. Kernel module for Dallas/Maxim DS1374.
  497. endef
  498. $(eval $(call KernelPackage,rtc-ds1374))
  499. define KernelPackage/rtc-ds1672
  500. SUBMENU:=$(OTHER_MENU)
  501. TITLE:=Dallas/Maxim DS1672 RTC support
  502. DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
  503. DEPENDS:=+kmod-i2c-core
  504. KCONFIG:=CONFIG_RTC_DRV_DS1672 \
  505. CONFIG_RTC_CLASS=y
  506. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1672.ko
  507. AUTOLOAD:=$(call AutoProbe,rtc-ds1672)
  508. endef
  509. define KernelPackage/rtc-ds1672/description
  510. Kernel module for Dallas/Maxim DS1672 RTC.
  511. endef
  512. $(eval $(call KernelPackage,rtc-ds1672))
  513. define KernelPackage/rtc-em3027
  514. SUBMENU:=$(OTHER_MENU)
  515. TITLE:=Microelectronic EM3027 RTC support
  516. DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
  517. DEPENDS:=+kmod-i2c-core
  518. KCONFIG:=CONFIG_RTC_DRV_EM3027 \
  519. CONFIG_RTC_CLASS=y
  520. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-em3027.ko
  521. AUTOLOAD:=$(call AutoProbe,rtc-em3027)
  522. endef
  523. define KernelPackage/rtc-em3027/description
  524. Kernel module for Microelectronic EM3027 RTC.
  525. endef
  526. $(eval $(call KernelPackage,rtc-em3027))
  527. define KernelPackage/rtc-isl1208
  528. SUBMENU:=$(OTHER_MENU)
  529. TITLE:=Intersil ISL1208 RTC support
  530. DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
  531. DEPENDS:=+kmod-i2c-core
  532. KCONFIG:=CONFIG_RTC_DRV_ISL1208 \
  533. CONFIG_RTC_CLASS=y
  534. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-isl1208.ko
  535. AUTOLOAD:=$(call AutoProbe,rtc-isl1208)
  536. endef
  537. define KernelPackage/rtc-isl1208/description
  538. Kernel module for Intersil ISL1208 RTC.
  539. endef
  540. $(eval $(call KernelPackage,rtc-isl1208))
  541. define KernelPackage/rtc-pcf8563
  542. SUBMENU:=$(OTHER_MENU)
  543. TITLE:=Philips PCF8563/Epson RTC8564 RTC support
  544. DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
  545. DEPENDS:=+kmod-i2c-core
  546. KCONFIG:=CONFIG_RTC_DRV_PCF8563 \
  547. CONFIG_RTC_CLASS=y
  548. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf8563.ko
  549. AUTOLOAD:=$(call AutoProbe,rtc-pcf8563)
  550. endef
  551. define KernelPackage/rtc-pcf8563/description
  552. Kernel module for Philips PCF8563 RTC chip.
  553. The Epson RTC8564 should work as well.
  554. endef
  555. $(eval $(call KernelPackage,rtc-pcf8563))
  556. define KernelPackage/rtc-pcf2123
  557. SUBMENU:=$(OTHER_MENU)
  558. TITLE:=Philips PCF2123 RTC support
  559. DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
  560. DEPENDS:=+kmod-regmap-spi
  561. KCONFIG:=CONFIG_RTC_DRV_PCF2123 \
  562. CONFIG_RTC_CLASS=y
  563. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf2123.ko
  564. AUTOLOAD:=$(call AutoProbe,rtc-pcf2123)
  565. endef
  566. define KernelPackage/rtc-pcf2123/description
  567. Kernel module for Philips PCF2123 RTC chip
  568. endef
  569. $(eval $(call KernelPackage,rtc-pcf2123))
  570. define KernelPackage/rtc-pcf2127
  571. SUBMENU:=$(OTHER_MENU)
  572. TITLE:=NXP PCF2127 and PCF2129 RTC support
  573. DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
  574. DEPENDS:=+kmod-i2c-core +kmod-regmap-spi
  575. KCONFIG:=CONFIG_RTC_DRV_PCF2127 \
  576. CONFIG_RTC_CLASS=y
  577. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf2127.ko
  578. AUTOLOAD:=$(call AutoProbe,rtc-pcf2127)
  579. endef
  580. define KernelPackage/rtc-pcf2127/description
  581. Kernel module for NXP PCF2127 and PCF2129 RTC chip
  582. endef
  583. $(eval $(call KernelPackage,rtc-pcf2127))
  584. define KernelPackage/rtc-r7301
  585. SUBMENU:=$(OTHER_MENU)
  586. TITLE:=Epson RTC7301 support
  587. DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
  588. DEPENDS:=+kmod-regmap-mmio
  589. KCONFIG:=CONFIG_RTC_DRV_R7301 \
  590. CONFIG_RTC_CLASS=y
  591. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-r7301.ko
  592. AUTOLOAD:=$(call AutoProbe,rtc-r7301)
  593. endef
  594. define KernelPackage/rtc-r7301/description
  595. Kernel module for Epson RTC7301 RTC chip
  596. endef
  597. $(eval $(call KernelPackage,rtc-r7301))
  598. define KernelPackage/rtc-rs5c372a
  599. SUBMENU:=$(OTHER_MENU)
  600. TITLE:=Ricoh R2025S/D, RS5C372A/B, RV5C386, RV5C387A
  601. DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
  602. DEPENDS:=+kmod-i2c-core
  603. KCONFIG:=CONFIG_RTC_DRV_RS5C372 \
  604. CONFIG_RTC_CLASS=y
  605. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-rs5c372.ko
  606. AUTOLOAD:=$(call AutoLoad,50,rtc-rs5c372,1)
  607. endef
  608. define KernelPackage/rtc-rs5c372a/description
  609. Kernel module for Ricoh R2025S/D, RS5C372A/B, RV5C386, RV5C387A RTC on chip module
  610. endef
  611. $(eval $(call KernelPackage,rtc-rs5c372a))
  612. define KernelPackage/rtc-rx8025
  613. SUBMENU:=$(OTHER_MENU)
  614. TITLE:=Epson RX-8025 / RX-8035
  615. DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
  616. DEPENDS:=+kmod-i2c-core
  617. KCONFIG:=CONFIG_RTC_DRV_RX8025 \
  618. CONFIG_RTC_CLASS=y
  619. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-rx8025.ko
  620. AUTOLOAD:=$(call AutoLoad,50,rtc-rx8025,1)
  621. endef
  622. define KernelPackage/rtc-rx8025/description
  623. Kernel module for Epson RX-8025 and RX-8035 I2C RTC chip
  624. endef
  625. $(eval $(call KernelPackage,rtc-rx8025))
  626. define KernelPackage/rtc-s35390a
  627. SUBMENU:=$(OTHER_MENU)
  628. TITLE:=Seico S-35390A
  629. DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
  630. DEPENDS:=+kmod-i2c-core
  631. KCONFIG:=CONFIG_RTC_DRV_S35390A \
  632. CONFIG_RTC_CLASS=y
  633. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-s35390a.ko
  634. AUTOLOAD:=$(call AutoLoad,50,rtc-s35390a,1)
  635. endef
  636. define KernelPackage/rtc-s35390a/description
  637. Kernel module for Seiko Instruments S-35390A I2C RTC chip
  638. endef
  639. $(eval $(call KernelPackage,rtc-s35390a))
  640. define KernelPackage/rtc-x1205
  641. SUBMENU:=$(OTHER_MENU)
  642. TITLE:=Xicor Intersil X1205
  643. DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
  644. DEPENDS:=+kmod-i2c-core
  645. KCONFIG:=CONFIG_RTC_DRV_X1205 \
  646. CONFIG_RTC_CLASS=y
  647. FILES:=$(LINUX_DIR)/drivers/rtc/rtc-x1205.ko
  648. AUTOLOAD:=$(call AutoProbe,rtc-x1205)
  649. endef
  650. define KernelPackage/rtc-x1205/description
  651. Kernel module for Xicor Intersil X1205 I2C RTC chip
  652. endef
  653. $(eval $(call KernelPackage,rtc-x1205))
  654. define KernelPackage/mtdtests
  655. SUBMENU:=$(OTHER_MENU)
  656. TITLE:=MTD subsystem tests
  657. KCONFIG:=CONFIG_MTD_TESTS
  658. FILES:=\
  659. $(LINUX_DIR)/drivers/mtd/tests/mtd_nandecctest.ko \
  660. $(LINUX_DIR)/drivers/mtd/tests/mtd_oobtest.ko \
  661. $(LINUX_DIR)/drivers/mtd/tests/mtd_pagetest.ko \
  662. $(LINUX_DIR)/drivers/mtd/tests/mtd_readtest.ko \
  663. $(LINUX_DIR)/drivers/mtd/tests/mtd_speedtest.ko \
  664. $(LINUX_DIR)/drivers/mtd/tests/mtd_stresstest.ko \
  665. $(LINUX_DIR)/drivers/mtd/tests/mtd_subpagetest.ko \
  666. $(LINUX_DIR)/drivers/mtd/tests/mtd_torturetest.ko
  667. endef
  668. define KernelPackage/mtdtests/description
  669. Kernel modules for MTD subsystem/driver testing
  670. endef
  671. $(eval $(call KernelPackage,mtdtests))
  672. define KernelPackage/mtdoops
  673. SUBMENU:=$(OTHER_MENU)
  674. TITLE:=Log panic/oops to an MTD buffer
  675. KCONFIG:=CONFIG_MTD_OOPS
  676. FILES:=$(LINUX_DIR)/drivers/mtd/mtdoops.ko
  677. endef
  678. define KernelPackage/mtdoops/description
  679. Kernel modules for Log panic/oops to an MTD buffer
  680. endef
  681. $(eval $(call KernelPackage,mtdoops))
  682. define KernelPackage/mtdram
  683. SUBMENU:=$(OTHER_MENU)
  684. TITLE:=Test MTD driver using RAM
  685. KCONFIG:=CONFIG_MTD_MTDRAM \
  686. CONFIG_MTDRAM_TOTAL_SIZE=4096 \
  687. CONFIG_MTDRAM_ERASE_SIZE=128
  688. FILES:=$(LINUX_DIR)/drivers/mtd/devices/mtdram.ko
  689. endef
  690. define KernelPackage/mtdram/description
  691. Test MTD driver using RAM
  692. endef
  693. $(eval $(call KernelPackage,mtdram))
  694. define KernelPackage/ramoops
  695. SUBMENU:=$(OTHER_MENU)
  696. TITLE:=Ramoops (pstore-ram)
  697. DEFAULT:=m if ALL_KMODS
  698. KCONFIG:=CONFIG_PSTORE_RAM \
  699. CONFIG_PSTORE_CONSOLE=y
  700. DEPENDS:=+kmod-pstore +kmod-reed-solomon
  701. FILES:= $(LINUX_DIR)/fs/pstore/ramoops.ko
  702. AUTOLOAD:=$(call AutoLoad,30,ramoops,1)
  703. endef
  704. define KernelPackage/ramoops/description
  705. Kernel module for pstore-ram (ramoops) crash log storage
  706. endef
  707. $(eval $(call KernelPackage,ramoops))
  708. define KernelPackage/reed-solomon
  709. SUBMENU:=$(OTHER_MENU)
  710. TITLE:=Reed-Solomon error correction
  711. DEFAULT:=m if ALL_KMODS
  712. KCONFIG:=CONFIG_REED_SOLOMON \
  713. CONFIG_REED_SOLOMON_DEC8=y \
  714. CONFIG_REED_SOLOMON_ENC8=y
  715. FILES:= $(LINUX_DIR)/lib/reed_solomon/reed_solomon.ko
  716. AUTOLOAD:=$(call AutoLoad,30,reed_solomon,1)
  717. endef
  718. define KernelPackage/reed-solomon/description
  719. Kernel module for Reed-Solomon error correction
  720. endef
  721. $(eval $(call KernelPackage,reed-solomon))
  722. define KernelPackage/serial-8250
  723. SUBMENU:=$(OTHER_MENU)
  724. TITLE:=8250 UARTs
  725. KCONFIG:= CONFIG_SERIAL_8250 \
  726. CONFIG_SERIAL_8250_PCI \
  727. CONFIG_SERIAL_8250_NR_UARTS=16 \
  728. CONFIG_SERIAL_8250_RUNTIME_UARTS=16 \
  729. CONFIG_SERIAL_8250_EXTENDED=y \
  730. CONFIG_SERIAL_8250_MANY_PORTS=y \
  731. CONFIG_SERIAL_8250_SHARE_IRQ=y \
  732. CONFIG_SERIAL_8250_DETECT_IRQ=n \
  733. CONFIG_SERIAL_8250_RSA=n
  734. FILES:= \
  735. $(LINUX_DIR)/drivers/tty/serial/8250/8250.ko \
  736. $(LINUX_DIR)/drivers/tty/serial/8250/8250_base.ko \
  737. $(if $(CONFIG_PCI),$(LINUX_DIR)/drivers/tty/serial/8250/8250_pci.ko) \
  738. $(if $(CONFIG_GPIOLIB),$(LINUX_DIR)/drivers/tty/serial/serial_mctrl_gpio.ko)
  739. AUTOLOAD:=$(call AutoProbe,8250 8250_base 8250_pci)
  740. endef
  741. define KernelPackage/serial-8250/description
  742. Kernel module for 8250 UART based serial ports
  743. endef
  744. $(eval $(call KernelPackage,serial-8250))
  745. define KernelPackage/serial-8250-exar
  746. SUBMENU:=$(OTHER_MENU)
  747. TITLE:=Exar 8250 UARTs
  748. KCONFIG:= CONFIG_SERIAL_8250_EXAR
  749. FILES:=$(LINUX_DIR)/drivers/tty/serial/8250/8250_exar.ko
  750. AUTOLOAD:=$(call AutoProbe,8250 8250_base 8250_exar)
  751. DEPENDS:=@PCI_SUPPORT +kmod-serial-8250
  752. endef
  753. define KernelPackage/serial-8250-exar/description
  754. Kernel module for Exar serial ports
  755. endef
  756. $(eval $(call KernelPackage,serial-8250-exar))
  757. define KernelPackage/regmap-core
  758. SUBMENU:=$(OTHER_MENU)
  759. TITLE:=Generic register map support
  760. HIDDEN:=1
  761. KCONFIG:=CONFIG_REGMAP
  762. ifneq ($(wildcard $(LINUX_DIR)/drivers/base/regmap/regmap-core.ko),)
  763. FILES:=$(LINUX_DIR)/drivers/base/regmap/regmap-core.ko
  764. endif
  765. endef
  766. define KernelPackage/regmap-core/description
  767. Generic register map support
  768. endef
  769. $(eval $(call KernelPackage,regmap-core))
  770. define KernelPackage/regmap-spi
  771. SUBMENU:=$(OTHER_MENU)
  772. TITLE:=SPI register map support
  773. DEPENDS:=+kmod-regmap-core
  774. HIDDEN:=1
  775. KCONFIG:=CONFIG_REGMAP_SPI \
  776. CONFIG_SPI=y
  777. FILES:=$(LINUX_DIR)/drivers/base/regmap/regmap-spi.ko
  778. endef
  779. define KernelPackage/regmap-spi/description
  780. SPI register map support
  781. endef
  782. $(eval $(call KernelPackage,regmap-spi))
  783. define KernelPackage/regmap-i2c
  784. SUBMENU:=$(OTHER_MENU)
  785. TITLE:=I2C register map support
  786. DEPENDS:=+kmod-regmap-core +kmod-i2c-core
  787. HIDDEN:=1
  788. KCONFIG:=CONFIG_REGMAP_I2C
  789. FILES:=$(LINUX_DIR)/drivers/base/regmap/regmap-i2c.ko
  790. endef
  791. define KernelPackage/regmap-i2c/description
  792. I2C register map support
  793. endef
  794. $(eval $(call KernelPackage,regmap-i2c))
  795. define KernelPackage/regmap-mmio
  796. SUBMENU:=$(OTHER_MENU)
  797. TITLE:=MMIO register map support
  798. DEPENDS:=+kmod-regmap-core
  799. HIDDEN:=1
  800. KCONFIG:=CONFIG_REGMAP_MMIO
  801. FILES:=$(LINUX_DIR)/drivers/base/regmap/regmap-mmio.ko
  802. endef
  803. define KernelPackage/regmap-mmio/description
  804. MMIO register map support
  805. endef
  806. $(eval $(call KernelPackage,regmap-mmio))
  807. define KernelPackage/ikconfig
  808. SUBMENU:=$(OTHER_MENU)
  809. TITLE:=Kernel configuration via /proc/config.gz
  810. KCONFIG:=CONFIG_IKCONFIG \
  811. CONFIG_IKCONFIG_PROC=y
  812. FILES:=$(LINUX_DIR)/kernel/configs.ko
  813. AUTOLOAD:=$(call AutoLoad,70,configs)
  814. endef
  815. define KernelPackage/ikconfig/description
  816. Kernel configuration via /proc/config.gz
  817. endef
  818. $(eval $(call KernelPackage,ikconfig))
  819. define KernelPackage/zram
  820. SUBMENU:=$(OTHER_MENU)
  821. TITLE:=ZRAM
  822. KCONFIG:= \
  823. CONFIG_ZSMALLOC \
  824. CONFIG_ZRAM \
  825. CONFIG_ZRAM_DEBUG=n \
  826. CONFIG_ZRAM_WRITEBACK=n \
  827. CONFIG_ZSMALLOC_STAT=n
  828. FILES:= \
  829. $(LINUX_DIR)/mm/zsmalloc.ko \
  830. $(LINUX_DIR)/drivers/block/zram/zram.ko
  831. AUTOLOAD:=$(call AutoLoad,20,zsmalloc zram)
  832. endef
  833. define KernelPackage/zram/description
  834. Compressed RAM block device support
  835. endef
  836. define KernelPackage/zram/config
  837. if PACKAGE_kmod-zram
  838. choice
  839. prompt "ZRAM Default compressor"
  840. default ZRAM_DEF_COMP_LZORLE
  841. config ZRAM_DEF_COMP_LZORLE
  842. bool "lzo-rle"
  843. select PACKAGE_kmod-lib-lzo
  844. config ZRAM_DEF_COMP_LZO
  845. bool "lzo"
  846. select PACKAGE_kmod-lib-lzo
  847. config ZRAM_DEF_COMP_LZ4
  848. bool "lz4"
  849. select PACKAGE_kmod-lib-lz4
  850. config ZRAM_DEF_COMP_LZ4HC
  851. bool "lz4-hc"
  852. select PACKAGE_kmod-lib-lz4hc
  853. config ZRAM_DEF_COMP_ZSTD
  854. bool "zstd"
  855. select PACKAGE_kmod-lib-zstd
  856. endchoice
  857. endif
  858. endef
  859. $(eval $(call KernelPackage,zram))
  860. define KernelPackage/pps
  861. SUBMENU:=$(OTHER_MENU)
  862. TITLE:=PPS support
  863. KCONFIG:=CONFIG_PPS
  864. FILES:=$(LINUX_DIR)/drivers/pps/pps_core.ko
  865. AUTOLOAD:=$(call AutoLoad,17,pps_core,1)
  866. endef
  867. define KernelPackage/pps/description
  868. PPS (Pulse Per Second) is a special pulse provided by some GPS
  869. antennae. Userland can use it to get a high-precision time
  870. reference.
  871. endef
  872. $(eval $(call KernelPackage,pps))
  873. define KernelPackage/pps-gpio
  874. SUBMENU:=$(OTHER_MENU)
  875. TITLE:=PPS client using GPIO
  876. DEPENDS:=+kmod-pps
  877. KCONFIG:=CONFIG_PPS_CLIENT_GPIO
  878. FILES:=$(LINUX_DIR)/drivers/pps/clients/pps-gpio.ko
  879. AUTOLOAD:=$(call AutoLoad,18,pps-gpio,1)
  880. endef
  881. define KernelPackage/pps-gpio/description
  882. Support for a PPS source using GPIO. To be useful you must
  883. also register a platform device specifying the GPIO pin and
  884. other options, usually in your board setup.
  885. endef
  886. $(eval $(call KernelPackage,pps-gpio))
  887. define KernelPackage/pps-ldisc
  888. SUBMENU:=$(OTHER_MENU)
  889. TITLE:=PPS line discipline
  890. DEPENDS:=+kmod-pps
  891. KCONFIG:=CONFIG_PPS_CLIENT_LDISC
  892. FILES:=$(LINUX_DIR)/drivers/pps/clients/pps-ldisc.ko
  893. AUTOLOAD:=$(call AutoLoad,18,pps-ldisc,1)
  894. endef
  895. define KernelPackage/pps-ldisc/description
  896. Support for a PPS source connected with the CD (Carrier
  897. Detect) pin of your serial port.
  898. endef
  899. $(eval $(call KernelPackage,pps-ldisc))
  900. define KernelPackage/ptp
  901. SUBMENU:=$(OTHER_MENU)
  902. TITLE:=PTP clock support
  903. DEPENDS:=+kmod-pps
  904. KCONFIG:= \
  905. CONFIG_PTP_1588_CLOCK \
  906. CONFIG_NET_PTP_CLASSIFY=y
  907. FILES:=$(LINUX_DIR)/drivers/ptp/ptp.ko
  908. AUTOLOAD:=$(call AutoLoad,18,ptp,1)
  909. endef
  910. define KernelPackage/ptp/description
  911. The IEEE 1588 standard defines a method to precisely
  912. synchronize distributed clocks over Ethernet networks.
  913. endef
  914. $(eval $(call KernelPackage,ptp))
  915. define KernelPackage/ptp-qoriq
  916. SUBMENU:=$(OTHER_MENU)
  917. TITLE:=Freescale QorIQ PTP support
  918. DEPENDS:=@(TARGET_mpc85xx||TARGET_qoriq) +kmod-ptp
  919. KCONFIG:=CONFIG_PTP_1588_CLOCK_QORIQ
  920. FILES:=$(LINUX_DIR)/drivers/ptp/ptp-qoriq.ko
  921. AUTOLOAD:=$(call AutoProbe,ptp-qoriq)
  922. endef
  923. define KernelPackage/ptp-qoriq/description
  924. Kernel module for IEEE 1588 support for Freescale
  925. QorIQ Ethernet drivers
  926. endef
  927. $(eval $(call KernelPackage,ptp-qoriq))
  928. define KernelPackage/random-core
  929. SUBMENU:=$(OTHER_MENU)
  930. TITLE:=Hardware Random Number Generator Core support
  931. KCONFIG:=CONFIG_HW_RANDOM
  932. FILES:=$(LINUX_DIR)/drivers/char/hw_random/rng-core.ko
  933. endef
  934. define KernelPackage/random-core/description
  935. Kernel module for the HW random number generator core infrastructure
  936. endef
  937. $(eval $(call KernelPackage,random-core))
  938. define KernelPackage/thermal
  939. SUBMENU:=$(OTHER_MENU)
  940. TITLE:=Thermal driver
  941. DEPENDS:=+kmod-hwmon-core
  942. HIDDEN:=1
  943. KCONFIG:= \
  944. CONFIG_THERMAL=y \
  945. CONFIG_THERMAL_OF=y \
  946. CONFIG_CPU_THERMAL=y \
  947. CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y \
  948. CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE=n \
  949. CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE=n \
  950. CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0 \
  951. CONFIG_THERMAL_GOV_FAIR_SHARE=n \
  952. CONFIG_THERMAL_GOV_STEP_WISE=y \
  953. CONFIG_THERMAL_GOV_USER_SPACE=n \
  954. CONFIG_THERMAL_HWMON=y \
  955. CONFIG_THERMAL_EMULATION=n
  956. endef
  957. define KernelPackage/thermal/description
  958. Thermal driver offers a generic mechanism for thermal management.
  959. Usually it's made up of one or more thermal zone and cooling device.
  960. endef
  961. $(eval $(call KernelPackage,thermal))
  962. define KernelPackage/gpio-beeper
  963. SUBMENU:=$(OTHER_MENU)
  964. TITLE:=GPIO beeper support
  965. DEPENDS:=+kmod-input-core
  966. KCONFIG:= \
  967. CONFIG_INPUT_MISC=y \
  968. CONFIG_INPUT_GPIO_BEEPER
  969. FILES:= \
  970. $(LINUX_DIR)/drivers/input/misc/gpio-beeper.ko
  971. AUTOLOAD:=$(call AutoLoad,50,gpio-beeper)
  972. endef
  973. define KernelPackage/gpio-beeper/description
  974. This enables playing beeps through an GPIO-connected buzzer
  975. endef
  976. $(eval $(call KernelPackage,gpio-beeper))
  977. define KernelPackage/echo
  978. SUBMENU:=$(OTHER_MENU)
  979. TITLE:=Line Echo Canceller
  980. KCONFIG:=CONFIG_ECHO
  981. FILES:=$(LINUX_DIR)/drivers/misc/echo/echo.ko
  982. AUTOLOAD:=$(call AutoLoad,50,echo)
  983. endef
  984. define KernelPackage/echo/description
  985. This driver provides line echo cancelling support for mISDN and
  986. DAHDI drivers
  987. endef
  988. $(eval $(call KernelPackage,echo))
  989. define KernelPackage/keys-encrypted
  990. SUBMENU:=$(OTHER_MENU)
  991. TITLE:=encrypted keys on kernel keyring
  992. DEPENDS:=@KERNEL_KEYS +kmod-crypto-cbc +kmod-crypto-hmac +kmod-crypto-rng \
  993. +kmod-crypto-sha256 +kmod-keys-trusted
  994. KCONFIG:=CONFIG_ENCRYPTED_KEYS
  995. FILES:=$(LINUX_DIR)/security/keys/encrypted-keys/encrypted-keys.ko
  996. AUTOLOAD:=$(call AutoLoad,01,encrypted-keys,1)
  997. endef
  998. define KernelPackage/keys-encrypted/description
  999. This module provides support for create/encrypting/decrypting keys
  1000. in the kernel. Encrypted keys are kernel generated random numbers,
  1001. which are encrypted/decrypted with a 'master' symmetric key. The
  1002. 'master' key can be either a trusted-key or user-key type.
  1003. Userspace only ever sees/stores encrypted blobs.
  1004. endef
  1005. $(eval $(call KernelPackage,keys-encrypted))
  1006. define KernelPackage/keys-trusted
  1007. SUBMENU:=$(OTHER_MENU)
  1008. TITLE:=TPM trusted keys on kernel keyring
  1009. DEPENDS:=@KERNEL_KEYS +kmod-crypto-hash +kmod-crypto-hmac +kmod-crypto-sha1 +kmod-tpm
  1010. KCONFIG:=CONFIG_TRUSTED_KEYS
  1011. FILES:= $(LINUX_DIR)/security/keys/trusted-keys/trusted.ko
  1012. AUTOLOAD:=$(call AutoLoad,01,trusted-keys,1)
  1013. endef
  1014. define KernelPackage/keys-trusted/description
  1015. This module provides support for creating, sealing, and unsealing
  1016. keys in the kernel. Trusted keys are random number symmetric keys,
  1017. generated and RSA-sealed by the TPM. The TPM only unseals the keys,
  1018. if the boot PCRs and other criteria match. Userspace will only ever
  1019. see encrypted blobs.
  1020. endef
  1021. $(eval $(call KernelPackage,keys-trusted))
  1022. define KernelPackage/tpm
  1023. SUBMENU:=$(OTHER_MENU)
  1024. TITLE:=TPM Hardware Support
  1025. DEPENDS:= +kmod-random-core +kmod-asn1-decoder \
  1026. +kmod-asn1-encoder +kmod-oid-registry
  1027. KCONFIG:= CONFIG_TCG_TPM
  1028. FILES:= $(LINUX_DIR)/drivers/char/tpm/tpm.ko
  1029. AUTOLOAD:=$(call AutoLoad,10,tpm,1)
  1030. endef
  1031. define KernelPackage/tpm/description
  1032. This enables TPM Hardware Support.
  1033. endef
  1034. $(eval $(call KernelPackage,tpm))
  1035. define KernelPackage/tpm-tis
  1036. SUBMENU:=$(OTHER_MENU)
  1037. TITLE:=TPM TIS 1.2 Interface / TPM 2.0 FIFO Interface
  1038. DEPENDS:= @TARGET_x86 +kmod-tpm
  1039. KCONFIG:= CONFIG_TCG_TIS
  1040. FILES:= \
  1041. $(LINUX_DIR)/drivers/char/tpm/tpm_tis.ko \
  1042. $(LINUX_DIR)/drivers/char/tpm/tpm_tis_core.ko
  1043. AUTOLOAD:=$(call AutoLoad,20,tpm_tis,1)
  1044. endef
  1045. define KernelPackage/tpm-tis/description
  1046. If you have a TPM security chip that is compliant with the
  1047. TCG TIS 1.2 TPM specification (TPM1.2) or the TCG PTP FIFO
  1048. specification (TPM2.0) say Yes and it will be accessible from
  1049. within Linux.
  1050. endef
  1051. $(eval $(call KernelPackage,tpm-tis))
  1052. define KernelPackage/tpm-i2c-atmel
  1053. SUBMENU:=$(OTHER_MENU)
  1054. TITLE:=TPM I2C Atmel Support
  1055. DEPENDS:= +kmod-tpm +kmod-i2c-core
  1056. KCONFIG:= CONFIG_TCG_TIS_I2C_ATMEL
  1057. FILES:= $(LINUX_DIR)/drivers/char/tpm/tpm_i2c_atmel.ko
  1058. AUTOLOAD:=$(call AutoLoad,40,tpm_i2c_atmel,1)
  1059. endef
  1060. define KernelPackage/tpm-i2c-atmel/description
  1061. This enables the TPM Interface Specification 1.2 Interface (I2C - Atmel)
  1062. endef
  1063. $(eval $(call KernelPackage,tpm-i2c-atmel))
  1064. define KernelPackage/tpm-i2c-infineon
  1065. SUBMENU:=$(OTHER_MENU)
  1066. TITLE:= TPM I2C Infineon driver
  1067. DEPENDS:= +kmod-tpm +kmod-i2c-core
  1068. KCONFIG:= CONFIG_TCG_TIS_I2C_INFINEON
  1069. FILES:= $(LINUX_DIR)/drivers/char/tpm/tpm_i2c_infineon.ko
  1070. AUTOLOAD:= $(call AutoLoad,40,tpm_i2c_infineon,1)
  1071. endef
  1072. define KernelPackage/tpm-i2c-infineon/description
  1073. This enables the TPM Interface Specification 1.2 Interface (I2C - Infineon)
  1074. endef
  1075. $(eval $(call KernelPackage,tpm-i2c-infineon))
  1076. define KernelPackage/i6300esb-wdt
  1077. SUBMENU:=$(OTHER_MENU)
  1078. TITLE:=Intel 6300ESB Timer/Watchdog
  1079. DEPENDS:=@PCI_SUPPORT @!SMALL_FLASH
  1080. KCONFIG:=CONFIG_I6300ESB_WDT \
  1081. CONFIG_WATCHDOG_CORE=y
  1082. FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/i6300esb.ko
  1083. AUTOLOAD:=$(call AutoLoad,50,i6300esb,1)
  1084. endef
  1085. define KernelPackage/i6300esb-wdt/description
  1086. Kernel module for the watchdog timer built into the Intel
  1087. 6300ESB controller hub. Also used by QEMU/libvirt.
  1088. endef
  1089. $(eval $(call KernelPackage,i6300esb-wdt))
  1090. define KernelPackage/mhi-bus
  1091. SUBMENU:=$(OTHER_MENU)
  1092. TITLE:=MHI bus
  1093. KCONFIG:=CONFIG_MHI_BUS \
  1094. CONFIG_MHI_BUS_DEBUG=y
  1095. FILES:=$(LINUX_DIR)/drivers/bus/mhi/host/mhi.ko
  1096. AUTOLOAD:=$(call AutoProbe,mhi)
  1097. endef
  1098. define KernelPackage/mhi-bus/description
  1099. Kernel module for the Qualcomm MHI bus.
  1100. endef
  1101. $(eval $(call KernelPackage,mhi-bus))
  1102. define KernelPackage/mhi-pci-generic
  1103. SUBMENU:=$(OTHER_MENU)
  1104. TITLE:=MHI PCI controller driver
  1105. DEPENDS:=@PCI_SUPPORT +kmod-mhi-bus
  1106. KCONFIG:=CONFIG_MHI_BUS_PCI_GENERIC
  1107. FILES:=$(LINUX_DIR)/drivers/bus/mhi/host/mhi_pci_generic.ko
  1108. AUTOLOAD:=$(call AutoProbe,mhi_pci_generic)
  1109. endef
  1110. define KernelPackage/mhi-pci-generic/description
  1111. Kernel module for the MHI PCI controller driver.
  1112. endef
  1113. $(eval $(call KernelPackage,mhi-pci-generic))