pineapple.bzl 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377
  1. load(":target_variants.bzl", "la_variants")
  2. load(":msm_kernel_la.bzl", "define_msm_la")
  3. load(":image_opts.bzl", "boot_image_opts")
  4. load(":sec_bsp.bzl", "sec_bsp")
  5. load(":sec_block.bzl", "sec_block")
  6. load(":sec_display.bzl", "sec_display")
  7. load(":sec_audio.bzl", "sec_audio")
  8. load(":sec_usb.bzl", "sec_usb")
  9. load(":sec_sensor.bzl", "sec_sensor")
  10. load(":sec_power.bzl", "sec_power")
  11. load(":kunit.bzl", "kunit_module_list")
  12. load(":lego.bzl", "lego_module_list")
  13. load(":sec_hdm.bzl", "hdm_module_list")
  14. target_name = "pineapple"
  15. def define_pineapple():
  16. _pineapple_in_tree_modules = [
  17. # keep sorted
  18. "arch/arm64/gunyah/gh_arm_drv.ko",
  19. "drivers/base/regmap/qti-regmap-debugfs.ko",
  20. "drivers/bus/mhi/devices/mhi_dev_satellite.ko",
  21. "drivers/bus/mhi/devices/mhi_dev_uci.ko",
  22. "drivers/bus/mhi/host/mhi.ko",
  23. "drivers/char/rdbg.ko",
  24. "drivers/clk/qcom/camcc-cliffs.ko",
  25. "drivers/clk/qcom/camcc-pineapple.ko",
  26. "drivers/clk/qcom/camcc-volcano.ko",
  27. "drivers/clk/qcom/clk-dummy.ko",
  28. "drivers/clk/qcom/clk-qcom.ko",
  29. "drivers/clk/qcom/clk-rpmh.ko",
  30. "drivers/clk/qcom/debugcc-cliffs.ko",
  31. "drivers/clk/qcom/debugcc-pineapple.ko",
  32. "drivers/clk/qcom/debugcc-volcano.ko",
  33. "drivers/clk/qcom/dispcc-pineapple.ko",
  34. "drivers/clk/qcom/dispcc-volcano.ko",
  35. "drivers/clk/qcom/gcc-cliffs.ko",
  36. "drivers/clk/qcom/gcc-pineapple.ko",
  37. "drivers/clk/qcom/gcc-volcano.ko",
  38. "drivers/clk/qcom/gdsc-regulator.ko",
  39. "drivers/clk/qcom/gpucc-cliffs.ko",
  40. "drivers/clk/qcom/gpucc-pineapple.ko",
  41. "drivers/clk/qcom/gpucc-volcano.ko",
  42. "drivers/clk/qcom/tcsrcc-pineapple.ko",
  43. "drivers/clk/qcom/videocc-pineapple.ko",
  44. "drivers/clk/qcom/videocc-volcano.ko",
  45. "drivers/cpufreq/qcom-cpufreq-hw.ko",
  46. "drivers/cpufreq/qcom-cpufreq-hw-debug.ko",
  47. "drivers/cpuidle/governors/qcom_lpm.ko",
  48. "drivers/dma-buf/heaps/qcom_dma_heaps.ko",
  49. "drivers/dma/qcom/bam_dma.ko",
  50. "drivers/dma/qcom/msm_gpi.ko",
  51. "drivers/edac/qcom_edac.ko",
  52. "drivers/firmware/arm_scmi/qcom_scmi_vendor.ko",
  53. "drivers/firmware/qcom-scm.ko",
  54. "drivers/gpu/drm/bridge/lt9611uxc.ko",
  55. "drivers/gpu/drm/display/drm_display_helper.ko",
  56. "drivers/gpu/drm/display/drm_dp_aux_bus.ko",
  57. "drivers/hwmon/hwmon.ko",
  58. "drivers/hwmon/qti_amoled_ecm.ko",
  59. "drivers/hwspinlock/qcom_hwspinlock.ko",
  60. "drivers/hwtracing/coresight/coresight.ko",
  61. "drivers/hwtracing/coresight/coresight-csr.ko",
  62. "drivers/hwtracing/coresight/coresight-cti.ko",
  63. "drivers/hwtracing/coresight/coresight-dummy.ko",
  64. "drivers/hwtracing/coresight/coresight-funnel.ko",
  65. "drivers/hwtracing/coresight/coresight-hwevent.ko",
  66. "drivers/hwtracing/coresight/coresight-remote-etm.ko",
  67. "drivers/hwtracing/coresight/coresight-replicator.ko",
  68. "drivers/hwtracing/coresight/coresight-stm.ko",
  69. "drivers/hwtracing/coresight/coresight-tgu.ko",
  70. "drivers/hwtracing/coresight/coresight-tmc.ko",
  71. "drivers/hwtracing/coresight/coresight-tmc-sec.ko",
  72. "drivers/hwtracing/coresight/coresight-tpda.ko",
  73. "drivers/hwtracing/coresight/coresight-tpdm.ko",
  74. "drivers/hwtracing/coresight/coresight-trace-noc.ko",
  75. "drivers/hwtracing/stm/stm_console.ko",
  76. "drivers/hwtracing/stm/stm_core.ko",
  77. "drivers/hwtracing/stm/stm_ftrace.ko",
  78. "drivers/hwtracing/stm/stm_heartbeat.ko",
  79. "drivers/hwtracing/stm/stm_p_ost.ko",
  80. "drivers/i2c/busses/i2c-msm-geni.ko",
  81. "drivers/i3c/master/i3c-master-msm-geni.ko",
  82. "drivers/iio/adc/qcom-spmi-adc5-gen3.ko",
  83. "drivers/iio/adc/qcom-vadc-common.ko",
  84. # "drivers/iio/adc/qti-glink-adc.ko",
  85. "drivers/input/misc/pm8941-pwrkey.ko",
  86. # "drivers/input/misc/qcom-hv-haptics.ko",
  87. "drivers/interconnect/icc-test.ko",
  88. "drivers/interconnect/qcom/icc-bcm-voter.ko",
  89. "drivers/interconnect/qcom/icc-debug.ko",
  90. "drivers/interconnect/qcom/icc-rpmh.ko",
  91. "drivers/interconnect/qcom/qnoc-cliffs.ko",
  92. "drivers/interconnect/qcom/qnoc-pineapple.ko",
  93. "drivers/interconnect/qcom/qnoc-qos.ko",
  94. "drivers/interconnect/qcom/qnoc-volcano.ko",
  95. "drivers/iommu/arm/arm-smmu/arm_smmu.ko",
  96. "drivers/iommu/iommu-logger.ko",
  97. "drivers/iommu/msm_dma_iommu_mapping.ko",
  98. "drivers/iommu/qcom_iommu_debug.ko",
  99. "drivers/iommu/qcom_iommu_util.ko",
  100. "drivers/irqchip/msm_show_resume_irq.ko",
  101. "drivers/irqchip/qcom-pdc.ko",
  102. "drivers/leds/leds-qpnp-vibrator-ldo.ko",
  103. "drivers/leds/leds-qti-flash.ko",
  104. "drivers/leds/leds-qti-tri-led.ko",
  105. "drivers/mailbox/msm_qmp.ko",
  106. "drivers/mailbox/qcom-ipcc.ko",
  107. "drivers/mfd/qcom-i2c-pmic.ko",
  108. "drivers/mfd/qcom-spmi-pmic.ko",
  109. "drivers/misc/qseecom_proxy.ko",
  110. "drivers/mmc/host/cqhci.ko",
  111. "drivers/mmc/host/sdhci-msm-sec.ko",
  112. "drivers/nvmem/nvmem_qcom-spmi-sdam.ko",
  113. "drivers/nvmem/nvmem_qfprom.ko",
  114. "drivers/pci/controller/pci-msm-drv.ko",
  115. "drivers/perf/qcom_llcc_pmu.ko",
  116. "drivers/phy/qualcomm/phy-qcom-ufs.ko",
  117. "drivers/phy/qualcomm/phy-qcom-ufs-qmp-v4.ko",
  118. "drivers/phy/qualcomm/phy-qcom-ufs-qmp-v4-crow.ko",
  119. "drivers/phy/qualcomm/phy-qcom-ufs-qmp-v4-pineapple.ko",
  120. "drivers/phy/qualcomm/phy-qcom-ufs-qrbtc-sdm845.ko",
  121. "drivers/pinctrl/qcom/pinctrl-cliffs.ko",
  122. "drivers/pinctrl/qcom/pinctrl-msm.ko",
  123. "drivers/pinctrl/qcom/pinctrl-pineapple.ko",
  124. "drivers/pinctrl/qcom/pinctrl-spmi-gpio.ko",
  125. "drivers/pinctrl/qcom/pinctrl-spmi-mpp.ko",
  126. "drivers/pinctrl/qcom/pinctrl-volcano.ko",
  127. "drivers/power/reset/qcom-dload-mode.ko",
  128. "drivers/power/reset/qcom-pon.ko",
  129. "drivers/power/reset/qcom-reboot-reason.ko",
  130. "drivers/power/reset/reboot-mode.ko",
  131. # "drivers/power/supply/qti_battery_charger.ko",
  132. "drivers/pwm/pwm-qti-lpg.ko",
  133. "drivers/regulator/debug-regulator.ko",
  134. "drivers/regulator/proxy-consumer.ko",
  135. "drivers/regulator/qcom_pm8008-regulator.ko",
  136. "drivers/regulator/qpnp-amoled-regulator.ko",
  137. "drivers/regulator/qpnp-lcdb-regulator.ko",
  138. "drivers/regulator/qti-fixed-regulator.ko",
  139. "drivers/regulator/qti-ocp-notifier.ko",
  140. "drivers/regulator/rpmh-regulator.ko",
  141. "drivers/regulator/stub-regulator.ko",
  142. "drivers/remoteproc/qcom_pil_info.ko",
  143. "drivers/remoteproc/qcom_q6v5.ko",
  144. "drivers/remoteproc/qcom_q6v5_pas.ko",
  145. "drivers/remoteproc/qcom_spss.ko",
  146. "drivers/remoteproc/qcom_sysmon.ko",
  147. "drivers/remoteproc/rproc_qcom_common.ko",
  148. "drivers/rpmsg/glink_pkt.ko",
  149. "drivers/rpmsg/qcom_glink.ko",
  150. "drivers/rpmsg/qcom_glink_smem.ko",
  151. "drivers/rpmsg/qcom_glink_spss.ko",
  152. "drivers/rpmsg/qcom_smd.ko",
  153. "drivers/rtc/rtc-pm8xxx.ko",
  154. "drivers/scsi/sg.ko",
  155. "drivers/slimbus/slim-qcom-ngd-ctrl.ko",
  156. "drivers/slimbus/slimbus.ko",
  157. "drivers/soc/qcom/adsp_sleepmon.ko",
  158. # "drivers/soc/qcom/altmode-glink.ko",
  159. "drivers/soc/qcom/boot_stats.ko",
  160. "drivers/soc/qcom/cdsprm.ko",
  161. # "drivers/soc/qcom/charger-ulog-glink.ko",
  162. "drivers/soc/qcom/cmd-db.ko",
  163. "drivers/soc/qcom/core_hang_detect.ko",
  164. "drivers/soc/qcom/cpucp_log.ko",
  165. "drivers/soc/qcom/crm.ko",
  166. "drivers/soc/qcom/crypto-qti.ko",
  167. "drivers/soc/qcom/dcc_v2.ko",
  168. "drivers/soc/qcom/dcvs/bwmon.ko",
  169. "drivers/soc/qcom/dcvs/c1dcvs_scmi_v2.ko",
  170. "drivers/soc/qcom/dcvs/cpufreq_stats_scmi_v2.ko",
  171. "drivers/soc/qcom/dcvs/dcvs_fp.ko",
  172. "drivers/soc/qcom/dcvs/dynpf_scmi.ko",
  173. "drivers/soc/qcom/dcvs/memlat.ko",
  174. "drivers/soc/qcom/dcvs/mpam.ko",
  175. "drivers/soc/qcom/dcvs/qcom-dcvs.ko",
  176. "drivers/soc/qcom/dcvs/qcom-pmu-lib.ko",
  177. "drivers/soc/qcom/dcvs/qcom_scmi_client.ko",
  178. "drivers/soc/qcom/debug_symbol.ko",
  179. "drivers/soc/qcom/dmesg_dumper.ko",
  180. "drivers/soc/qcom/eud.ko",
  181. "drivers/soc/qcom/gh_cpusys_vm_mem_access.ko",
  182. "drivers/soc/qcom/gh_tlmm_vm_mem_access.ko",
  183. "drivers/soc/qcom/gic_intr_routing.ko",
  184. "drivers/soc/qcom/glink_probe.ko",
  185. "drivers/soc/qcom/health_monitor.ko",
  186. "drivers/soc/qcom/hung_task_enh.ko",
  187. "drivers/soc/qcom/hwkm.ko",
  188. "drivers/soc/qcom/llcc-qcom.ko",
  189. "drivers/soc/qcom/llcc_perfmon.ko",
  190. "drivers/soc/qcom/mdt_loader.ko",
  191. "drivers/soc/qcom/mem-hooks.ko",
  192. "drivers/soc/qcom/mem_buf/mem_buf.ko",
  193. "drivers/soc/qcom/mem_buf/mem_buf_dev.ko",
  194. "drivers/soc/qcom/mem_buf/mem_buf_msgq.ko",
  195. "drivers/soc/qcom/memory_dump_v2.ko",
  196. "drivers/soc/qcom/memshare/heap_mem_ext_v01.ko",
  197. "drivers/soc/qcom/memshare/msm_memshare.ko",
  198. "drivers/soc/qcom/minidump.ko",
  199. "drivers/soc/qcom/msm_performance.ko",
  200. "drivers/soc/qcom/msm_show_epoch.ko",
  201. "drivers/soc/qcom/panel_event_notifier.ko",
  202. "drivers/soc/qcom/pcie-pdc.ko",
  203. "drivers/soc/qcom/pdr_interface.ko",
  204. # "drivers/soc/qcom/pmic-glink-debug.ko",
  205. "drivers/soc/qcom/pmic-pon-log.ko",
  206. # "drivers/soc/qcom/pmic_glink.ko",
  207. "drivers/soc/qcom/qcom_aoss.ko",
  208. "drivers/soc/qcom/qcom_cpu_vendor_hooks.ko",
  209. "drivers/soc/qcom/qcom_cpucp.ko",
  210. "drivers/soc/qcom/qcom_cpuss_sleep_stats.ko",
  211. "drivers/soc/qcom/qcom_logbuf_boot_log.ko",
  212. "drivers/soc/qcom/qcom_logbuf_vendor_hooks.ko",
  213. "drivers/soc/qcom/qcom_ramdump.ko",
  214. "drivers/soc/qcom/qcom_rpmh.ko",
  215. "drivers/soc/qcom/qcom_stats.ko",
  216. "drivers/soc/qcom/qcom_va_minidump.ko",
  217. "drivers/soc/qcom/qcom_wdt_core.ko",
  218. "drivers/soc/qcom/qfprom-sys.ko",
  219. "drivers/soc/qcom/qmi_helpers.ko",
  220. "drivers/soc/qcom/qsee_ipc_irq_bridge.ko",
  221. # "drivers/soc/qcom/qti_battery_debug.ko",
  222. "drivers/soc/qcom/secure_buffer.ko",
  223. "drivers/soc/qcom/smem.ko",
  224. "drivers/soc/qcom/smp2p.ko",
  225. "drivers/soc/qcom/smp2p_sleepstate.ko",
  226. "drivers/soc/qcom/socinfo.ko",
  227. "drivers/soc/qcom/sps/sps_drv.ko",
  228. "drivers/soc/qcom/sys_pm_vx.ko",
  229. "drivers/soc/qcom/sysmon_subsystem_stats.ko",
  230. "drivers/soc/qcom/tmecom/tmecom-intf.ko",
  231. "drivers/soc/qcom/wcd_usbss_i2c.ko",
  232. "drivers/spi/spi-msm-geni.ko",
  233. "drivers/spmi/spmi-pmic-arb.ko",
  234. "drivers/spmi/spmi-pmic-arb-debug.ko",
  235. "drivers/thermal/qcom/bcl_pmic5.ko",
  236. "drivers/thermal/qcom/bcl_soc.ko",
  237. "drivers/thermal/qcom/cpu_hotplug.ko",
  238. "drivers/thermal/qcom/cpu_voltage_cooling.ko",
  239. "drivers/thermal/qcom/ddr_cdev.ko",
  240. "drivers/thermal/qcom/gpu_dump_skip_cdev.ko",
  241. "drivers/thermal/qcom/max31760_fan.ko",
  242. "drivers/thermal/qcom/msm_lmh_dcvs.ko",
  243. "drivers/thermal/qcom/qcom-spmi-temp-alarm.ko",
  244. "drivers/thermal/qcom/qcom_tsens.ko",
  245. "drivers/thermal/qcom/qti_cpufreq_cdev.ko",
  246. "drivers/thermal/qcom/qti_devfreq_cdev.ko",
  247. "drivers/thermal/qcom/qti_qmi_cdev.ko",
  248. "drivers/thermal/qcom/qti_qmi_sensor_v2.ko",
  249. "drivers/thermal/qcom/qti_userspace_cdev.ko",
  250. "drivers/thermal/qcom/thermal_config.ko",
  251. "drivers/thermal/qcom/thermal_minidump.ko",
  252. "drivers/thermal/qcom/thermal_pause.ko",
  253. "drivers/tty/hvc/hvc_gunyah.ko",
  254. "drivers/tty/serial/msm_geni_serial.ko",
  255. "drivers/ufs/host/ufs_qcom.ko",
  256. "drivers/ufs/host/ufshcd-crypto-qti.ko",
  257. "drivers/uio/msm_sharedmem/msm_sharedmem.ko",
  258. "drivers/usb/dwc3/dwc3-msm.ko",
  259. "drivers/usb/gadget/function/f_fs_ipc_log.ko",
  260. "drivers/usb/gadget/function/usb_f_ccid.ko",
  261. "drivers/usb/gadget/function/usb_f_cdev.ko",
  262. "drivers/usb/gadget/function/usb_f_gsi.ko",
  263. "drivers/usb/gadget/function/usb_f_qdss.ko",
  264. "drivers/usb/phy/phy-generic.ko",
  265. "drivers/usb/phy/phy-msm-snps-eusb2.ko",
  266. "drivers/usb/phy/phy-msm-ssusb-qmp.ko",
  267. "drivers/usb/phy/phy-qcom-emu.ko",
  268. "drivers/usb/redriver/nb7vpq904m.ko",
  269. "drivers/usb/redriver/redriver.ko",
  270. "drivers/usb/repeater/repeater.ko",
  271. #"drivers/usb/repeater/repeater-qti-pmic-eusb2.ko",
  272. #"drivers/usb/typec/ucsi/ucsi_glink.ko",
  273. "drivers/video/backlight/qcom-spmi-wled.ko",
  274. "drivers/virt/gunyah/gh_ctrl.ko",
  275. "drivers/virt/gunyah/gh_dbl.ko",
  276. "drivers/virt/gunyah/gh_irq_lend.ko",
  277. "drivers/virt/gunyah/gh_mem_notifier.ko",
  278. "drivers/virt/gunyah/gh_msgq.ko",
  279. "drivers/virt/gunyah/gh_panic_notifier.ko",
  280. "drivers/virt/gunyah/gh_rm_booster.ko",
  281. "drivers/virt/gunyah/gh_rm_drv.ko",
  282. "drivers/virt/gunyah/gh_virt_wdt.ko",
  283. "drivers/virt/gunyah/gunyah_loader.ko",
  284. "drivers/virt/gunyah/gunyah_qcom.ko",
  285. "kernel/msm_sysstats.ko",
  286. "kernel/sched/walt/sched-walt.ko",
  287. "kernel/trace/qcom_ipc_logging.ko",
  288. "lib/crc-itu-t.ko",
  289. "net/mac80211/mac80211.ko",
  290. "net/qrtr/qrtr.ko",
  291. "net/qrtr/qrtr-gunyah.ko",
  292. "net/qrtr/qrtr-mhi.ko",
  293. "net/qrtr/qrtr-smd.ko",
  294. "net/wireless/cfg80211.ko",
  295. "sound/soc/codecs/snd-soc-hdmi-codec.ko",
  296. "sound/usb/snd-usb-audio-qmi.ko",
  297. ]
  298. _pineapple_consolidate_in_tree_modules = _pineapple_in_tree_modules + [
  299. # keep sorted
  300. "drivers/cpuidle/governors/qcom_simple_lpm.ko",
  301. "drivers/hwtracing/coresight/coresight-etm4x.ko",
  302. "drivers/misc/lkdtm/lkdtm.ko",
  303. "kernel/locking/locktorture.ko",
  304. "kernel/rcu/rcutorture.ko",
  305. "kernel/torture.ko",
  306. "lib/atomic64_test.ko",
  307. "lib/test_user_copy.ko",
  308. ]
  309. kernel_vendor_cmdline_extras = [
  310. # do not sort
  311. "console=ttyMSM0,115200n8",
  312. "qcom_geni_serial.con_enabled=1",
  313. "bootconfig",
  314. ]
  315. for variant in la_variants:
  316. board_kernel_cmdline_extras = []
  317. board_bootconfig_extras = []
  318. if variant == "consolidate":
  319. mod_list = _pineapple_consolidate_in_tree_modules
  320. else:
  321. mod_list = _pineapple_in_tree_modules
  322. board_kernel_cmdline_extras += ["nosoftlockup"]
  323. kernel_vendor_cmdline_extras += ["nosoftlockup"]
  324. board_bootconfig_extras += ["androidboot.console=0"]
  325. mod_list = mod_list + sec_bsp(
  326. target = target_name,
  327. variant = variant
  328. )
  329. mod_list = mod_list + sec_block(
  330. target = target_name,
  331. variant = variant
  332. )
  333. mod_list = mod_list + sec_display(
  334. target = target_name,
  335. variant = variant
  336. )
  337. mod_list = mod_list + sec_audio(
  338. target = target_name,
  339. variant = variant
  340. )
  341. mod_list = mod_list + hdm_module_list(
  342. target = target_name,
  343. variant = variant
  344. )
  345. mod_list = mod_list + sec_usb(
  346. target = target_name,
  347. variant = variant
  348. )
  349. mod_list = mod_list + sec_sensor(
  350. target = target_name,
  351. variant = variant
  352. )
  353. mod_list = mod_list + sec_power(
  354. target = target_name,
  355. variant = variant
  356. )
  357. mod_list = mod_list + kunit_module_list
  358. mod_list = mod_list + lego_module_list
  359. define_msm_la(
  360. msm_target = target_name,
  361. variant = variant,
  362. in_tree_module_list = mod_list,
  363. boot_image_opts = boot_image_opts(
  364. kernel_vendor_cmdline_extras = kernel_vendor_cmdline_extras,
  365. board_kernel_cmdline_extras = board_kernel_cmdline_extras,
  366. board_bootconfig_extras = board_bootconfig_extras,
  367. ),
  368. dpm_overlay = False,
  369. )