modules.mk 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414
  1. #
  2. # Copyright (C) 2012-2016 OpenWrt.org
  3. #
  4. # This is free software, licensed under the GNU General Public License v2.
  5. # See /LICENSE for more information.
  6. #
  7. define KernelPackage/sound-arm-bcm2835
  8. TITLE:=BCM2835 ALSA driver
  9. KCONFIG:= \
  10. CONFIG_SND_ARM=y \
  11. CONFIG_SND_BCM2835 \
  12. CONFIG_SND_ARMAACI=n
  13. FILES:= \
  14. $(LINUX_DIR)/sound/arm/snd-bcm2835.ko
  15. AUTOLOAD:=$(call AutoLoad,68,snd-bcm2835)
  16. DEPENDS:=@TARGET_brcm2708
  17. $(call AddDepends/sound)
  18. endef
  19. define KernelPackage/sound-arm-bcm2835/description
  20. This package contains the BCM2835 ALSA pcm card driver
  21. endef
  22. $(eval $(call KernelPackage,sound-arm-bcm2835))
  23. define KernelPackage/sound-soc-bcm2835-i2s
  24. TITLE:=SoC Audio support for the Broadcom 2835 I2S module
  25. KCONFIG:= \
  26. CONFIG_SND_BCM2835_SOC_I2S \
  27. CONFIG_SND_SOC_DMAENGINE_PCM=y \
  28. CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
  29. FILES:= \
  30. $(LINUX_DIR)/sound/soc/bcm/snd-soc-bcm2835-i2s.ko
  31. AUTOLOAD:=$(call AutoLoad,68,snd-soc-bcm2835-i2s)
  32. DEPENDS:=@TARGET_brcm2708 +kmod-regmap +kmod-sound-soc-core
  33. $(call AddDepends/sound)
  34. endef
  35. define KernelPackage/sound-soc-bcm2835-i2s/description
  36. This package contains support for codecs attached to the Broadcom 2835 I2S interface
  37. endef
  38. $(eval $(call KernelPackage,sound-soc-bcm2835-i2s))
  39. define KernelPackage/sound-soc-boomberry-dac
  40. TITLE:=Support for BoomBerry DAC
  41. KCONFIG:= \
  42. CONFIG_SND_BCM2708_SOC_BOOMBERRY_DAC \
  43. CONFIG_SND_SOC_PCM512x
  44. FILES:= \
  45. $(LINUX_DIR)/sound/soc/bcm/snd-soc-boomberry-dac.ko \
  46. $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x.ko
  47. AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm512x snd-soc-boomberry-dac)
  48. DEPENDS:= \
  49. kmod-sound-soc-bcm2835-i2s \
  50. +kmod-i2c-bcm2708
  51. $(call AddDepends/sound)
  52. endef
  53. define KernelPackage/sound-soc-boomberry-dac/description
  54. This package contains support for BoomBerry DAC
  55. endef
  56. $(eval $(call KernelPackage,sound-soc-boomberry-dac))
  57. define KernelPackage/sound-soc-boomberry-digi
  58. TITLE:=Support for BoomBerry Digi
  59. KCONFIG:= \
  60. CONFIG_SND_BCM2708_SOC_BOOMBERRY_DIGI \
  61. CONFIG_SND_SOC_WM8804
  62. FILES:= \
  63. $(LINUX_DIR)/sound/soc/bcm/snd-soc-boomberry-digi.ko \
  64. $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8804.ko
  65. AUTOLOAD:=$(call AutoLoad,68,snd-soc-wm8804 snd-soc-boomberry-digi)
  66. DEPENDS:= \
  67. kmod-sound-soc-bcm2835-i2s \
  68. +kmod-i2c-bcm2708
  69. $(call AddDepends/sound)
  70. endef
  71. define KernelPackage/sound-soc-boomberry-digi/description
  72. This package contains support for BoomBerry Digi
  73. endef
  74. $(eval $(call KernelPackage,sound-soc-boomberry-digi))
  75. define KernelPackage/sound-soc-hifiberry-dac
  76. TITLE:=Support for HifiBerry DAC
  77. KCONFIG:= \
  78. CONFIG_SND_BCM2708_SOC_HIFIBERRY_DAC \
  79. CONFIG_SND_SOC_PCM5102A
  80. FILES:= \
  81. $(LINUX_DIR)/sound/soc/bcm/snd-soc-hifiberry-dac.ko \
  82. $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm5102a.ko
  83. AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm5102a snd-soc-hifiberry-dac)
  84. DEPENDS:= \
  85. kmod-sound-soc-bcm2835-i2s \
  86. +kmod-i2c-bcm2708
  87. $(call AddDepends/sound)
  88. endef
  89. define KernelPackage/sound-soc-hifiberry-dac/description
  90. This package contains support for HifiBerry DAC
  91. endef
  92. $(eval $(call KernelPackage,sound-soc-hifiberry-dac))
  93. define KernelPackage/sound-soc-hifiberry-dacplus
  94. TITLE:=Support for HifiBerry DAC+ / DAC+ Pro
  95. KCONFIG:= \
  96. CONFIG_SND_BCM2708_SOC_HIFIBERRY_DACPLUS \
  97. CONFIG_SND_SOC_PCM512x
  98. FILES:= \
  99. $(LINUX_DIR)/drivers/clk/clk-hifiberry-dacpro.ko \
  100. $(LINUX_DIR)/sound/soc/bcm/snd-soc-hifiberry-dacplus.ko \
  101. $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x.ko
  102. AUTOLOAD:=$(call AutoLoad,68,clk-hifiberry-dacpro snd-soc-pcm512x snd-soc-hifiberry-dacplus)
  103. DEPENDS:= \
  104. kmod-sound-soc-bcm2835-i2s \
  105. +kmod-i2c-bcm2708
  106. $(call AddDepends/sound)
  107. endef
  108. define KernelPackage/sound-soc-hifiberry-dacplus/description
  109. This package contains support for HifiBerry DAC+ / DAC+ Pro
  110. endef
  111. $(eval $(call KernelPackage,sound-soc-hifiberry-dacplus))
  112. define KernelPackage/sound-soc-hifiberry-digi
  113. TITLE:=Support for HifiBerry Digi
  114. KCONFIG:= \
  115. CONFIG_SND_BCM2708_SOC_HIFIBERRY_DIGI \
  116. CONFIG_SND_SOC_WM8804
  117. FILES:= \
  118. $(LINUX_DIR)/sound/soc/bcm/snd-soc-hifiberry-digi.ko \
  119. $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8804.ko
  120. AUTOLOAD:=$(call AutoLoad,68,snd-soc-wm8804 snd-soc-hifiberry-digi)
  121. DEPENDS:= \
  122. kmod-sound-soc-bcm2835-i2s \
  123. +kmod-i2c-bcm2708
  124. $(call AddDepends/sound)
  125. endef
  126. define KernelPackage/sound-soc-hifiberry-digi/description
  127. This package contains support for HifiBerry Digi
  128. endef
  129. $(eval $(call KernelPackage,sound-soc-hifiberry-digi))
  130. define KernelPackage/sound-soc-hifiberry-amp
  131. TITLE:=Support for HifiBerry Amp
  132. KCONFIG:= \
  133. CONFIG_SND_BCM2708_SOC_HIFIBERRY_AMP \
  134. CONFIG_SND_SOC_TAS5713
  135. FILES:= \
  136. $(LINUX_DIR)/sound/soc/bcm/snd-soc-hifiberry-amp.ko \
  137. $(LINUX_DIR)/sound/soc/codecs/snd-soc-tas5713.ko
  138. AUTOLOAD:=$(call AutoLoad,68,snd-soc-tas5713 snd-soc-hifiberry-amp)
  139. DEPENDS:= \
  140. kmod-sound-soc-bcm2835-i2s \
  141. +kmod-i2c-bcm2708
  142. $(call AddDepends/sound)
  143. endef
  144. define KernelPackage/sound-soc-hifiberry-amp/description
  145. This package contains support for HifiBerry Amp
  146. endef
  147. $(eval $(call KernelPackage,sound-soc-hifiberry-amp))
  148. define KernelPackage/sound-soc-rpi-dac
  149. TITLE:=Support for RPi-DAC
  150. KCONFIG:= \
  151. CONFIG_SND_BCM2708_SOC_RPI_DAC \
  152. CONFIG_SND_SOC_PCM1794A
  153. FILES:= \
  154. $(LINUX_DIR)/sound/soc/bcm/snd-soc-rpi-dac.ko \
  155. $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm1794a.ko
  156. AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm1794a snd-soc-rpi-dac)
  157. DEPENDS:= \
  158. kmod-sound-soc-bcm2835-i2s \
  159. +kmod-i2c-bcm2708
  160. $(call AddDepends/sound)
  161. endef
  162. define KernelPackage/sound-soc-rpi-dac/description
  163. This package contains support for RPi-DAC
  164. endef
  165. $(eval $(call KernelPackage,sound-soc-rpi-dac))
  166. define KernelPackage/sound-soc-rpi-proto
  167. TITLE:=Support for RPi-PROTO
  168. KCONFIG:= \
  169. CONFIG_SND_BCM2708_SOC_RPI_PROTO \
  170. CONFIG_SND_SOC_WM8731
  171. FILES:= \
  172. $(LINUX_DIR)/sound/soc/bcm/snd-soc-rpi-proto.ko \
  173. $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8731.ko
  174. AUTOLOAD:=$(call AutoLoad,68,snd-soc-wm8731 snd-soc-rpi-proto)
  175. DEPENDS:= \
  176. kmod-sound-soc-bcm2835-i2s \
  177. +kmod-i2c-bcm2708
  178. $(call AddDepends/sound)
  179. endef
  180. define KernelPackage/sound-soc-rpi-proto/description
  181. This package contains support for RPi-PROTO
  182. endef
  183. $(eval $(call KernelPackage,sound-soc-rpi-proto))
  184. define KernelPackage/sound-soc-iqaudio-dac
  185. TITLE:=Support for IQaudIO-DAC
  186. KCONFIG:= \
  187. CONFIG_SND_BCM2708_SOC_IQAUDIO_DAC \
  188. CONFIG_SND_SOC_PCM512x \
  189. CONFIG_SND_SOC_PCM512x_I2C
  190. FILES:= \
  191. $(LINUX_DIR)/sound/soc/bcm/snd-soc-iqaudio-dac.ko \
  192. $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x.ko \
  193. $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x-i2c.ko
  194. AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm512x snd-soc-pcm512x-i2c snd-soc-iqaudio-dac)
  195. DEPENDS:= \
  196. kmod-sound-soc-bcm2835-i2s \
  197. +kmod-i2c-bcm2708
  198. $(call AddDepends/sound)
  199. endef
  200. define KernelPackage/sound-soc-iqaudio-dac/description
  201. This package contains support for IQaudIO-DAC
  202. endef
  203. $(eval $(call KernelPackage,sound-soc-iqaudio-dac))
  204. define KernelPackage/sound-soc-raspidac3
  205. TITLE:=Support for RaspiDAC Rev.3x
  206. KCONFIG:= \
  207. CONFIG_SND_BCM2708_SOC_RASPIDAC3 \
  208. CONFIG_SND_SOC_PCM512x \
  209. CONFIG_SND_SOC_PCM512x_I2C \
  210. CONFIG_SND_SOC_TPA6130A2
  211. FILES:= \
  212. $(LINUX_DIR)/sound/soc/bcm/snd-soc-raspidac3.ko \
  213. $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x.ko \
  214. $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x-i2c.ko \
  215. $(LINUX_DIR)/sound/soc/codecs/snd-soc-tpa6130a2.ko
  216. AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm512x snd-soc-pcm512x-i2c snd-soc-tpa6130a2 snd-soc-raspidac3)
  217. DEPENDS:= \
  218. kmod-sound-soc-bcm2835-i2s \
  219. +kmod-i2c-bcm2708
  220. $(call AddDepends/sound)
  221. endef
  222. define KernelPackage/sound-soc-raspidac3/description
  223. This package contains support for RaspiDAC Rev.3x
  224. endef
  225. $(eval $(call KernelPackage,sound-soc-raspidac3))
  226. define KernelPackage/random-bcm2835
  227. SUBMENU:=$(OTHER_MENU)
  228. TITLE:=BCM2835 HW Random Number Generator
  229. KCONFIG:=CONFIG_HW_RANDOM_BCM2835
  230. FILES:=$(LINUX_DIR)/drivers/char/hw_random/bcm2835-rng.ko
  231. AUTOLOAD:=$(call AutoLoad,11,bcm2835-rng)
  232. DEPENDS:=@TARGET_brcm2708 +kmod-random-core
  233. endef
  234. define KernelPackage/random-bcm2835/description
  235. This package contains the Broadcom 2835 HW random number generator driver
  236. endef
  237. $(eval $(call KernelPackage,random-bcm2835))
  238. define KernelPackage/smi-bcm2835
  239. SUBMENU:=$(OTHER_MENU)
  240. TITLE:=BCM2835 SMI driver
  241. KCONFIG:=CONFIG_BCM2835_SMI
  242. FILES:=$(LINUX_DIR)/drivers/misc/bcm2835_smi.ko
  243. AUTOLOAD:=$(call AutoLoad,20,bcm2835_smi)
  244. DEPENDS:=@TARGET_brcm2708
  245. endef
  246. define KernelPackage/smi-bcm2835/description
  247. This package contains the Character device driver for Broadcom Secondary
  248. Memory Interface
  249. endef
  250. $(eval $(call KernelPackage,smi-bcm2835))
  251. define KernelPackage/smi-bcm2835-dev
  252. SUBMENU:=$(OTHER_MENU)
  253. TITLE:=BCM2835 SMI device driver
  254. KCONFIG:=CONFIG_BCM2835_SMI_DEV
  255. FILES:=$(LINUX_DIR)/drivers/char/broadcom/bcm2835_smi_dev.ko
  256. AUTOLOAD:=$(call AutoLoad,21,bcm2835_smi_dev)
  257. DEPENDS:=@TARGET_brcm2708 +kmod-smi-bcm2835
  258. endef
  259. define KernelPackage/smi-bcm2835-dev/description
  260. This driver provides a character device interface (ioctl + read/write) to
  261. Broadcom's Secondary Memory interface. The low-level functionality is provided
  262. by the SMI driver itself.
  263. endef
  264. $(eval $(call KernelPackage,smi-bcm2835-dev))
  265. define KernelPackage/spi-bcm2835
  266. SUBMENU:=$(SPI_MENU)
  267. TITLE:=BCM2835 SPI controller driver
  268. KCONFIG:=\
  269. CONFIG_SPI=y \
  270. CONFIG_SPI_BCM2835 \
  271. CONFIG_SPI_MASTER=y
  272. FILES:=$(LINUX_DIR)/drivers/spi/spi-bcm2835.ko
  273. AUTOLOAD:=$(call AutoLoad,89,spi-bcm2835)
  274. DEPENDS:=@TARGET_brcm2708
  275. endef
  276. define KernelPackage/spi-bcm2835/description
  277. This package contains the Broadcom 2835 SPI master controller driver
  278. endef
  279. $(eval $(call KernelPackage,spi-bcm2835))
  280. define KernelPackage/spi-bcm2835-aux
  281. SUBMENU:=$(SPI_MENU)
  282. TITLE:=BCM2835 Aux SPI controller driver
  283. KCONFIG:=\
  284. CONFIG_SPI=y \
  285. CONFIG_SPI_BCM2835AUX \
  286. CONFIG_SPI_MASTER=y
  287. FILES:=$(LINUX_DIR)/drivers/spi/spi-bcm2835aux.ko
  288. AUTOLOAD:=$(call AutoLoad,89,spi-bcm2835aux)
  289. DEPENDS:=@TARGET_brcm2708
  290. endef
  291. define KernelPackage/spi-bcm2835-aux/description
  292. This package contains the Broadcom 2835 Aux SPI master controller driver
  293. endef
  294. $(eval $(call KernelPackage,spi-bcm2835-aux))
  295. define KernelPackage/hwmon-bcm2835
  296. TITLE:=BCM2835 HWMON driver
  297. KCONFIG:=CONFIG_SENSORS_BCM2835
  298. FILES:=$(LINUX_DIR)/drivers/hwmon/bcm2835-hwmon.ko
  299. AUTOLOAD:=$(call AutoLoad,60,bcm2835-hwmon)
  300. $(call AddDepends/hwmon,@TARGET_brcm2708)
  301. endef
  302. define KernelPackage/hwmon-bcm2835/description
  303. Kernel module for BCM2835 thermal monitor chip
  304. endef
  305. $(eval $(call KernelPackage,hwmon-bcm2835))
  306. I2C_BCM2708_MODULES:=\
  307. CONFIG_I2C_BCM2708:drivers/i2c/busses/i2c-bcm2708
  308. define KernelPackage/i2c-bcm2708
  309. $(call i2c_defaults,$(I2C_BCM2708_MODULES),59)
  310. TITLE:=Broadcom BCM2708 I2C master controller driver
  311. KCONFIG+= \
  312. CONFIG_I2C_BCM2708_BAUDRATE=100000
  313. DEPENDS:=@TARGET_brcm2708 +kmod-i2c-core
  314. endef
  315. define KernelPackage/i2c-bcm2708/description
  316. This package contains the Broadcom 2708 I2C master controller driver
  317. endef
  318. $(eval $(call KernelPackage,i2c-bcm2708))
  319. I2C_BCM2835_MODULES:=\
  320. CONFIG_I2C_BCM2835:drivers/i2c/busses/i2c-bcm2835
  321. define KernelPackage/i2c-bcm2835
  322. $(call i2c_defaults,$(I2C_BCM2835_MODULES),59)
  323. TITLE:=Broadcom BCM2835 I2C master controller driver
  324. DEPENDS:=@TARGET_brcm2708 +kmod-i2c-core
  325. endef
  326. define KernelPackage/i2c-bcm2835/description
  327. This package contains the Broadcom 2835 I2C master controller driver
  328. endef
  329. $(eval $(call KernelPackage,i2c-bcm2835))
  330. define KernelPackage/video-bcm2835
  331. TITLE:=Broadcom BCM2835 camera interface driver
  332. KCONFIG:= \
  333. CONFIG_VIDEO_BCM2835=y \
  334. CONFIG_VIDEO_BCM2835_MMAL
  335. FILES:= $(LINUX_DIR)/drivers/media/platform/bcm2835/bcm2835-v4l2.ko
  336. AUTOLOAD:=$(call AutoLoad,65,bcm2835-v4l2)
  337. $(call AddDepends/video,@TARGET_brcm2708 +kmod-video-videobuf2)
  338. endef
  339. define KernelPackage/video-bcm2835/description
  340. This is a V4L2 driver for the Broadcom 2835 MMAL camera host interface
  341. endef
  342. $(eval $(call KernelPackage,video-bcm2835))