Files
android_kernel_samsung_sm87…/qcom/opensource/display-drivers/msm/Kbuild
2025-08-12 22:13:00 +02:00

404 lines
13 KiB
Makefile

# SPDX-License-Identifier: GPL-2.0-only
KDIR := $(TOP)/kernel_platform/msm-kernel
ifeq ($(CONFIG_ARCH_WAIPIO), y)
ifeq ($(CONFIG_ARCH_QTI_VM), y)
include $(DISPLAY_ROOT)/config/gki_waipiodisptui.conf
LINUX_INC += -include $(DISPLAY_ROOT)/config/gki_waipiodisptuiconf.h
else
include $(DISPLAY_ROOT)/config/gki_waipiodisp.conf
LINUX_INC += -include $(DISPLAY_ROOT)/config/gki_waipiodispconf.h
endif
endif
ifeq ($(CONFIG_ARCH_NEO), y)
include $(DISPLAY_ROOT)/config/gki_neodisp.conf
LINUX_INC += -include $(DISPLAY_ROOT)/config/gki_neodispconf.h
endif
ifeq ($(CONFIG_ARCH_PARROT), y)
include $(DISPLAY_ROOT)/config/gki_parrotdisp.conf
LINUX_INC += -include $(DISPLAY_ROOT)/config/gki_parrotdispconf.h
endif
ifeq ($(CONFIG_ARCH_NIOBE), y)
include $(DISPLAY_ROOT)/config/gki_niobedisp.conf
LINUX_INC += -include $(DISPLAY_ROOT)/config/gki_niobedispconf.h
endif
ifeq ($(CONFIG_ARCH_PINEAPPLE), y)
ifeq ($(CONFIG_ARCH_QTI_VM), y)
include $(DISPLAY_ROOT)/config/gki_pineappledisptui.conf
LINUX_INC += -include $(DISPLAY_ROOT)/config/gki_pineappledisptuiconf.h
else
include $(DISPLAY_ROOT)/config/gki_pineappledisp.conf
LINUX_INC += -include $(DISPLAY_ROOT)/config/gki_pineappledispconf.h
endif
endif
ifeq ($(CONFIG_ARCH_SUN), y)
ifeq ($(CONFIG_ARCH_QTI_VM), y)
include $(DISPLAY_ROOT)/config/gki_sundisptui.conf
LINUX_INC += -include $(DISPLAY_ROOT)/config/gki_sundisptuiconf.h
else
include $(DISPLAY_ROOT)/config/gki_sundisp.conf
LINUX_INC += -include $(DISPLAY_ROOT)/config/gki_sundispconf.h
endif
endif
ifeq ($(CONFIG_ARCH_MONACO), y)
include $(DISPLAY_ROOT)/config/gki_monacodisp.conf
LINUX_INC += -include $(DISPLAY_ROOT)/config/gki_monacodispconf.h
endif
ifeq ($(CONFIG_ARCH_KALAMA), y)
ifeq ($(CONFIG_ARCH_QTI_VM), y)
include $(DISPLAY_ROOT)/config/gki_kalamadisptui.conf
LINUX_INC += -include $(DISPLAY_ROOT)/config/gki_kalamadisptuiconf.h
else
include $(DISPLAY_ROOT)/config/gki_kalamadisp.conf
LINUX_INC += -include $(DISPLAY_ROOT)/config/gki_kalamadispconf.h
endif
endif
ifeq (y, $(findstring y, $(CONFIG_ARCH_SA8155) $(CONFIG_ARCH_SA6155) $(CONFIG_ARCH_SA8195)))
include $(DISPLAY_ROOT)/config/augen3disp.conf
LINUX_INC += -include $(DISPLAY_ROOT)/config/augen3dispconf.h
endif
LINUX_INC += -I$(KERNEL_SRC)/include/linux \
-I$(KERNEL_SRC)/include/linux/drm
LINUX_INC += -I$(DISPLAY_ROOT) \
-I$(DISPLAY_ROOT)/include \
-I$(KERNEL_ROOT)/drivers/clk/qcom \
-I$(KERNEL_SRC)/drivers/clk/qcom \
-I$(DISPLAY_ROOT)/include/linux \
-I$(DISPLAY_ROOT)/rotator \
-I$(DISPLAY_ROOT)/msm \
-I$(DISPLAY_ROOT)/msm/dp \
-I$(DISPLAY_ROOT)/msm/dsi \
-I$(DISPLAY_ROOT)/msm/sde \
-I$(DISPLAY_ROOT)/../mm-drivers/hw_fence/include \
-I$(DISPLAY_ROOT)/include/uapi/display \
CDEFINES += -DANI_LITTLE_BYTE_ENDIAN \
-DANI_LITTLE_BIT_ENDIAN \
-DDOT11F_LITTLE_ENDIAN_HOST \
-DANI_COMPILER_TYPE_GCC \
-DANI_OS_TYPE_ANDROID=6 \
-DPTT_SOCK_SVC_ENABLE \
-Wall\
-Werror\
-D__linux__
KBUILD_CPPFLAGS += $(CDEFINES)
ccflags-y += $(LINUX_INC)
# CONFIG_DISPLAY_SAMSUNG start
ccflags-y += -I$(DISPLAY_ROOT)/msm/samsung
# Below is for SM8750 to support cp-kbuild
ccflags-y += -I$(DISPLAY_ROOT)/../synx-kernel/msm/synx \
-I$(DISPLAY_ROOT)/../synx-kernel/include/uapi/synx/media \
-I$(DISPLAY_ROOT)/../mm-drivers/msm_ext_display/include \
-I$(DISPLAY_ROOT)/../mm-drivers/sync_fence/include
# CONFIG_DISPLAY_SAMSUNG end
ifeq ($(call cc-option-yn, -Wmaybe-uninitialized),y)
EXTRA_CFLAGS += -Wmaybe-uninitialized
endif
#KBUILD_EXTRA_SYMBOLS +=$(OUT)/obj/vendor/qcom/opensource/display-drivers/hdcp/Module.symvers
#KBUILD_EXTRA_SYMBOLS +=$(OUT)/obj/vendor/qcom/opensource/display-drivers/msm/Module.symvers
ifeq ($(call cc-option-yn, -Wheader-guard),y)
EXTRA_CFLAGS += -Wheader-guard
endif
ccflags-y += -Wformat-extra-args -Wstrict-prototypes -Wformat-insufficient-args \
-Wformat-invalid-specifier -Wformat-zero-length -Wnonnull
ifneq ($(MODNAME), qdsp6v2)
CHIP_NAME ?= $(MODNAME)
CDEFINES += -DMULTI_IF_NAME=\"$(CHIP_NAME)\"
endif
######### CONFIG_DRM_MSM ########
obj-m += msm_drm.o
msm_drm-$(CONFIG_HDCP_QSEECOM) := ../hdcp/msm_hdcp.o \
dp/dp_hdcp2p2.o \
sde_hdcp_1x.o \
sde_hdcp_2x.o
msm_drm-$(CONFIG_MSM_SDE_ROTATOR) += ../rotator/sde_rotator_dev.o \
../rotator/sde_rotator_dev.o \
../rotator/sde_rotator_core.o \
../rotator/sde_rotator_base.o \
../rotator/sde_rotator_formats.o \
../rotator/sde_rotator_util.o \
../rotator/sde_rotator_io_util.o \
../rotator/sde_rotator_smmu.o \
../rotator/sde_rotator_r1_wb.o \
../rotator/sde_rotator_r1_pipe.o \
../rotator/sde_rotator_r1_ctl.o \
../rotator/sde_rotator_r1.o \
../rotator/sde_rotator_r3.o
ifeq ($(CONFIG_MSM_SDE_ROTATOR), y)
msm_drm-$(CONFIG_SYNC_FILE) += ../rotator/sde_rotator_sync.o
msm_drm-$(CONFIG_DEBUG_FS) += ../rotator/sde_rotator_debug.o \
../rotator/sde_rotator_r1_debug.o \
../rotator/sde_rotator_r3_debug.o
endif
msm_drm-$(CONFIG_DRM_SDE_VM) += sde/sde_vm_common.o \
sde/sde_vm_primary.o \
sde/sde_vm_trusted.o \
sde/sde_vm_msgq.o
msm_drm-$(CONFIG_DRM_MSM_DP) += dp/dp_altmode.o \
dp/dp_parser.o \
dp/dp_power.o \
dp/dp_catalog.o \
dp/dp_catalog_v420.o \
dp/dp_catalog_v200.o \
dp/dp_catalog_v500.o \
dp/dp_aux.o \
dp/dp_panel.o \
dp/dp_link.o \
dp/dp_ctrl.o \
dp/dp_audio.o \
dp/dp_debug.o \
dp/dp_hpd.o \
dp/dp_aux_bridge.o \
dp/dp_bridge_hpd.o \
dp/dp_mst_sim.o \
dp/dp_mst_sim_helper.o \
dp/dp_gpio_hpd.o \
dp/dp_lphw_hpd.o \
dp/dp_display.o \
dp/dp_drm.o \
dp/dp_pll.o \
dp/dp_pll_5nm.o \
dp/dp_pll_4nm.o \
dp/dp_pll_3nm.o
msm_drm-$(CONFIG_DRM_MSM_DP_MST) += dp/dp_mst_drm.o
msm_drm-$(CONFIG_DRM_MSM_DP_USBPD_LEGACY) += dp/dp_usbpd.o
# sec displayport
msm_drm-$(CONFIG_SECDP) += dp/secdp_sysfs.o \
dp/secdp_logger.o \
dp/secdp_unit_test.o
msm_drm-$(CONFIG_SECDP_BIGDATA) += dp/secdp_bigdata.o
msm_drm-$(CONFIG_DRM_MSM_SDE) += sde/sde_crtc.o \
sde/sde_encoder.o \
sde/sde_encoder_dce.o \
sde/sde_encoder_phys_vid.o \
sde/sde_encoder_phys_cmd.o \
sde/sde_irq.o sde/sde_core_irq.o \
sde/sde_core_perf.o \
sde/sde_rm.o \
sde/sde_kms_utils.o \
sde/sde_kms.o \
sde/sde_plane.o \
sde/sde_connector.o \
sde/sde_color_processing.o \
sde/sde_vbif.o \
sde_dbg.o \
sde_dbg_evtlog.o \
sde_io_util.o \
sde_vm_event.o \
sde/sde_hw_reg_dma_v1_color_proc.o \
sde/sde_hw_color_proc_v4.o \
sde/sde_hw_ad4.o \
sde/sde_hw_uidle.o \
sde_edid_parser.o \
sde/sde_hw_catalog.o \
sde/sde_hw_cdm.o \
sde/sde_hw_dspp.o \
sde/sde_hw_intf.o \
sde/sde_hw_lm.o \
sde/sde_hw_ctl.o \
sde/sde_hw_util.o \
sde/sde_hw_sspp.o \
sde/sde_hw_wb.o \
sde/sde_hw_pingpong.o \
sde/sde_hw_top.o \
sde/sde_hw_interrupts.o \
sde/sde_hw_vbif.o \
sde/sde_formats.o \
sde_power_handle.o \
sde/sde_hw_color_processing_v1_7.o \
sde/sde_reg_dma.o \
sde/sde_hw_reg_dma_v1.o \
sde/sde_hw_dsc.o \
sde/sde_hw_dsc_1_2.o \
sde/sde_hw_vdc.o \
sde/sde_hw_ds.o \
sde/sde_fence.o \
sde/sde_hw_qdss.o \
sde_dsc_helper.o \
sde_vdc_helper.o \
sde/sde_hw_dnsc_blur.o \
sde/sde_hw_rc.o \
sde/sde_color_proc_property_helper.o \
sde/sde_color_processing_aiqe.o \
sde/sde_hw_color_proc_aiqe_v1.o \
sde/sde_aiqe_common.o
msm_drm-$(CONFIG_DRM_SDE_WB) += sde/sde_wb.o \
sde/sde_encoder_phys_wb.o
msm_drm-$(CONFIG_DRM_SDE_RSC) += sde_rsc.o \
sde_rsc_hw.o \
sde_rsc_hw_v3.o
msm_drm-$(CONFIG_DRM_SDE_CESTA) += sde_cesta.o \
sde_cesta_hw.o
msm_drm-$(CONFIG_DRM_MSM_DSI) += dsi/dsi_phy.o \
dsi/dsi_pwr.o \
dsi/dsi_phy.o \
dsi/dsi_phy_hw_v3_0.o \
dsi/dsi_phy_hw_v4_0.o \
dsi/dsi_phy_hw_v5_0.o \
dsi/dsi_phy_hw_v7_2.o \
dsi/dsi_phy_timing_calc.o \
dsi/dsi_phy_timing_v3_0.o \
dsi/dsi_phy_timing_v4_0.o \
dsi/dsi_pll.o \
dsi/dsi_pll_5nm.o \
dsi/dsi_pll_4nm.o \
dsi/dsi_pll_3nm.o \
dsi/dsi_ctrl_hw_cmn.o \
dsi/dsi_ctrl_hw_2_2.o \
dsi/dsi_ctrl.o \
dsi/dsi_catalog.o \
dsi/dsi_drm.o \
dsi/dsi_display.o \
dsi/dsi_display_manager.o \
dsi/dsi_panel.o \
dsi/dsi_clk_manager.o \
dsi/dsi_display_test.o
msm_drm-$(CONFIG_DSI_PARSER) += dsi/dsi_parser.o
msm_drm-$(CONFIG_THERMAL_OF) += msm_cooling_device.o
msm_drm-$(CONFIG_DRM_MSM) += msm_atomic.o \
msm_fb.o \
msm_drv.o \
msm_gem.o \
msm_gem_prime.o \
msm_gem_vma.o \
msm_smmu.o \
msm_prop.o
CDEFINES += -DBUILD_TIMESTAMP=\"$(shell date -u +'%Y-%m-%dT%H:%M:%SZ')\"
include $(DISPLAY_ROOT)/msm/samsung/panel_common.conf
ccflags-y += -include $(DISPLAY_ROOT)/msm/samsung/panel_common_conf.h
msm_drm-$(CONFIG_DISPLAY_SAMSUNG) += samsung/PBA_BOOTING/ss_dsi_panel_PBA_BOOTING_fhd.o
include $(DISPLAY_ROOT)/msm/samsung/PA3_S6E3HAF_AMB686HX01_VHM/PA3_S6E3HAF_AMB686HX01_VHM.conf
ccflags-y += -include $(DISPLAY_ROOT)/msm/samsung/PA3_S6E3HAF_AMB686HX01_VHM/PA3_S6E3HAF_AMB686HX01_VHM.h
XXD := /usr/bin/xxd
SED := /bin/sed
#Translate .dat file to .h to cover the case which can not use request_firmware(Recovery Mode)
CLEAR_TMP := $(shell rm -f PA3_S6E3HAF_AMB686HX01_VHM_PDF_DATA)
COPY_TO_HERE := $(shell cp -vf $(DISPLAY_ROOT)/msm/samsung/panel_data_file/PA3_S6E3HAF_AMB686HX01_VHM.dat PA3_S6E3HAF_AMB686HX01_VHM_PDF_DATA)
DATA_TO_HEX := $(shell $(XXD) -i PA3_S6E3HAF_AMB686HX01_VHM_PDF_DATA > $(DISPLAY_ROOT)/msm/samsung/PA3_S6E3HAF_AMB686HX01_VHM/PA3_S6E3HAF_AMB686HX01_VHM_PDF.h)
ADD_NULL_CHR := $(shell $(SED) -i -e 's/\([0-9a-f]\)$$/\0, 0x00/' $(DISPLAY_ROOT)/msm/samsung/PA3_S6E3HAF_AMB686HX01_VHM/PA3_S6E3HAF_AMB686HX01_VHM_PDF.h)
msm_drm-$(CONFIG_PANEL_PA3_S6E3HAF_AMB686HX01_VHM_WQHD) += samsung/PA3_S6E3HAF_AMB686HX01_VHM/PA3_S6E3HAF_AMB686HX01_VHM_panel.o
include $(DISPLAY_ROOT)/msm/samsung/E2_S6E3HAF_AMB666FM01/E2_S6E3HAF_AMB666FM01.conf
ccflags-y += -include $(DISPLAY_ROOT)/msm/samsung/E2_S6E3HAF_AMB666FM01/E2_S6E3HAF_AMB666FM01.h
XXD := /usr/bin/xxd
SED := /bin/sed
#Translate .dat file to .h to cover the case which can not use request_firmware(Recovery Mode)
CLEAR_TMP := $(shell rm -f E2_S6E3HAF_AMB666FM01_PDF_DATA)
COPY_TO_HERE := $(shell cp -vf $(DISPLAY_ROOT)/msm/samsung/panel_data_file/E2_S6E3HAF_AMB666FM01.dat E2_S6E3HAF_AMB666FM01_PDF_DATA)
DATA_TO_HEX := $(shell $(XXD) -i E2_S6E3HAF_AMB666FM01_PDF_DATA > $(DISPLAY_ROOT)/msm/samsung/E2_S6E3HAF_AMB666FM01/E2_S6E3HAF_AMB666FM01_PDF.h)
ADD_NULL_CHR := $(shell $(SED) -i -e 's/\([0-9a-f]\)$$/\0, 0x00/' $(DISPLAY_ROOT)/msm/samsung/E2_S6E3HAF_AMB666FM01/E2_S6E3HAF_AMB666FM01_PDF.h)
msm_drm-$(CONFIG_PANEL_E2_S6E3HAF_AMB666FM01_WQHD) += samsung/E2_S6E3HAF_AMB666FM01/E2_S6E3HAF_AMB666FM01_panel.o
include $(DISPLAY_ROOT)/msm/samsung/PA3_S6E3HAF_AMB686HX01/PA3_S6E3HAF_AMB686HX01.conf
ccflags-y += -include $(DISPLAY_ROOT)/msm/samsung/PA3_S6E3HAF_AMB686HX01/PA3_S6E3HAF_AMB686HX01.h
XXD := /usr/bin/xxd
SED := /bin/sed
#Translate .dat file to .h to cover the case which can not use request_firmware(Recovery Mode)
CLEAR_TMP := $(shell rm -f PA3_S6E3HAF_AMB686HX01_PDF_DATA)
COPY_TO_HERE := $(shell cp -vf $(DISPLAY_ROOT)/msm/samsung/panel_data_file/PA3_S6E3HAF_AMB686HX01.dat PA3_S6E3HAF_AMB686HX01_PDF_DATA)
DATA_TO_HEX := $(shell $(XXD) -i PA3_S6E3HAF_AMB686HX01_PDF_DATA > $(DISPLAY_ROOT)/msm/samsung/PA3_S6E3HAF_AMB686HX01/PA3_S6E3HAF_AMB686HX01_PDF.h)
ADD_NULL_CHR := $(shell $(SED) -i -e 's/\([0-9a-f]\)$$/\0, 0x00/' $(DISPLAY_ROOT)/msm/samsung/PA3_S6E3HAF_AMB686HX01/PA3_S6E3HAF_AMB686HX01_PDF.h)
msm_drm-$(CONFIG_PANEL_PA3_S6E3HAF_AMB686HX01_WQHD) += samsung/PA3_S6E3HAF_AMB686HX01/PA3_S6E3HAF_AMB686HX01_panel.o
include $(DISPLAY_ROOT)/msm/samsung/PA3_S6E3HAF_AMB679FN01/PA3_S6E3HAF_AMB679FN01.conf
ccflags-y += -include $(DISPLAY_ROOT)/msm/samsung/PA3_S6E3HAF_AMB679FN01/PA3_S6E3HAF_AMB679FN01.h
XXD := /usr/bin/xxd
SED := /bin/sed
#Translate .dat file to .h to cover the case which can not use request_firmware(Recovery Mode)
CLEAR_TMP := $(shell rm -f PA3_S6E3HAF_AMB679FN01_PDF_DATA)
COPY_TO_HERE := $(shell cp -vf $(DISPLAY_ROOT)/msm/samsung/panel_data_file/PA3_S6E3HAF_AMB679FN01.dat PA3_S6E3HAF_AMB679FN01_PDF_DATA)
DATA_TO_HEX := $(shell $(XXD) -i PA3_S6E3HAF_AMB679FN01_PDF_DATA > $(DISPLAY_ROOT)/msm/samsung/PA3_S6E3HAF_AMB679FN01/PA3_S6E3HAF_AMB679FN01_PDF.h)
ADD_NULL_CHR := $(shell $(SED) -i -e 's/\([0-9a-f]\)$$/\0, 0x00/' $(DISPLAY_ROOT)/msm/samsung/PA3_S6E3HAF_AMB679FN01/PA3_S6E3HAF_AMB679FN01_PDF.h)
msm_drm-$(CONFIG_PANEL_PA3_S6E3HAF_AMB679FN01_WQHD) += samsung/PA3_S6E3HAF_AMB679FN01/PA3_S6E3HAF_AMB679FN01_panel.o
include $(DISPLAY_ROOT)/msm/samsung/panel_common.conf
ccflags-y += -include $(DISPLAY_ROOT)/msm/samsung/panel_common_conf.h
ifeq ($(TARGET_BUILD_VARIANT), eng)
ccflags-y += -DCONFIG_OPCODE_PARSER=1
endif
msm_drm-$(CONFIG_DISPLAY_SAMSUNG) += samsung/ss_dsi_panel_sysfs.o \
samsung/ss_dsi_panel_debug.o \
samsung/ss_dsi_panel_common.o \
samsung/ss_dsi_mdnie_lite_common.o \
samsung/ss_dpui_common.o \
samsung/ss_copr_common.o \
samsung/ss_wrapper_common.o \
samsung/ss_panel_parse.o \
samsung/ss_panel_power.o
ifeq ($(CONFIG_SEC_KUNIT), y)
ifeq ($(CONFIG_UML), y)
obj-y += samsung/kunit_test/ss_dsi_panel_common_test.o
endif
endif
# LEGO
subdir-ccflags-$(CONFIG_SEC_KUNIT) += \
-Wno-unused-variable \
-Wno-unused-function \
-Wno-missing-braces \
-Wno-format
msm_drm-$(CONFIG_DISPLAY_SAMSUNG) += samsung/SELF_DISPLAY/self_display.o
msm_drm-$(CONFIG_DISPLAY_SAMSUNG) += samsung/MAFPC/ss_dsi_mafpc.o