gs101: Remove pixelstats-vendor
This does not build with the current hardware/google/pixel dependencies so make it prebuilt. Change-Id: Ifcbf49fb482164bd72ad0e1f05fa2d48ca2fbc98
This commit is contained in:
parent
2909c91023
commit
fde11dd697
3 changed files with 0 additions and 155 deletions
|
@ -1,42 +0,0 @@
|
||||||
//
|
|
||||||
// Copyright (C) 2017 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.
|
|
||||||
|
|
||||||
package {
|
|
||||||
// See: http://go/android-license-faq
|
|
||||||
// A large-scale-change added 'default_applicable_licenses' to import
|
|
||||||
// all of the 'license_kinds' from "//device/google/gs101:device_google_gs101_license"
|
|
||||||
// to get the below license kinds:
|
|
||||||
// SPDX-license-identifier-Apache-2.0
|
|
||||||
default_applicable_licenses: [
|
|
||||||
"//device/google/gs101:device_google_gs101_license",
|
|
||||||
],
|
|
||||||
}
|
|
||||||
|
|
||||||
cc_binary {
|
|
||||||
name: "pixelstats-vendor",
|
|
||||||
init_rc: ["pixelstats-vendor.gs101.rc"],
|
|
||||||
srcs: [
|
|
||||||
"service.cpp",
|
|
||||||
],
|
|
||||||
shared_libs: [
|
|
||||||
"libbase",
|
|
||||||
"liblog",
|
|
||||||
"libutils",
|
|
||||||
"libpixelstats",
|
|
||||||
],
|
|
||||||
proprietary: true,
|
|
||||||
static_libs: ["chre_client"],
|
|
||||||
header_libs: ["chre_api"],
|
|
||||||
}
|
|
|
@ -1,10 +0,0 @@
|
||||||
on property:sys.boot_completed=1
|
|
||||||
chown system system /sys/class/power_supply/maxfg/fg_learning_events
|
|
||||||
start vendor.pixelstats_vendor
|
|
||||||
on post-fs-data
|
|
||||||
chown system system /sys/kernel/metrics/irq/stats_reset
|
|
||||||
service vendor.pixelstats_vendor /vendor/bin/pixelstats-vendor
|
|
||||||
class hal
|
|
||||||
user system
|
|
||||||
group system context_hub readproc
|
|
||||||
disabled
|
|
|
@ -1,103 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright (C) 2018 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.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#define LOG_TAG "pixelstats"
|
|
||||||
|
|
||||||
#include <android-base/logging.h>
|
|
||||||
#include <pixelstats/SysfsCollector.h>
|
|
||||||
#include <pixelstats/UeventListener.h>
|
|
||||||
|
|
||||||
#include <thread>
|
|
||||||
|
|
||||||
using android::hardware::google::pixel::SysfsCollector;
|
|
||||||
using android::hardware::google::pixel::UeventListener;
|
|
||||||
|
|
||||||
#define BLOCK_STATS_LENGTH 17
|
|
||||||
#define UFSHC_PATH(filename) "/dev/sys/block/bootdevice/" #filename
|
|
||||||
#define UFS_ERR_PATH(err_type) UFSHC_PATH(err_stats/) #err_type
|
|
||||||
const struct SysfsCollector::SysfsPaths sysfs_paths = {
|
|
||||||
.SlowioReadCntPath = UFSHC_PATH(slowio_read_cnt),
|
|
||||||
.SlowioWriteCntPath = UFSHC_PATH(slowio_write_cnt),
|
|
||||||
.SlowioUnmapCntPath = UFSHC_PATH(slowio_unmap_cnt),
|
|
||||||
.SlowioSyncCntPath = UFSHC_PATH(slowio_sync_cnt),
|
|
||||||
.CycleCountBinsPath = "/sys/class/power_supply/battery/cycle_counts",
|
|
||||||
.UFSLifetimeA = UFSHC_PATH(health_descriptor/life_time_estimation_a),
|
|
||||||
.UFSLifetimeB = UFSHC_PATH(health_descriptor/life_time_estimation_b),
|
|
||||||
.UFSLifetimeC = UFSHC_PATH(health_descriptor/life_time_estimation_c),
|
|
||||||
.F2fsStatsPath = "/sys/fs/f2fs/",
|
|
||||||
.ImpedancePath = "/sys/devices/platform/audiometrics/speaker_impedance",
|
|
||||||
.CodecPath = "/sys/devices/platform/audiometrics/codec_state",
|
|
||||||
.EEPROMPath = "/dev/battery_history",
|
|
||||||
.MitigationPath = "/sys/devices/virtual/pmic/mitigation",
|
|
||||||
.SpeakerTemperaturePath = "/sys/devices/platform/audiometrics/speaker_temp",
|
|
||||||
.SpeakerExcursionPath = "/sys/devices/platform/audiometrics/speaker_excursion",
|
|
||||||
.SpeakerHeartBeatPath = "/sys/devices/platform/audiometrics/speaker_heartbeat",
|
|
||||||
.ResumeLatencyMetricsPath = "/sys/kernel/metrics/resume_latency/resume_latency_metrics",
|
|
||||||
.LongIRQMetricsPath = "/sys/kernel/metrics/irq/long_irq_metrics",
|
|
||||||
.StormIRQMetricsPath = "/sys/kernel/metrics/irq/storm_irq_metrics",
|
|
||||||
.IRQStatsResetPath = "/sys/kernel/metrics/irq/stats_reset",
|
|
||||||
.UFSErrStatsPath = {
|
|
||||||
UFS_ERR_PATH(pa_err_count),
|
|
||||||
UFS_ERR_PATH(dl_err_count),
|
|
||||||
UFS_ERR_PATH(nl_err_count),
|
|
||||||
UFS_ERR_PATH(tl_err_count),
|
|
||||||
UFS_ERR_PATH(dme_err_count),
|
|
||||||
UFS_ERR_PATH(fatal_err_count),
|
|
||||||
UFS_ERR_PATH(auto_hibern8_err_count)
|
|
||||||
},
|
|
||||||
.AmsRatePath = "/sys/devices/platform/audiometrics/ams_rate_read_once",
|
|
||||||
.TempResidencyAndResetPaths = {
|
|
||||||
{
|
|
||||||
"/sys/kernel/metrics/thermal/tr_by_group/tmu/stats",
|
|
||||||
"/sys/kernel/metrics/thermal/tr_by_group/tmu/stats_reset"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"/sys/kernel/metrics/thermal/tr_by_group/spmic/stats",
|
|
||||||
"/sys/kernel/metrics/thermal/tr_by_group/spmic/stats_reset"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
.GMSRPath = {
|
|
||||||
"/sys/class/power_supply/maxfg/gmsr",
|
|
||||||
"/sys/class/power_supply/maxfg_base/gmsr",
|
|
||||||
},
|
|
||||||
.FGModelLoadingPath = {
|
|
||||||
"/sys/class/power_supply/maxfg/m5_model_state"
|
|
||||||
},
|
|
||||||
.FGLogBufferPath = {
|
|
||||||
"/dev/logbuffer_maxfg_monitor",
|
|
||||||
"/dev/logbuffer_max77779fg_monitor",
|
|
||||||
"/dev/logbuffer_maxfg_base_monitor",
|
|
||||||
"/dev/logbuffer_maxfg_secondary_monitor"
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
const struct UeventListener::UeventPaths ueventPaths = {
|
|
||||||
.AudioUevent = "/devices/virtual/amcs/amcs",
|
|
||||||
.TypeCPartnerUevent = "PRODUCT_TYPE="
|
|
||||||
};
|
|
||||||
|
|
||||||
int main() {
|
|
||||||
LOG(INFO) << "starting PixelStats";
|
|
||||||
|
|
||||||
UeventListener ueventListener(ueventPaths);
|
|
||||||
std::thread listenThread(&UeventListener::ListenForever, &ueventListener);
|
|
||||||
listenThread.detach();
|
|
||||||
|
|
||||||
SysfsCollector collector(sysfs_paths);
|
|
||||||
collector.collect(); // This blocks forever.
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
Loading…
Add table
Add a link
Reference in a new issue