mirror of
https://github.com/apache/nuttx.git
synced 2026-06-02 01:21:26 +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,
|
static int goldfish_battery_state(FAR struct battery_gauge_dev_s *dev,
|
||||||
FAR int *status);
|
FAR int *status);
|
||||||
static int goldfish_battery_voltage(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);
|
||||||
static int goldfish_battery_capacity(FAR struct battery_gauge_dev_s *dev,
|
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,
|
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,
|
static int goldfish_battery_temp(FAR struct battery_gauge_dev_s *dev,
|
||||||
FAR b8_t *value);
|
FAR int *value);
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
* Private Data
|
* 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,
|
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 =
|
FAR struct goldfish_battery_data_s *data =
|
||||||
container_of(dev, struct goldfish_battery_data_s, battery);
|
container_of(dev, struct goldfish_battery_data_s, battery);
|
||||||
uint32_t regval;
|
uint32_t regval;
|
||||||
float vol;
|
|
||||||
|
|
||||||
/* BATTERY_VOLTAGE units is µV */
|
/* BATTERY_VOLTAGE units is µV */
|
||||||
|
|
||||||
regval = GOLDFISH_BATTERY_READ(data, BATTERY_VOLTAGE);
|
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 = regval / 1000;
|
||||||
*value = ftob16(vol);
|
|
||||||
return OK;
|
return OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int goldfish_battery_capacity(FAR struct battery_gauge_dev_s *dev,
|
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 =
|
FAR struct goldfish_battery_data_s *data =
|
||||||
container_of(dev, struct goldfish_battery_data_s, battery);
|
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 */
|
/* BATTERY_CAPACITY units is percentage */
|
||||||
|
|
||||||
regval = GOLDFISH_BATTERY_READ(data, BATTERY_CAPACITY);
|
regval = GOLDFISH_BATTERY_READ(data, BATTERY_CAPACITY);
|
||||||
*value = uitoub16(regval);
|
*value = regval;
|
||||||
return OK;
|
return OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int goldfish_battery_current(FAR struct battery_gauge_dev_s *dev,
|
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 =
|
FAR struct goldfish_battery_data_s *data =
|
||||||
container_of(dev, struct goldfish_battery_data_s, battery);
|
container_of(dev, struct goldfish_battery_data_s, battery);
|
||||||
uint32_t regval;
|
uint32_t regval;
|
||||||
float current;
|
|
||||||
|
|
||||||
/* BATTERY_CURRENT_NOW units is µA */
|
/* BATTERY_CURRENT_NOW units is µA */
|
||||||
|
|
||||||
regval = GOLDFISH_BATTERY_READ(data, BATTERY_CURRENT_NOW);
|
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 = regval / 1000;
|
||||||
*value = ftob16(current);
|
|
||||||
return OK;
|
return OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int goldfish_battery_temp(FAR struct battery_gauge_dev_s *dev,
|
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 =
|
FAR struct goldfish_battery_data_s *data =
|
||||||
container_of(dev, struct goldfish_battery_data_s, battery);
|
container_of(dev, struct goldfish_battery_data_s, battery);
|
||||||
int32_t regval;
|
int32_t regval;
|
||||||
float temp;
|
|
||||||
|
|
||||||
/* BATTERY_TEMP units is 0.1 celsius */
|
/* BATTERY_TEMP units is 0.1 celsius */
|
||||||
|
|
||||||
regval = GOLDFISH_BATTERY_READ(data, BATTERY_TEMP);
|
regval = GOLDFISH_BATTERY_READ(data, BATTERY_TEMP);
|
||||||
|
|
||||||
/* convert to unit celsius and fill b16_t */
|
*value = regval;
|
||||||
|
|
||||||
temp = regval / 10.0f;
|
|
||||||
*value = ftob8(temp);
|
|
||||||
return OK;
|
return OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user