From 60811b3df453289c23d7ab305f978a9f11bf78bf Mon Sep 17 00:00:00 2001 From: Daniel Jacob Chittoor Date: Sat, 18 Sep 2021 11:53:00 +0200 Subject: [PATCH] tri-state-key: Add support for system variants * SDM845 family of OnePlus devices on LineageOS use a prebuilt vendor. Change-Id: I0bbb1ac2d97e49fcc2aa5d78138ae97cf6b536b8 --- tri-state-key/Android.bp | 21 ++++++++++++++++---- tri-state-key/tri-state-key_daemon.rc | 4 ++-- tri-state-key/vendor.tri-state-key_daemon.rc | 10 ++++++++++ 3 files changed, 29 insertions(+), 6 deletions(-) create mode 100644 tri-state-key/vendor.tri-state-key_daemon.rc diff --git a/tri-state-key/Android.bp b/tri-state-key/Android.bp index 687199e..4b8c6b9 100644 --- a/tri-state-key/Android.bp +++ b/tri-state-key/Android.bp @@ -13,9 +13,9 @@ // See the License for the specific language governing permissions and // limitations under the License. -cc_binary { - name: "tri-state-key_daemon", - init_rc: ["tri-state-key_daemon.rc"], +cc_defaults { + name: "tri-state-key_defaults", + stem: "tri-state-key_daemon", srcs: [ "main.cpp", "uevent_listener.cpp", @@ -24,7 +24,6 @@ cc_binary { "-Wall", "-Werror", ], - vendor: true, shared_libs: [ "libbase", "liblog", @@ -32,3 +31,17 @@ cc_binary { "libutils", ], } + +cc_binary { + name: "tri-state-key_daemon", + defaults: ["tri-state-key_defaults"], + init_rc: ["tri-state-key_daemon.rc"], + system_ext_specific: true, +} + +cc_binary { + name: "tri-state-key_daemon.vendor", + defaults: ["tri-state-key_defaults"], + init_rc: ["vendor.tri-state-key_daemon.rc"], + vendor: true, +} diff --git a/tri-state-key/tri-state-key_daemon.rc b/tri-state-key/tri-state-key_daemon.rc index c29dbc1..cb2ad35 100644 --- a/tri-state-key/tri-state-key_daemon.rc +++ b/tri-state-key/tri-state-key_daemon.rc @@ -2,9 +2,9 @@ on fs chown system system /sys/devices/platform/soc/soc:tri_state_key/hall_data_calib chown system system /mnt/vendor/persist/engineermode/tri_state_hall_data - start vendor.tri-state-key_daemon + start tri-state-key_daemon -service vendor.tri-state-key_daemon /vendor/bin/tri-state-key_daemon +service tri-state-key_daemon /system_ext/bin/tri-state-key_daemon class late_start user system group system uhid diff --git a/tri-state-key/vendor.tri-state-key_daemon.rc b/tri-state-key/vendor.tri-state-key_daemon.rc new file mode 100644 index 0000000..c29dbc1 --- /dev/null +++ b/tri-state-key/vendor.tri-state-key_daemon.rc @@ -0,0 +1,10 @@ +on fs + chown system system /sys/devices/platform/soc/soc:tri_state_key/hall_data_calib + chown system system /mnt/vendor/persist/engineermode/tri_state_hall_data + + start vendor.tri-state-key_daemon + +service vendor.tri-state-key_daemon /vendor/bin/tri-state-key_daemon + class late_start + user system + group system uhid