Ao Xu | 1e37eca | 2018-08-13 15:25:28 +0800 | [diff] [blame] | 1 | ifeq ($(KERNEL_A32_SUPPORT), true) |
| 2 | KERNEL_ARCH := arm |
| 3 | else |
Nanxin Qin | b916439 | 2017-06-09 15:52:28 +0800 | [diff] [blame] | 4 | KERNEL_ARCH := arm64 |
Ao Xu | 1e37eca | 2018-08-13 15:25:28 +0800 | [diff] [blame] | 5 | endif |
| 6 | |
Nanxin Qin | b916439 | 2017-06-09 15:52:28 +0800 | [diff] [blame] | 7 | CONFIGS := CONFIG_AMLOGIC_MEDIA_VDEC_MPEG12=m \ |
shihong.zheng | 87046a6 | 2018-08-27 15:14:58 +0800 | [diff] [blame] | 8 | CONFIG_AMLOGIC_MEDIA_VDEC_MPEG2_MULTI=m \ |
Nanxin Qin | b916439 | 2017-06-09 15:52:28 +0800 | [diff] [blame] | 9 | CONFIG_AMLOGIC_MEDIA_VDEC_MPEG4=m \ |
| 10 | CONFIG_AMLOGIC_MEDIA_VDEC_MPEG4_MULTI=m \ |
| 11 | CONFIG_AMLOGIC_MEDIA_VDEC_VC1=m \ |
| 12 | CONFIG_AMLOGIC_MEDIA_VDEC_H264=m \ |
| 13 | CONFIG_AMLOGIC_MEDIA_VDEC_H264_MULTI=m \ |
| 14 | CONFIG_AMLOGIC_MEDIA_VDEC_H264_MVC=m \ |
Nanxin Qin | b916439 | 2017-06-09 15:52:28 +0800 | [diff] [blame] | 15 | CONFIG_AMLOGIC_MEDIA_VDEC_H265=m \ |
| 16 | CONFIG_AMLOGIC_MEDIA_VDEC_VP9=m \ |
| 17 | CONFIG_AMLOGIC_MEDIA_VDEC_MJPEG=m \ |
| 18 | CONFIG_AMLOGIC_MEDIA_VDEC_MJPEG_MULTI=m \ |
| 19 | CONFIG_AMLOGIC_MEDIA_VDEC_REAL=m \ |
| 20 | CONFIG_AMLOGIC_MEDIA_VDEC_AVS=m \ |
Nanxin Qin | a6c89e9 | 2018-03-06 19:30:03 +0800 | [diff] [blame] | 21 | CONFIG_AMLOGIC_MEDIA_VDEC_AVS2=m \ |
Nanxin Qin | b916439 | 2017-06-09 15:52:28 +0800 | [diff] [blame] | 22 | CONFIG_AMLOGIC_MEDIA_VENC_H264=m \ |
apollo.ling | 0548bda | 2020-03-05 17:31:42 +0800 | [diff] [blame] | 23 | CONFIG_AMLOGIC_MEDIA_VENC_H265=m \ |
zehong.luo | 4690118 | 2022-12-28 16:14:16 +0800 | [diff] [blame] | 24 | CONFIG_AMLOGIC_MEDIA_VDEC_AV1=m \ |
| 25 | CONFIG_AMLOGIC_MEDIA_VDEC_AVS3=m \ |
apollo.ling | 0548bda | 2020-03-05 17:31:42 +0800 | [diff] [blame] | 26 | CONFIG_AMLOGIC_MEDIA_ENHANCEMENT_DOLBYVISION=y \ |
| 27 | CONFIG_AMLOGIC_MEDIA_GE2D=y \ |
| 28 | CONFIG_AMLOGIC_MEDIA_VENC_MULTI=m \ |
zehong.luo | 4690118 | 2022-12-28 16:14:16 +0800 | [diff] [blame] | 29 | CONFIG_AMLOGIC_MEDIA_VENC_JPEG=m \ |
| 30 | CONFIG_AMLOGIC_MEDIA_VDEC_VP9_FB=m \ |
| 31 | CONFIG_AMLOGIC_MEDIA_VDEC_H265_FB=m \ |
| 32 | CONFIG_AMLOGIC_MEDIA_VDEC_AV1_FB=m \ |
kuan.hu | 9b49f00 | 2023-05-26 14:13:45 +0800 | [diff] [blame^] | 33 | CONFIG_AMLOGIC_MEDIA_VDEC_AV1_T5D=m \ |
zehong.luo | 4690118 | 2022-12-28 16:14:16 +0800 | [diff] [blame] | 34 | CONFIG_AMLOGIC_MEDIA_VDEC_AVS2_FB=m |
Nanxin Qin | b916439 | 2017-06-09 15:52:28 +0800 | [diff] [blame] | 35 | |
| 36 | define copy-media-modules |
| 37 | $(foreach m, $(shell find $(strip $(1)) -name "*.ko"),\ |
| 38 | $(shell cp $(m) $(strip $(2)) -rfa)) |
| 39 | endef |
| 40 | |
Tellen Yu | 8abe69e | 2018-02-08 17:22:14 +0800 | [diff] [blame] | 41 | ifneq (,$(TOP)) |
| 42 | KDIR := $(shell pwd)/$(PRODUCT_OUT)/obj/KERNEL_OBJ/ |
Nanxin Qin | b916439 | 2017-06-09 15:52:28 +0800 | [diff] [blame] | 43 | |
Tellen Yu | 8abe69e | 2018-02-08 17:22:14 +0800 | [diff] [blame] | 44 | MEDIA_DRIVERS := $(TOP)/hardware/amlogic/media_modules/drivers |
Nanxin Qin | b916439 | 2017-06-09 15:52:28 +0800 | [diff] [blame] | 45 | ifeq (,$(wildcard $(MEDIA_DRIVERS))) |
| 46 | $(error No find the dir of drivers.) |
| 47 | endif |
| 48 | |
| 49 | INCLUDE := $(MEDIA_DRIVERS)/include |
| 50 | ifeq (,$(wildcard $(INCLUDE))) |
| 51 | $(error No find the dir of include.) |
| 52 | endif |
| 53 | |
Tellen Yu | 8abe69e | 2018-02-08 17:22:14 +0800 | [diff] [blame] | 54 | MEDIA_MODULES := $(shell pwd)/$(PRODUCT_OUT)/obj/media_modules |
Nanxin Qin | b916439 | 2017-06-09 15:52:28 +0800 | [diff] [blame] | 55 | ifeq (,$(wildcard $(MEDIA_MODULES))) |
| 56 | $(shell mkdir $(MEDIA_MODULES) -p) |
| 57 | endif |
| 58 | |
Tellen Yu | 8abe69e | 2018-02-08 17:22:14 +0800 | [diff] [blame] | 59 | MODS_OUT := $(shell pwd)/$(PRODUCT_OUT)/obj/lib_vendor |
Nanxin Qin | 2bdceca | 2017-09-15 15:27:28 +0800 | [diff] [blame] | 60 | ifeq (,$(wildcard $(MODS_OUT))) |
| 61 | $(shell mkdir $(MODS_OUT) -p) |
Xindong Xu | d06e9fd | 2017-06-13 15:45:22 +0800 | [diff] [blame] | 62 | endif |
Nanxin Qin | b916439 | 2017-06-09 15:52:28 +0800 | [diff] [blame] | 63 | |
Tellen Yu | 8abe69e | 2018-02-08 17:22:14 +0800 | [diff] [blame] | 64 | UCODE_OUT := $(shell pwd)/$(PRODUCT_OUT)/$(TARGET_COPY_OUT_VENDOR)/lib/firmware/video |
Nanxin Qin | 687fbdf | 2017-08-18 12:08:25 +0800 | [diff] [blame] | 65 | ifeq (,$(wildcard $(UCODE_OUT))) |
| 66 | $(shell mkdir $(UCODE_OUT) -p) |
| 67 | endif |
| 68 | |
| 69 | $(shell cp $(MEDIA_DRIVERS)/../firmware/* $(UCODE_OUT) -rfa) |
Nanxin Qin | b916439 | 2017-06-09 15:52:28 +0800 | [diff] [blame] | 70 | $(shell cp $(MEDIA_DRIVERS)/* $(MEDIA_MODULES) -rfa) |
| 71 | |
| 72 | define media-modules |
Jinping Wang | dd00533 | 2020-03-07 11:27:01 +0800 | [diff] [blame] | 73 | PATH=$(KERNEL_TOOLPATHS):$$PATH \ |
| 74 | $(MAKE) -C $(KDIR) M=$(MEDIA_MODULES) $(KERNEL_ARGS) $(CONFIGS) \ |
| 75 | "EXTRA_CFLAGS+=-I$(INCLUDE) -Wno-error" modules; \ |
| 76 | find $(MEDIA_MODULES) -name "*.ko" | PATH=$$(cd ./$(TARGET_HOST_TOOL_PATH); pwd):$$PATH xargs -i cp {} $(MODS_OUT) |
Nanxin Qin | b916439 | 2017-06-09 15:52:28 +0800 | [diff] [blame] | 77 | endef |
| 78 | |
| 79 | else |
| 80 | KDIR := $(PWD)/kernel |
| 81 | ifeq (,$(wildcard $(KDIR))) |
| 82 | $(error No find the dir of kernel.) |
| 83 | endif |
| 84 | |
| 85 | MEDIA_DRIVERS := $(PWD)/media_modules/drivers |
| 86 | ifeq (,$(wildcard $(MEDIA_DRIVERS))) |
| 87 | $(error No find the dir of drivers.) |
| 88 | endif |
| 89 | |
| 90 | INCLUDE := $(MEDIA_DRIVERS)/include |
| 91 | ifeq (,$(wildcard $(INCLUDE))) |
| 92 | $(error No find the dir of include.) |
| 93 | endif |
| 94 | |
| 95 | MODS_OUT ?= $(MEDIA_DRIVERS)/../modules |
| 96 | ifeq (,$(wildcard $(MODS_OUT))) |
| 97 | $(shell mkdir $(MODS_OUT) -p) |
| 98 | endif |
| 99 | |
Nanxin Qin | b916439 | 2017-06-09 15:52:28 +0800 | [diff] [blame] | 100 | modules: |
Jinping Wang | dd00533 | 2020-03-07 11:27:01 +0800 | [diff] [blame] | 101 | CCACHE_NODIRECT="true" PATH=$(KERNEL_TOOLPATHS):$$PATH \ |
Nanxin Qin | deb35d4 | 2020-04-02 15:32:33 +0800 | [diff] [blame] | 102 | $(MAKE) -C $(KDIR) M=$(MEDIA_DRIVERS) ARCH=$(KERNEL_ARCH) $(KERNEL_ARGS) $(CONFIGS) \ |
Jinping Wang | dd00533 | 2020-03-07 11:27:01 +0800 | [diff] [blame] | 103 | EXTRA_CFLAGS+=-I$(INCLUDE) -j64 |
Nanxin Qin | b916439 | 2017-06-09 15:52:28 +0800 | [diff] [blame] | 104 | |
| 105 | copy-modules: |
| 106 | @echo "start copying media modules." |
Xindong Xu | d06e9fd | 2017-06-13 15:45:22 +0800 | [diff] [blame] | 107 | mkdir -p $(MODS_OUT) |
Nanxin Qin | b916439 | 2017-06-09 15:52:28 +0800 | [diff] [blame] | 108 | $(call copy-media-modules, $(MEDIA_DRIVERS), $(MODS_OUT)) |
| 109 | |
| 110 | all: modules copy-modules |
| 111 | |
Jinping Wang | dd00533 | 2020-03-07 11:27:01 +0800 | [diff] [blame] | 112 | |
Nanxin Qin | b916439 | 2017-06-09 15:52:28 +0800 | [diff] [blame] | 113 | clean: |
Jinping Wang | dd00533 | 2020-03-07 11:27:01 +0800 | [diff] [blame] | 114 | PATH=$(KERNEL_TOOLPATHS):$$PATH \ |
| 115 | $(MAKE) -C $(KDIR) M=$(MEDIA_DRIVERS) $(KERNEL_ARGS) clean |
Nanxin Qin | b916439 | 2017-06-09 15:52:28 +0800 | [diff] [blame] | 116 | |
| 117 | endif |