summaryrefslogtreecommitdiff
authorJian Wang <jian.wang@amlogic.com>2020-09-28 10:42:49 (GMT)
committer gerrit autosubmit <gerrit.autosubmit@aml-code-master.amlogic.com>2020-11-30 11:15:48 (GMT)
commitcb07c8be629cf61adf9536109c8dc94ad3da03be (patch)
tree0a975ba5406850b49eec4923629d9a25f3d3adea
parent29165cd76a00fe303c024574c1cba1cbd10126e7 (diff)
downloadcommon-cb07c8be629cf61adf9536109c8dc94ad3da03be.zip
common-cb07c8be629cf61adf9536109c8dc94ad3da03be.tar.gz
common-cb07c8be629cf61adf9536109c8dc94ad3da03be.tar.bz2
media: add mediasync and tunnelrenderer [2/4]
SWPL-27398 Problem: new feature for tunnel mode use videotunnel and mediasync Solution: 1. add medisync ko 2. modify uvm chmod for videotunnel alloc uvm buf 3. selinux add mediasync device for audio hal and mediacodec 4. add libmediahal_mediasync and libmediahal_tunnelrenderer Verify: newton-ac214 Signed-off-by: Jian Wang <jian.wang@amlogic.com> Change-Id: If81e757c19f6548a5f1ae465c4ea26e8d714279e
Diffstat
-rw-r--r--initscripts/init.amlogic.media.rc1
-rw-r--r--initscripts/ueventd.amlogic.rc1
-rw-r--r--media.mk9
-rw-r--r--media_modules.mk1
-rw-r--r--sepolicy/device.te1
-rw-r--r--sepolicy/file_contexts1
-rw-r--r--sepolicy/hal_audio_default.te1
-rw-r--r--sepolicy/mediacodec.te1
8 files changed, 16 insertions, 0 deletions
diff --git a/initscripts/init.amlogic.media.rc b/initscripts/init.amlogic.media.rc
index de6a89d..5ba30b9 100644
--- a/initscripts/init.amlogic.media.rc
+++ b/initscripts/init.amlogic.media.rc
@@ -40,4 +40,5 @@ on fs
insmod /vendor/lib/modules/amlogic_fbc_lib.ko
insmod /vendor/lib/modules/amvdec_mavs.ko
insmod /vendor/lib/modules/amvdec_av1.ko
+ insmod /vendor/lib/modules/media_sync.ko
diff --git a/initscripts/ueventd.amlogic.rc b/initscripts/ueventd.amlogic.rc
index 1d1a120..286dadf 100644
--- a/initscripts/ueventd.amlogic.rc
+++ b/initscripts/ueventd.amlogic.rc
@@ -43,6 +43,7 @@
/dev/amsubtitle 0660 media system
/dev/jpegenc 0660 media system
/dev/videosync 0666 media system
+/dev/mediasync 0666 media system
/dev/ac_sbuf0 0660 system camera
/dev/ac_isp4uf 0660 system camera
diff --git a/media.mk b/media.mk
index 97109b6..d151c72 100644
--- a/media.mk
+++ b/media.mk
@@ -96,6 +96,15 @@ PRODUCT_PACKAGES += \
libmediahal_videodec\
libmediahal_videodec.system\
+#mediahal_mediasync
+PRODUCT_PACKAGES += \
+ libmediahal_mediasync\
+ libmediahal_mediasync.system\
+
+#mediahal_tunnelrenderer
+PRODUCT_PACKAGES += \
+ libmediahal_tunnelrenderer\
+
#codec ext related.
#
ifeq ($(TARGET_WITH_CODEC_EXT), true)
diff --git a/media_modules.mk b/media_modules.mk
index 976d7de..cc8e798 100644
--- a/media_modules.mk
+++ b/media_modules.mk
@@ -26,6 +26,7 @@ DEFAULT_MEDIA_KERNEL_MODULES := \
$(PRODUCT_OUT)/obj/lib_vendor/amvdec_mavs.ko \
$(PRODUCT_OUT)/obj/lib_vendor/amvdec_av1.ko \
$(PRODUCT_OUT)/obj/lib_vendor/video_framerate_adapter.ko
+ $(PRODUCT_OUT)/obj/lib_vendor/media_sync.ko
# define the module build depenency.
# actually, we implement it in module $(INTERMEDIATES_KERNEL)
diff --git a/sepolicy/device.te b/sepolicy/device.te
index 2e29824..67c7078 100644
--- a/sepolicy/device.te
+++ b/sepolicy/device.te
@@ -22,6 +22,7 @@ type avin_device, dev_type;
type hdmirx0_device, dev_type;
type amvideo_device, dev_type;
type codec_device, dev_type;
+type mediasync_device, dev_type;
type product_block_device, dev_type;
type dtbo_block_device, dev_type;
diff --git a/sepolicy/file_contexts b/sepolicy/file_contexts
index dbc0fd3..54517c8 100644
--- a/sepolicy/file_contexts
+++ b/sepolicy/file_contexts
@@ -29,6 +29,7 @@
/dev/avin_detect u:object_r:avin_device:s0
/dev/videosync u:object_r:video_device:s0
/dev/tsync u:object_r:video_device:s0
+/dev/mediasync u:object_r:mediasync_device:s0
/dev/unifykeys u:object_r:unify_device:s0
diff --git a/sepolicy/hal_audio_default.te b/sepolicy/hal_audio_default.te
index 387f47d..52496c1 100644
--- a/sepolicy/hal_audio_default.te
+++ b/sepolicy/hal_audio_default.te
@@ -41,6 +41,7 @@ allow hal_audio_default vendor_data_file:file { create read open setattr unlink}
allow hal_audio_default dvb_device:chr_file { open read write ioctl };
allow hal_audio_default frontend_device:chr_file { open read write ioctl };
allow hal_audio_default codec_device:chr_file { read write open ioctl };
+allow hal_audio_default mediasync_device:chr_file rw_file_perms;
#allow hal_audio_default hidraw_audio_device:chr_file { create read write open ioctl};
#allow hal_audio_default device:dir{ read };
#allow hal_audio_default default_prop:file{ read };
diff --git a/sepolicy/mediacodec.te b/sepolicy/mediacodec.te
index e350f1d..2fad415 100644
--- a/sepolicy/mediacodec.te
+++ b/sepolicy/mediacodec.te
@@ -12,6 +12,7 @@ allow mediacodec mediaserver:file { read open };
allow mediacodec video_device:chr_file rw_file_perms;
allow mediacodec vendor_video_device:chr_file rw_file_perms;
allow mediacodec codec_device:chr_file rw_file_perms;
+allow mediacodec mediasync_device:chr_file rw_file_perms;
allow mediacodec sysfs_video:file rw_file_perms;
allow mediacodec sysfs_video:dir r_dir_perms;