From 4139d85cc610e8473be498129ad0ae690338ee4f Mon Sep 17 00:00:00 2001 From: "Christopher N. Hesse" Date: Wed, 7 Dec 2016 12:21:44 +0100 Subject: [PATCH] power: Allow devices to override node paths Change-Id: Ida7f41ddce2ef458cc77348c0b44ec0a7a86df72 --- power/Android.mk | 12 ++++++++---- power/include/samsung_power.h | 36 +++++++++++++++++++++++++++++++++++ power/power.c | 9 +-------- 3 files changed, 45 insertions(+), 12 deletions(-) create mode 100644 power/include/samsung_power.h diff --git a/power/Android.mk b/power/Android.mk index aad3b9df..92ffe616 100644 --- a/power/Android.mk +++ b/power/Android.mk @@ -12,16 +12,20 @@ # See the License for the specific language governing permissions and # limitations under the License. -LOCAL_PATH := $(call my-dir) - ifeq ($(TARGET_POWERHAL_VARIANT),samsung) +LOCAL_PATH := $(call my-dir) + include $(CLEAR_VARS) +LOCAL_SRC_FILES := power.c + +LOCAL_C_INCLUDES := $(LOCAL_PATH)/include + +LOCAL_SHARED_LIBRARIES := liblog libcutils + LOCAL_MODULE := power.$(TARGET_BOOTLOADER_BOARD_NAME) LOCAL_MODULE_RELATIVE_PATH := hw -LOCAL_SHARED_LIBRARIES := liblog libcutils -LOCAL_SRC_FILES := power.c LOCAL_MODULE_TAGS := optional ifneq ($(TARGET_TAP_TO_WAKE_NODE),) diff --git a/power/include/samsung_power.h b/power/include/samsung_power.h new file mode 100644 index 00000000..ffc46b11 --- /dev/null +++ b/power/include/samsung_power.h @@ -0,0 +1,36 @@ +/* + * Copyright (C) 2016 The CyanogenMod 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. + */ + +#ifndef SAMSUNG_POWER_H +#define SAMSUNG_POWER_H + +/* + * Board specific nodes + * + * If your kernel exposes these controls in another place, you can either + * symlink to the locations given here, or override this header in your + * device tree. + */ +#define BOOSTPULSE_PATH "/sys/devices/system/cpu/cpu0/cpufreq/interactive/boostpulse" + +#define IO_IS_BUSY_PATH "/sys/devices/system/cpu/cpu0/cpufreq/interactive/io_is_busy" + +#define CPU0_HISPEED_FREQ_PATH "/sys/devices/system/cpu/cpu0/cpufreq/interactive/hispeed_freq" +#define CPU0_MAX_FREQ_PATH "/sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq" +#define CPU4_HISPEED_FREQ_PATH "/sys/devices/system/cpu/cpu4/cpufreq/interactive/hispeed_freq" +#define CPU4_MAX_FREQ_PATH "/sys/devices/system/cpu/cpu4/cpufreq/scaling_max_freq" + +#endif // SAMSUNG_POWER_H diff --git a/power/power.c b/power/power.c index 56039e8f..beb27dac 100644 --- a/power/power.c +++ b/power/power.c @@ -37,14 +37,7 @@ #include #include -#define BOOSTPULSE_PATH "/sys/devices/system/cpu/cpu0/cpufreq/interactive/boostpulse" - -#define IO_IS_BUSY_PATH "/sys/devices/system/cpu/cpu0/cpufreq/interactive/io_is_busy" - -#define CPU0_HISPEED_FREQ_PATH "/sys/devices/system/cpu/cpu0/cpufreq/interactive/hispeed_freq" -#define CPU0_MAX_FREQ_PATH "/sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq" -#define CPU4_HISPEED_FREQ_PATH "/sys/devices/system/cpu/cpu4/cpufreq/interactive/hispeed_freq" -#define CPU4_MAX_FREQ_PATH "/sys/devices/system/cpu/cpu4/cpufreq/scaling_max_freq" +#include "samsung_power.h" #define PANEL_BRIGHTNESS "/sys/class/backlight/panel/brightness"