mirror of
https://github.com/apache/nuttx.git
synced 2026-05-20 04:16:35 +08:00
power/battery: battery drivers props use unification unit
battery drivers used unification unit Signed-off-by: yezhonghui <yezhonghui@xiaomi.com>
This commit is contained in:
committed by
Alan C. Assis
parent
443e0cf0db
commit
dba108ae5c
@@ -102,13 +102,13 @@ static int goldfish_charger_online(FAR struct battery_gauge_dev_s *dev,
|
||||
static int goldfish_battery_state(FAR struct battery_gauge_dev_s *dev,
|
||||
FAR int *status);
|
||||
static int goldfish_battery_voltage(FAR struct battery_gauge_dev_s *dev,
|
||||
FAR b16_t *value);
|
||||
FAR int *value);
|
||||
static int goldfish_battery_capacity(FAR struct battery_gauge_dev_s *dev,
|
||||
FAR b16_t *value);
|
||||
FAR int *value);
|
||||
static int goldfish_battery_current(FAR struct battery_gauge_dev_s *dev,
|
||||
FAR b16_t *value);
|
||||
FAR int *value);
|
||||
static int goldfish_battery_temp(FAR struct battery_gauge_dev_s *dev,
|
||||
FAR b8_t *value);
|
||||
FAR int *value);
|
||||
|
||||
/****************************************************************************
|
||||
* Private Data
|
||||
@@ -174,26 +174,24 @@ static int goldfish_battery_state(FAR struct battery_gauge_dev_s *dev,
|
||||
}
|
||||
|
||||
static int goldfish_battery_voltage(FAR struct battery_gauge_dev_s *dev,
|
||||
FAR b16_t *value)
|
||||
FAR int *value)
|
||||
{
|
||||
FAR struct goldfish_battery_data_s *data =
|
||||
container_of(dev, struct goldfish_battery_data_s, battery);
|
||||
uint32_t regval;
|
||||
float vol;
|
||||
|
||||
/* BATTERY_VOLTAGE units is µV */
|
||||
|
||||
regval = GOLDFISH_BATTERY_READ(data, BATTERY_VOLTAGE);
|
||||
|
||||
/* convert to unit V and fill b16_t */
|
||||
/* convert to unit mV and fill int */
|
||||
|
||||
vol = regval / 1000000.0f;
|
||||
*value = ftob16(vol);
|
||||
*value = regval / 1000;
|
||||
return OK;
|
||||
}
|
||||
|
||||
static int goldfish_battery_capacity(FAR struct battery_gauge_dev_s *dev,
|
||||
FAR b16_t *value)
|
||||
FAR int *value)
|
||||
{
|
||||
FAR struct goldfish_battery_data_s *data =
|
||||
container_of(dev, struct goldfish_battery_data_s, battery);
|
||||
@@ -202,45 +200,39 @@ static int goldfish_battery_capacity(FAR struct battery_gauge_dev_s *dev,
|
||||
/* BATTERY_CAPACITY units is percentage */
|
||||
|
||||
regval = GOLDFISH_BATTERY_READ(data, BATTERY_CAPACITY);
|
||||
*value = uitoub16(regval);
|
||||
*value = regval;
|
||||
return OK;
|
||||
}
|
||||
|
||||
static int goldfish_battery_current(FAR struct battery_gauge_dev_s *dev,
|
||||
FAR b16_t *value)
|
||||
FAR int *value)
|
||||
{
|
||||
FAR struct goldfish_battery_data_s *data =
|
||||
container_of(dev, struct goldfish_battery_data_s, battery);
|
||||
uint32_t regval;
|
||||
float current;
|
||||
|
||||
/* BATTERY_CURRENT_NOW units is µA */
|
||||
|
||||
regval = GOLDFISH_BATTERY_READ(data, BATTERY_CURRENT_NOW);
|
||||
|
||||
/* convert to unit mA and fill b16_t */
|
||||
/* convert to unit mA and fill int */
|
||||
|
||||
current = regval / 1000.0f;
|
||||
*value = ftob16(current);
|
||||
*value = regval / 1000;
|
||||
return OK;
|
||||
}
|
||||
|
||||
static int goldfish_battery_temp(FAR struct battery_gauge_dev_s *dev,
|
||||
FAR b8_t *value)
|
||||
FAR int *value)
|
||||
{
|
||||
FAR struct goldfish_battery_data_s *data =
|
||||
container_of(dev, struct goldfish_battery_data_s, battery);
|
||||
int32_t regval;
|
||||
float temp;
|
||||
|
||||
/* BATTERY_TEMP units is 0.1 celsius */
|
||||
|
||||
regval = GOLDFISH_BATTERY_READ(data, BATTERY_TEMP);
|
||||
|
||||
/* convert to unit celsius and fill b16_t */
|
||||
|
||||
temp = regval / 10.0f;
|
||||
*value = ftob8(temp);
|
||||
*value = regval;
|
||||
return OK;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user