From cbc9f69f2aa107793d203974ec504b1ba3245c11 Mon Sep 17 00:00:00 2001 From: Gaurav LNU Date: Wed, 2 Aug 2023 23:33:19 -0700 Subject: [PATCH 1/3] disp: add bazel build support for blair target Add support to display-drivers modules using DDK framework for blair. Change-Id: I6110b4144e263054ed956497dbe956f5743315c7 Signed-off-by: Gaurav LNU --- BUILD.bazel | 4 +- display_driver_build.bzl | 15 +++++++- display_modules.bzl | 24 ++++++++---- target.bzl | 82 ++++++++++++++++++++++++++-------------- 4 files changed, 85 insertions(+), 40 deletions(-) diff --git a/BUILD.bazel b/BUILD.bazel index fe364c55fb..e37294d7aa 100644 --- a/BUILD.bazel +++ b/BUILD.bazel @@ -68,5 +68,5 @@ ddk_headers( hdrs = [ ":linux_includes", ":uapi_headers", ":msm_headers",":dp_headers",":dsi_headers",":sde_headers",":rotator_headers"] ) -load(":target.bzl", "define_pineapple") -define_pineapple() +load(":target.bzl", "define_display_target") +define_display_target() diff --git a/display_driver_build.bzl b/display_driver_build.bzl index 0664007e3e..f844ea6022 100644 --- a/display_driver_build.bzl +++ b/display_driver_build.bzl @@ -4,6 +4,7 @@ load("//build/bazel_common_rules/dist:dist.bzl", "copy_to_dist_dir") def _register_module_to_map(module_map, name, path, config_option, srcs, config_srcs, deps, config_deps): processed_config_srcs = {} nested_config = {} + processed_config_deps = {} for config_src_name in config_srcs: config_src = config_srcs[config_src_name] @@ -20,6 +21,14 @@ def _register_module_to_map(module_map, name, path, config_option, srcs, config_ for nest_src in nest_name: final_srcs = nest_name[nest_src] processed_config_srcs[nest_src] = final_srcs + + for config_deps_name in config_deps: + config_dep = config_deps[config_deps_name] + + if type(config_dep) == "list": + processed_config_deps[config_deps_name] = {True: config_dep} + else: + processed_config_deps[config_deps_name] = config_dep module = struct( name = name, path = path, @@ -27,6 +36,7 @@ def _register_module_to_map(module_map, name, path, config_option, srcs, config_ config_srcs = processed_config_srcs, config_option = config_option, deps = deps, + config_deps = processed_config_deps ) module_map[name] = module @@ -48,7 +58,8 @@ def _get_kernel_build_module_srcs(module, options, formatter): return ["{}{}".format(module_path, formatter(src)) for src in srcs] def _get_kernel_build_module_deps(module, options, formatter): - return [formatter(dep) for dep in module.deps] + deps = module.deps + _get_config_choices(module.config_deps, options) + return [formatter(dep) for dep in deps] def display_module_entry(hdrs = []): module_map = {} @@ -102,4 +113,4 @@ def define_target_variant_modules(target, variant, registry, modules, config_opt allow_duplicate_filenames = False, mode_overrides = {"**/*": "644"}, log = "info", - ) \ No newline at end of file + ) diff --git a/display_modules.bzl b/display_modules.bzl index 493eec4ff6..0d3183a5d9 100644 --- a/display_modules.bzl +++ b/display_modules.bzl @@ -175,11 +175,21 @@ module_entry( "rotator/sde_rotator_r3_debug.c"], }, }, - deps = [ - "//vendor/qcom/opensource/mm-drivers/hw_fence:%b_msm_hw_fence", - "//vendor/qcom/opensource/mm-drivers/sync_fence:%b_sync_fence", - "//vendor/qcom/opensource/mm-drivers/msm_ext_display:%b_msm_ext_display", - "//vendor/qcom/opensource/mmrm-driver:%b_mmrm_driver", - "//vendor/qcom/opensource/securemsm-kernel:%b_hdcp_qseecom_dlkm" - ], + config_deps = { + "CONFIG_HDCP_QSEECOM" : [ + "//vendor/qcom/opensource/securemsm-kernel:%b_hdcp_qseecom_dlkm" + ], + "CONFIG_MSM_MMRM" : [ + "//vendor/qcom/opensource/mmrm-driver:%b_mmrm_driver" + ], + "CONFIG_QCOM_SPEC_SYNC" : [ + "//vendor/qcom/opensource/mm-drivers/sync_fence:%b_sync_fence" + ], + "CONFIG_QTI_HW_FENCE" : [ + "//vendor/qcom/opensource/mm-drivers/hw_fence:%b_msm_hw_fence" + ], + "CONFIG_MSM_EXT_DISPLAY" : [ + "//vendor/qcom/opensource/mm-drivers/msm_ext_display:%b_msm_ext_display" + ], + } ) diff --git a/target.bzl b/target.bzl index 539bf70c29..f10286a269 100644 --- a/target.bzl +++ b/target.bzl @@ -2,33 +2,57 @@ load(":display_modules.bzl", "display_driver_modules") load(":display_driver_build.bzl", "define_target_variant_modules") load("//msm-kernel:target_variants.bzl", "get_all_la_variants", "get_all_le_variants", "get_all_lxc_variants") -def define_pineapple(): +def define_pineapple(t, v): + define_target_variant_modules( + target = t, + variant = v, + registry = display_driver_modules, + modules = [ + "msm_drm", + ], + config_options = [ + "CONFIG_DRM_MSM_SDE", + "CONFIG_SYNC_FILE", + "CONFIG_DRM_MSM_DSI", + "CONFIG_DRM_MSM_DP", + "CONFIG_DRM_MSM_DP_MST", + "CONFIG_DSI_PARSER", + "CONFIG_DRM_SDE_WB", + "CONFIG_DRM_SDE_RSC", + "CONFIG_DRM_MSM_REGISTER_LOGGING", + "CONFIG_QCOM_MDSS_PLL", + "CONFIG_HDCP_QSEECOM", + "CONFIG_DRM_SDE_VM", + "CONFIG_QCOM_WCD939X_I2C", + "CONFIG_THERMAL_OF", + "CONFIG_MSM_MMRM", + "CONFIG_QTI_HW_FENCE", + "CONFIG_QCOM_SPEC_SYNC", + "CONFIG_MSM_EXT_DISPLAY", + ], +) + +def define_blair(t, v): + define_target_variant_modules( + target = t, + variant = v, + registry = display_driver_modules, + modules = [ + "msm_drm", + ], + config_options = [ + "CONFIG_DRM_MSM_SDE", + "CONFIG_DRM_MSM_DSI", + "CONFIG_THERMAL_OF", + "CONFIG_DSI_PARSER", + "CONFIG_DRM_MSM_REGISTER_LOGGING", + "CONFIG_QCOM_MDSS_PLL", + ], +) + +def define_display_target(): for (t, v) in get_all_la_variants() + get_all_le_variants() + get_all_lxc_variants(): - define_target_variant_modules( - target = t, - variant = v, - registry = display_driver_modules, - modules = [ - "msm_drm", - ], - config_options = [ - "CONFIG_DRM_MSM_SDE", - "CONFIG_SYNC_FILE", - "CONFIG_DRM_MSM_DSI", - "CONFIG_DRM_MSM_DP", - "CONFIG_DRM_MSM_DP_MST", - "CONFIG_DSI_PARSER", - "CONFIG_DRM_SDE_WB", - "CONFIG_DRM_SDE_RSC", - "CONFIG_DRM_MSM_REGISTER_LOGGING", - "CONFIG_QCOM_MDSS_PLL", - "CONFIG_HDCP_QSEECOM", - "CONFIG_DRM_SDE_VM", - "CONFIG_QCOM_WCD939X_I2C", - "CONFIG_THERMAL_OF", - "CONFIG_MSM_MMRM", - "CONFIG_QTI_HW_FENCE", - "CONFIG_QCOM_SPEC_SYNC", - "CONFIG_MSM_EXT_DISPLAY" - ], - ) + if t == "blair": + define_blair(t, v) + else: + define_pineapple(t, v) From cac4586b7ef620e5b0bfafb78aebea6b6d04cdec Mon Sep 17 00:00:00 2001 From: Gaurav LNU Date: Mon, 7 Aug 2023 00:29:47 -0700 Subject: [PATCH 2/3] disp: add bazel build support for offline rotator Add changes to support offline rotator compilation in DDK framework. Change-Id: I3ec0c82b35f2287d515166e25a565614675638f0 Signed-off-by: Gaurav LNU Signed-off-by: Charishma Jerripothula --- display_driver_build.bzl | 8 ++++---- display_modules.bzl | 4 ++-- target.bzl | 4 ++++ 3 files changed, 10 insertions(+), 6 deletions(-) diff --git a/display_driver_build.bzl b/display_driver_build.bzl index f844ea6022..1ad9dc869c 100644 --- a/display_driver_build.bzl +++ b/display_driver_build.bzl @@ -17,10 +17,10 @@ def _register_module_to_map(module_map, name, path, config_option, srcs, config_ nested_config = config_src for nested_src, nest_name in nested_config.items(): - if nested_src == "True": - for nest_src in nest_name: - final_srcs = nest_name[nest_src] - processed_config_srcs[nest_src] = final_srcs + if nested_src == True: + processed_config_srcs[config_src_name] = {True: nest_name} + else: + processed_config_srcs[nested_src] = {True: nest_name} for config_deps_name in config_deps: config_dep = config_deps[config_deps_name] diff --git a/display_modules.bzl b/display_modules.bzl index 0d3183a5d9..76c5e5685e 100644 --- a/display_modules.bzl +++ b/display_modules.bzl @@ -159,13 +159,13 @@ module_entry( True: [ "rotator/sde_rotator_dev.c", "rotator/sde_rotator_core.c", - "rotator/sde_rotator_base.c ", + "rotator/sde_rotator_base.c", "rotator/sde_rotator_formats.c", "rotator/sde_rotator_util.c", "rotator/sde_rotator_io_util.c", "rotator/sde_rotator_smmu.c", "rotator/sde_rotator_r1_wb.c", - "rotator/sde_rotator_r1_pipe.c ", + "rotator/sde_rotator_r1_pipe.c", "rotator/sde_rotator_r1_ctl.c", "rotator/sde_rotator_r1.c", "rotator/sde_rotator_r3.c"], diff --git a/target.bzl b/target.bzl index f10286a269..3942115b1d 100644 --- a/target.bzl +++ b/target.bzl @@ -47,6 +47,10 @@ def define_blair(t, v): "CONFIG_DSI_PARSER", "CONFIG_DRM_MSM_REGISTER_LOGGING", "CONFIG_QCOM_MDSS_PLL", + "CONFIG_MSM_SDE_ROTATOR", + "CONFIG_SYNC_FILE", + "CONFIG_MSM_SDE_ROTATOR_EVTLOG_DEBUG", + "CONFIG_DEBUG_FS", ], ) From 1a6cf4b91653d71bc1d34807023cec0c2a964d7d Mon Sep 17 00:00:00 2001 From: Charishma Jerripothula Date: Tue, 26 Dec 2023 14:56:54 +0530 Subject: [PATCH 3/3] disp: msm: add bazel support for pitti target Add code compilation support for pitti target. Change-Id: Ifa47f1f4528e6bcac7fc869182f0d2abd23dd23d Signed-off-by: Charishma Jerripothula --- msm/Android.mk | 2 +- target.bzl | 26 +++++++++++++++++++++++++- 2 files changed, 26 insertions(+), 2 deletions(-) diff --git a/msm/Android.mk b/msm/Android.mk index c40d493d96..37dd30b9ee 100644 --- a/msm/Android.mk +++ b/msm/Android.mk @@ -2,7 +2,7 @@ DISPLAY_SELECT := CONFIG_DRM_MSM=m LOCAL_PATH := $(call my-dir) ifeq ($(TARGET_BOARD_PLATFORM), pitti) -LOCAL_MODULE_DDK_BUILD := false +LOCAL_MODULE_DDK_BUILD := true else ifeq ($(TARGET_BOARD_PLATFORM), niobe) LOCAL_MODULE_DDK_BUILD := false else diff --git a/target.bzl b/target.bzl index 3942115b1d..9076ae5924 100644 --- a/target.bzl +++ b/target.bzl @@ -54,9 +54,33 @@ def define_blair(t, v): ], ) +def define_pitti(t, v): + define_target_variant_modules( + target = t, + variant = v, + registry = display_driver_modules, + modules = [ + "msm_drm", + ], + config_options = [ + "CONFIG_DRM_MSM_SDE", + "CONFIG_DRM_MSM_DSI", + "CONFIG_THERMAL_OF", + "CONFIG_DSI_PARSER", + "CONFIG_DRM_MSM_REGISTER_LOGGING", + "CONFIG_QCOM_MDSS_PLL", + "CONFIG_MSM_SDE_ROTATOR", + "CONFIG_SYNC_FILE", + "CONFIG_MSM_SDE_ROTATOR_EVTLOG_DEBUG", + "CONFIG_DEBUG_FS", + ], +) + def define_display_target(): for (t, v) in get_all_la_variants() + get_all_le_variants() + get_all_lxc_variants(): if t == "blair": define_blair(t, v) - else: + if t == "pitti": + define_pitti(t, v) + if t == "pineapple": define_pineapple(t, v)