22.11.2021 13:49, Maxime Ripard пишет:
On Thu, Nov 18, 2021 at 05:12:33PM +0300, Evgeny Boger wrote:
Most AXPxxx-based reference designs place a 10k NTC thermistor on a
TS pin. axp20x IIO driver now report the voltage of this pin via
additional IIO channel. Add new "ts_v" channel to the channel description.
Signed-off-by: Evgeny Boger <boger@xxxxxxxxxxxxxx>
Would it make sense to put the resistance in the DT as well or is it
made mandatory by Allwinner?
Maxime
Well, I don't think so. Basically, by default AXP20x injects 80uA current
into the TS pin and measure the voltage. Then, there are voltage thresholds
to stop charging if the battery is too hot or too cold. The default
thresholds
were calculated by the manufacturer for default 10k resistance and 80uA
current.
Finally, if TS pin isshorted to GND, the AXP2xx will detect it and won't
shut
down charging.
Note that AXP2xx doesn't convert the measured voltage to temperature.
So while it's possible to use AXP2xx with resistance other than 10k, it will
require us to override these protection thresholds. Moreover, if one
want to
put the actual resistance in DT, then the driver would need to calculate
these
protection thresholds based on NTC parameters and injection current.
I think we better keep things simple and let DT followthe hardware,
which only
operates in terms of voltage, not temperature and resistance.
--