other.mk 32 KB

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