Mess in the /sysfs: class/power_supply
Hi!
So we have multiple values in one sysfs file:
root@n900:/sys/class/power_supply# cat bq24150a-0/registers 0x00=0x50 0x01=0xc8 0x02=0x8e 0x03=0x4b 0x04=0x99
(should this go to debugfs somewhere?)
Unobvious and undocumented entries:
root@n900:/sys/class/power_supply# cat bq24150a-0/boost_status 0 pavel@duo:/data/l/linux-n900$ grep -ri boost_status Documentation/ pavel@duo:/data/l/linux-n900$ grep -ri termination_current Documentation/ pavel@duo:/data/l/linux-n900$ grep -ri current_now Documentation/ pavel@duo:/data/l/linux-n900$ grep -ri time_to_empty_avg Documentation/ pavel@duo:/data/l/linux-n900$
And different units in different parts of tree:
(these are mA)
root@n900:/sys/class/power_supply# cat bq24150a-0/current_limit 1800 root@n900:/sys/class/power_supply# cat bq24150a-0/termination_current 100
(and this is in uA)
root@n900:/sys/class/power_supply# cat bq27200-0/current_now 12138
(I believe uA is right, so it is bq24150a that should be fixed....?)
Ok, of course questions are: do we need to do something with it? If so, what?
Best regards,
Pavel
Signature · 2 lines
(english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
Re: Mess in the /sysfs: class/power_supply/bq2415x
Hi Pavel,
Quoted 10 lines · Pavel Machek
So we have multiple values in one sysfs file:
root@n900:/sys/class/power_supply# cat bq24150a-0/registers 0x00=0x50 0x01=0xc8 0x02=0x8e 0x03=0x4b 0x04=0x99(should this go to debugfs somewhere?)
I guess this should be dropped in favour of debugfs. A standardized debugfs node will be exported automatically if the driver is converted to regmap.
Quoted 9 lines
Unobvious and undocumented entries:
root@n900:/sys/class/power_supply# cat bq24150a-0/boost_status 0 pavel@duo:/data/l/linux-n900$ grep -ri boost_status Documentation/ pavel@duo:/data/l/linux-n900$ grep -ri termination_current Documentation/ pavel@duo:/data/l/linux-n900$ grep -ri current_now Documentation/ pavel@duo:/data/l/linux-n900$ grep -ri time_to_empty_avg Documentation/ pavel@duo:/data/l/linux-n900$
Anton seems to have missed making Pali to write a Documentation patch. Pali: Can you do so, please?
Quoted 11 lines
And different units in different parts of tree:
(these are mA)
root@n900:/sys/class/power_supply# cat bq24150a-0/current_limit 1800 root@n900:/sys/class/power_supply# cat bq24150a-0/termination_current 100(and this is in uA)
Quoted 7 lines
root@n900:/sys/class/power_supply# cat bq27200-0/current_now 12138(I believe uA is right, so it is bq24150a that should be fixed....?)
Ok, of course questions are: do we need to do something with it? If so, what?
For consistency it should be uA, but I guess this would introduce a regression for Maemo people. Pali?
-- Sebastian
Re: Mess in the /sysfs: class/power_supply/bq2415x
Quoted 30 lines · On Wednesday 25 February 2015 22:44:42 Sebastian Reichel wrote:
Hi Pavel,
Quoted 10 lines · Pavel Machek
So we have multiple values in one sysfs file:
root@n900:/sys/class/power_supply# cat bq24150a-0/registers 0x00=0x50 0x01=0xc8 0x02=0x8e 0x03=0x4b 0x04=0x99(should this go to debugfs somewhere?)
I guess this should be dropped in favour of debugfs. A standardized debugfs node will be exported automatically if the driver is converted to regmap.
Quoted 11 lines
Unobvious and undocumented entries:
root@n900:/sys/class/power_supply# cat bq24150a-0/boost_status 0 pavel@duo:/data/l/linux-n900$ grep -ri boost_status Documentation/ pavel@duo:/data/l/linux-n900$ grep -ri termination_current Documentation/ pavel@duo:/data/l/linux-n900$ grep -ri current_now Documentation/ pavel@duo:/data/l/linux-n900$ grep -ri time_to_empty_avg Documentation/ pavel@duo:/data/l/linux-n900$
Quoted 3 lines
Anton seems to have missed making Pali to write a Documentation patch. Pali: Can you do so, please?
Some of properties are standard power_supply properties and those are documented in Documentation/power/power_supply_class.txt
bq2415x specific are documented only in bq2415x_charger.c source code. So probably we should move documentation into Documentation/power/bq2415x_charer.txt
But I think there are other stuff with higher priority for N900 as moving comments/documentation...
Quoted 9 lines
Quoted 9 lines
And different units in different parts of tree:
(these are mA)
root@n900:/sys/class/power_supply# cat bq24150a-0/current_limit 1800 root@n900:/sys/class/power_supply# cat bq24150a-0/termination_current 100
Those are non standard power-supply properties and so unit is not defined.
Quoted 5 lines
Quoted 5 lines
(and this is in uA)
root@n900:/sys/class/power_supply# cat bq27200-0/current_now 12138
This is power supply.
Quoted 3 lines
Quoted 3 lines
(I believe uA is right, so it is bq24150a that should be fixed....?)
Units
~~~~~
Quoting include/linux/power_supply.h:
All voltages, currents, charges, energies, time and
temperatures in µV,
µA, µAh, µWh, seconds and tenths of degree Celsius unless
otherwise
stated. It's driver's job to convert its raw values to units in
which
this class operates.
Quoted 7 lines
Quoted 2 lines
Ok, of course questions are: do we need to do something with it? If so, what?
For consistency it should be uA, but I guess this would introduce a regression for Maemo people. Pali?
-- Sebastian
It looks like that in Maemo & CSSU we are using only:
/sys/class/power_supply/bq24150a-0/mode /sys/class/power_supply/bq24150a-0/stat_pin_enable
But it does not mean that some other people do not use other bq2415x sysfs nodes.
Signature · 2 lines
Pali Rohár [email protected]