create a lib to hold commonly used functions

Bug: 240530709
Test: adb bugreport
Change-Id: Idcdcca968b65d2bd413b219d39fc1104dfc9f3b8
This commit is contained in:
Adam Shih 2022-10-18 11:45:37 +08:00
parent 19236e9079
commit 4b68f5fe95
7 changed files with 79 additions and 44 deletions

View File

@ -10,7 +10,10 @@ cc_binary {
"-Wextra",
"-Werror",
],
shared_libs: ["libbase"],
shared_libs: [
"libbase",
"libdump",
],
vendor: true,
relative_install_path: "dump",
}

View File

@ -14,28 +14,7 @@
* limitations under the License.
*/
#include <stdio.h>
#include <string>
#include <android-base/file.h>
#include <fstream>
#include <iostream>
// Format title and content output.
void dumpFileContent(const char* title, const char* file_path) {
std::string content;
printf("------ %s (%s) ------\n", title, file_path);
if (android::base::ReadFileToString(file_path, &content)) {
printf("%s\n", content.c_str());
} else {
printf("Unable to read %s\n", file_path);
}
return;
}
void command(const char* title, const char* cmd){
printf("------ %s (%s) ------\n", title, cmd);
system(cmd);
return;
}
#include <dump/pixel_dump.h>
// Dump Aoc.
int main() {
@ -52,10 +31,10 @@ int main() {
dumpFileContent("AoC memory exception wake", "/sys/devices/platform/19000000.aoc/control/memory_exception");
dumpFileContent("AoC memory votes", "/sys/devices/platform/19000000.aoc/control/memory_votes_a32");
dumpFileContent("AoC memory votes", "/sys/devices/platform/19000000.aoc/control/memory_votes_ff1");
command("clean AoC buffer","echo ' ' > /dev/acd-debug; timeout 0.1 cat /dev/acd-debug");
command("AoC Heap Stats (A32)", "echo 'dbg heap -c 1' > /dev/acd-debug; timeout 0.1 cat /dev/acd-debug");
command("AoC Heap Stats (F1)", "echo 'dbg heap -c 2' > /dev/acd-debug; timeout 0.1 cat /dev/acd-debug");
command("AoC Heap Stats (HF0)", "echo 'dbg heap -c 3' > /dev/acd-debug; timeout 0.1 cat /dev/acd-debug");
command("AoC Heap Stats (HF1)", "echo 'dbg heap -c 4' > /dev/acd-debug; timeout 0.1 cat /dev/acd-debug");
runCommand("clean AoC buffer","echo ' ' > /dev/acd-debug; timeout 0.1 cat /dev/acd-debug");
runCommand("AoC Heap Stats (A32)", "echo 'dbg heap -c 1' > /dev/acd-debug; timeout 0.1 cat /dev/acd-debug");
runCommand("AoC Heap Stats (F1)", "echo 'dbg heap -c 2' > /dev/acd-debug; timeout 0.1 cat /dev/acd-debug");
runCommand("AoC Heap Stats (HF0)", "echo 'dbg heap -c 3' > /dev/acd-debug; timeout 0.1 cat /dev/acd-debug");
runCommand("AoC Heap Stats (HF1)", "echo 'dbg heap -c 4' > /dev/acd-debug; timeout 0.1 cat /dev/acd-debug");
return 0;
}

View File

@ -14,3 +14,23 @@ prebuilt_etc {
src: "init.common.cfg",
vendor: true,
}
cc_library {
name: "libdump",
srcs: ["pixel_dump.cpp"],
vendor_available: true,
vendor_ramdisk_available: true,
shared_libs: [
"libbase",
"liblog",
],
cflags: [
"-Wall",
"-Werror",
],
export_include_dirs: [
"include",
],
}

View File

@ -0,0 +1,7 @@
#ifndef DEVICE_GOOGLE_GS_COMMON_INSMOD_INCLUDE_DUMP_PIXEL_DUMP_H_
#define DEVICE_GOOGLE_GS_COMMON_INSMOD_INCLUDE_DUMP_PIXEL_DUMP_H_
void dumpFileContent(const char* title, const char* file_path);
void runCommand(const char* title, const char* cmd);
#endif // DEVICE_GOOGLE_GS_COMMON_INSMOD_INCLUDE_DUMP_PIXEL_DUMP_H_

37
insmod/pixel_dump.cpp Normal file
View File

@ -0,0 +1,37 @@
/*
* Copyright 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 <stdio.h>
#include <string>
#include <android-base/file.h>
// Format title and content output.
void dumpFileContent(const char* title, const char* file_path) {
std::string content;
printf("------ %s (%s) ------\n", title, file_path);
if (android::base::ReadFileToString(file_path, &content)) {
printf("%s\n", content.c_str());
} else {
printf("Unable to read %s\n", file_path);
}
return;
}
// Format title and command output.
void runCommand(const char* title, const char* cmd) {
printf("------ %s (%s)------\n", title, cmd);
system(cmd);
return;
}

View File

@ -10,7 +10,10 @@ cc_binary {
"-Wextra",
"-Werror",
],
shared_libs: ["libbase"],
shared_libs: [
"libbase",
"libdump",
],
vendor: true,
relative_install_path: "dump",
}

View File

@ -13,21 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#include <stdio.h>
#include <string>
#include <android-base/file.h>
// Format title and content output.
void dumpFileContent(const char* title, const char* file_path) {
std::string content;
printf("------ %s (%s) ------\n", title, file_path);
if (android::base::ReadFileToString(file_path, &content)) {
printf("%s\n", content.c_str());
} else {
printf("Unable to read %s\n", file_path);
}
return;
}
#include <dump/pixel_dump.h>
// Dump chip ID.
int main() {