blob: c012279e97448cb22336c5d491642efd11485b81 [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)
Xindong Xudb449232020-04-04 11:29:20 +08004
hao.shieb0ed0b2022-07-28 15:44:28 +08005CONFIGS := CONFIG_AMLOGIC_MEDIA_VDEC_MPEG12=m \
6 CONFIG_AMLOGIC_MEDIA_VDEC_MPEG2_MULTI=m \
7 CONFIG_AMLOGIC_MEDIA_VDEC_MPEG4=m \
Xindong Xudb449232020-04-04 11:29:20 +08008 CONFIG_AMLOGIC_MEDIA_VDEC_MPEG4_MULTI=m \
9 CONFIG_AMLOGIC_MEDIA_VDEC_VC1=m \
10 CONFIG_AMLOGIC_MEDIA_VDEC_H264=m \
11 CONFIG_AMLOGIC_MEDIA_VDEC_H264_MULTI=m \
12 CONFIG_AMLOGIC_MEDIA_VDEC_H264_MVC=m \
13 CONFIG_AMLOGIC_MEDIA_VDEC_H265=m \
14 CONFIG_AMLOGIC_MEDIA_VDEC_VP9=m \
hao.shieb0ed0b2022-07-28 15:44:28 +080015 CONFIG_AMLOGIC_MEDIA_VDEC_MJPEG=m \
Xindong Xudb449232020-04-04 11:29:20 +080016 CONFIG_AMLOGIC_MEDIA_VDEC_MJPEG_MULTI=m \
17 CONFIG_AMLOGIC_MEDIA_VDEC_REAL=m \
18 CONFIG_AMLOGIC_MEDIA_VDEC_AVS=m \
Rico Yanga769aea2020-11-04 03:51:37 -050019 CONFIG_AMLOGIC_MEDIA_VDEC_AVS_MULTI=m \
Xindong Xudb449232020-04-04 11:29:20 +080020 CONFIG_AMLOGIC_MEDIA_VDEC_AVS2=m \
21 CONFIG_AMLOGIC_MEDIA_VENC_H264=m \
22 CONFIG_AMLOGIC_MEDIA_VENC_H265=m \
Nanxin Qin930dfb72020-07-24 19:23:27 +080023 CONFIG_AMLOGIC_MEDIA_VDEC_AV1=m \
zehong.luo46901182022-12-28 16:14:16 +080024 CONFIG_AMLOGIC_MEDIA_VDEC_AVS3=m \
Xindong Xudb449232020-04-04 11:29:20 +080025 CONFIG_AMLOGIC_MEDIA_ENHANCEMENT_DOLBYVISION=y \
26 CONFIG_AMLOGIC_MEDIA_GE2D=y \
27 CONFIG_AMLOGIC_MEDIA_VENC_MULTI=m \
zehong.luo46901182022-12-28 16:14:16 +080028 CONFIG_AMLOGIC_MEDIA_VENC_JPEG=m \
29 CONFIG_AMLOGIC_MEDIA_VDEC_VP9_FB=m \
30 CONFIG_AMLOGIC_MEDIA_VDEC_H265_FB=m \
31 CONFIG_AMLOGIC_MEDIA_VDEC_AV1_FB=m \
kuan.hu9b49f002023-05-26 14:13:45 +080032 CONFIG_AMLOGIC_MEDIA_VDEC_AV1_T5D=m \
xiaoya.lin06799d12023-03-16 16:43:07 +080033 CONFIG_AMLOGIC_MEDIA_VDEC_AVS2_FB=m \
34 CONFIG_AMLOGIC_MEDIA_VENC_MEMALLOC=m \
Hao Shi47e2b492023-04-03 03:44:29 +000035 CONFIG_AMLOGIC_MEDIA_VENC_VCENC=m \
36 CONFIG_AMLOGIC_HW_DEMUX=m
Xindong Xudb449232020-04-04 11:29:20 +080037
38EXTRA_INCLUDE := -I$(KERNEL_SRC)/$(M)/drivers/include
39
40CONFIGS_BUILD := -Wno-parentheses-equality -Wno-pointer-bool-conversion \
41 -Wno-unused-const-variable -Wno-typedef-redefinition \
42 -Wno-logical-not-parentheses -Wno-sometimes-uninitialized \
hao.shieb0ed0b2022-07-28 15:44:28 +080043 -Wno-frame-larger-than=
Xindong Xudb449232020-04-04 11:29:20 +080044
Tao Zeng70677d32020-10-09 09:39:26 +080045KBUILD_CFLAGS_MODULE += $(GKI_EXT_MODULE_PREDEFINE)
Xindong Xudb449232020-04-04 11:29:20 +080046
hao.shieb0ed0b2022-07-28 15:44:28 +080047ifeq (${VERSION},5)
48ifeq (${PATCHLEVEL},15)
49 CONFIGS += CONFIG_AMLOGIC_MEDIA_MULTI_DEC=y
50endif
51endif
52
Wanwei Jiang6f0843a2023-02-22 15:05:11 +080053ifeq ($(O),)
54out_dir := .
55else
56out_dir := $(O)
57endif
58include $(out_dir)/include/config/auto.conf
59
Xindong Xudb449232020-04-04 11:29:20 +080060modules:
Peng Yixin550106d2021-04-20 19:02:49 +080061 $(MAKE) -C $(KERNEL_SRC) M=$(M)/drivers modules "EXTRA_CFLAGS+=-I$(INCLUDE) -Wno-error $(CONFIGS_BUILD) $(EXTRA_INCLUDE) $(KBUILD_CFLAGS_MODULE) ${VERSION_CONTROL_CFLAGS}" $(CONFIGS)
Xindong Xudb449232020-04-04 11:29:20 +080062
63all: modules
64
65modules_install:
66 $(MAKE) INSTALL_MOD_STRIP=1 M=$(M)/drivers -C $(KERNEL_SRC) modules_install
Wanwei Jiang6f0843a2023-02-22 15:05:11 +080067 $(Q)mkdir -p ${out_dir}/../vendor_lib/modules
68 $(Q)mkdir -p ${out_dir}/../vendor_lib/firmware/video
69 $(Q)cp $(KERNEL_SRC)/$(M)/firmware/* ${out_dir}/../vendor_lib/firmware/video/ -rf
70 $(Q)if [ -z "$(CONFIG_AMLOGIC_KERNEL_VERSION)" ]; then \
71 cd ${out_dir}/$(M)/; find -name "*.ko" -exec cp {} ${out_dir}/../vendor_lib/modules/ \; ; \
72 else \
73 find $(INSTALL_MOD_PATH)/lib/modules/*/$(INSTALL_MOD_DIR) -name "*.ko" -exec cp {} ${out_dir}/../vendor_lib/modules \; ; \
74 fi;
Xindong Xudb449232020-04-04 11:29:20 +080075
76clean:
hao.shieb0ed0b2022-07-28 15:44:28 +080077 $(MAKE) -C $(KERNEL_SRC) M=$(M) clean