diff --git a/aoc/aoc.mk b/aoc/aoc.mk index 2eadb08..136bb42 100644 --- a/aoc/aoc.mk +++ b/aoc/aoc.mk @@ -1,7 +1,8 @@ BOARD_VENDOR_SEPOLICY_DIRS += device/google/gs-common/aoc/sepolicy PRODUCT_PACKAGES += dump_aoc \ - aocd + aocd \ + aocxd ifeq (,$(filter aosp_%,$(TARGET_PRODUCT))) # IAudioMetricExt HIDL @@ -23,4 +24,5 @@ PRODUCT_PACKAGES_DEBUG += \ aocdump \ aocutil \ aoc_audio_cfg \ - vp_util + vp_util \ + aocx_tool diff --git a/aoc/sepolicy/aocxd.te b/aoc/sepolicy/aocxd.te new file mode 100644 index 0000000..bd9396f --- /dev/null +++ b/aoc/sepolicy/aocxd.te @@ -0,0 +1,25 @@ +# aocxd server domain +type aocxd, domain; +type aocxd_exec, vendor_file_type, exec_type, file_type; +init_daemon_domain(aocxd) + +# sysfs operations +allow aocxd sysfs_aoc:dir search; + +# dev operations +allow aocxd aoc_device:chr_file rw_file_perms; + +# allow inotify to watch for additions/removals from /dev +allow aocxd device:dir r_dir_perms; + +# set properties +set_prop(aocxd, vendor_aoc_prop); + +# allow binder access +vndbinder_use(aocxd); + +# allow managing wakelocks +wakelock_use(aocxd); + +# add aocx service to the domain +add_service(aocxd, aocx); diff --git a/aoc/sepolicy/file_contexts b/aoc/sepolicy/file_contexts index 58edf2f..617b7b9 100644 --- a/aoc/sepolicy/file_contexts +++ b/aoc/sepolicy/file_contexts @@ -27,11 +27,13 @@ /dev/acd-audio_ap_offload_rx u:object_r:aoc_device:s0 /dev/acd-audio_ap_offload_tx u:object_r:aoc_device:s0 /dev/acd-mel_processor u:object_r:aoc_device:s0 +/dev/acd-aocx_control u:object_r:aoc_device:s0 # AoC vendor binaries /vendor/bin/aocd u:object_r:aocd_exec:s0 /vendor/bin/aocdump u:object_r:aocdump_exec:s0 /vendor/bin/dump/dump_aoc u:object_r:dump_aoc_exec:s0 +/vendor/bin/aocxd u:object_r:aocxd_exec:s0 # AoC audio files /vendor/etc/aoc(/.*)? u:object_r:aoc_audio_file:s0 diff --git a/aoc/sepolicy/vndservice.te b/aoc/sepolicy/vndservice.te new file mode 100644 index 0000000..01c2436 --- /dev/null +++ b/aoc/sepolicy/vndservice.te @@ -0,0 +1 @@ +type aocx, vndservice_manager_type; diff --git a/aoc/sepolicy/vndservice_contexts b/aoc/sepolicy/vndservice_contexts new file mode 100644 index 0000000..de31e51 --- /dev/null +++ b/aoc/sepolicy/vndservice_contexts @@ -0,0 +1 @@ +aocx.IAocx u:object_r:aocx:s0 diff --git a/audio/sepolicy/aidl/service.te b/audio/sepolicy/aidl/service.te index cbdc404..d931f16 100644 --- a/audio/sepolicy/aidl/service.te +++ b/audio/sepolicy/aidl/service.te @@ -1,3 +1,3 @@ # Audio type hal_audio_ext_service, hal_service_type, service_manager_type; -type hal_audio_parameter_parser_service, service_manager_type; +type hal_audio_parameter_parser_service, service_manager_type; \ No newline at end of file diff --git a/audio/sepolicy/aidl/service_contexts b/audio/sepolicy/aidl/service_contexts index c2b7716..7a7d61d 100644 --- a/audio/sepolicy/aidl/service_contexts +++ b/audio/sepolicy/aidl/service_contexts @@ -1,4 +1,3 @@ # Audio vendor.google.whitechapel.audio.extension.IAudioExtension/default u:object_r:hal_audio_ext_service:s0 -android.media.audio.IHalAdapterVendorExtension/default u:object_r:hal_audio_parameter_parser_service:s0 - +android.media.audio.IHalAdapterVendorExtension/default u:object_r:hal_audio_parameter_parser_service:s0 \ No newline at end of file diff --git a/audio/sepolicy/common/hal_audio_default.te b/audio/sepolicy/common/hal_audio_default.te index c69e339..bfe72b1 100644 --- a/audio/sepolicy/common/hal_audio_default.te +++ b/audio/sepolicy/common/hal_audio_default.te @@ -34,3 +34,7 @@ userdebug_or_eng(` ') wakelock_use(hal_audio_default); + +vndbinder_use(hal_audio_default); +allow hal_audio_default aocx:service_manager find; +binder_call(hal_audio_default, aocxd); diff --git a/touch/syna/Android.bp b/touch/syna/Android.bp index 769c76b..46475d8 100644 --- a/touch/syna/Android.bp +++ b/touch/syna/Android.bp @@ -5,7 +5,8 @@ package { sh_binary { name: "dump_syna.sh", src: "dump_syna.sh", - init_rc: ["init.touch.syna20.rc"], + init_rc: ["init.touch.syna.rc"], vendor: true, sub_dir: "dump", } + diff --git a/touch/syna/init.touch.syna.rc b/touch/syna/init.touch.syna.rc new file mode 100644 index 0000000..d52ed3b --- /dev/null +++ b/touch/syna/init.touch.syna.rc @@ -0,0 +1,5 @@ +on property:sys.boot_completed=1 + chown system system /sys/class/spi_master/spi19/spi19.0/synaptics_tcm.0/sysfs/get_raw_data + chown system system /sys/class/spi_master/spi19/spi19.0/synaptics_tcm.0/sysfs/force_active + chown system system /sys/class/spi_master/spi20/spi20.0/synaptics_tcm.0/sysfs/get_raw_data + chown system system /sys/class/spi_master/spi20/spi20.0/synaptics_tcm.0/sysfs/force_active diff --git a/touch/syna/init.touch.syna20.rc b/touch/syna/init.touch.syna20.rc deleted file mode 100644 index 7c83a6c..0000000 --- a/touch/syna/init.touch.syna20.rc +++ /dev/null @@ -1,3 +0,0 @@ -on property:vendor.device.modules.ready=1 - chown system system /sys/class/spi_master/spi20/spi20.0/synaptics_tcm.0/sysfs/get_raw_data - chown system system /sys/class/spi_master/spi20/spi20.0/synaptics_tcm.0/sysfs/force_active diff --git a/touch/syna/sepolicy/genfs_contexts b/touch/syna/sepolicy/genfs_contexts index c34d93c..1b32df8 100644 --- a/touch/syna/sepolicy/genfs_contexts +++ b/touch/syna/sepolicy/genfs_contexts @@ -1,3 +1,5 @@ genfscon sysfs /devices/platform/10d10000.spi/spi_master/spi0/spi0.0/synaptics_tcm.0/sysfs u:object_r:sysfs_touch:s0 +genfscon sysfs /devices/platform/111c0000.spi/spi_master/spi19/spi19.0/synaptics_tcm.0/sysfs u:object_r:sysfs_touch:s0 +genfscon sysfs /devices/platform/111c0000.spi/spi_master/spi19/spi19.0/synaptics_tcm.0/wakeup u:object_r:sysfs_wakeup:s0 genfscon sysfs /devices/platform/111d0000.spi/spi_master/spi20/spi20.0/synaptics_tcm.0/sysfs u:object_r:sysfs_touch:s0 genfscon sysfs /devices/platform/111d0000.spi/spi_master/spi20/spi20.0/synaptics_tcm.0/wakeup u:object_r:sysfs_wakeup:s0 diff --git a/touch/syna/syna0.mk b/touch/syna/syna0.mk index fe2b0c5..9e10d2a 100644 --- a/touch/syna/syna0.mk +++ b/touch/syna/syna0.mk @@ -1,4 +1,4 @@ -PRODUCT_VENDOR_PROPERTIES += ro.vendor.touch.dump.sys=/sys/devices/platform/10d10000.spi/spi_master/spi0/spi0.0/synaptics_tcm.0/sysfs +PRODUCT_VENDOR_PROPERTIES += ro.vendor.touch.dump.sys=/sys/class/spi_master/spi0/spi0.0/synaptics_tcm.0/sysfs BOARD_VENDOR_SEPOLICY_DIRS += device/google/gs-common/touch/syna/sepolicy diff --git a/touch/syna/syna19.mk b/touch/syna/syna19.mk new file mode 100644 index 0000000..45b053b --- /dev/null +++ b/touch/syna/syna19.mk @@ -0,0 +1,5 @@ +PRODUCT_VENDOR_PROPERTIES += ro.vendor.touch.dump.sys=/sys/class/spi_master/spi19/spi19.0/synaptics_tcm.0/sysfs + +BOARD_VENDOR_SEPOLICY_DIRS += device/google/gs-common/touch/syna/sepolicy + +PRODUCT_PACKAGES += dump_syna.sh diff --git a/touch/syna/syna20.mk b/touch/syna/syna20.mk index 600f1ff..f8c0251 100644 --- a/touch/syna/syna20.mk +++ b/touch/syna/syna20.mk @@ -1,4 +1,4 @@ -PRODUCT_VENDOR_PROPERTIES += ro.vendor.touch.dump.sys=/sys/devices/platform/111d0000.spi/spi_master/spi20/spi20.0/synaptics_tcm.0/sysfs +PRODUCT_VENDOR_PROPERTIES += ro.vendor.touch.dump.sys=/sys/class/spi_master/spi20/spi20.0/synaptics_tcm.0/sysfs BOARD_VENDOR_SEPOLICY_DIRS += device/google/gs-common/touch/syna/sepolicy