From 97586506bbe6318946d9554c17ea6379327dfbd8 Mon Sep 17 00:00:00 2001 From: Kai Hsieh Date: Thu, 14 Nov 2024 08:51:17 +0000 Subject: [PATCH] Revert^2 "Add GIA (Google Input interface Abstraction laye..." Revert submission 30378113-revert-29512389-gia-PMLMEKURMT Reason for revert: Revert to fix the issue that GIA cannot be started in caimen-next-userdbg Reverted changes: /q/submissionid:30378113-revert-29512389-gia-PMLMEKURMT Bug: 367881686 Change-Id: Iecc4738c10dfe244bea02611f1926a9f6264a46c --- input/gia/aidl/compatibility_matrix.xml | 10 ++++++++++ input/gia/aidl/manifest.xml | 10 ++++++++++ input/gia/gia.mk | 11 +++++++++++ input/gia/sepolicy/attributes | 2 ++ input/gia/sepolicy/file_contexts | 2 ++ input/gia/sepolicy/gia.te | 18 ++++++++++++++++++ input/gia/sepolicy/hal_gia.te | 8 ++++++++ input/gia/sepolicy/service.te | 2 ++ input/gia/sepolicy/service_contexts | 2 ++ 9 files changed, 65 insertions(+) create mode 100644 input/gia/aidl/compatibility_matrix.xml create mode 100644 input/gia/aidl/manifest.xml create mode 100644 input/gia/gia.mk create mode 100644 input/gia/sepolicy/attributes create mode 100644 input/gia/sepolicy/file_contexts create mode 100644 input/gia/sepolicy/gia.te create mode 100644 input/gia/sepolicy/hal_gia.te create mode 100644 input/gia/sepolicy/service.te create mode 100644 input/gia/sepolicy/service_contexts diff --git a/input/gia/aidl/compatibility_matrix.xml b/input/gia/aidl/compatibility_matrix.xml new file mode 100644 index 0000000..1a348ea --- /dev/null +++ b/input/gia/aidl/compatibility_matrix.xml @@ -0,0 +1,10 @@ + + + com.google.input.gia.core + + IGiaService + default + + 1 + + \ No newline at end of file diff --git a/input/gia/aidl/manifest.xml b/input/gia/aidl/manifest.xml new file mode 100644 index 0000000..98303c8 --- /dev/null +++ b/input/gia/aidl/manifest.xml @@ -0,0 +1,10 @@ + + + com.google.input.gia.core + + IGiaService + default + + 1 + + \ No newline at end of file diff --git a/input/gia/gia.mk b/input/gia/gia.mk new file mode 100644 index 0000000..ea079ca --- /dev/null +++ b/input/gia/gia.mk @@ -0,0 +1,11 @@ +BOARD_VENDOR_SEPOLICY_DIRS += device/google/gs-common/input/gia/sepolicy + +PRODUCT_PACKAGES += gia +PRODUCT_PACKAGES += com.google.input.gia.giaservicemanager + +PRODUCT_SOONG_NAMESPACES += vendor/google/interfaces +PRODUCT_SOONG_NAMESPACES += vendor/google/input/gia/core +PRODUCT_SOONG_NAMESPACES += vendor/google/input/gia/core-servicemanager + +DEVICE_MANIFEST_FILE += device/google/gs-common/input/gia/aidl/manifest.xml +DEVICE_PRODUCT_COMPATIBILITY_MATRIX_FILE += device/google/gs-common/input/gia/aidl/compatibility_matrix.xml diff --git a/input/gia/sepolicy/attributes b/input/gia/sepolicy/attributes new file mode 100644 index 0000000..1d61ad3 --- /dev/null +++ b/input/gia/sepolicy/attributes @@ -0,0 +1,2 @@ +# This macro produces: define hal_gia, hal_gia_client, hal_gia_server +hal_attribute(gia) diff --git a/input/gia/sepolicy/file_contexts b/input/gia/sepolicy/file_contexts new file mode 100644 index 0000000..99d6857 --- /dev/null +++ b/input/gia/sepolicy/file_contexts @@ -0,0 +1,2 @@ +# chmod +x in SEPolicy language +/vendor/bin/gia u:object_r:gia_exec:s0 diff --git a/input/gia/sepolicy/gia.te b/input/gia/sepolicy/gia.te new file mode 100644 index 0000000..2c84e7c --- /dev/null +++ b/input/gia/sepolicy/gia.te @@ -0,0 +1,18 @@ +# SEPolicies for GIA (Google Input interface Abstraction layer) +type gia, domain; +type gia_exec, exec_type, vendor_file_type, file_type; + +# Macro transferring gia_exec to the gia domain +init_daemon_domain(gia) + +# let this domain use the hal service +hal_client_domain(gia, hal_gia) +# allow binder communication with service_manager +binder_use(gia) + +# let this domain serve the hal service +hal_server_domain(gia, hal_gia) + +# allow gia for accessing touch related system file-nodes +allow gia sysfs_touch_gti:dir r_dir_perms; +allow gia sysfs_touch_gti:file rw_file_perms; diff --git a/input/gia/sepolicy/hal_gia.te b/input/gia/sepolicy/hal_gia.te new file mode 100644 index 0000000..b75c9fb --- /dev/null +++ b/input/gia/sepolicy/hal_gia.te @@ -0,0 +1,8 @@ +# allow binder connection from client to server +binder_call(hal_gia_client, hal_gia_server) + +# allow client to find the service & allow server to register the service +hal_attribute_service(hal_gia, hal_gia_service) + +# allow binder communication from server to service_manager +binder_use(hal_gia_server) diff --git a/input/gia/sepolicy/service.te b/input/gia/sepolicy/service.te new file mode 100644 index 0000000..aed1135 --- /dev/null +++ b/input/gia/sepolicy/service.te @@ -0,0 +1,2 @@ +# Declares GIA related services +type hal_gia_service, hal_service_type, protected_service, service_manager_type; diff --git a/input/gia/sepolicy/service_contexts b/input/gia/sepolicy/service_contexts new file mode 100644 index 0000000..b1773ec --- /dev/null +++ b/input/gia/sepolicy/service_contexts @@ -0,0 +1,2 @@ +# Attaches GIA services to the cooresponding SEPolicy group +com.google.input.gia.core.IGiaService/default u:object_r:hal_gia_service:s0