modules.mk 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641
  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/drm-vc4
  8. SUBMENU:=$(VIDEO_MENU)
  9. TITLE:=Broadcom VC4 Graphics
  10. DEPENDS:=@TARGET_brcm2708 +kmod-drm
  11. KCONFIG:=CONFIG_DRM_VC4
  12. FILES:= \
  13. $(LINUX_DIR)/drivers/gpu/drm/vc4/vc4.ko \
  14. $(LINUX_DIR)/drivers/gpu/drm/drm_kms_helper.ko
  15. AUTOLOAD:=$(call AutoProbe,vc4)
  16. endef
  17. define KernelPackage/drm-vc4/description
  18. Direct Rendering Manager (DRM) support for Broadcom VideoCore IV GPU
  19. used in BCM2835, BCM2836 and BCM2837 SoCs (e.g. Raspberry Pi).
  20. endef
  21. $(eval $(call KernelPackage,drm-vc4))
  22. define KernelPackage/sound-arm-bcm2835
  23. TITLE:=BCM2835 ALSA driver
  24. KCONFIG:= \
  25. CONFIG_SND_ARM=y \
  26. CONFIG_SND_BCM2835 \
  27. CONFIG_SND_ARMAACI=n
  28. FILES:= \
  29. $(LINUX_DIR)/sound/arm/snd-bcm2835.ko
  30. AUTOLOAD:=$(call AutoLoad,68,snd-bcm2835)
  31. DEPENDS:=@TARGET_brcm2708
  32. $(call AddDepends/sound)
  33. endef
  34. define KernelPackage/sound-arm-bcm2835/description
  35. This package contains the BCM2835 ALSA pcm card driver
  36. endef
  37. $(eval $(call KernelPackage,sound-arm-bcm2835))
  38. define KernelPackage/sound-soc-bcm2835-i2s
  39. TITLE:=SoC Audio support for the Broadcom 2835 I2S module
  40. KCONFIG:= \
  41. CONFIG_SND_BCM2835_SOC_I2S \
  42. CONFIG_SND_SOC_DMAENGINE_PCM=y \
  43. CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
  44. FILES:= \
  45. $(LINUX_DIR)/sound/soc/bcm/snd-soc-bcm2835-i2s.ko
  46. AUTOLOAD:=$(call AutoLoad,68,snd-soc-bcm2835-i2s)
  47. DEPENDS:=@TARGET_brcm2708 +kmod-regmap +kmod-sound-soc-core
  48. $(call AddDepends/sound)
  49. endef
  50. define KernelPackage/sound-soc-bcm2835-i2s/description
  51. This package contains support for codecs attached to the Broadcom 2835 I2S interface
  52. endef
  53. $(eval $(call KernelPackage,sound-soc-bcm2835-i2s))
  54. define KernelPackage/sound-soc-adau1977-adc
  55. TITLE:=Support for ADAU1977 ADC
  56. KCONFIG:= \
  57. CONFIG_SND_BCM2708_SOC_ADAU1977_ADC \
  58. CONFIG_SND_SOC_ADAU1977 \
  59. CONFIG_SND_SOC_ADAU1977_I2C
  60. FILES:= \
  61. $(LINUX_DIR)/sound/soc/bcm/snd-soc-adau1977-adc.ko \
  62. $(LINUX_DIR)/sound/soc/codecs/snd-soc-adau1977.ko \
  63. $(LINUX_DIR)/sound/soc/codecs/snd-soc-adau1977-i2c.ko
  64. AUTOLOAD:=$(call AutoLoad,68,snd-soc-adau1977 snd-soc-adau1977-i2c \
  65. snd-soc-adau1977-adc)
  66. DEPENDS:= \
  67. kmod-sound-soc-bcm2835-i2s \
  68. +kmod-i2c-bcm2708
  69. $(call AddDepends/sound)
  70. endef
  71. define KernelPackage/sound-soc-adau1977-adc/description
  72. This package contains support for ADAU1977 ADC
  73. endef
  74. $(eval $(call KernelPackage,sound-soc-adau1977-adc))
  75. define KernelPackage/sound-soc-allo-piano-dac
  76. TITLE:=Support for Allo Piano DAC
  77. KCONFIG:= \
  78. CONFIG_SND_BCM2708_SOC_ALLO_PIANO_DAC \
  79. CONFIG_SND_SOC_PCM512x \
  80. CONFIG_SND_SOC_PCM512x_I2C
  81. FILES:= \
  82. $(LINUX_DIR)/sound/soc/bcm/snd-soc-allo-piano-dac.ko \
  83. $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x.ko \
  84. $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x-i2c.ko
  85. AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm512x-i2c snd-soc-pcm512x \
  86. snd-soc-allo-piano-dac)
  87. DEPENDS:= \
  88. kmod-sound-soc-bcm2835-i2s \
  89. +kmod-i2c-bcm2708
  90. $(call AddDepends/sound)
  91. endef
  92. define KernelPackage/sound-soc-allo-piano-dac/description
  93. This package contains support for Allo Piano DAC
  94. endef
  95. $(eval $(call KernelPackage,sound-soc-allo-piano-dac))
  96. define KernelPackage/sound-soc-audioinjector-pi-soundcard
  97. TITLE:=Support for AudioInjector Pi soundcard
  98. KCONFIG:= \
  99. CONFIG_SND_AUDIOINJECTOR_PI_SOUNDCARD \
  100. CONFIG_SND_SOC_WM8731
  101. FILES:= \
  102. $(LINUX_DIR)/sound/soc/bcm/snd-soc-audioinjector-pi-soundcard.ko \
  103. $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8731.ko
  104. AUTOLOAD:=$(call AutoLoad,68,snd-soc-wm8731 \
  105. snd-soc-audioinjector-pi-soundcard)
  106. DEPENDS:= \
  107. kmod-sound-soc-bcm2835-i2s \
  108. +kmod-i2c-bcm2708
  109. $(call AddDepends/sound)
  110. endef
  111. define KernelPackage/sound-soc-audioinjector-pi-soundcard/description
  112. This package contains support for AudioInjector Pi soundcard
  113. endef
  114. $(eval $(call KernelPackage,sound-soc-audioinjector-pi-soundcard))
  115. define KernelPackage/sound-soc-digidac1-soundcard
  116. TITLE:=Support for RRA DigiDAC1
  117. KCONFIG:= \
  118. CONFIG_SND_DIGIDAC1_SOUNDCARD \
  119. CONFIG_SND_SOC_WM8741 \
  120. CONFIG_SND_SOC_WM8804 \
  121. CONFIG_SND_SOC_WM8804_I2C
  122. FILES:= \
  123. $(LINUX_DIR)/sound/soc/bcm/snd-soc-digidac1-soundcard.ko \
  124. $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8741.ko \
  125. $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8804.ko \
  126. $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8804-i2c.ko
  127. AUTOLOAD:=$(call AutoLoad,68,snd-soc-wm8741 \
  128. snd-soc-wm8804 snd-soc-wm8804-i2c \
  129. snd-soc-digidac1-soundcard)
  130. DEPENDS:= \
  131. kmod-sound-soc-bcm2835-i2s \
  132. +kmod-i2c-bcm2708
  133. $(call AddDepends/sound)
  134. endef
  135. define KernelPackage/sound-soc-digidac1-soundcard/description
  136. This package contains support for RRA DigiDAC1
  137. endef
  138. $(eval $(call KernelPackage,sound-soc-digidac1-soundcard))
  139. define KernelPackage/sound-soc-dionaudio-loco
  140. TITLE:=Support for Dion Audio LOCO DAC-AMP
  141. KCONFIG:= \
  142. CONFIG_SND_BCM2708_SOC_DIONAUDIO_LOCO \
  143. CONFIG_SND_SOC_PCM5102A
  144. FILES:= \
  145. $(LINUX_DIR)/sound/soc/bcm/snd-soc-dionaudio-loco.ko \
  146. $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm5102a.ko
  147. AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm5102a \
  148. snd-soc-dionaudio-loco)
  149. DEPENDS:= \
  150. kmod-sound-soc-bcm2835-i2s
  151. $(call AddDepends/sound)
  152. endef
  153. define KernelPackage/sound-soc-dionaudio-loco/description
  154. This package contains support for Dion Audio LOCO DAC-AMP
  155. endef
  156. $(eval $(call KernelPackage,sound-soc-dionaudio-loco))
  157. define KernelPackage/sound-soc-dionaudio-loco-v2
  158. TITLE:=Support for Dion Audio LOCO-V2 DAC-AMP
  159. KCONFIG:= \
  160. CONFIG_SND_BCM2708_SOC_DIONAUDIO_LOCO_V2 \
  161. CONFIG_SND_SOC_PCM512x \
  162. CONFIG_SND_SOC_PCM512x_I2C
  163. FILES:= \
  164. $(LINUX_DIR)/sound/soc/bcm/snd-soc-dionaudio-loco.ko \
  165. $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x.ko \
  166. $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x-i2c.ko
  167. AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm512x snd-soc-pcm512x-i2c \
  168. snd-soc-dionaudio-loco)
  169. DEPENDS:= \
  170. kmod-sound-soc-bcm2835-i2s
  171. $(call AddDepends/sound)
  172. endef
  173. define KernelPackage/sound-soc-dionaudio-loco-v2/description
  174. This package contains support for Dion Audio LOCO-V2 DAC-AMP
  175. endef
  176. $(eval $(call KernelPackage,sound-soc-dionaudio-loco-v2))
  177. define KernelPackage/sound-soc-fe-pi
  178. TITLE:=Support for Fe-Pi Audio Sound Card
  179. KCONFIG:= \
  180. CONFIG_SND_BCM2708_SOC_FE_PI_AUDIO \
  181. CONFIG_SND_SOC_SGTL5000
  182. FILES:= \
  183. $(LINUX_DIR)/sound/soc/bcm/snd-soc-fe-pi-audio.ko \
  184. $(LINUX_DIR)/sound/soc/codecs/snd-soc-sgtl5000.ko
  185. AUTOLOAD:=$(call AutoLoad,68,snd-soc-sgtl5000 \
  186. snd-soc-fe-pi-audio)
  187. DEPENDS:= \
  188. kmod-sound-soc-bcm2835-i2s
  189. $(call AddDepends/sound)
  190. endef
  191. define KernelPackage/sound-soc-fe-pi/description
  192. This package contains support for Fe-Pi Audio Sound Card
  193. endef
  194. $(eval $(call KernelPackage,sound-soc-fe-pi))
  195. define KernelPackage/sound-soc-hifiberry-dac
  196. TITLE:=Support for HifiBerry DAC
  197. KCONFIG:= \
  198. CONFIG_SND_BCM2708_SOC_HIFIBERRY_DAC \
  199. CONFIG_SND_SOC_PCM5102A
  200. FILES:= \
  201. $(LINUX_DIR)/sound/soc/bcm/snd-soc-hifiberry-dac.ko \
  202. $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm5102a.ko
  203. AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm5102a snd-soc-hifiberry-dac)
  204. DEPENDS:= \
  205. kmod-sound-soc-bcm2835-i2s \
  206. +kmod-i2c-bcm2708
  207. $(call AddDepends/sound)
  208. endef
  209. define KernelPackage/sound-soc-hifiberry-dac/description
  210. This package contains support for HifiBerry DAC
  211. endef
  212. $(eval $(call KernelPackage,sound-soc-hifiberry-dac))
  213. define KernelPackage/sound-soc-hifiberry-dacplus
  214. TITLE:=Support for HifiBerry DAC+ / DAC+ Pro
  215. KCONFIG:= \
  216. CONFIG_SND_BCM2708_SOC_HIFIBERRY_DACPLUS \
  217. CONFIG_SND_SOC_PCM512x
  218. FILES:= \
  219. $(LINUX_DIR)/drivers/clk/clk-hifiberry-dacpro.ko \
  220. $(LINUX_DIR)/sound/soc/bcm/snd-soc-hifiberry-dacplus.ko \
  221. $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x.ko
  222. AUTOLOAD:=$(call AutoLoad,68,clk-hifiberry-dacpro snd-soc-pcm512x \
  223. snd-soc-hifiberry-dacplus)
  224. DEPENDS:= \
  225. kmod-sound-soc-bcm2835-i2s \
  226. +kmod-i2c-bcm2708
  227. $(call AddDepends/sound)
  228. endef
  229. define KernelPackage/sound-soc-hifiberry-dacplus/description
  230. This package contains support for HifiBerry DAC+ / DAC+ Pro
  231. endef
  232. $(eval $(call KernelPackage,sound-soc-hifiberry-dacplus))
  233. define KernelPackage/sound-soc-hifiberry-digi
  234. TITLE:=Support for HifiBerry Digi / Digi+ / Digi+ Pro
  235. KCONFIG:= \
  236. CONFIG_SND_BCM2708_SOC_HIFIBERRY_DIGI \
  237. CONFIG_SND_SOC_WM8804
  238. FILES:= \
  239. $(LINUX_DIR)/sound/soc/bcm/snd-soc-hifiberry-digi.ko \
  240. $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8804.ko
  241. AUTOLOAD:=$(call AutoLoad,68,snd-soc-wm8804 snd-soc-hifiberry-digi)
  242. DEPENDS:= \
  243. kmod-sound-soc-bcm2835-i2s \
  244. +kmod-i2c-bcm2708
  245. $(call AddDepends/sound)
  246. endef
  247. define KernelPackage/sound-soc-hifiberry-digi/description
  248. This package contains support for HifiBerry Digi
  249. endef
  250. $(eval $(call KernelPackage,sound-soc-hifiberry-digi))
  251. define KernelPackage/sound-soc-hifiberry-amp
  252. TITLE:=Support for HifiBerry Amp
  253. KCONFIG:= \
  254. CONFIG_SND_BCM2708_SOC_HIFIBERRY_AMP \
  255. CONFIG_SND_SOC_TAS5713
  256. FILES:= \
  257. $(LINUX_DIR)/sound/soc/bcm/snd-soc-hifiberry-amp.ko \
  258. $(LINUX_DIR)/sound/soc/codecs/snd-soc-tas5713.ko
  259. AUTOLOAD:=$(call AutoLoad,68,snd-soc-tas5713 snd-soc-hifiberry-amp)
  260. DEPENDS:= \
  261. kmod-sound-soc-bcm2835-i2s \
  262. +kmod-i2c-bcm2708
  263. $(call AddDepends/sound)
  264. endef
  265. define KernelPackage/sound-soc-hifiberry-amp/description
  266. This package contains support for HifiBerry Amp
  267. endef
  268. $(eval $(call KernelPackage,sound-soc-hifiberry-amp))
  269. define KernelPackage/sound-soc-iqaudio-dac
  270. TITLE:=Support for IQaudIO-DAC
  271. KCONFIG:= \
  272. CONFIG_SND_BCM2708_SOC_IQAUDIO_DAC \
  273. CONFIG_SND_SOC_PCM512x \
  274. CONFIG_SND_SOC_PCM512x_I2C
  275. FILES:= \
  276. $(LINUX_DIR)/sound/soc/bcm/snd-soc-iqaudio-dac.ko \
  277. $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x.ko \
  278. $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x-i2c.ko
  279. AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm512x snd-soc-pcm512x-i2c \
  280. snd-soc-iqaudio-dac)
  281. DEPENDS:= \
  282. kmod-sound-soc-bcm2835-i2s \
  283. +kmod-i2c-bcm2708
  284. $(call AddDepends/sound)
  285. endef
  286. define KernelPackage/sound-soc-iqaudio-dac/description
  287. This package contains support for IQaudIO-DAC
  288. endef
  289. $(eval $(call KernelPackage,sound-soc-iqaudio-dac))
  290. define KernelPackage/sound-soc-iqaudio-digi
  291. TITLE:=Support for IQaudIO-DIGI
  292. KCONFIG:= \
  293. CONFIG_SND_BCM2708_SOC_IQAUDIO_DIGI \
  294. CONFIG_SND_SOC_WM8804 \
  295. CONFIG_SND_SOC_WM8804_I2C
  296. FILES:= \
  297. $(LINUX_DIR)/sound/soc/bcm/snd-soc-iqaudio-digi.ko \
  298. $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8804.ko \
  299. $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8804-i2c.ko
  300. AUTOLOAD:=$(call AutoLoad,68,snd-soc-wm8804 snd-soc-wm8804-i2c \
  301. snd-soc-iqaudio-digi)
  302. DEPENDS:= \
  303. kmod-sound-soc-bcm2835-i2s \
  304. +kmod-i2c-bcm2708
  305. $(call AddDepends/sound)
  306. endef
  307. define KernelPackage/sound-soc-iqaudio-digi/description
  308. This package contains support for IQaudIO-DIGI
  309. endef
  310. $(eval $(call KernelPackage,sound-soc-iqaudio-digi))
  311. define KernelPackage/sound-soc-justboom-dac
  312. TITLE:=Support for JustBoom DAC
  313. KCONFIG:= \
  314. CONFIG_SND_BCM2708_SOC_JUSTBOOM_DAC \
  315. CONFIG_SND_SOC_PCM512x
  316. FILES:= \
  317. $(LINUX_DIR)/sound/soc/bcm/snd-soc-justboom-dac.ko \
  318. $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x.ko
  319. AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm512x snd-soc-justboom-dac)
  320. DEPENDS:= \
  321. kmod-sound-soc-bcm2835-i2s \
  322. +kmod-i2c-bcm2708
  323. $(call AddDepends/sound)
  324. endef
  325. define KernelPackage/sound-soc-justboom-dac/description
  326. This package contains support for JustBoom DAC
  327. endef
  328. $(eval $(call KernelPackage,sound-soc-justboom-dac))
  329. define KernelPackage/sound-soc-justboom-digi
  330. TITLE:=Support for JustBoom Digi
  331. KCONFIG:= \
  332. CONFIG_SND_BCM2708_SOC_JUSTBOOM_DIGI \
  333. CONFIG_SND_SOC_WM8804
  334. FILES:= \
  335. $(LINUX_DIR)/sound/soc/bcm/snd-soc-justboom-digi.ko \
  336. $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8804.ko
  337. AUTOLOAD:=$(call AutoLoad,68,snd-soc-wm8804 snd-soc-justboom-digi)
  338. DEPENDS:= \
  339. kmod-sound-soc-bcm2835-i2s \
  340. +kmod-i2c-bcm2708
  341. $(call AddDepends/sound)
  342. endef
  343. define KernelPackage/sound-soc-justboom-digi/description
  344. This package contains support for JustBoom Digi
  345. endef
  346. $(eval $(call KernelPackage,sound-soc-justboom-digi))
  347. define KernelPackage/sound-soc-pisound
  348. TITLE:=Support for Blokas Labs PiSound
  349. KCONFIG:= \
  350. CONFIG_SND_PISOUND \
  351. CONFIG_SND_SOC_PCM5102A
  352. FILES:= \
  353. $(LINUX_DIR)/sound/soc/bcm/snd-soc-pisound.ko \
  354. $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm5102a.ko
  355. AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm5102a snd-soc-pisound)
  356. DEPENDS:= \
  357. kmod-sound-soc-bcm2835-i2s
  358. $(call AddDepends/sound)
  359. endef
  360. define KernelPackage/sound-soc-pisound/description
  361. This package contains support for Blokas Labs PiSound
  362. endef
  363. $(eval $(call KernelPackage,sound-soc-pisound))
  364. define KernelPackage/sound-soc-raspidac3
  365. TITLE:=Support for RaspiDAC Rev.3x
  366. KCONFIG:= \
  367. CONFIG_SND_BCM2708_SOC_RASPIDAC3 \
  368. CONFIG_SND_SOC_PCM512x \
  369. CONFIG_SND_SOC_PCM512x_I2C \
  370. CONFIG_SND_SOC_TPA6130A2
  371. FILES:= \
  372. $(LINUX_DIR)/sound/soc/bcm/snd-soc-raspidac3.ko \
  373. $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x.ko \
  374. $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x-i2c.ko \
  375. $(LINUX_DIR)/sound/soc/codecs/snd-soc-tpa6130a2.ko
  376. AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm512x snd-soc-pcm512x-i2c \
  377. snd-soc-tpa6130a2 snd-soc-raspidac3)
  378. DEPENDS:= \
  379. kmod-sound-soc-bcm2835-i2s \
  380. +kmod-i2c-bcm2708
  381. $(call AddDepends/sound)
  382. endef
  383. define KernelPackage/sound-soc-raspidac3/description
  384. This package contains support for RaspiDAC Rev.3x
  385. endef
  386. $(eval $(call KernelPackage,sound-soc-raspidac3))
  387. define KernelPackage/sound-soc-rpi-dac
  388. TITLE:=Support for RPi-DAC
  389. KCONFIG:= \
  390. CONFIG_SND_BCM2708_SOC_RPI_DAC \
  391. CONFIG_SND_SOC_PCM1794A
  392. FILES:= \
  393. $(LINUX_DIR)/sound/soc/bcm/snd-soc-rpi-dac.ko \
  394. $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm1794a.ko
  395. AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm1794a snd-soc-rpi-dac)
  396. DEPENDS:= \
  397. kmod-sound-soc-bcm2835-i2s \
  398. +kmod-i2c-bcm2708
  399. $(call AddDepends/sound)
  400. endef
  401. define KernelPackage/sound-soc-rpi-dac/description
  402. This package contains support for RPi-DAC
  403. endef
  404. $(eval $(call KernelPackage,sound-soc-rpi-dac))
  405. define KernelPackage/sound-soc-rpi-proto
  406. TITLE:=Support for RPi-PROTO
  407. KCONFIG:= \
  408. CONFIG_SND_BCM2708_SOC_RPI_PROTO \
  409. CONFIG_SND_SOC_WM8731
  410. FILES:= \
  411. $(LINUX_DIR)/sound/soc/bcm/snd-soc-rpi-proto.ko \
  412. $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8731.ko
  413. AUTOLOAD:=$(call AutoLoad,68,snd-soc-wm8731 snd-soc-rpi-proto)
  414. DEPENDS:= \
  415. kmod-sound-soc-bcm2835-i2s \
  416. +kmod-i2c-bcm2708
  417. $(call AddDepends/sound)
  418. endef
  419. define KernelPackage/sound-soc-rpi-proto/description
  420. This package contains support for RPi-PROTO
  421. endef
  422. $(eval $(call KernelPackage,sound-soc-rpi-proto))
  423. define KernelPackage/random-bcm2835
  424. SUBMENU:=$(OTHER_MENU)
  425. TITLE:=BCM2835 HW Random Number Generator
  426. KCONFIG:=CONFIG_HW_RANDOM_BCM2835
  427. FILES:=$(LINUX_DIR)/drivers/char/hw_random/bcm2835-rng.ko
  428. AUTOLOAD:=$(call AutoLoad,11,bcm2835-rng)
  429. DEPENDS:=@TARGET_brcm2708 +kmod-random-core
  430. endef
  431. define KernelPackage/random-bcm2835/description
  432. This package contains the Broadcom 2835 HW random number generator driver
  433. endef
  434. $(eval $(call KernelPackage,random-bcm2835))
  435. define KernelPackage/smi-bcm2835
  436. SUBMENU:=$(OTHER_MENU)
  437. TITLE:=BCM2835 SMI driver
  438. KCONFIG:=CONFIG_BCM2835_SMI
  439. FILES:=$(LINUX_DIR)/drivers/misc/bcm2835_smi.ko
  440. AUTOLOAD:=$(call AutoLoad,20,bcm2835_smi)
  441. DEPENDS:=@TARGET_brcm2708
  442. endef
  443. define KernelPackage/smi-bcm2835/description
  444. This package contains the Character device driver for Broadcom Secondary
  445. Memory Interface
  446. endef
  447. $(eval $(call KernelPackage,smi-bcm2835))
  448. define KernelPackage/smi-bcm2835-dev
  449. SUBMENU:=$(OTHER_MENU)
  450. TITLE:=BCM2835 SMI device driver
  451. KCONFIG:=CONFIG_BCM2835_SMI_DEV
  452. FILES:=$(LINUX_DIR)/drivers/char/broadcom/bcm2835_smi_dev.ko
  453. AUTOLOAD:=$(call AutoLoad,21,bcm2835_smi_dev)
  454. DEPENDS:=@TARGET_brcm2708 +kmod-smi-bcm2835
  455. endef
  456. define KernelPackage/smi-bcm2835-dev/description
  457. This driver provides a character device interface (ioctl + read/write) to
  458. Broadcom's Secondary Memory interface. The low-level functionality is provided
  459. by the SMI driver itself.
  460. endef
  461. $(eval $(call KernelPackage,smi-bcm2835-dev))
  462. define KernelPackage/spi-bcm2835
  463. SUBMENU:=$(SPI_MENU)
  464. TITLE:=BCM2835 SPI controller driver
  465. KCONFIG:=\
  466. CONFIG_SPI=y \
  467. CONFIG_SPI_BCM2835 \
  468. CONFIG_SPI_MASTER=y
  469. FILES:=$(LINUX_DIR)/drivers/spi/spi-bcm2835.ko
  470. AUTOLOAD:=$(call AutoLoad,89,spi-bcm2835)
  471. DEPENDS:=@TARGET_brcm2708
  472. endef
  473. define KernelPackage/spi-bcm2835/description
  474. This package contains the Broadcom 2835 SPI master controller driver
  475. endef
  476. $(eval $(call KernelPackage,spi-bcm2835))
  477. define KernelPackage/spi-bcm2835-aux
  478. SUBMENU:=$(SPI_MENU)
  479. TITLE:=BCM2835 Aux SPI controller driver
  480. KCONFIG:=\
  481. CONFIG_SPI=y \
  482. CONFIG_SPI_BCM2835AUX \
  483. CONFIG_SPI_MASTER=y
  484. FILES:=$(LINUX_DIR)/drivers/spi/spi-bcm2835aux.ko
  485. AUTOLOAD:=$(call AutoLoad,89,spi-bcm2835aux)
  486. DEPENDS:=@TARGET_brcm2708
  487. endef
  488. define KernelPackage/spi-bcm2835-aux/description
  489. This package contains the Broadcom 2835 Aux SPI master controller driver
  490. endef
  491. $(eval $(call KernelPackage,spi-bcm2835-aux))
  492. define KernelPackage/hwmon-bcm2835
  493. TITLE:=BCM2835 HWMON driver
  494. KCONFIG:=CONFIG_SENSORS_BCM2835
  495. FILES:=$(LINUX_DIR)/drivers/hwmon/bcm2835-hwmon.ko
  496. AUTOLOAD:=$(call AutoLoad,60,bcm2835-hwmon)
  497. $(call AddDepends/hwmon,@TARGET_brcm2708)
  498. endef
  499. define KernelPackage/hwmon-bcm2835/description
  500. Kernel module for BCM2835 thermal monitor chip
  501. endef
  502. $(eval $(call KernelPackage,hwmon-bcm2835))
  503. I2C_BCM2708_MODULES:=\
  504. CONFIG_I2C_BCM2708:drivers/i2c/busses/i2c-bcm2708
  505. define KernelPackage/i2c-bcm2708
  506. $(call i2c_defaults,$(I2C_BCM2708_MODULES),59)
  507. TITLE:=Broadcom BCM2708 I2C master controller driver
  508. KCONFIG+= \
  509. CONFIG_I2C_BCM2708_BAUDRATE=100000
  510. DEPENDS:=@TARGET_brcm2708 +kmod-i2c-core
  511. endef
  512. define KernelPackage/i2c-bcm2708/description
  513. This package contains the Broadcom 2708 I2C master controller driver
  514. endef
  515. $(eval $(call KernelPackage,i2c-bcm2708))
  516. I2C_BCM2835_MODULES:=\
  517. CONFIG_I2C_BCM2835:drivers/i2c/busses/i2c-bcm2835
  518. define KernelPackage/i2c-bcm2835
  519. $(call i2c_defaults,$(I2C_BCM2835_MODULES),59)
  520. TITLE:=Broadcom BCM2835 I2C master controller driver
  521. DEPENDS:=@TARGET_brcm2708 +kmod-i2c-core
  522. endef
  523. define KernelPackage/i2c-bcm2835/description
  524. This package contains the Broadcom 2835 I2C master controller driver
  525. endef
  526. $(eval $(call KernelPackage,i2c-bcm2835))
  527. define KernelPackage/video-bcm2835
  528. TITLE:=Broadcom BCM2835 camera interface driver
  529. KCONFIG:= \
  530. CONFIG_VIDEO_BCM2835=y \
  531. CONFIG_VIDEO_BCM2835_MMAL
  532. FILES:= $(LINUX_DIR)/drivers/media/platform/bcm2835/bcm2835-v4l2.ko
  533. AUTOLOAD:=$(call AutoLoad,65,bcm2835-v4l2)
  534. $(call AddDepends/video,@TARGET_brcm2708 +kmod-video-videobuf2)
  535. endef
  536. define KernelPackage/video-bcm2835/description
  537. This is a V4L2 driver for the Broadcom 2835 MMAL camera host interface
  538. endef
  539. $(eval $(call KernelPackage,video-bcm2835))