| # SPDX-License-Identifier: GPL-2.0 |
| # Copyright (C) 2021 The Android Open Source Project |
| |
| load("//build/kernel/kleaf:common_kernels.bzl", "define_common_kernels") |
| |
| package( |
| default_visibility = [ |
| "//visibility:public", |
| ], |
| ) |
| |
| package( |
| default_visibility = [ |
| "//private/google-modules:__subpackages__", |
| ], |
| ) |
| |
| load("//build/bazel_common_rules/dist:dist.bzl", "copy_to_dist_dir") |
| load("//build/kernel/kleaf:common_kernels.bzl", "aarch64_outs", "define_common_kernels") |
| load("//build/kleaf:kernel.bzl", "kernel_build", "kernel_modules_install") |
| load("@kernel_toolchain_info//:dict.bzl", "CLANG_VERSION") |
| |
| _aarch64_additional_kmi_symbol_lists = [ |
| # keep sorted |
| "android/abi_gki_aarch64_asr", |
| "android/abi_gki_aarch64_core", |
| "android/abi_gki_aarch64_db845c", |
| "android/abi_gki_aarch64_exynos", |
| "android/abi_gki_aarch64_fips140", |
| "android/abi_gki_aarch64_galaxy", |
| "android/abi_gki_aarch64_generic", |
| "android/abi_gki_aarch64_hikey960", |
| "android/abi_gki_aarch64_rockchip", |
| "android/abi_gki_aarch64_rtkstb", |
| "android/abi_gki_aarch64_telechips", |
| "android/abi_gki_aarch64_type_visibility", |
| "android/abi_gki_aarch64_virtual_device", |
| ] |
| |
| define_common_kernels(target_configs = { |
| # Sync with build.config.gki.aarch64 |
| "kernel_aarch64": { |
| "kmi_symbol_list": "android/abi_gki_aarch64", |
| "additional_kmi_symbol_lists": _aarch64_additional_kmi_symbol_lists, |
| "abi_definition": "android/abi_gki_aarch64.xml", |
| "kmi_symbol_list_add_only": True, |
| }, |
| "kernel_aarch64_debug": { |
| "kmi_symbol_list": "android/abi_gki_aarch64", |
| "additional_kmi_symbol_lists": _aarch64_additional_kmi_symbol_lists, |
| "abi_definition": "android/abi_gki_aarch64.xml", |
| "kmi_symbol_list_add_only": True, |
| }, |
| }) |
| |
| kernel_build( |
| name = "cloudripper", |
| srcs = glob( |
| ["**"], |
| exclude = [ |
| ".*", |
| ".*/**", |
| "BUILD.bazel", |
| "**/*.bzl", |
| ], |
| ), |
| outs = aarch64_outs + [ |
| # Sync with build.config.cloudripper |
| "arch/arm64/boot/dts/google/gs201-a0.dtb", |
| "arch/arm64/boot/dts/google/dtbo.img", |
| |
| # TODO(b/197995714): Add other things built by build.sh |
| # "abi_symbollist", |
| # "boot.img", |
| # "vendor_boot.img", |
| ], |
| build_config = "build.config.cloudripper", |
| module_outs = [ |
| "acpm_flexpmu_dbg.ko", |
| "acpm_mbox_test.ko", |
| "at24.ko", |
| "bbd.ko", |
| "bcm47765.ko", |
| "bc_max77759.ko", |
| "bcm_dbg.ko", |
| "boot_device_spi.ko", |
| "bts.ko", |
| "clk_exynos.ko", |
| "cmupmucal.ko", |
| "cpif.ko", |
| "cpif_page.ko", |
| "cp_thermal_zone.ko", |
| "dbgcore-dump.ko", |
| "debug-reboot.ko", |
| "debug-snapshot-debug-kinfo.ko", |
| "dss.ko", |
| "dwc3-exynos-usb.ko", |
| "ect_parser.ko", |
| "eh.ko", |
| "ehld.ko", |
| "etm2dram.ko", |
| "exynos-acme.ko", |
| "exynos-adv-tracer.ko", |
| "exynos-bcm_dbg-dump.ko", |
| "exynos-coresight-etm.ko", |
| "exynos-coresight.ko", |
| "exynos-cpuhp.ko", |
| "exynos-cpupm.ko", |
| "exynos-debug-test.ko", |
| "exynos_devfreq.ko", |
| "exynos_dit.ko", |
| "exynos-dm.ko", |
| "exynos-ecc-handler.ko", |
| "exynos_mct.ko", |
| "exynos_mfc.ko", |
| "exynos-pcie-iommu.ko", |
| "exynos-pd-dbg.ko", |
| "exynos-pd_el3.ko", |
| "exynos-pd_hsi0.ko", |
| "exynos-pd.ko", |
| "exynos-pm.ko", |
| "exynos_pm_qos.ko", |
| "exynos-pmu-if.ko", |
| "exynos-seclog.ko", |
| "exynos_tty.ko", |
| "g2d.ko", |
| "google_bcl.ko", |
| "gpu_cooling.ko", |
| "gs_acpm.ko", |
| "gsa_gsc.ko", |
| "gsa.ko", |
| "gs-chipid.ko", |
| "gs_thermal.ko", |
| "gvotable.ko", |
| "hardlockup-debug.ko", |
| "hardlockup-watchdog.ko", |
| "i2c-acpm.ko", |
| "i2c-dev.ko", |
| "i2c-exynos5.ko", |
| "itmon.ko", |
| "keycombo.ko", |
| "keydebug.ko", |
| "logbuffer.ko", |
| "lzo.ko", |
| "lzo-rle.ko", |
| "max77759_contaminant.ko", |
| "max77759_helper.ko", |
| "memlat-devfreq.ko", |
| "odpm.ko", |
| "pcie-exynos-core.ko", |
| "pcie-exynos-gs201-rc-cal.ko", |
| "phy-exynos-mipi-dsim.ko", |
| "phy-exynos-mipi.ko", |
| "phy-exynos-usbdrd-super.ko", |
| "pinctrl-samsung-core.ko", |
| "pinctrl-slg51000.ko", |
| "pinctrl-slg51002.ko", |
| "pixel-boot-metrics.ko", |
| "pixel-debug-test.ko", |
| "pl330.ko", |
| "pmic_class.ko", |
| "power_stats.ko", |
| "rtc-s2mpg12.ko", |
| "s2mpg12-key.ko", |
| "s2mpg12-mfd.ko", |
| "s2mpg12-powermeter.ko", |
| "s2mpg12-regulator.ko", |
| "s2mpg13-mfd.ko", |
| "s2mpg13-powermeter.ko", |
| "s2mpg13-regulator.ko", |
| "s2mpg1x-gpio.ko", |
| "s3c2410_wdt.ko", |
| "samsung_dma_heap.ko", |
| "samsung-dma.ko", |
| "samsung-iommu-group.ko", |
| "samsung_iommu.ko", |
| "samsung-secure-iova.ko", |
| "sbb-mux.ko", |
| "sched_tp.ko", |
| "sg.ko", |
| "shm_ipc.ko", |
| "sjtag-driver.ko", |
| "slc_acpm.ko", |
| "slc_dummy.ko", |
| "slc_pmon.ko", |
| "slc_pt.ko", |
| "slg51000-core.ko", |
| "slg51000-regulator.ko", |
| "slg51002-core.ko", |
| "slg51002-regulator.ko", |
| "smfc.ko", |
| "spidev.ko", |
| "spi-s3c64xx.ko", |
| "sscoredump.ko", |
| "stmvl53l1.ko", |
| "systrace.ko", |
| "tcpci_max77759.ko", |
| "trusty-core.ko", |
| "trusty-ipc.ko", |
| "trusty-log.ko", |
| "trusty-test.ko", |
| "trusty-virtio.ko", |
| "ufs-exynos-core.ko", |
| "usb_f_dm1.ko", |
| "usb_f_dm.ko", |
| "usb_f_etr_miu.ko", |
| "usb_psy.ko", |
| "vh_cgroup.ko", |
| "vh_fs.ko", |
| "vh_i2c.ko", |
| "vh_preemptirq_long.ko", |
| "vh_sched.ko", |
| "vh_thermal.ko", |
| "videobuf2-dma-sg.ko", |
| "xhci-exynos.ko", |
| "zcomp_cpu.ko", |
| "zcomp_eh.ko", |
| "zram.ko", |
| "zsmalloc.ko", |
| ], |
| deps = [ |
| "//prebuilts/misc/linux-x86/libufdt:mkdtimg", |
| ], |
| ) |
| |
| kernel_modules_install( |
| name = "cloudripper_modules_install", |
| kernel_build = ":cloudripper", |
| kernel_modules = [ |
| "//private/google-modules/amplifiers/cs35l41:cs35l41.cloudripper", |
| "//private/google-modules/amplifiers/cs35l45:cs35l45.cloudripper", |
| "//private/google-modules/amplifiers/cs40l26:cs40l26.cloudripper", |
| "//private/google-modules/amplifiers/drv2624:drv2624.cloudripper", |
| "//private/google-modules/aoc/alsa:alsa.cloudripper", |
| "//private/google-modules/aoc/usb:usb.cloudripper", |
| "//private/google-modules/aoc:aoc.cloudripper", |
| "//private/google-modules/bluetooth/broadcom:broadcom.cloudripper", |
| "//private/google-modules/bms:bms.cloudripper", |
| "//private/google-modules/display/samsung:samsung.cloudripper", |
| "//private/google-modules/edgetpu/drivers/edgetpu:edgetpu.cloudripper", |
| "//private/google-modules/gpu/mali_kbase:mali_kbase.cloudripper", |
| "//private/google-modules/gpu/mali_pixel:mali_pixel.cloudripper", |
| "//private/google-modules/lwis:lwis.cloudripper", |
| "//private/google-modules/nfc:nfc.cloudripper", |
| "//private/google-modules/power/reset:reset.cloudripper", |
| "//private/google-modules/touch/common:common.cloudripper", |
| "//private/google-modules/touch/sec:sec.cloudripper", |
| "//private/google-modules/uwb/qorvo/dw3000/kernel:kernel.cloudripper", |
| "//private/google-modules/video/gchips:gchips.cloudripper", |
| "//private/google-modules/wlan/bcmdhd4389:bcmdhd4389.cloudripper", |
| ], |
| ) |
| |
| copy_to_dist_dir( |
| name = "cloudripper_dist", |
| data = [ |
| ":cloudripper_for_dist", |
| ":cloudripper_modules_install", |
| ], |
| ) |