/* Copyright (c) 2013 The Chromium OS Authors. All rights reserved. * Use of this source code is governed by a BSD-style license that can be * found in the LICENSE file. */ /* Functions used to provide the Intel DPTF interface over ACPI */ #ifndef __CROS_EC_DPTF_H #define __CROS_EC_DPTF_H /** * Set fan duty target. * * 0-100% sets fixed duty cycle, out of range means let the EC drive. */ void dptf_set_fan_duty_target(int pct); /** * Return 0-100% if in duty mode. -1 if not. */ int dptf_get_fan_duty_target(void); /* Thermal thresholds may be set for each temp sensor. */ #define DPTF_THRESHOLDS_PER_SENSOR 2 #define DPTF_THRESHOLD_HYSTERESIS 2 /** * Set/enable the thresholds. */ void dptf_set_temp_threshold(int sensor_id, /* zero-based sensor index */ int temp, /* in degrees K */ int idx, /* which threshold (0 or 1) */ int enable); /* true = on, false = off */ /** * Return the ID of a temp sensor that has crossed its threshold since the last * time we asked. -1 means none. */ int dptf_query_next_sensor_event(void); /** * Set charging current limit, in mA. -1 means no limit. */ void dptf_set_charging_current_limit(int ma); /** * Get charging current limit, in mA, or -1 if not DPTF-limiting. */ int dptf_get_charging_current_limit(void); #endif /* __CROS_EC_DPTF_H */