Merge "Define ApPowerControl library." am: c84a388681

Original change: https://android-review.googlesource.com/c/platform/hardware/interfaces/+/2299437

Change-Id: I65f98534649ab995550a17fa9218ed94b7520915
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Treehugger Robot 2022-11-22 00:54:48 +00:00 committed by Automerger Merge Worker
commit 961df05a14
6 changed files with 91 additions and 2 deletions

View file

@ -79,6 +79,8 @@ following behavior:
* `make -j TestWakeupClientServer`
* `make -j ApPowerControlLib`
## How to push the test wakeup client to a TCU which runs Android.
* Make the target device writable:
@ -97,6 +99,8 @@ following behavior:
* `adb push vendor/bin/TestWakeupClientServer /vendor/bin`
* `adb push vendor/lib/ApPowerControlLib.so /vendor/lib`
* `adb shell`
* `su`

View file

@ -31,6 +31,7 @@ cc_binary {
"libutils",
"libgrpc++",
"libprotobuf-cpp-full",
"//hardware/interfaces/automotive/remoteaccess/test_grpc_server/lib:ApPowerControlLib",
],
whole_static_libs: [
"wakeup_client_protos",

View file

@ -16,6 +16,8 @@
#include "TestWakeupClientServiceImpl.h"
#include "ApPowerControl.h"
#include <android-base/stringprintf.h>
#include <inttypes.h>
#include <utils/Looper.h>
@ -245,8 +247,7 @@ Status TestWakeupClientServiceImpl::NotifyWakeupRequired(ServerContext* context,
}
void TestWakeupClientServiceImpl::wakeupApplicationProcessor() {
printf("Waking up application processor...\n");
// TODO(b/254547153): Send can bus message using socket CAN once we know what the message is.
wakeupAp();
}
} // namespace remoteaccess

View file

@ -0,0 +1,32 @@
// Copyright (C) 2022 The Android Open Source Project
//
// 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.
soong_namespace {}
package {
// See: http://go/android-license-faq
// A large-scale-change added 'default_applicable_licenses' to import
// all of the 'license_kinds' from "hardware_interfaces_license"
// to get the below license kinds:
// SPDX-license-identifier-Apache-2.0
default_applicable_licenses: ["hardware_interfaces_license"],
}
cc_library_shared {
name: "ApPowerControlLib",
vendor: true,
srcs: ["*.cpp"],
local_include_dirs: ["."],
export_include_dirs: ["."],
}

View file

@ -0,0 +1,23 @@
/*
* Copyright (C) 2022 The Android Open Source Project
*
* 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 "ApPowerControl.h"
#include <cstdio>
void wakeupAp() {
printf("Waking up application processor...\n");
}

View file

@ -0,0 +1,28 @@
/*
* Copyright (C) 2022 The Android Open Source Project
*
* 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.
*/
#pragma once
#ifdef __cplusplus
extern "C" {
#endif
// Wakeup application processor if not already waken up.
void wakeupAp();
#ifdef __cplusplus
}
#endif