Re: [PATCH 2/3] mfd/axp20x: add support for fuel gauge cell driver

From: Jacob Pan
Date: Wed Jan 07 2015 - 20:05:10 EST


On Wed, 7 Jan 2015 13:25:52 -0800
Todd E Brandt <todd.e.brandt@xxxxxxxxxxxxxxx> wrote:

> mfd/axp20x: add support for fuel gauge cell
>
Acked-by: Jacob Pan <jacob.jun.pan@xxxxxxxxxxxxxxx>
> Register definitions and platform data structure
> for fuel gauge cell devices.
>
> Signed-off-by: Todd Brandt <todd.e.brandt@xxxxxxxxx>
> ----
> include/linux/mfd/axp20x.h | 43
> +++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 41
> insertions(+), 2 deletions(-)
>
> diff --git a/include/linux/mfd/axp20x.h b/include/linux/mfd/axp20x.h
> index 81589d1..dfabd6d 100644
> --- a/include/linux/mfd/axp20x.h
> +++ b/include/linux/mfd/axp20x.h
> @@ -124,10 +124,27 @@ enum {
> #define AXP288_PMIC_ADC_H 0x56
> #define AXP288_PMIC_ADC_L 0x57
> #define AXP288_ADC_TS_PIN_CTRL 0x84
> -
> #define AXP288_PMIC_ADC_EN 0x84
> -#define AXP288_FG_TUNE5 0xed
>
> +/* Fuel Gauge */
> +#define AXP288_FG_RDC1_REG 0xba
> +#define AXP288_FG_RDC0_REG 0xbb
> +#define AXP288_FG_OCVH_REG 0xbc
> +#define AXP288_FG_OCVL_REG 0xbd
> +#define AXP288_FG_OCV_CURVE_REG 0xc0
> +#define AXP288_FG_DES_CAP1_REG 0xe0
> +#define AXP288_FG_DES_CAP0_REG 0xe1
> +#define AXP288_FG_CC_MTR1_REG 0xe2
> +#define AXP288_FG_CC_MTR0_REG 0xe3
> +#define AXP288_FG_OCV_CAP_REG 0xe4
> +#define AXP288_FG_CC_CAP_REG 0xe5
> +#define AXP288_FG_LOW_CAP_REG 0xe6
> +#define AXP288_FG_TUNE0 0xe8
> +#define AXP288_FG_TUNE1 0xe9
> +#define AXP288_FG_TUNE2 0xea
> +#define AXP288_FG_TUNE3 0xeb
> +#define AXP288_FG_TUNE4 0xec
> +#define AXP288_FG_TUNE5 0xed
>
> /* Regulators IDs */
> enum {
> @@ -236,4 +253,26 @@ struct axp20x_dev {
> const struct regmap_irq_chip *regmap_irq_chip;
> };
>
> +#define BATTID_LEN 64
> +#define OCV_CURVE_SIZE 32
> +#define MAX_THERM_CURVE_SIZE 25
> +#define PD_DEF_MIN_TEMP 0
> +#define PD_DEF_MAX_TEMP 55
> +
> +struct axp20x_fg_pdata {
> + char battid[BATTID_LEN + 1];
> + int design_cap;
> + int min_volt;
> + int max_volt;
> + int max_temp;
> + int min_temp;
> + int cap1;
> + int cap0;
> + int rdc1;
> + int rdc0;
> + int ocv_curve[OCV_CURVE_SIZE];
> + int tcsz;
> + int thermistor_curve[MAX_THERM_CURVE_SIZE][2];
> +};
> +
> #endif /* __LINUX_MFD_AXP20X_H */

[Jacob Pan]
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/