Restore MSM CHRE daemon support
Requires chre_daemon_dsp_library to be set in devices pointing
to either libadsprpc or libsdsprpc library
Test: m -j chre_daemon_msm
Change-Id: Ia9800c1246290d1967cd56e6ddd5002884ffcef9
diff --git a/Android.bp b/Android.bp
index 1e0cfda..c5a866a 100644
--- a/Android.bp
+++ b/Android.bp
@@ -1226,6 +1226,47 @@
init_rc: ["host/exynos/chre_daemon_exynos.rc"],
}
+cc_binary {
+ name: "chre_daemon_msm",
+ cpp_std: "c++20",
+ defaults: ["chre_daemon_common"],
+ soc_specific: true,
+ include_dirs: [
+ "external/fastrpc/inc",
+ ],
+ local_include_dirs: [
+ "host/msm/daemon",
+ "platform/slpi/include",
+ ],
+ cflags: select(soong_config_variable("chre", "chre_daemon_load_into_sensorspd"), {
+ true: ["-DCHRE_DAEMON_LOAD_INTO_SENSORSPD"],
+ default: [],
+ }) + select(soong_config_variable("chre", "chre_daemon_lpma_enabled"), {
+ true: ["-DCHRE_DAEMON_LPMA_ENABLED"],
+ default: [],
+ }),
+ srcs: [
+ "host/msm/daemon/fastrpc_daemon.cc",
+ "host/msm/daemon/generated/chre_slpi_stub.c",
+ "host/msm/daemon/main.cc",
+ ],
+ static_libs: [
+ "pw_detokenizer",
+ "pw_polyfill",
+ "pw_span",
+ "pw_varint",
+ ],
+ shared_libs: [
+ "android.hardware.soundtrigger@2.0",
+ "libhidlbase",
+ "libpower",
+ ] + select(soong_config_variable("chre", "chre_daemon_dsp_library"), {
+ any @ flag_val: [flag_val],
+ default: [],
+ }),
+ init_rc: ["host/msm/chre_daemon_msm.rc"],
+}
+
java_library_static {
name: "chre_api_test_proto_java_lite",
host_supported: true,
diff --git a/doc/porting_guide.md b/doc/porting_guide.md
index 7fa4345..0bd1241 100644
--- a/doc/porting_guide.md
+++ b/doc/porting_guide.md
@@ -335,7 +335,7 @@
the following CHRE daemon build targets to your PRODUCT_PACKAGES as you did the
generic HAL above.
-Qualcomm target: `chre`\
+Qualcomm target: `chre_daemon_msm`\
Exynos target: `chre_daemon_exynos`\
MediaTek target: `TBD`
diff --git a/chre_daemon.rc b/host/msm/chre_daemon_msm.rc
similarity index 93%
rename from chre_daemon.rc
rename to host/msm/chre_daemon_msm.rc
index 58bf3d9..5de2552 100644
--- a/chre_daemon.rc
+++ b/host/msm/chre_daemon_msm.rc
@@ -17,7 +17,7 @@
on post-fs-data
mkdir /data/vendor/chre 0770 context_hub context_hub
-service vendor.chre /vendor/bin/chre
+service vendor.chre /vendor/bin/chre_daemon_msm
class late_start
user context_hub
group wakelock context_hub