RE: [PATCH v2 3/4] power: Add support for DA9150 Fuel-Gauge

From: Opensource [Adam Thomson]
Date: Mon Jul 06 2015 - 10:27:37 EST


On July 3, 2015 16:22, Lee Jones wrote:

> > +/*
> > + * Function template to provide battery temperature. Should provide
> > + * 0.1 degrees C resolution return values.
> > + */
> > +typedef int (*da9150_read_temp_t)(void *context);
> > +
> > +/* Register temp callback function */
> > +void da9150_fg_register_temp_cb(struct power_supply *psy,
> da9150_read_temp_t cb,
> > + void *cb_context);
> > +
> > #endif /* __DA9150_FG_H */
>
> I still don't get why you think pointers are better than just calling
> the function directly. Can the *fn() ever point to different functions?

Here, the intention is to cover the scenario where a battery has no internal
thermistor, and cannot provide temperature readings to the DA9150 device. In
that scenario I've allowed for the option of providing an external function
which can give the temperature reading instead as DA9150 will not be able to
provide a correct reading in that scenario. This would be platform dependent and
such a platform using a battery not employing an NTC in their battery can
register its own call-back function to provide battery temperature instead.

So, in answer to your question, yes.
N‹§²æ¸›yú²X¬¶ÇvØ–)Þ{.nlj·¥Š{±‘êX§¶›¡Ü}©ž²ÆzÚj:+v‰¨¾«‘êZ+€Êzf£¢·hšˆ§~†­†Ûÿû®w¥¢¸?™¨è&¢)ßf”ùy§m…á«a¶Úÿ 0¶ìå