From f4ca138679224558ed7291c9a8d8c8425f308710 Mon Sep 17 00:00:00 2001 From: rwx1283129 Date: Thu, 9 Nov 2023 01:28:55 +0000 Subject: [PATCH 1/3] isolate the user/eng of miscdevice Signed-off-by: rwx1283129 Change-Id: Ic22e8dbe06f4b6699cca57632525cd0489804463 --- miscdevice.gni | 7 +++++++ services/miscdevice_service/BUILD.gn | 18 ++++++++++++++---- .../interface/src/light_hdi_connection.cpp | 4 ++++ .../interface/src/vibrator_hdi_connection.cpp | 4 ++++ 4 files changed, 29 insertions(+), 4 deletions(-) diff --git a/miscdevice.gni b/miscdevice.gni index a7f6ed3..9ad3317 100644 --- a/miscdevice.gni +++ b/miscdevice.gni @@ -37,3 +37,10 @@ if (!defined(global_parts_info) || } else { hdf_drivers_interface_light = false } + +if (build_variant == "eng") { + miscdevice_default_defines += [ "BUILD_VARIANT_ENG" ] + miscdevice_build_eng = true +} else { + miscdevice_build_eng = false +} diff --git a/services/miscdevice_service/BUILD.gn b/services/miscdevice_service/BUILD.gn index 021a591..b5b42e8 100644 --- a/services/miscdevice_service/BUILD.gn +++ b/services/miscdevice_service/BUILD.gn @@ -16,8 +16,6 @@ import("./../../miscdevice.gni") ohos_shared_library("libmiscdevice_service") { sources = [ - "hdi_connection/adapter/src/compatible_connection.cpp", - "hdi_connection/adapter/src/compatible_light_connection.cpp", "hdi_connection/adapter/src/hdi_connection.cpp", "hdi_connection/interface/src/light_hdi_connection.cpp", "hdi_connection/interface/src/vibrator_hdi_connection.cpp", @@ -38,6 +36,13 @@ ohos_shared_library("libmiscdevice_service") { "//third_party/cJSON", ] + if (miscdevice_build_eng) { + sources += [ + "hdi_connection/adapter/src/compatible_connection.cpp", + "hdi_connection/adapter/src/compatible_light_connection.cpp", + ] + } + sanitize = { cfi = true cfi_cross_dso = true @@ -84,8 +89,6 @@ ohos_shared_library("libmiscdevice_service") { ############################################################################# ohos_shared_library("libmiscdevice_service_static") { sources = [ - "hdi_connection/adapter/src/compatible_connection.cpp", - "hdi_connection/adapter/src/compatible_light_connection.cpp", "hdi_connection/adapter/src/hdi_connection.cpp", "hdi_connection/interface/src/light_hdi_connection.cpp", "hdi_connection/interface/src/vibrator_hdi_connection.cpp", @@ -106,6 +109,13 @@ ohos_shared_library("libmiscdevice_service_static") { "//third_party/cJSON", ] + if (miscdevice_build_eng) { + sources += [ + "hdi_connection/adapter/src/compatible_connection.cpp", + "hdi_connection/adapter/src/compatible_light_connection.cpp", + ] + } + sanitize = { cfi = true cfi_cross_dso = true diff --git a/services/miscdevice_service/hdi_connection/interface/src/light_hdi_connection.cpp b/services/miscdevice_service/hdi_connection/interface/src/light_hdi_connection.cpp index 50767c0..4f5b393 100644 --- a/services/miscdevice_service/hdi_connection/interface/src/light_hdi_connection.cpp +++ b/services/miscdevice_service/hdi_connection/interface/src/light_hdi_connection.cpp @@ -16,7 +16,9 @@ #include +#ifdef BUILD_VARIANT_ENG #include "compatible_light_connection.h" +#endif #ifdef HDF_DRIVERS_INTERFACE_LIGHT #include "hdi_light_connection.h" #endif // HDF_DRIVERS_INTERFACE_LIGHT @@ -41,7 +43,9 @@ int32_t LightHdiConnection::ConnectHdi() return ERR_OK; } #endif // HDF_DRIVERS_INTERFACE_LIGHT +#ifdef BUILD_VARIANT_ENG iLightHdiConnection_ = std::make_unique(); +#endif return ConnectHdiService(); } diff --git a/services/miscdevice_service/hdi_connection/interface/src/vibrator_hdi_connection.cpp b/services/miscdevice_service/hdi_connection/interface/src/vibrator_hdi_connection.cpp index 8090b65..d774c76 100644 --- a/services/miscdevice_service/hdi_connection/interface/src/vibrator_hdi_connection.cpp +++ b/services/miscdevice_service/hdi_connection/interface/src/vibrator_hdi_connection.cpp @@ -16,7 +16,9 @@ #include "hitrace_meter.h" +#ifdef BUILD_VARIANT_ENG #include "compatible_connection.h" +#endif #include "hdi_connection.h" #include "sensors_errors.h" @@ -32,6 +34,7 @@ int32_t VibratorHdiConnection::ConnectHdi() { iVibratorHdiConnection_ = std::make_unique(); int32_t ret = iVibratorHdiConnection_->ConnectHdi(); +#ifdef BUILD_VARIANT_ENG if (ret != ERR_OK) { MISC_HILOGE("Hdi direct failed"); iVibratorHdiConnection_ = std::make_unique(); @@ -41,6 +44,7 @@ int32_t VibratorHdiConnection::ConnectHdi() MISC_HILOGE("Hdi connection failed"); return VIBRATOR_HDF_CONNECT_ERR; } +#endif return ERR_OK; } -- Gitee From af68abae4a16a6e6a84f4aa7c6cc5e5b2cb2bbf2 Mon Sep 17 00:00:00 2001 From: rwx1283129 Date: Thu, 9 Nov 2023 01:48:33 +0000 Subject: [PATCH 2/3] The use of variables Signed-off-by: rwx1283129 Change-Id: I4b1480bcfb03fa550537e650735071965a7728a2 --- .../hdi_connection/interface/src/vibrator_hdi_connection.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/services/miscdevice_service/hdi_connection/interface/src/vibrator_hdi_connection.cpp b/services/miscdevice_service/hdi_connection/interface/src/vibrator_hdi_connection.cpp index d774c76..06a3266 100644 --- a/services/miscdevice_service/hdi_connection/interface/src/vibrator_hdi_connection.cpp +++ b/services/miscdevice_service/hdi_connection/interface/src/vibrator_hdi_connection.cpp @@ -45,7 +45,7 @@ int32_t VibratorHdiConnection::ConnectHdi() return VIBRATOR_HDF_CONNECT_ERR; } #endif - return ERR_OK; + return ret; } int32_t VibratorHdiConnection::StartOnce(uint32_t duration) -- Gitee From fa82c00f855f7dc3ca90bc18b8f533d2666ff1da Mon Sep 17 00:00:00 2001 From: rwx1283129 Date: Mon, 13 Nov 2023 08:52:03 +0000 Subject: [PATCH 3/3] Change eng to root in the gni file Signed-off-by: rwx1283129 Change-Id: I085e0720194c9845ccbc734a1fd677f59cac8247 --- miscdevice.gni | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/miscdevice.gni b/miscdevice.gni index 9ad3317..d554877 100644 --- a/miscdevice.gni +++ b/miscdevice.gni @@ -38,7 +38,7 @@ if (!defined(global_parts_info) || hdf_drivers_interface_light = false } -if (build_variant == "eng") { +if (build_variant == "root") { miscdevice_default_defines += [ "BUILD_VARIANT_ENG" ] miscdevice_build_eng = true } else { -- Gitee