/* Copyright (c) 2012 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. * * Common API for battery pack vendor provided charging profile */ #ifndef __CROS_EC_BATTERY_PACK_H #define __CROS_EC_BATTERY_PACK_H /* Battery parameters */ struct batt_params { int temperature; int state_of_charge; int voltage; int current; int desired_voltage; int desired_current; }; /* Battery constants */ struct battery_info { /* Design voltage */ int voltage_max; int voltage_normal; int voltage_min; /* Working temperature */ int temp_charge_min; int temp_charge_max; int temp_discharge_min; int temp_discharge_max; /* Pre-charge */ int precharge_current; }; /* Vendor provided battery constants */ const struct battery_info *battery_get_info(void); /* Vendor provided parameters for battery charging */ void battery_vendor_params(struct batt_params *batt); #endif //__CROS_EC_BATTERY_PACK_H