* Pavel Machek <pavel@xxxxxx> [200121 22:26]: > Hi! > > > >> Get a rough battery charge estimate until we've seen a high or low > > >> battery level. After that we can use the coulomb counter to calculate > > >> the battery capacity. > > >> > > >> Note that I should probably update this to support ocv-capacity-table > > >> before this makes sense to apply. With ocv-capacity-table we should be > > >> able to estimate battery state as described in the documentation for > > >> Documentation/devicetree/bindings/power/supply/battery.txt. > > > > > > Maybe we should let userspace do that? > > > > > > https://github.com/pavelmachek/libbattery > > > > Unless this gets integrated in UPower, My point of view is that > > userspace probably wants some uniform approach. Kernel interface > > definitely is one uniform interface that would also get picked up by UPower. > > I see that it is convenient to have it in kernel. I just assumed > Sebastian would not take that, because it does not _need_ to be in > kernel... I think we should find a way where we can keep the existing kernel interface as all the apps rely on that. If we allow userspace to optionally set the estimated battery full and battery empty coulomb counter values we should be all set. For temperature compensation it seems that the ocv-capacity-table is the way to go to describe the battery if the battery data is unsuable or does not exist. > And maybe it is easier in userspace, since userspace has access to > persistent storage, so it can store detailed battery calibration > parameters? (And Gnome/Mate even does something like that, see > mate-power-statistics). Agreed, at minimum the userspace should save estimated coulomb counter full and empty values. After that calculations are trivial as seen with this series. > So... not my decision. Don't care too much either way. I have been > doing this in userspace, but... > > What I'd like to see is some kind of indication that "this attribute > is not from hardware, kernel computed it for you" so clever userspace > can ignore it/compute it in more advanced way. Well we do have that via IIO already. Not sure if that is needed for power supply. Regards, Tony