blob: 53e2e1c3fcaf0d27956ffad56e6cea26dbe4b5d5 [file] [log] [blame]
Peng Yixin550106d2021-04-20 19:02:49 +08001mkfile_path := $(abspath $(lastword $(MAKEFILE_LIST)))
2MEDIA_MODULE_PATH := $(dir $(mkfile_path))
3VERSION_CONTROL_CFLAGS := $(shell ${MEDIA_MODULE_PATH}/version_control.sh)
kuan.hue8027522024-07-18 20:54:49 +08004TARGET_VENDOR_MEDIA_VVC_SUPPORT := true
Xindong Xudb449232020-04-04 11:29:20 +08005
zehong.luo3038d942024-08-20 18:57:41 +08006PRODUCT_FULL_DIR ?= ${MAIN_FOLDER}/${PROJECT_CONFIG_DIR}
Hao Shi3cc787d2024-03-01 03:27:13 +00007ifeq (${wildcard ${PRODUCT_FULL_DIR}/media_modules.build.config.trunk.mk},)
8${info "media_modules use default config"}
zehong.luo1c670122024-06-20 20:30:27 +08009MEDIA_MODULES_CFLAGS = ""
10else
11${info "media_modules use config in ${PRODUCT_FULL_DIR}"}
12include ${PRODUCT_FULL_DIR}/media_modules.build.config.trunk.mk
13endif
14
15
16CONFIGS ?= CONFIG_AMLOGIC_MEDIA_VDEC_MPEG2_MULTI=m \
Xindong Xudb449232020-04-04 11:29:20 +080017 CONFIG_AMLOGIC_MEDIA_VDEC_MPEG4_MULTI=m \
18 CONFIG_AMLOGIC_MEDIA_VDEC_VC1=m \
Xindong Xudb449232020-04-04 11:29:20 +080019 CONFIG_AMLOGIC_MEDIA_VDEC_H264_MULTI=m \
20 CONFIG_AMLOGIC_MEDIA_VDEC_H264_MVC=m \
21 CONFIG_AMLOGIC_MEDIA_VDEC_H265=m \
22 CONFIG_AMLOGIC_MEDIA_VDEC_VP9=m \
Xindong Xudb449232020-04-04 11:29:20 +080023 CONFIG_AMLOGIC_MEDIA_VDEC_MJPEG_MULTI=m \
Rico Yanga769aea2020-11-04 03:51:37 -050024 CONFIG_AMLOGIC_MEDIA_VDEC_AVS_MULTI=m \
Xindong Xudb449232020-04-04 11:29:20 +080025 CONFIG_AMLOGIC_MEDIA_VDEC_AVS2=m \
26 CONFIG_AMLOGIC_MEDIA_VENC_H264=m \
27 CONFIG_AMLOGIC_MEDIA_VENC_H265=m \
Nanxin Qin930dfb72020-07-24 19:23:27 +080028 CONFIG_AMLOGIC_MEDIA_VDEC_AV1=m \
zehong.luo46901182022-12-28 16:14:16 +080029 CONFIG_AMLOGIC_MEDIA_VDEC_AVS3=m \
Xindong Xudb449232020-04-04 11:29:20 +080030 CONFIG_AMLOGIC_MEDIA_ENHANCEMENT_DOLBYVISION=y \
31 CONFIG_AMLOGIC_MEDIA_GE2D=y \
32 CONFIG_AMLOGIC_MEDIA_VENC_MULTI=m \
zehong.luo46901182022-12-28 16:14:16 +080033 CONFIG_AMLOGIC_MEDIA_VENC_JPEG=m \
34 CONFIG_AMLOGIC_MEDIA_VDEC_VP9_FB=m \
35 CONFIG_AMLOGIC_MEDIA_VDEC_H265_FB=m \
36 CONFIG_AMLOGIC_MEDIA_VDEC_AV1_FB=m \
kuan.hu9b49f002023-05-26 14:13:45 +080037 CONFIG_AMLOGIC_MEDIA_VDEC_AV1_T5D=m \
xiaoya.lin06799d12023-03-16 16:43:07 +080038 CONFIG_AMLOGIC_MEDIA_VDEC_AVS2_FB=m \
39 CONFIG_AMLOGIC_MEDIA_VENC_MEMALLOC=m \
Hao Shi47e2b492023-04-03 03:44:29 +000040 CONFIG_AMLOGIC_MEDIA_VENC_VCENC=m \
xiaoya.lin2c95cb32024-02-04 20:02:11 +080041 CONFIG_AMLOGIC_MEDIA_VENC_COMMON=m \
Hao Shi3cc787d2024-03-01 03:27:13 +000042 CONFIG_AMLOGIC_HW_DEMUX=m \
Nanxin Qind35cd852024-10-06 19:38:53 +080043 CONFIG_AMLOGIC_MEDIA_V4L_DEC=y \
44 CONFIG_AMLOGIC_MEDIA_DHP=m
Hao Shief1458f2024-03-19 02:16:16 +000045
kuan.hue8027522024-07-18 20:54:49 +080046ifeq ($(TARGET_VENDOR_MEDIA_VVC_SUPPORT), true)
47CONFIGS += CONFIG_AMLOGIC_MEDIA_VDEC_H266=m
48endif
49
Xindong Xudb449232020-04-04 11:29:20 +080050
51EXTRA_INCLUDE := -I$(KERNEL_SRC)/$(M)/drivers/include
52
53CONFIGS_BUILD := -Wno-parentheses-equality -Wno-pointer-bool-conversion \
54 -Wno-unused-const-variable -Wno-typedef-redefinition \
55 -Wno-logical-not-parentheses -Wno-sometimes-uninitialized \
hao.shieb0ed0b2022-07-28 15:44:28 +080056 -Wno-frame-larger-than=
Xindong Xudb449232020-04-04 11:29:20 +080057
Tao Zeng70677d32020-10-09 09:39:26 +080058KBUILD_CFLAGS_MODULE += $(GKI_EXT_MODULE_PREDEFINE)
Xindong Xudb449232020-04-04 11:29:20 +080059
Wanwei Jiang6f0843a2023-02-22 15:05:11 +080060ifeq ($(O),)
61out_dir := .
62else
63out_dir := $(O)
64endif
65include $(out_dir)/include/config/auto.conf
66
Xindong Xudb449232020-04-04 11:29:20 +080067modules:
Hao Shief1458f2024-03-19 02:16:16 +000068 $(MAKE) -C $(KERNEL_SRC) M=$(M)/drivers modules "EXTRA_CFLAGS+=-I$(INCLUDE) -Wno-error $(CONFIGS_BUILD) $(EXTRA_INCLUDE) $(KBUILD_CFLAGS_MODULE) ${VERSION_CONTROL_CFLAGS} ${MEDIA_MODULES_CFLAGS}" $(CONFIGS)
Xindong Xudb449232020-04-04 11:29:20 +080069
70all: modules
71
72modules_install:
73 $(MAKE) INSTALL_MOD_STRIP=1 M=$(M)/drivers -C $(KERNEL_SRC) modules_install
Wanwei Jiang6f0843a2023-02-22 15:05:11 +080074 $(Q)mkdir -p ${out_dir}/../vendor_lib/modules
75 $(Q)mkdir -p ${out_dir}/../vendor_lib/firmware/video
76 $(Q)cp $(KERNEL_SRC)/$(M)/firmware/* ${out_dir}/../vendor_lib/firmware/video/ -rf
77 $(Q)if [ -z "$(CONFIG_AMLOGIC_KERNEL_VERSION)" ]; then \
78 cd ${out_dir}/$(M)/; find -name "*.ko" -exec cp {} ${out_dir}/../vendor_lib/modules/ \; ; \
79 else \
80 find $(INSTALL_MOD_PATH)/lib/modules/*/$(INSTALL_MOD_DIR) -name "*.ko" -exec cp {} ${out_dir}/../vendor_lib/modules \; ; \
81 fi;
Xindong Xudb449232020-04-04 11:29:20 +080082
83clean:
hao.shieb0ed0b2022-07-28 15:44:28 +080084 $(MAKE) -C $(KERNEL_SRC) M=$(M) clean