summaryrefslogtreecommitdiffstats
path: root/otautil/thermalutil.cpp
diff options
context:
space:
mode:
authorTao Bao <tbao@google.com>2019-10-01 20:55:36 +0200
committerTao Bao <tbao@google.com>2019-10-02 19:56:46 +0200
commite3f09a72f51df5abcf46a63de4a39ca5ed53698b (patch)
tree76c6fa3594480dafbd5b0ef7c032bf7258a017bb /otautil/thermalutil.cpp
parentMerge "otautil: Drop a few unneeded includes." (diff)
downloadandroid_bootable_recovery-e3f09a72f51df5abcf46a63de4a39ca5ed53698b.tar
android_bootable_recovery-e3f09a72f51df5abcf46a63de4a39ca5ed53698b.tar.gz
android_bootable_recovery-e3f09a72f51df5abcf46a63de4a39ca5ed53698b.tar.bz2
android_bootable_recovery-e3f09a72f51df5abcf46a63de4a39ca5ed53698b.tar.lz
android_bootable_recovery-e3f09a72f51df5abcf46a63de4a39ca5ed53698b.tar.xz
android_bootable_recovery-e3f09a72f51df5abcf46a63de4a39ca5ed53698b.tar.zst
android_bootable_recovery-e3f09a72f51df5abcf46a63de4a39ca5ed53698b.zip
Diffstat (limited to 'otautil/thermalutil.cpp')
-rw-r--r--otautil/thermalutil.cpp80
1 files changed, 0 insertions, 80 deletions
diff --git a/otautil/thermalutil.cpp b/otautil/thermalutil.cpp
deleted file mode 100644
index 4660e057e..000000000
--- a/otautil/thermalutil.cpp
+++ /dev/null
@@ -1,80 +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.
- */
-
-#include "otautil/thermalutil.h"
-
-#include <dirent.h>
-#include <stdio.h>
-
-#include <algorithm>
-#include <string>
-#include <vector>
-
-#include <android-base/file.h>
-#include <android-base/logging.h>
-#include <android-base/parseint.h>
-#include <android-base/strings.h>
-
-static constexpr auto THERMAL_PREFIX = "/sys/class/thermal/";
-
-static int thermal_filter(const dirent* de) {
- if (android::base::StartsWith(de->d_name, "thermal_zone")) {
- return 1;
- }
- return 0;
-}
-
-static std::vector<std::string> InitThermalPaths() {
- dirent** namelist;
- int n = scandir(THERMAL_PREFIX, &namelist, thermal_filter, alphasort);
- if (n == -1) {
- PLOG(ERROR) << "Failed to scandir " << THERMAL_PREFIX;
- return {};
- }
- if (n == 0) {
- LOG(ERROR) << "Failed to find CPU thermal info in " << THERMAL_PREFIX;
- return {};
- }
-
- std::vector<std::string> thermal_paths;
- while (n--) {
- thermal_paths.push_back(THERMAL_PREFIX + std::string(namelist[n]->d_name) + "/temp");
- free(namelist[n]);
- }
- free(namelist);
- return thermal_paths;
-}
-
-int GetMaxValueFromThermalZone() {
- static std::vector<std::string> thermal_paths = InitThermalPaths();
- int max_temperature = -1;
- for (const auto& path : thermal_paths) {
- std::string content;
- if (!android::base::ReadFileToString(path, &content)) {
- PLOG(WARNING) << "Failed to read " << path;
- continue;
- }
-
- int temperature;
- if (!android::base::ParseInt(android::base::Trim(content), &temperature)) {
- LOG(WARNING) << "Failed to parse integer in " << content;
- continue;
- }
- max_temperature = std::max(temperature, max_temperature);
- }
- LOG(INFO) << "current maximum temperature: " << max_temperature;
- return max_temperature;
-}