!281 feat: add the asynchronous power manager interfaces os acquiring device

Merge pull request !281 from Zhang/master
This commit is contained in:
openharmony_ci
2021-12-13 12:33:24 +00:00
committed by Gitee
10 changed files with 109 additions and 2 deletions
+2
View File
@@ -47,6 +47,7 @@ hdf_driver(module_name) {
"$HDF_FRAMEWORKS_PATH/core/host/src/hdf_device_token.c",
"$HDF_FRAMEWORKS_PATH/core/host/src/hdf_driver_loader.c",
"$HDF_FRAMEWORKS_PATH/core/host/src/hdf_observer_record.c",
"$HDF_FRAMEWORKS_PATH/core/host/src/hdf_power_manager.c",
"$HDF_FRAMEWORKS_PATH/core/host/src/hdf_service_observer.c",
"$HDF_FRAMEWORKS_PATH/core/host/src/hdf_service_subscriber.c",
"$HDF_FRAMEWORKS_PATH/core/host/src/power_state_token.c",
@@ -74,6 +75,7 @@ hdf_driver(module_name) {
"$HDF_FRAMEWORKS_PATH/utils/src/hdf_sbuf_impl_raw.c",
"$HDF_FRAMEWORKS_PATH/utils/src/hdf_slist.c",
"$HDF_FRAMEWORKS_PATH/utils/src/hdf_sref.c",
"$HDF_FRAMEWORKS_PATH/utils/src/hdf_task_queue.c",
]
}
+2
View File
@@ -48,6 +48,7 @@ LOCAL_SRCS := ./osal/src/osal_timer.c \
$(HDF_FRAMEWORKS)/utils/src/hdf_sref.c \
$(HDF_FRAMEWORKS)/utils/src/hdf_sbuf.c \
$(HDF_FRAMEWORKS)/utils/src/hdf_sbuf_impl_raw.c \
$(HDF_FRAMEWORKS)/utils/src/hdf_task_queue.c \
./osal/src/osal_mem.c \
./osal/src/osal_mutex.c \
./osal/src/osal_sem.c \
@@ -62,6 +63,7 @@ LOCAL_SRCS := ./osal/src/osal_timer.c \
$(HDF_FRAMEWORKS)/core/host/src/hdf_observer_record.c \
$(HDF_FRAMEWORKS)/core/host/src/hdf_service_subscriber.c \
$(HDF_FRAMEWORKS)/core/host/src/hdf_device_object.c \
$(HDF_FRAMEWORKS)/core/host/src/hdf_power_manager.c \
$(HDF_FRAMEWORKS)/core/host/src/hdf_service_observer.c \
$(HDF_FRAMEWORKS)/core/host/src/power_state_token.c \
$(HDF_FRAMEWORKS)/core/manager/src/devhost_service_clnt.c \
+1 -1
View File
@@ -42,7 +42,7 @@ hdf_driver(module_name) {
"$HDF_TEST_FRAMWORK_ROOT/osal/osal_list_test.c",
"$HDF_TEST_FRAMWORK_ROOT/osal/osal_test_entry.c",
"$HDF_TEST_FRAMWORK_ROOT/osal/osal_work_test.c",
"$HDF_TEST_FRAMWORK_ROOT/pm/pm_driver_test.c",
"$HDF_TEST_FRAMWORK_ROOT/pm/hdf_pm_driver_test.c",
"$HDF_TEST_FRAMWORK_ROOT/utils/hcs_parser/unittest/hcs_config_test.c",
"$HDF_TEST_FRAMWORK_ROOT/utils/hcs_parser/unittest/hcs_parser_test.c",
]
+1 -1
View File
@@ -42,7 +42,7 @@ LOCAL_SRCS := $(HDF_TEST_FRAMWORK_ROOT)/common/hdf_main_test.c \
$(HDF_TEST_FRAMWORK_ROOT)/osal/osal_get_case_test.c \
$(HDF_TEST_FRAMWORK_ROOT)/utils/hcs_parser/unittest/hcs_parser_test.c \
$(HDF_TEST_FRAMWORK_ROOT)/utils/hcs_parser/unittest/hcs_config_test.c \
$(HDF_TEST_FRAMWORK_ROOT)/pm/pm_driver_test.c
$(HDF_TEST_FRAMWORK_ROOT)/pm/hdf_pm_driver_test.c
ifeq ($(LOSCFG_DRIVERS_HDF_WIFI), y)
LOCAL_SRCS += $(HDF_TEST_FRAMWORK_ROOT)/wifi/hdf_wifi_test.c \
+41
View File
@@ -167,3 +167,44 @@ unittest("hdf_adapter_uhdf_test_door") {
"-fno-strict-aliasing",
]
}
unittest("hdf_adapter_uhdf_test_pm") {
output_extension = "bin"
output_dir = "$root_out_dir/test/unittest/hdf"
include_dirs = [
"//third_party/googletest/googletest/include",
"//third_party/bounds_checking_function/include",
"//drivers/framework/include/platform",
"//drivers/framework/include/core",
"//drivers/framework/core/common/include/host",
"//drivers/framework/core/shared/include",
"//drivers/framework/include/osal",
"//drivers/adapter/uhdf/posix/include",
"//drivers/framework/include/utils",
"//drivers/framework/include",
"//drivers/framework/test/unittest/include",
"//drivers/framework/test/unittest/manager",
"//drivers/framework/test/unittest/pm",
"//base/hiviewdfx/hilog_lite/interfaces/native/innerkits",
]
defines = [ "__USER__" ]
sources = [
"//drivers/framework/core/manager/test/unittest/common/hdf_pm_test.cpp",
]
deps = [
"//base/hiviewdfx/hilog_lite/frameworks/featured:hilog_shared",
"//drivers/adapter/uhdf/manager:hdf_core",
"//drivers/adapter/uhdf/posix:hdf_posix_osal",
"//drivers/adapter/uhdf/test/unittest/common:hdf_test_common",
]
public_deps = [ "//third_party/bounds_checking_function:libsec_shared" ]
cflags = [
"-Wall",
"-Wextra",
"-Werror",
"-fsigned-char",
"-fno-common",
"-fno-strict-aliasing",
]
}
+3
View File
@@ -57,6 +57,7 @@ ohos_shared_library("libhdf_host") {
"$hdf_framework_path/core/host/src/hdf_device_object.c",
"$hdf_framework_path/core/host/src/hdf_device_token.c",
"$hdf_framework_path/core/host/src/hdf_observer_record.c",
"$hdf_framework_path/core/host/src/hdf_power_manager.c",
"$hdf_framework_path/core/host/src/hdf_service_observer.c",
"$hdf_framework_path/core/host/src/hdf_service_subscriber.c",
"$hdf_framework_path/core/host/src/power_state_token.c",
@@ -64,6 +65,7 @@ ohos_shared_library("libhdf_host") {
"$hdf_framework_path/core/shared/src/hdf_device_info.c",
"$hdf_framework_path/core/shared/src/hdf_object_manager.c",
"$hdf_framework_path/core/shared/src/hdf_service_record.c",
"$hdf_framework_path/utils/src/hdf_task_queue.c",
"$hdf_uhdf_path/host/src/devhost_object_config.c",
"$hdf_uhdf_path/host/src/devhost_service_full.c",
"$hdf_uhdf_path/host/src/devhost_service_stub.c",
@@ -74,6 +76,7 @@ ohos_shared_library("libhdf_host") {
"$hdf_uhdf_path/host/src/driver_loader_full.c",
"$hdf_uhdf_path/host/src/hdf_device_thread.c",
"$hdf_uhdf_path/host/src/hdf_devsvc_manager_clnt.c",
"$hdf_uhdf_path/host/src/hdf_pm_reg.c",
"$hdf_uhdf_path/shared/src/dev_attribute_serialize.c",
"$hdf_uhdf_path/shared/src/hcb_config_entry.c",
]
+4
View File
@@ -23,6 +23,7 @@
#include "devhost_service_full.h"
#include "hdf_cstring.h"
#include "hdf_log.h"
#include "hdf_power_manager.h"
#include "securec.h"
#define HDF_LOG_TAG hdf_device_host
@@ -87,6 +88,7 @@ int main(int argc, char **argv)
DevHostServiceFreeInstance(instance);
return status;
}
HdfPowerManagerInit();
struct DevHostServiceFull *fullService = (struct DevHostServiceFull*)instance;
struct HdfMessageLooper *looper = &fullService->looper;
if ((looper != NULL) && (looper->Start != NULL)) {
@@ -94,6 +96,8 @@ int main(int argc, char **argv)
}
DevHostServiceFreeInstance(instance);
HdfPowerManagerExit();
return status;
}
+23
View File
@@ -0,0 +1,23 @@
/*
* Copyright (c) 2021 Huawei Device Co., Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#include "hdf_base.h"
#define HDF_LOG_TAG devmgr_pm
int DevMgrPmRegister(void)
{
return HDF_SUCCESS;
}
+1
View File
@@ -16,6 +16,7 @@ group("hdf_test_uhdf") {
deps = [
"unittest/config:hdf_adapter_uhdf_test_config",
"unittest/manager:hdf_adapter_uhdf_test_ioservice",
"unittest/manager:hdf_adapter_uhdf_test_pm",
"unittest/manager:hdf_adapter_uhdf_test_sbuf",
"unittest/osal:hdf_adapter_uhdf_test_osal",
"unittest/osal:hdf_adapter_uhdf_test_osal_posix",
+31
View File
@@ -120,3 +120,34 @@ ohos_unittest("hdf_adapter_uhdf_test_sbuf") {
external_deps = [ "hilog:libhilog" ]
}
}
module_output_path = "hdf/pm"
ohos_unittest("hdf_adapter_uhdf_test_pm") {
module_out_path = module_output_path
include_dirs = [
"//drivers/framework/core/shared/include",
"//drivers/framework/test/unittest/include",
"//drivers/framework/test/unittest/pm",
]
defines = [ "__USER__" ]
sources = [
"//drivers/framework/core/manager/test/unittest/common/hdf_pm_test.cpp",
]
deps = [
"//drivers/adapter/uhdf2/utils:libhdf_utils",
"//utils/native/base:utils",
]
cflags = [
"-Wall",
"-Wextra",
"-Werror",
"-fsigned-char",
"-fno-common",
"-fno-strict-aliasing",
]
if (is_standard_system) {
external_deps = [ "hiviewdfx_hilog_native:libhilog" ]
} else {
external_deps = [ "hilog:libhilog" ]
}
}