author | Tellen Yu <tellen.yu@amlogic.com> | 2019-05-06 08:29:26 (GMT) |
---|---|---|
committer | Xiaoliang Wang <xiaoliang.wang@amlogic.com> | 2019-05-14 09:48:05 (GMT) |
commit | 28f3dfb1b0a70178babd03b38d678a968fa942dd (patch) | |
tree | ce3f4d8726e8b536be52e5190eac0393d47749d9 | |
parent | 170b7a309faa68d614302a5e98cfab00b518e7a0 (diff) | |
download | common-28f3dfb1b0a70178babd03b38d678a968fa942dd.zip common-28f3dfb1b0a70178babd03b38d678a968fa942dd.tar.gz common-28f3dfb1b0a70178babd03b38d678a968fa942dd.tar.bz2 |
common: sync code from openlinux tree [1/5]
PD#SWPL-8126
Problem:
openlinux cherry-picked some CLs from mainline. and fixed some bugs.
For example, S905D3 is only enabled 2 CPUs. fastboot flash issues.etc.
Solution:
sync code from openlinux tree
Verify:
verify in on franklin and fermi
Change-Id: I797f048dafa04dfe96bbf82834fa2ea9e82864b1
Signed-off-by: Xiaoliang Wang <xiaoliang.wang@amlogic.com>
31 files changed, 334 insertions, 39 deletions
diff --git a/arm_isp_modules.mk b/arm_isp_modules.mk new file mode 100755 index 0000000..d04c034 --- a/dev/null +++ b/arm_isp_modules.mk @@ -0,0 +1,31 @@ +MODS_OUT := $(shell pwd)/$(PRODUCT_OUT)/obj/lib_vendor +ARM_ISP_MODULES := $(shell pwd)/$(PRODUCT_OUT)/obj/arm_isp_modules + + +$(shell rm $(ARM_ISP_MODULES) -rf) +$(shell mkdir $(ARM_ISP_MODULES) -p) +ARM_ISP_DRIVERS := $(TOP)/vendor/amlogic/common/arm_isp/driver/linux/kernel +$(shell cp $(ARM_ISP_DRIVERS)/* $(ARM_ISP_MODULES) -rfa) + +BOARD_VENDOR_KERNEL_MODULES += $(PRODUCT_OUT)/obj/lib_vendor/iv009_isp.ko +BOARD_VENDOR_KERNEL_MODULES += $(PRODUCT_OUT)/obj/lib_vendor/iv009_isp_iq.ko +BOARD_VENDOR_KERNEL_MODULES += $(PRODUCT_OUT)/obj/lib_vendor/iv009_isp_lens.ko +BOARD_VENDOR_KERNEL_MODULES += $(PRODUCT_OUT)/obj/lib_vendor/iv009_isp_sensor.ko + +KDIR := $(shell pwd)/$(PRODUCT_OUT)/obj/KERNEL_OBJ + +define arm_isp-modules + $(MAKE) -C $(KDIR) M=$(ARM_ISP_MODULES)/v4l2_dev \ + ARCH=$(KERNEL_ARCH) CROSS_COMPILE=$(PREFIX_CROSS_COMPILE) modules + + $(MAKE) -C $(KDIR) M=$(ARM_ISP_MODULES)/subdev/iq \ + ARCH=$(KERNEL_ARCH) CROSS_COMPILE=$(PREFIX_CROSS_COMPILE) modules + + $(MAKE) -C $(KDIR) M=$(ARM_ISP_MODULES)/subdev/lens \ + ARCH=$(KERNEL_ARCH) CROSS_COMPILE=$(PREFIX_CROSS_COMPILE) modules + + $(MAKE) -C $(KDIR) M=$(ARM_ISP_MODULES)/subdev/sensor \ + ARCH=$(KERNEL_ARCH) CROSS_COMPILE=$(PREFIX_CROSS_COMPILE) modules + + find $(ARM_ISP_MODULES) -name *.ko | xargs -i cp {} ${MODS_OUT} +endef @@ -42,7 +42,9 @@ PRODUCT_PACKAGES += \ #soft_adec_libs := $(shell ls hardware/amlogic/LibAudio/amadec/acodec_lib_android_n) #PRODUCT_COPY_FILES += $(foreach file, $(soft_adec_libs), \ # hardware/amlogic/LibAudio/amadec/acodec_lib_android_n/$(file):$(TARGET_COPY_OUT_VENDOR)/lib/$(file)) - +#audio dra decoder lib, now put libstagefrighthw dir for develop omx dra verion in future. +PRODUCT_COPY_FILES += \ + vendor/amlogic/common/prebuilt/libstagefrighthw/lib/libdra.so:$(TARGET_COPY_OUT_VENDOR)/lib/libdra.so #configurable audio policy USE_XML_AUDIO_POLICY_CONF := 1 diff --git a/core_amlogic.mk b/core_amlogic.mk index dbb7aa4..0772f51 100755 --- a/core_amlogic.mk +++ b/core_amlogic.mk @@ -184,7 +184,6 @@ endif ifeq ($(TARGET_BUILD_LIVETV), true) PRODUCT_PACKAGES += \ libjnidtvepgscanner \ - LiveTv \ libtunertvinput_jni endif @@ -258,6 +257,7 @@ PRODUCT_PACKAGES += libomx_av_core_alt \ libOmxAudio \ libHwAudio_dcvdec \ libHwAudio_dtshd \ + libdra \ libthreadworker_alt \ libdatachunkqueue_alt \ libOmxBase \ @@ -367,13 +367,19 @@ endef #define aml-secureboot-sign-bootloader define aml-secureboot-sign-kernel @echo -----aml-secureboot-sign-kernel V3------ $(hide) mv -f $(1) $(basename $(1)) - bash $(PRODUCT_SBV3_SIGIMG_TOOL) $(basename $(1)) $(PRODUCT_AML_SECUREBOOT_RSAKEY_DIR) $(1) + bash $(PRODUCT_SBV3_SIGIMG_TOOL) -i $(basename $(1)) \ + -k $(PRODUCT_AML_SECUREBOOT_RSAKEY_DIR)/kernelkey.pem \ + -a $(PRODUCT_AML_SECUREBOOT_RSAKEY_DIR)/kernelaeskey \ + --iv $(PRODUCT_AML_SECUREBOOT_RSAKEY_DIR)/kernelaesiv -o $(1) @echo ----- Made aml secure-boot singed kernel v3: $(1) -------- endef #define aml-secureboot-sign-kernel define aml-secureboot-sign-bin @echo -----aml-secureboot-sign-bin v3------ $(hide) mv -f $(1) $(basename $(1)) - bash $(PRODUCT_SBV3_SIGIMG_TOOL) $(basename $(1)) $(PRODUCT_AML_SECUREBOOT_RSAKEY_DIR) $(1) + bash $(PRODUCT_SBV3_SIGIMG_TOOL) -i $(basename $(1)) \ + -k $(PRODUCT_AML_SECUREBOOT_RSAKEY_DIR)/kernelkey.pem \ + -a $(PRODUCT_AML_SECUREBOOT_RSAKEY_DIR)/kernelaeskey \ + --iv $(PRODUCT_AML_SECUREBOOT_RSAKEY_DIR)/kernelaesiv -o $(1) @echo ----- Made aml secure-boot singed bin v3: $(1) -------- endef #define aml-secureboot-sign-bin else #follows secureboot v2 diff --git a/init.amlogic.media.rc b/init.amlogic.media.rc index b13eade..008fde8 100755 --- a/init.amlogic.media.rc +++ b/init.amlogic.media.rc @@ -24,11 +24,6 @@ on fs insmod /vendor/lib/modules/encoder.ko insmod /vendor/lib/modules/vpu.ko - -on property:vendor.media.sync.limit=1 - write /sys/module/amvideo/parameters/omx_pts_interval_lower "-2200" - write /sys/module/amvideo/parameters/omx_pts_interval_upper "4500" - service tee_preload_fw /vendor/bin/tee_preload_fw class core user root @@ -54,6 +54,10 @@ ifeq ($(TARGET_WITH_MEDIA_EXT_LEVEL), 4) TARGET_WITH_SWCODEC_EXT := true TARGET_WITH_CODEC_EXT := true TARGET_WITH_PLAYERS_EXT := true +#add our private retriever extension +#only can open for customer do no use cts +#defult do not open it + #TARGET_WITH_RETRIEVER_EXT := true endif endif endif @@ -103,7 +107,10 @@ TARGET_WITH_AMNUPLAYER :=true endif - +ifeq ($(TARGET_WITH_RETRIEVER_EXT), true) +PRODUCT_PACKAGES += \ + libmetadataretriever_ext +endif ######################################################################### # @@ -282,6 +289,21 @@ PRODUCT_PACKAGES += \ tee_preload_fw \ 526fc4fc-7ee6-4a12-96e3-83da9565bce8 endif + +ifeq ($(BOARD_BUILD_VMX_DRM),true) +#for drmplayer vmx +PRODUCT_PACKAGES += libam_adp_adec \ + libamadec_system \ + libamavutils_sys \ + libfaad_sys \ + libmad_sys \ + libDrmPlayer\ + libdrmp\ + libdec_ca\ + 41fe9859-71e4-4bf4-bbaad71435b127ae\ + libdec_ca_vmx_iptv\ + libdec_ca_vmx_web +endif #BOARD_SECCOMP_POLICY := device/amlogic/common/seccomp PRODUCT_COPY_FILES += \ device/amlogic/common/seccomp/mediaextractor.policy:$(TARGET_COPY_OUT_VENDOR)/etc/seccomp_policy/mediaextractor.policy \ diff --git a/npu_modules.mk b/npu_modules.mk new file mode 100755 index 0000000..14a112d --- a/dev/null +++ b/npu_modules.mk @@ -0,0 +1,125 @@ +ifeq ($(KERNEL_A32_SUPPORT), true) +KERNEL_ARCH := arm +else +KERNEL_ARCH := arm64 +endif + +MODS_OUT := $(shell pwd)/$(PRODUCT_OUT)/obj/lib_vendor +KDIR := $(shell pwd)/$(PRODUCT_OUT)/obj/KERNEL_OBJ/ +NPU_MODULES := $(shell pwd)/$(PRODUCT_OUT)/obj/npu_modules + +VIVANTE_ENABLE_3D ?= 1 +VIVANTE_ENABLE_2D ?= 0 +VIVANTE_ENABLE_VG ?= 0 +VIVANTE_ENABLE_DRM ?= 0 +NO_DMA_COHERENT ?= 0 +CACHE_FUNCTION_UNIMPLEMENTED ?= 0 +USE_BANK_ALIGNMENT ?= 0 +BANK_BIT_START ?= 0 +BANK_BIT_END ?= 0 +BANK_CHANNEL_BIT ?= 0 +SECURITY ?= 0 +USE_OPENCL ?= 1 +USE_OPENVX ?= 1 +USE_VXC_BINARY ?=1 +GPU_CONFIG ?=vipnanoqi_pid0x7d +VIVANTE_ENABLE_3D ?=1 +VIVANTE_ENABLE_2D ?=0 +VIVANTE_ENABLE_VG ?=0 +VIVANTE_ENABLE_DRM ?=0 +SOC_PLATFORM ?= amlogic + +EXTRA_CFLAGS1 += -DLINUX -DDRIVER + +ifeq ($(FLAREON),1) +EXTRA_CFLAGS1 += -DFLAREON +endif + +EXTRA_CFLAGS1 += -DDBG=0 + + +ifeq ($(NO_DMA_COHERENT),1) +EXTRA_CFLAGS1 += -DNO_DMA_COHERENT +endif + +ifeq ($(CONFIG_DOVE_GPU),1) +EXTRA_CFLAGS1 += -D CONFIG_DOVE_GPU=1 +endif + +ifneq ($(USE_PLATFORM_DRIVER),0) +EXTRA_CFLAGS1 += -D USE_PLATFORM_DRIVER=1 +else +EXTRA_CFLAGS1 += -D USE_PLATFORM_DRIVER=0 +endif + +EXTRA_CFLAGS1 += -D VIVANTE_PROFILER=1 +EXTRA_CFLAGS1 += -D VIVANTE_PROFILER_CONTEXT=1 + +ifeq ($(ENABLE_GPU_CLOCK_BY_DRIVER),1) +EXTRA_CFLAGS1 += -D ENABLE_GPU_CLOCK_BY_DRIVER=1 +else +EXTRA_CFLAGS1 += -D ENABLE_GPU_CLOCK_BY_DRIVER=0 +endif + +ifeq ($(USE_NEW_LINUX_SIGNAL),1) +EXTRA_CFLAGS1 += -D USE_NEW_LINUX_SIGNAL=1 +else +EXTRA_CFLAGS1 += -D USE_NEW_LINUX_SIGNAL=0 +endif + +ifeq ($(USE_LINUX_PCIE),1) +EXTRA_CFLAGS1 += -D USE_LINUX_PCIE=1 +else +EXTRA_CFLAGS1 += -D USE_LINUX_PCIE=0 +endif + +ifeq ($(CACHE_FUNCTION_UNIMPLEMENTED),1) +EXTRA_CFLAGS1 += -D gcdCACHE_FUNCTION_UNIMPLEMENTED=1 +else +EXTRA_CFLAGS1 += -D gcdCACHE_FUNCTION_UNIMPLEMENTED=0 +endif + +EXTRA_CFLAGS1 += -D gcdENABLE_3D=1 +EXTRA_CFLAGS1 += -D gcdENABLE_2D=0 +EXTRA_CFLAGS1 += -D gcdENABLE_VG=0 + +ifeq ($(USE_BANK_ALIGNMENT),1) + EXTRA_CFLAGS += -DgcdENABLE_BANK_ALIGNMENT=1 + ifneq ($(BANK_BIT_START),0) + ifneq ($(BANK_BIT_END),0) + EXTRA_CFLAGS1 += -D gcdBANK_BIT_START=$(BANK_BIT_START) + EXTRA_CFLAGS1 += -D gcdBANK_BIT_END=$(BANK_BIT_END) + endif + endif + + ifneq ($(BANK_CHANNEL_BIT),0) + EXTRA_CFLAGS1 += -D gcdBANK_CHANNEL_BIT=$(BANK_CHANNEL_BIT) + endif +endif + +ifeq ($(FPGA_BUILD),1) +EXTRA_CFLAGS1 += -D gcdFPGA_BUILD=1 +else +EXTRA_CFLAGS1 += -D gcdFPGA_BUILD=0 +endif + +ifeq ($(SECURITY),1) +EXTRA_CFLAGS1 += -D gcdSECURITY=1 +endif + +ifeq ($(VIVANTE_ENABLE_DRM),1) +EXTRA_CFLAGS1 += -D gcdENABLE_DRM=1 +else +EXTRA_CFLAGS1 += -D gcdENABLE_DRM=0 +endif +EXTRA_CFLAGS1 += -D gcdLINUX_SYNC_FILE=1 + +$(shell mkdir $(NPU_MODULES) -p) +NPU_DRIVERS := $(TOP)/vendor/amlogic/common/npu/hal +$(shell cp $(NPU_DRIVERS)/* $(NPU_MODULES) -rfa) + +define npu-modules + @$(MAKE) -C $(KDIR) M=$(NPU_MODULES) ARCH=$(KERNEL_ARCH) \ + CROSS_COMPILE=$(PREFIX_CROSS_COMPILE) modules; \ + find $(NPU_MODULES) -name "*.ko" | xargs -i cp {} $(MODS_OUT) +endef
\ No newline at end of file diff --git a/products/mbox/init.amlogic.system.rc b/products/mbox/init.amlogic.system.rc index 9250b79..d64982a 100755 --- a/products/mbox/init.amlogic.system.rc +++ b/products/mbox/init.amlogic.system.rc @@ -136,11 +136,25 @@ on boot chown media system /sys/class/ppmgr/ppscaler_rect chown media system /sys/class/ppmgr/vtarget + chmod 666 /sys/module/decoder_common/parameters/force_nosecure_even_drm + chown media system /sys/module/decoder_common/parameters/force_nosecure_even_drm chown media system /sys/class/amaudio/audio_channels_mask chown media system /sys/class/amaudio/enable_resample chown media system /sys/class/amaudio/resample_type chown system mediadrm /sys/class/amaudio/debug + chmod 666 /sys/class/astream/format + chown media audio /sys/class/astream/format + chmod 666 /sys/class/astream/addr_offset + chown media audio /sys/class/astream/addr_offset + chmod 666 /sys/class/astream/astream-dev/uio0/maps/map0/addr + chown media audio /sys/class/astream/astream-dev/uio0/maps/map0/addr + chmod 666 /sys/class/astream/astream-dev/uio0/maps/map0/size + chown media audio /sys/class/astream/astream-dev/uio0/maps/map0/size + chmod 666 /sys/class/astream/astream-dev/uio0/maps/map0/offset + chown media audio /sys/class/astream/astream-dev/uio0/maps/map0/offset + chmod 666 /sys/class/dmx/demux0_scramble + chown media system /sys/class/dmx/demux0_scramble chown system system /sys/class/audiodsp/digital_raw chown system system /sys/class/audiodsp/ac3_drc_control chown media system /sys/class/audiodsp/dts_dec_control @@ -214,6 +228,8 @@ on boot chmod 0666 /dev/dvb0.dvr0 chmod 0666 /dev/dvb0.dvr1 chmod 0666 /dev/dvb0.dvr2 + chmod 0666 /dev/dvb0.ca0 + chmod 0666 /dev/dvb0.ca1 write /sys/module/stream_input/parameters/def_vstreambuf_sizeM 10 write /sys/module/stream_input/parameters/def_4k_vstreambuf_sizeM 15 @@ -225,10 +241,16 @@ on boot chown media system /dev/dvb0.dvr0 chown media system /dev/dvb0.dvr1 chown media system /dev/dvb0.dvr2 + chown media system /dev/dvb0.ca0 + chown media system /dev/dvb0.ca1 chown media system /sys/class/stb/demux0_source chown media system /sys/class/stb/demux1_source chown media system /sys/class/stb/demux2_source + chown media system /sys/class/stb/dsc0_source + chown media system /sys/class/stb/dsc0_free_dscs + chown media system /sys/class/stb/dsc1_source + chown media system /sys/class/stb/dsc1_free_dscs chown media system /sys/class/stb/source chown media system /sys/class/stb/asyncfifo0_source chown media system /sys/class/stb/asyncfifo1_source @@ -425,9 +447,6 @@ on property:ro.debuggable=1 on property:vendor.sys.mtkbtdriver=true insmod /vendor/lib/modules/btmtksdio.ko -on property:vendor.sys.mtkbtdriver=false - rmmod btmtksdio - service remotecfg /vendor/bin/remotecfg /vendor/etc/remote.conf class main oneshot diff --git a/products/mbox/product_mbox.mk b/products/mbox/product_mbox.mk index 37b17a2..40fbe35 100755 --- a/products/mbox/product_mbox.mk +++ b/products/mbox/product_mbox.mk @@ -152,4 +152,6 @@ DISPLAY_BUILD_NUMBER := true #BOX project,set omx to video layer PRODUCT_PROPERTY_OVERRIDES += \ - media.omx.display_mode=1
\ No newline at end of file + media.omx.display_mode=1 + +BOARD_HAVE_CEC_HIDL_SERVICE := true diff --git a/products/mbox/ueventd.amlogic.rc b/products/mbox/ueventd.amlogic.rc index 174e1ff..a7b76e2 100755 --- a/products/mbox/ueventd.amlogic.rc +++ b/products/mbox/ueventd.amlogic.rc @@ -41,6 +41,9 @@ /dev/amsubtitle 0660 media system /dev/jpegenc 0660 media system /dev/videosync 0660 media system +/dev/ac_sbuf0 0660 system camera +/dev/ac_isp4uf 0660 system camera + #audio data /dev/audio_data_debug 0660 mediacodec audio diff --git a/products/tv/product_tv.mk b/products/tv/product_tv.mk index 9755597..36cbdf4 100755 --- a/products/tv/product_tv.mk +++ b/products/tv/product_tv.mk @@ -76,6 +76,11 @@ PRODUCT_PACKAGES += \ PRODUCT_PACKAGES += \ OTAUpgrade +ifeq ($(BUILD_WITH_MIRACAST), true) +PRODUCT_PACKAGES += \ + Miracast +endif + #Tvsettings PRODUCT_PACKAGES += \ TvSettings \ diff --git a/sepolicy/file.te b/sepolicy/file.te index 9474956..0d99c9e 100644 --- a/sepolicy/file.te +++ b/sepolicy/file.te @@ -48,6 +48,8 @@ type tee_droid_data_file, file_type, data_file_type, core_data_file_type; type optee_file, file_type, data_file_type, core_data_file_type; type sysfs_cec, fs_type, sysfs_type; type sysfs_display, fs_type, sysfs_type; +type sysfs_stb, fs_type, sysfs_type; +type sysfs_vdec, fs_type, sysfs_type; type sysfs_lcd, fs_type, sysfs_type; type sysfs_rdma, fs_type, sysfs_type; type sysfs_am_vecm, fs_type, sysfs_type; @@ -75,7 +77,7 @@ type sysfs_unifykey, fs_type, sysfs_type; type sysfs_block_ahead, fs_type, sysfs_type; type wifi_socket, file_type, data_file_type, core_data_file_type; -type hdcp_file, file_type, data_file_type, core_data_file_type; +type hdcp_file, file_type, data_file_type; #for app jni lib type app_jni_lib_file, vendor_file_type, file_type; diff --git a/sepolicy/file_contexts b/sepolicy/file_contexts index cc27eae..8d8cd04 100644..100755 --- a/sepolicy/file_contexts +++ b/sepolicy/file_contexts @@ -6,7 +6,7 @@ /data/droidota(/.*)? u:object_r:update_data_file:s0 /data/vendor/btmic(/.*)? u:object_r:btmic_data_file:s0 /data/misc/wifi/sockets u:object_r:wifi_socket:s0 -/data/misc/hdcp u:object_r:hdcp_file:s0 +/data/vendor/hdcp(/.*)? u:object_r:hdcp_file:s0 /dev/amaudio_.* u:object_r:audio_device:s0 /dev/amaudio2_out u:object_r:audio_device:s0 @@ -24,6 +24,8 @@ /dev/amstream_sub_read u:object_r:subtitle_device:s0 /dev/avin_detect u:object_r:avin_device:s0 /dev/videosync u:object_r:video_device:s0 +/dev/ac_sbuf0 u:object_r:video_device:s0 +/dev/ac_isp4uf u:object_r:video_device:s0 /dev/unifykeys u:object_r:unify_device:s0 @@ -127,13 +129,21 @@ /sys/class/tsync/enable u:object_r:sysfs_video:s0 /sys/class/audiodsp/digital_raw u:object_r:sysfs_audio:s0 /sys/class/amaudio/debug u:object_r:sysfs_audio:s0 -/sys/class/hidraw(/.*)? u:object_r:sysfs_audio:s0 +/sys/class/amaudio/mute_unmute u:object_r:sysfs_audio:s0 +/sys/class/astream/addr_offset u:object_r:sysfs_audio:s0 +/sys/class/astream/format u:object_r:sysfs_audio:s0 +/sys/class/astream/astream-dev/uio0/maps/map0(/.*)? u:object_r:sysfs_audio:s0 +/sys/devices/virtual/astream/astream-dev/uio0/maps/map0(/.*)? u:object_r:sysfs_audio:s0 +/sys/class/dmx/demux0_scramble u:object_r:sysfs_audio:s0 /sys/class/tsync/firstapts u:object_r:sysfs_xbmc:s0 /sys/class/tsync/pts_audio u:object_r:sysfs_xbmc:s0 /sys/class/tsync/pts_video u:object_r:sysfs_xbmc:s0 /sys/class/tsync/event u:object_r:sysfs_xbmc:s0 /sys/class/tsync/pts_pcrscr u:object_r:sysfs_xbmc:s0 - +/sys/class/tsync/firstvpts u:object_r:sysfs_xbmc:s0 +/sys/class/tsync/mode u:object_r:sysfs_xbmc:s0 +/sys/class/tsync/checkin_firstapts u:object_r:sysfs_xbmc:s0 +/sys/class/tsync/checkin_firstvpts u:object_r:sysfs_xbmc:s0 /sys/devices/virtual/amhdmitx/amhdmitx0(/.*)? u:object_r:sysfs_amhdmitx:s0 /sys/class/audiodsp/digital_codec u:object_r:sysfs_digital_codec:s0 @@ -192,9 +202,9 @@ /sys/module/amvdec_h265/parameters/double_write_mode u:object_r:sysfs_amvdec:s0 /sys/devices/virtual/remote/amremote(/.*)? u:object_r:sysfs_remote:s0 - +/sys/class/stb(/.*)? u:object_r:sysfs_stb:s0 +/sys/module/decoder_common/parameters/force_nosecure_even_drm u:object_r:sysfs_vdec:s0 /sys/devices/virtual/amhdmitx/amhdmitx0/hdmi_audio/state u:object_r:sysfs_hdmi:s0 -/sys/devices/virtual/amhdmitx/amhdmitx0/hdmi/state u:object_r:sysfs_hdmi:s0 /sys/devices/virtual/thermal/thermal_zone0/mode u:object_r:sysfs_display:s0 /sys/devices/platform/aml_pm/suspend_reason u:object_r:sysfs_pm:s0 @@ -259,6 +269,8 @@ #/vendor/bin/wlan_fwloader u:object_r:wlan_fwloader_exec:s0 /vendor/xbin/bcmdl u:object_r:bcmdl_exec:s0 +/vendor/bin/miracast_hdcp2 u:object_r:miracast_hdcp2_exec:s0 + ## keylayout is vendor config file! must update! /(vendor|system/vendor)/usr/keylayout(/.*)? u:object_r:vendor_configs_file:s0 diff --git a/sepolicy/hal_audio_default.te b/sepolicy/hal_audio_default.te index ec83dba..512f4ec 100644..100755 --- a/sepolicy/hal_audio_default.te +++ b/sepolicy/hal_audio_default.te @@ -22,23 +22,12 @@ allow hal_audio_default sysfs_aud_output_chs:file { open read write }; allow hal_audio_default sysfs_aud_output_chs:file { read write open }; allow hal_audio_default remotecontrol_hwservice:hwservice_manager find; allow hal_audio_default sysfs:file { open read write }; +allow hal_audio_default device:dir read; allow hal_audio_default uio_device:chr_file { open read write }; allow hal_audio_default system_app:binder call; allow hal_audio_default tv_prop:file { read getattr open }; allow hal_audio_default hidraw_audio_device:chr_file { create read write open ioctl}; -allow hal_audio_default sysfs_audio:file rw_file_perms; -allow hal_audio_default sysfs_audio:dir r_dir_perms; allow hal_audio_default device:dir {read open}; allow hal_audio_default btmic_data_file:dir {write read open add_name search}; allow hal_audio_default btmic_data_file:file {write open create}; -#[SEI-zhaopf-2018-12-18]add for hbg remote { -allow hal_audio_default sysfs:dir { open read }; -allow hal_audio_default vendor_data_file:dir { add_name remove_name write }; -allow hal_audio_default vendor_data_file:lnk_file { read }; -allow hal_audio_default vendor_data_file:file { create read open setattr unlink}; -#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 }; -#[SEI-zhaopf-2018-12-18]add for hbg remote } - diff --git a/sepolicy/hal_camera_default.te b/sepolicy/hal_camera_default.te index cd52269..422a6f2 100755 --- a/sepolicy/hal_camera_default.te +++ b/sepolicy/hal_camera_default.te @@ -3,3 +3,5 @@ allow hal_camera_default hal_camera_default:netlink_kobject_uevent_socket { crea allow hal_camera_default vndbinder_device:chr_file { read write open ioctl }; allow hal_camera_default hal_graphics_mapper_hwservice:hwservice_manager find; + +allow hal_camera_default video_device:chr_file { read write open }; diff --git a/sepolicy/hwservice.te b/sepolicy/hwservice.te index 27188b0..be7a72b 100755 --- a/sepolicy/hwservice.te +++ b/sepolicy/hwservice.te @@ -4,3 +4,4 @@ type droidvold_hwservice, hwservice_manager_type; type tvserver_hwservice, hwservice_manager_type; type remotecontrol_hwservice, hwservice_manager_type; type imageserver_hwservice, hwservice_manager_type; +type miracast_hdcp2_hwservice, hwservice_manager_type; diff --git a/sepolicy/hwservice_contexts b/sepolicy/hwservice_contexts index 9daa08b..8a19e0b 100755 --- a/sepolicy/hwservice_contexts +++ b/sepolicy/hwservice_contexts @@ -4,3 +4,4 @@ vendor.amlogic.hardware.droidvold::IDroidVold u:object_r:dr vendor.amlogic.hardware.tvserver::ITvServer u:object_r:tvserver_hwservice:s0 vendor.amlogic.hardware.remotecontrol::IRemoteControl u:object_r:remotecontrol_hwservice:s0 vendor.amlogic.hardware.imageserver::IImageService u:object_r:imageserver_hwservice:s0 +vendor.amlogic.hardware.miracast_hdcp2::IHDCPService u:object_r:miracast_hdcp2_hwservice:s0 diff --git a/sepolicy/hwservicemanager.te b/sepolicy/hwservicemanager.te index 65bc9f8..932ce53 100755 --- a/sepolicy/hwservicemanager.te +++ b/sepolicy/hwservicemanager.te @@ -22,3 +22,8 @@ allow hwservicemanager imageserver:binder { call transfer }; allow hwservicemanager imageserver:dir { search }; allow hwservicemanager imageserver:file { read open }; allow hwservicemanager imageserver:process { getattr }; + +allow hwservicemanager miracast_hdcp2:binder { call transfer }; +allow hwservicemanager miracast_hdcp2:dir { search }; +allow hwservicemanager miracast_hdcp2:file { read open }; +allow hwservicemanager miracast_hdcp2:process { getattr }; diff --git a/sepolicy/mediaserver.te b/sepolicy/mediaserver.te index 91f43d1..366d204 100644 --- a/sepolicy/mediaserver.te +++ b/sepolicy/mediaserver.te @@ -14,4 +14,24 @@ get_prop(mediaserver, vendor_platform_prop) allow mediaserver bootanim:binder { call transfer }; allow mediaserver bootanim:fd use; allow mediaserver system_data_file:file { read getattr }; - +allow mediaserver miracast_hdcp2_hwservice:hwservice_manager { find }; +# For interfacing with miracast hdcp2 HAL +allow mediaserver miracast_hdcp2_hwservice:hwservice_manager find; +allow mediaserver miracast_hdcp2:binder { call transfer }; +allow mediaserver sysfs_video:dir { search }; +allow mediaserver sysfs_display:file { open read getattr}; +allow mediaserver drm_device:chr_file {ioctl open read write}; +allow mediaserver sysfs_xbmc:file {write open read getattr}; +allow mediaserver sysfs_audio_cap:file {open read}; +allow mediaserver sysfs_amhdmitx:dir {search}; +allow mediaserver sysfs_stb:file { read open write getattr}; +allow mediaserver sysfs_stb:dir {search}; +allow mediaserver dvb_device:chr_file { open read write ioctl }; +allow mediaserver sysfs_vdec:file {read write open getattr}; +allow mediaserver tv_prop:file {open read getattr}; +allow mediaserver mediaserver:netlink_kobject_uevent_socket {create setopt bind read}; +allow mediaserver proc_version:file {open read getattr}; +allow mediaserver uio_device:chr_file { open read write }; +allow mediaserver sysfs_audio:dir {search}; +allow mediaserver sysfs_audio:lnk_file {read}; +allow mediaserver self:udp_socket { ioctl read}; diff --git a/sepolicy/miracast_hdcp2.te b/sepolicy/miracast_hdcp2.te new file mode 100755 index 0000000..9d89e1f --- a/dev/null +++ b/sepolicy/miracast_hdcp2.te @@ -0,0 +1,31 @@ +type miracast_hdcp2, domain; +type miracast_hdcp2_exec, exec_type, vendor_file_type, file_type; + +init_daemon_domain(miracast_hdcp2) +net_domain(miracast_hdcp2) + +allow miracast_hdcp2 unify_device:chr_file { ioctl open read write }; +allow miracast_hdcp2 sysfs_unifykey:dir { search }; +allow miracast_hdcp2 sysfs_unifykey:file { read write open getattr }; + +allow miracast_hdcp2 drm_device:chr_file { read open write ioctl }; + +allow miracast_hdcp2 hwservicemanager:binder { call transfer }; +allow miracast_hdcp2 hwservicemanager_prop:file { open read getattr }; +allow miracast_hdcp2 hwservicemanager_prop:file { open read getattr }; +allow miracast_hdcp2 { miracast_hdcp2_hwservice hidl_base_hwservice }:hwservice_manager { add }; + +allow miracast_hdcp2 miracast_hdcp2:tcp_socket { create read write setopt bind listen connect }; +allow miracast_hdcp2 port:tcp_socket { name_bind name_connect }; +allow miracast_hdcp2 node:tcp_socket { node_bind }; +allow miracast_hdcp2 miracast_hdcp2:capability { net_raw }; +allow miracast_hdcp2 fwmarkd_socket:sock_file { write }; +allow miracast_hdcp2 netd:unix_stream_socket { connectto }; + +allow miracast_hdcp2 hdcp_file:file { read open write getattr create unlink rename }; +allow miracast_hdcp2 hdcp_file:dir { read open write getattr create search add_name remove_name rmdir}; +allow miracast_hdcp2 vendor_data_file:dir { read open getattr search write add_name create }; +allow miracast_hdcp2 vendor_data_file:file { read open write getattr create unlink rename append }; +allow miracast_hdcp2 system_app:binder { transfer call }; +allow miracast_hdcp2 media_prop:file { read getattr open }; +allow miracast_hdcp2 mediaserver:binder{ transfer call };
\ No newline at end of file diff --git a/sepolicy/netd.te b/sepolicy/netd.te index d948f03..777fe9b 100755 --- a/sepolicy/netd.te +++ b/sepolicy/netd.te @@ -9,3 +9,7 @@ allow netd proc_net:file { create }; allow netd rootfs:lnk_file { getattr }; allow netd self:capability sys_nice; + +#for vmx +allow netd tee:fd { use }; +allow netd tee:tcp_socket { read write setopt getopt }; diff --git a/sepolicy/property.te b/sepolicy/property.te index 5a32adb..121fd35 100755 --- a/sepolicy/property.te +++ b/sepolicy/property.te @@ -11,3 +11,4 @@ type vendor_persist_prop, property_type; type vendor_app_prop, property_type; type atv_prop, property_type; type net_pppoe_prop, property_type; +type miracast_prop, property_type; diff --git a/sepolicy/property_contexts b/sepolicy/property_contexts index f9e5e44..050191c 100644..100755 --- a/sepolicy/property_contexts +++ b/sepolicy/property_contexts @@ -27,3 +27,4 @@ vendor.sys u:object_r:vendor_platform_prop:s0 ro.vendor.app u:object_r:vendor_app_prop:s0 atv. u:object_r:atv_prop:s0 ro.net.pppoe u:object_r:net_pppoe_prop:s0 +persist.miracast.hdcp2 u:object_r:miracast_prop:s0 diff --git a/sepolicy/service.te b/sepolicy/service.te index 010ffc8..09ea8ac 100755 --- a/sepolicy/service.te +++ b/sepolicy/service.te @@ -8,3 +8,4 @@ type screenmediasource_service, service_manager_type; type tee_service, service_manager_type; type droidmount_service, service_manager_type; type bcmdl_service, service_manager_type; +type miracast_hdcp2_service, service_manager_type; diff --git a/sepolicy/service_contexts b/sepolicy/service_contexts index 1e94f44..a68db11 100755 --- a/sepolicy/service_contexts +++ b/sepolicy/service_contexts @@ -9,3 +9,4 @@ tee_supplicant u:object_r:tee_service:s0 tv_remote u:object_r:tv_remote_service:s0 droidmount u:object_r:droidmount_service:s0 bcmdl u:object_r:bcmdl_service:s0 +miracast_hdcp2 u:object_r:miracast_hdcp2_service:s0 diff --git a/sepolicy/system_app.te b/sepolicy/system_app.te index 46fa0cc..c9fd6fe 100644 --- a/sepolicy/system_app.te +++ b/sepolicy/system_app.te @@ -36,7 +36,7 @@ allow system_app fuseblk:file create_file_perms; allow system_app sysfs_di:dir search; allow system_app sysfs_video:dir search; -allow system_app sysfs_video:file { getattr open read }; +allow system_app sysfs_video:file { getattr open read write }; allow system_app sysfs_clock:file { getattr open read }; @@ -75,3 +75,8 @@ allow system_app sysfs_xbmc:file rw_file_perms; allow system_app subtitle_device:chr_file rw_file_perms; allow system_app debugfs_mali:dir search; +#allow system_app media_prop:property_service { set }; + +allow system_app miracast_hdcp2_hwservice:hwservice_manager { find }; +allow system_app miracast_hdcp2:binder { call transfer }; +allow system_app miracast_prop:file { read open getattr }; diff --git a/sepolicy/system_server.te b/sepolicy/system_server.te index 2396525..f1d77bb 100644..100755 --- a/sepolicy/system_server.te +++ b/sepolicy/system_server.te @@ -27,10 +27,8 @@ allow system_server wifi_data_file:dir rw_dir_perms; allow system_server wifi_data_file:file { read create }; allow system_server sysfs:file { getattr }; -allow system_server sysfs:dir r_dir_perms; allow system_server sysfs_rtc:file { read write open getattr }; -r_dir_file(system_server, sysfs_hdmi) allow system_server sysfs_hdmi:file { read write open getattr }; allow system_server sysfs_display:lnk_file { read write open getattr }; diff --git a/sepolicy/tee.te b/sepolicy/tee.te index 1a6775e..8dfa6fa 100755 --- a/sepolicy/tee.te +++ b/sepolicy/tee.te @@ -1,5 +1,7 @@ allow tee self:capability { sys_rawio }; allow tee sysfs_xbmc:file { read open }; +allow tee sysfs_video:file { write }; +allow tee sysfs_audio:file { write }; allow tee block_device:dir { open read search}; allow tee sda_block_device:blk_file { read open write ioctl }; allow tee drm_device:chr_file { read open write ioctl }; @@ -18,3 +20,13 @@ allow tee unlabeled:file { open read rename write }; allow tee hidraw_device:chr_file { create read open write ioctl }; allow tee vendor_file:file { read open getattr execute }; allow tee param_tv_file:dir { search }; + +#for vmx +net_domain(tee) +allow tee tee_data_file:lnk_file { read open }; +allow tee self:capability { net_raw }; +allow tee node:tcp_socket { node_bind }; +allow tee self:tcp_socket { bind create read write listen accept getopt }; +allow tee port:tcp_socket { name_bind } ; +allow tee fwmarkd_socket:sock_file { write } ; +allow tee netd:unix_stream_socket { connectto } ; diff --git a/sepolicy/untrusted_app.te b/sepolicy/untrusted_app.te index 01369d5..9653e15 100644..100755 --- a/sepolicy/untrusted_app.te +++ b/sepolicy/untrusted_app.te @@ -7,4 +7,3 @@ allow untrusted_app vendor_file:file { read open getattr }; allow untrusted_app debugfs_mali:dir search; get_prop(untrusted_app, netflix_prop) -get_prop(untrusted_app_27, netflix_prop) diff --git a/sepolicy/vendor_init.te b/sepolicy/vendor_init.te index 5a83f01..ab6fa66 100755 --- a/sepolicy/vendor_init.te +++ b/sepolicy/vendor_init.te @@ -41,3 +41,4 @@ set_prop(vendor_init, vold_prop) set_prop(vendor_init, config_prop) set_prop(vendor_init, atv_prop) set_prop(vendor_init, net_pppoe_prop) +set_prop(vendor_init, miracast_prop) diff --git a/software.mk b/software.mk index ba5a9d5..4d80c64 100755 --- a/software.mk +++ b/software.mk @@ -34,8 +34,7 @@ endif PRODUCT_PROPERTY_OVERRIDES += \ persist.sys.app.rotation=original \ - media.amplayer.widevineenable=true \ - vendor.media.sync.limit=1 + media.amplayer.widevineenable=true #WITH_DEXPREOPT := true #WITH_DEXPREOPT_PIC := true |