diff options
author | Corinna Vinschen <xda@vinschen.de> | 2018-04-10 11:57:37 +0200 |
---|---|---|
committer | Michael Bestas <mkbestas@lineageos.org> | 2019-10-23 01:12:56 +0300 |
commit | 71c7488ae10003c7d2f28fb68bd1188b1a426793 (patch) | |
tree | f40b4829b79a17a0386e87f1d3906db954effc43 /utils.c | |
parent | 7dbfef3f4f963a5b05655346d0b4db2a0d27044a (diff) | |
download | vendor_qcom_opensource_power-71c7488ae10003c7d2f28fb68bd1188b1a426793.tar.gz vendor_qcom_opensource_power-71c7488ae10003c7d2f28fb68bd1188b1a426793.tar.bz2 vendor_qcom_opensource_power-71c7488ae10003c7d2f28fb68bd1188b1a426793.zip |
power: fix sysfs_read/sysfs_write usage
* The incoming path to sysfs_read/sysfs_write should be const, as in
open(2) call.
* Redefine scaling_gov_path as const pointer array.
* Since sysfs_read works on a simple absolute path anyway, make sure
the scaling_gov_path paths *are* absolute. Otherwise the code only
works if Power HAL has / as CWD, which is a bit fragile.
Change-Id: I70c08f8137842569514bcb3f6e0617d46044e6ab
Signed-off-by: Corinna Vinschen <xda@vinschen.de>
Diffstat (limited to 'utils.c')
-rw-r--r-- | utils.c | 12 |
1 files changed, 6 insertions, 6 deletions
@@ -46,10 +46,10 @@ #define SOC_ID_0 "/sys/devices/soc0/soc_id" #define SOC_ID_1 "/sys/devices/system/soc/soc0/id" -char scaling_gov_path[4][80] = {"sys/devices/system/cpu/cpu0/cpufreq/scaling_governor", - "sys/devices/system/cpu/cpu1/cpufreq/scaling_governor", - "sys/devices/system/cpu/cpu2/cpufreq/scaling_governor", - "sys/devices/system/cpu/cpu3/cpufreq/scaling_governor"}; +const char* scaling_gov_path[4] = {"/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor", + "/sys/devices/system/cpu/cpu1/cpufreq/scaling_governor", + "/sys/devices/system/cpu/cpu2/cpufreq/scaling_governor", + "/sys/devices/system/cpu/cpu3/cpufreq/scaling_governor"}; #define PERF_HAL_PATH "libqti-perfd-client.so" static void* qcopt_handle; @@ -117,7 +117,7 @@ static void __attribute__((destructor)) cleanup(void) { } } -int sysfs_read(char* path, char* s, int num_bytes) { +int sysfs_read(const char* path, char* s, int num_bytes) { char buf[80]; int count; int ret = 0; @@ -144,7 +144,7 @@ int sysfs_read(char* path, char* s, int num_bytes) { return ret; } -int sysfs_write(char* path, char* s) { +int sysfs_write(const char* path, char* s) { char buf[80]; int len; int ret = 0; |