Message ID | 20200414125208.1091989-1-t.schramm@manjaro.org (mailing list archive) |
---|---|
Headers | show |
Series | Add support for CellWise cw2015 fuel gauge | expand |
Hi, On Tue, Apr 14, 2020 at 02:52:05PM +0200, Tobias Schramm wrote: > This patchset adds support for the CellWise cw2015 fuel gauge. > > The CellWise cw2015 fuel gauge is a shuntless, single-cell Li-Ion fuel > gauge. It is used in the pine64 Pinebook Pro laptop. > > This is just a resend of v6 to the linux-pm maintainers for merging. > > I've kept the cellwise,battery-profile property in the device tree. Its > content describes characteristics of the battery built into a device. The > exact format is unknown and not publicly documented. It is likely > comprised of some key parameters of the battery (chemistry, voltages, > design capacity) and parameters for tuning the internal state of charge > approximation function. > Since v2 CellWise has confirmed to me that the only way to obtain the > profile blob is to mail them batteries for testing. Thus we will need to > keep that property. Thanks, queued. > In general I'm not 100 % sure about my json-schema binding for the gauge. > It is my first time ever writing a json-schema binding and I'm not sure > whether properties like power-supplies or monitored-battery need to be > added to a separate, common schema for power supplies or not. Yes, they should be referenced, but at the time of your patch the common power-supply properties and the battery bindings have not yet been converted to YAML. The power-supplies property is now described in Documentation/devicetree/bindings/power/supply/power-supply.yaml and conversion of the simple-battery binding will hopefully happen soon. Afterwards we can update the cw2015 binding accordingly. -- Sebastian > Best Regards, > > Tobias Schramm > > Changelog: > v2: > * Change subject to "Add support for CellWise cw2015 fuel gauge" > * Rewrite bindings as json-schema > * Use default power-supplies handling > * Use regmap for register access > * Use standard simple-battery node > * Replace printk/pr_* by dev_{dbg,info,warn,err} > * Use cancel_delayed_work_sync in remove > * General code cleanup > v3: > * Incorporate review by Andy > * Add cellwise vendor prefix > * Rename cellwise,bat-config-info property to cellwise,battery-profile > * Remove most state of charge post-processing > * Use fwnode interface > * General code cleanup > * Lots of code style fixes > v4: > * Implement additional changes requested by Andy > * Use fwnode inline wrappers > * Clean up waiting for gauge > * Minor code style fixes > v5: > * Clean up includes > * Handle errors during device property parsing > * Refactor device property parsing > * Replace i2c->probe by i2c->probe_new > * More code style fixes > v6: > * Fix bindings according to review by Rob > > Tobias Schramm (3): > dt-bindings: Document cellwise vendor-prefix > dt-bindings: power: supply: add cw2015_battery bindings > power: supply: add CellWise cw2015 fuel gauge driver > > .../bindings/power/supply/cw2015_battery.yaml | 82 ++ > .../devicetree/bindings/vendor-prefixes.yaml | 2 + > MAINTAINERS | 6 + > drivers/power/supply/Kconfig | 11 + > drivers/power/supply/Makefile | 1 + > drivers/power/supply/cw2015_battery.c | 749 ++++++++++++++++++ > 6 files changed, 851 insertions(+) > create mode 100644 Documentation/devicetree/bindings/power/supply/cw2015_battery.yaml > create mode 100644 drivers/power/supply/cw2015_battery.c > > -- > 2.26.0 >