| load( |
| "@bazel_skylib//rules:common_settings.bzl", |
| "bool_flag", |
| ) |
| load( |
| ":mgk.bzl", |
| "define_mgk", |
| ) |
| load( |
| ":mgk_modules.bzl", |
| "mgk_gki_modules", |
| "mgk_module_outs", |
| "platform_ack_modules", |
| ) |
| |
| package( |
| default_visibility = [ |
| "//visibility:public", |
| ], |
| ) |
| |
| bool_flag( |
| name = "internal_build", |
| build_setting_default = False, |
| ) |
| |
| config_setting( |
| name = "internal_build_is_true", |
| flag_values = {":internal_build": "1"}, |
| ) |
| |
| filegroup( |
| name = "mgk_dt_headers", |
| srcs = glob([ |
| "include/dt-bindings/**", |
| "include/dtc/**", |
| ]), |
| visibility = [ |
| "//kernel_device_modules-5.15:__subpackages__", |
| ], |
| ) |
| |
| filegroup( |
| name = "insmod_cfgs", |
| srcs = glob([ |
| "insmod_cfg/**", |
| ]), |
| ) |
| |
| filegroup( |
| name = "mgk_headers", |
| srcs = [ |
| "Makefile.include", |
| ] + glob([ |
| "**/*.h", |
| ]), |
| visibility = [ |
| "//vendor/mediatek/kernel_modules:__subpackages__", |
| ], |
| ) |
| |
| filegroup( |
| name = "kasan_config", |
| srcs = [ |
| "kernel/configs/kasan.config", |
| ], |
| ) |
| |
| filegroup( |
| name = "khwasan_config", |
| srcs = [ |
| "kernel/configs/khwasan.config", |
| ], |
| ) |
| |
| mt8696_common_kleaf_modules = [ |
| # keep sorted |
| "//vendor/mediatek/kernel_modules/connectivity/bt/mt76xx/sdio:btmtksdio", |
| "//vendor/mediatek/kernel_modules/connectivity/wlan/core/gen4-mt7663:wlan_drv_gen4", |
| "//vendor/mediatek/kernel_modules/met_drv_secure_v3:met_drv_secure_v3", |
| "//vendor/mediatek/kernel_modules/met_drv_v3:met_drv_v3", |
| "//vendor/mediatek/kernel_modules/met_drv_v3/met_api:met_api_v3_cus", |
| "//vendor/mediatek/kernel_modules/met_drv_v3/met_api:met_api_v3_int", |
| ] |
| |
| mt8696_common_device_modules = [ |
| # keep sorted |
| "drivers/block/zram/zram-mtk.ko", |
| "drivers/char/hw_random/optee-rng.ko", |
| "drivers/char/hw_random/sec-rng.ko", |
| "drivers/clk/mediatek/clk-bringup.ko", |
| "drivers/clk/mediatek/clk-chk-mt8696.ko", |
| "drivers/clk/mediatek/clk-common.ko", |
| "drivers/clk/mediatek/clk-dbg-mt8696.ko", |
| "drivers/clk/mediatek/clk-disable-unused.ko", |
| "drivers/clk/mediatek/clk-mt8696.ko", |
| "drivers/clk/mediatek/clk-mt8696-ether.ko", |
| "drivers/clk/mediatek/clk-mt8696-img.ko", |
| "drivers/clk/mediatek/clk-mt8696-mm.ko", |
| "drivers/clk/mediatek/clk-mt8696-vdec.ko", |
| "drivers/clk/mediatek/clk-mt8696-vdsoc.ko", |
| "drivers/clk/mediatek/clk-mt8696-venc.ko", |
| "drivers/clocksource/timer-mediatek.ko", |
| "drivers/cpufreq/mediatek-oot-cpufreq-hw.ko", |
| "drivers/devfreq/mtk-dvfsrc-devfreq.ko", |
| "drivers/dma-buf/heaps/mtk_heap_debug.ko", |
| "drivers/dma-buf/heaps/mtk_sec_heap_mt8xxx.ko", |
| "drivers/dma-buf/heaps/system_heap.ko", |
| "drivers/dma/mediatek/mtk-uart-apdma.ko", |
| "drivers/gpu/drm/mediatek/mediatek-drm.ko", |
| "drivers/gpu/img-rogue/23.2/mtk_mfg.ko", |
| "drivers/gpu/img-rogue/23.2/pvrsrvkm_matisse.ko", |
| "drivers/i2c/busses/i2c-mt65xx.ko", |
| "drivers/iio/adc/mt6577_auxadc.ko", |
| "drivers/iommu/mtk_iommu_mt8xxx.ko", |
| "drivers/mailbox/mtk-mbox-mailbox.ko", |
| "drivers/media/platform/mtk-jpeg/mtk_jpeg.ko", |
| "drivers/media/platform/mtk-vcodec/mtk-vcodec-common.ko", |
| "drivers/media/platform/mtk-vcodec/mtk-vcodec-dec-v2.ko", |
| "drivers/media/platform/mtk-vcodec/mtk-vcodec-enc-v2.ko", |
| "drivers/media/platform/mtk-vcu/mtk-vcu.ko", |
| "drivers/memory/mediatek/emi.ko", |
| "drivers/memory/mediatek/emi-mpu.ko", |
| "drivers/memory/mediatek/emi-mpu-test.ko", |
| "drivers/memory/mediatek/mtk_dramc.ko", |
| "drivers/memory/mtk-smi.ko", |
| "drivers/mfd/mtk-spmi-pmic.ko", |
| "drivers/mfd/mtk-spmi-pmic-debug.ko", |
| "drivers/misc/mediatek/aee/aed/aee_aed.ko", |
| "drivers/misc/mediatek/aee/aed/aee_rs.ko", |
| "drivers/misc/mediatek/aee/mrdump/mrdump.ko", |
| "drivers/misc/mediatek/atf/atf_logger.ko", |
| "drivers/misc/mediatek/clkbuf/clkbuf.ko", |
| "drivers/misc/mediatek/clkbuf/mt6359p-clkbuf.ko", |
| "drivers/misc/mediatek/clkbuf/mt6366-clkbuf.ko", |
| "drivers/misc/mediatek/clkbuf/mt6685-clkbuf.ko", |
| "drivers/misc/mediatek/cmdq/mailbox/cmdq-platform-mt8696.ko", |
| "drivers/misc/mediatek/cmdq/mailbox/mtk-cmdq-drv-ext.ko", |
| "drivers/misc/mediatek/devinfo/devinfo.ko", |
| "drivers/misc/mediatek/dvfsrc/mtk-dvfsrc-helper.ko", |
| "drivers/misc/mediatek/et/mtk_et.ko", |
| "drivers/misc/mediatek/freqhopping/fhctl.ko", |
| "drivers/misc/mediatek/gpt_rtc/gpt_rtc.ko", |
| "drivers/misc/mediatek/hdmi/hdmitx/mt8696/mtk-hdmi.ko", |
| "drivers/misc/mediatek/iommu/iommu_secure_mt8xxx.ko", |
| "drivers/misc/mediatek/jpeg/jpeg-driver.ko", |
| "drivers/misc/mediatek/lens/vcm/proprietary/main/mainaf.ko", |
| "drivers/misc/mediatek/lens/vcm/proprietary/main2/main2af.ko", |
| "drivers/misc/mediatek/lens/vcm/proprietary/main3/main3af.ko", |
| "drivers/misc/mediatek/lens/vcm/proprietary/sub/subaf.ko", |
| "drivers/misc/mediatek/lens/vcm/proprietary/sub2/sub2af.ko", |
| "drivers/misc/mediatek/log_store/log_store.ko", |
| "drivers/misc/mediatek/masp/sec.ko", |
| "drivers/misc/mediatek/mcupm/v2/mcupm.ko", |
| "drivers/misc/mediatek/mdp/irt_dma/irt_dma.ko", |
| "drivers/misc/mediatek/mdp/mtk_mdp.ko", |
| "drivers/misc/mediatek/monitor_hang/monitor_hang.ko", |
| "drivers/misc/mediatek/mtee/tz_module.ko", |
| "drivers/misc/mediatek/mtprintk/mtk_printk_ctrl.ko", |
| "drivers/misc/mediatek/mtprof/bootprof.ko", |
| "drivers/misc/mediatek/performance/mtk_ioctl_powerhal.ko", |
| "drivers/misc/mediatek/performance/mtk_ioctl_touch_boost.ko", |
| "drivers/misc/mediatek/performance/mtk_perf_ioctl.ko", |
| "drivers/misc/mediatek/performance/powerhal_cpu_ctrl/powerhal_cpu_ctrl.ko", |
| "drivers/misc/mediatek/performance/touch_boost/touch_boost.ko", |
| "drivers/misc/mediatek/power/dummy-battery.ko", |
| "drivers/misc/mediatek/sda/cache-parity.ko", |
| "drivers/misc/mediatek/sda/dbgtop-drm.ko", |
| "drivers/misc/mediatek/sda/irq-dbg.ko", |
| "drivers/misc/mediatek/secure_efuse/optee_read.ko", |
| "drivers/misc/mediatek/stc/stc.ko", |
| "drivers/misc/mediatek/tee_gp/tee_client_api.ko", |
| "drivers/misc/mediatek/tinysys_scmi/tinysys-scmi.ko", |
| "drivers/misc/mediatek/typec/tcpc/pd_dbg_info.ko", |
| "drivers/misc/mediatek/typec/tcpc/rt_pd_manager.ko", |
| "drivers/misc/mediatek/typec/tcpc/tcpc_class.ko", |
| "drivers/misc/mediatek/typec/tcpc/tcpci_late_sync.ko", |
| "drivers/misc/mediatek/usb/usb_boost/usb_boost.ko", |
| "drivers/misc/mediatek/usb/usb_meta/usb_meta.ko", |
| "drivers/misc/mediatek/video/mt8696/mtk_disp_mgr_mod.ko", |
| "drivers/misc/mediatek/video/mt8696/mtk_disp_notify.ko", |
| "drivers/misc/mediatek/vq/mediatek-vq.ko", |
| "drivers/mmc/host/mtk-sd.ko", |
| "drivers/net/ethernet/mediatek/mtk_star_emac.ko", |
| "drivers/net/phy/realtek.ko", |
| "drivers/phy/mediatek/phy-mtk-xsphy.ko", |
| "drivers/phy/mediatek/tphy.ko", |
| "drivers/pinctrl/mediatek/pinctrl-mt8696.ko", |
| "drivers/pinctrl/mediatek/pinctrl-mtk-common-v2_debug.ko", |
| "drivers/pinctrl/mediatek/pinctrl-mtk-v2.ko", |
| "drivers/pwm/pwm-mediatek.ko", |
| "drivers/regulator/mt6395-regulator.ko", |
| "drivers/regulator/mtk-dvfsrc-regulator.ko", |
| "drivers/regulator/rt5738-regulator.ko", |
| "drivers/reset/reset-ti-syscon.ko", |
| "drivers/rpmsg/mtk_rpmsg_mbox.ko", |
| "drivers/soc/mediatek/mtk-dvfsrc.ko", |
| "drivers/soc/mediatek/mtk-dvfsrc-start.ko", |
| "drivers/soc/mediatek/mtk-mbox.ko", |
| "drivers/soc/mediatek/mtk-pm-domain-disable-unused.ko", |
| "drivers/soc/mediatek/mtk-scpsys.ko", |
| "drivers/soc/mediatek/mtk-socinfo.ko", |
| "drivers/soc/mediatek/mtk_tinysys_ipi.ko", |
| "drivers/spi/spi-mt65xx.ko", |
| "drivers/spmi/spmi-mtk-mpu.ko", |
| "drivers/spmi/spmi-mtk-pmif.ko", |
| "drivers/tee/optee/optee.ko", |
| "drivers/tee/tee.ko", |
| "drivers/thermal/mediatek/board_temp.ko", |
| "drivers/thermal/mediatek/soc_temp.ko", |
| "drivers/thermal/mediatek/thermal_interface.ko", |
| "drivers/thermal/mediatek/vtskin_temp.ko", |
| "drivers/tty/serial/8250/8250_mtk.ko", |
| "drivers/usb/host/xhci-mtk-hcd.ko", |
| "drivers/usb/mtu3/mtu3.ko", |
| "drivers/watchdog/mtk_wdt.ko", |
| "sound/soc/codecs/snd-soc-mtk-earc-rx.ko", |
| "sound/soc/mediatek/common/mtk-afe-external.ko", |
| "sound/soc/mediatek/common/mtk-sp-spk-amp.ko", |
| "sound/soc/mediatek/common/snd-soc-mtk-common.ko", |
| "sound/soc/mediatek/mt8532/mt8696-sound1.ko", |
| "sound/soc/mediatek/mt8532/snd-soc-mt8532-pcm.ko", |
| "sound/soc/mediatek/mt8696/mt8696-evb.ko", |
| "sound/soc/mediatek/mt8696/snd-soc-mt8696-pcm.ko", |
| ] |
| |
| platform_device_modules = [ |
| "drivers/misc/google/usb/typec/tcpm/tcpci.ko", |
| "drivers/misc/google/usb/typec/tcpm/tcpm.ko", |
| "drivers/misc/google/usb/typec/tcpm/tcpci_rt1711h.ko", |
| "drivers/misc/mediatek/typec/mux/mux_switch.ko", |
| "drivers/misc/mediatek/extcon/extcon-kirkwood-usb.ko", |
| "drivers/spi/spidev.ko", |
| ] |
| |
| # The configuration settings should set these flags to meaningful |
| # values. This allows the same kernel_module macro to be used against |
| # different kernel builds, since the meaning of the flag changes |
| # based on the configuration settings. |
| filegroup( |
| name = "mgk_undefined", |
| srcs = [], |
| ) |
| |
| label_flag( |
| name = "mgk_kernel_build", |
| build_setting_default = ":mgk_undefined", |
| ) |
| |
| label_flag( |
| name = "mgk_device_modules", |
| build_setting_default = ":mgk_undefined", |
| ) |
| |
| KIRKWOOD_64_DTBO_NAMES = [ |
| "kirkwood_dongle", |
| "kirkwood_dongle-p0", |
| "kirkwood", |
| "kirkwoodpro", |
| ] |
| |
| KIRKWOOD_64_INSMOD_CFGS = [ |
| ":insmod_cfgs", |
| "//vendor/mediatek/kernel_modules/connectivity/wlan/core/gen4-mt7663:wlan_drv_gen4_insmod_cfgs", |
| "//vendor/mediatek/kernel_modules/connectivity/bt/mt76xx/sdio:btmtksdio_insmod_cfgs", |
| ] |
| |
| define_mgk( |
| name = "kirkwood_64", |
| device_build_config = "build.config.kirkwood_64", |
| device_modules = mt8696_common_device_modules + platform_device_modules, |
| dtb_name = "mt8696", |
| dtbo_names = KIRKWOOD_64_DTBO_NAMES, |
| gki_modules = mgk_gki_modules, |
| in_tree_modules = mgk_module_outs + platform_ack_modules, |
| insmod_cfgs = KIRKWOOD_64_INSMOD_CFGS, |
| kleaf_modules = mt8696_common_kleaf_modules, |
| ) |