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 \ |
| 24 | CONFIG_AMLOGIC_MEDIA_ENHANCEMENT_DOLBYVISION=y \ |
| 25 | CONFIG_AMLOGIC_MEDIA_GE2D=y \ |
| 26 | CONFIG_AMLOGIC_MEDIA_VENC_MULTI=m \ |
| 27 | CONFIG_AMLOGIC_MEDIA_VENC_JPEG=m |
Nanxin Qin | b916439 | 2017-06-09 15:52:28 +0800 | [diff] [blame] | 28 | |
| 29 | define copy-media-modules |
| 30 | $(foreach m, $(shell find $(strip $(1)) -name "*.ko"),\ |
| 31 | $(shell cp $(m) $(strip $(2)) -rfa)) |
| 32 | endef |
| 33 | |
Tellen Yu | 8abe69e | 2018-02-08 17:22:14 +0800 | [diff] [blame] | 34 | ifneq (,$(TOP)) |
| 35 | KDIR := $(shell pwd)/$(PRODUCT_OUT)/obj/KERNEL_OBJ/ |
Nanxin Qin | b916439 | 2017-06-09 15:52:28 +0800 | [diff] [blame] | 36 | |
Tellen Yu | 8abe69e | 2018-02-08 17:22:14 +0800 | [diff] [blame] | 37 | MEDIA_DRIVERS := $(TOP)/hardware/amlogic/media_modules/drivers |
Nanxin Qin | b916439 | 2017-06-09 15:52:28 +0800 | [diff] [blame] | 38 | ifeq (,$(wildcard $(MEDIA_DRIVERS))) |
| 39 | $(error No find the dir of drivers.) |
| 40 | endif |
| 41 | |
| 42 | INCLUDE := $(MEDIA_DRIVERS)/include |
| 43 | ifeq (,$(wildcard $(INCLUDE))) |
| 44 | $(error No find the dir of include.) |
| 45 | endif |
| 46 | |
Tellen Yu | 8abe69e | 2018-02-08 17:22:14 +0800 | [diff] [blame] | 47 | MEDIA_MODULES := $(shell pwd)/$(PRODUCT_OUT)/obj/media_modules |
Nanxin Qin | b916439 | 2017-06-09 15:52:28 +0800 | [diff] [blame] | 48 | ifeq (,$(wildcard $(MEDIA_MODULES))) |
| 49 | $(shell mkdir $(MEDIA_MODULES) -p) |
| 50 | endif |
| 51 | |
Tellen Yu | 8abe69e | 2018-02-08 17:22:14 +0800 | [diff] [blame] | 52 | MODS_OUT := $(shell pwd)/$(PRODUCT_OUT)/obj/lib_vendor |
Nanxin Qin | 2bdceca | 2017-09-15 15:27:28 +0800 | [diff] [blame] | 53 | ifeq (,$(wildcard $(MODS_OUT))) |
| 54 | $(shell mkdir $(MODS_OUT) -p) |
Xindong Xu | d06e9fd | 2017-06-13 15:45:22 +0800 | [diff] [blame] | 55 | endif |
Nanxin Qin | b916439 | 2017-06-09 15:52:28 +0800 | [diff] [blame] | 56 | |
Tellen Yu | 8abe69e | 2018-02-08 17:22:14 +0800 | [diff] [blame] | 57 | 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] | 58 | ifeq (,$(wildcard $(UCODE_OUT))) |
| 59 | $(shell mkdir $(UCODE_OUT) -p) |
| 60 | endif |
| 61 | |
| 62 | $(shell cp $(MEDIA_DRIVERS)/../firmware/* $(UCODE_OUT) -rfa) |
Nanxin Qin | b916439 | 2017-06-09 15:52:28 +0800 | [diff] [blame] | 63 | $(shell cp $(MEDIA_DRIVERS)/* $(MEDIA_MODULES) -rfa) |
| 64 | |
| 65 | define media-modules |
Jinping Wang | dd00533 | 2020-03-07 11:27:01 +0800 | [diff] [blame] | 66 | PATH=$(KERNEL_TOOLPATHS):$$PATH \ |
| 67 | $(MAKE) -C $(KDIR) M=$(MEDIA_MODULES) $(KERNEL_ARGS) $(CONFIGS) \ |
| 68 | "EXTRA_CFLAGS+=-I$(INCLUDE) -Wno-error" modules; \ |
| 69 | 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] | 70 | endef |
| 71 | |
| 72 | else |
| 73 | KDIR := $(PWD)/kernel |
| 74 | ifeq (,$(wildcard $(KDIR))) |
| 75 | $(error No find the dir of kernel.) |
| 76 | endif |
| 77 | |
| 78 | MEDIA_DRIVERS := $(PWD)/media_modules/drivers |
| 79 | ifeq (,$(wildcard $(MEDIA_DRIVERS))) |
| 80 | $(error No find the dir of drivers.) |
| 81 | endif |
| 82 | |
| 83 | INCLUDE := $(MEDIA_DRIVERS)/include |
| 84 | ifeq (,$(wildcard $(INCLUDE))) |
| 85 | $(error No find the dir of include.) |
| 86 | endif |
| 87 | |
| 88 | MODS_OUT ?= $(MEDIA_DRIVERS)/../modules |
| 89 | ifeq (,$(wildcard $(MODS_OUT))) |
| 90 | $(shell mkdir $(MODS_OUT) -p) |
| 91 | endif |
| 92 | |
Nanxin Qin | b916439 | 2017-06-09 15:52:28 +0800 | [diff] [blame] | 93 | modules: |
Jinping Wang | dd00533 | 2020-03-07 11:27:01 +0800 | [diff] [blame] | 94 | CCACHE_NODIRECT="true" PATH=$(KERNEL_TOOLPATHS):$$PATH \ |
Nanxin Qin | deb35d4 | 2020-04-02 15:32:33 +0800 | [diff] [blame^] | 95 | $(MAKE) -C $(KDIR) M=$(MEDIA_DRIVERS) ARCH=$(KERNEL_ARCH) $(KERNEL_ARGS) $(CONFIGS) \ |
Jinping Wang | dd00533 | 2020-03-07 11:27:01 +0800 | [diff] [blame] | 96 | EXTRA_CFLAGS+=-I$(INCLUDE) -j64 |
Nanxin Qin | b916439 | 2017-06-09 15:52:28 +0800 | [diff] [blame] | 97 | |
| 98 | copy-modules: |
| 99 | @echo "start copying media modules." |
Xindong Xu | d06e9fd | 2017-06-13 15:45:22 +0800 | [diff] [blame] | 100 | mkdir -p $(MODS_OUT) |
Nanxin Qin | b916439 | 2017-06-09 15:52:28 +0800 | [diff] [blame] | 101 | $(call copy-media-modules, $(MEDIA_DRIVERS), $(MODS_OUT)) |
| 102 | |
| 103 | all: modules copy-modules |
| 104 | |
Jinping Wang | dd00533 | 2020-03-07 11:27:01 +0800 | [diff] [blame] | 105 | |
Nanxin Qin | b916439 | 2017-06-09 15:52:28 +0800 | [diff] [blame] | 106 | clean: |
Jinping Wang | dd00533 | 2020-03-07 11:27:01 +0800 | [diff] [blame] | 107 | PATH=$(KERNEL_TOOLPATHS):$$PATH \ |
| 108 | $(MAKE) -C $(KDIR) M=$(MEDIA_DRIVERS) $(KERNEL_ARGS) clean |
Nanxin Qin | b916439 | 2017-06-09 15:52:28 +0800 | [diff] [blame] | 109 | |
| 110 | endif |