Re: [PATCHv2] power: supply: cpcap-battery: Add a battery driver

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On Mon, May 22, 2017 at 05:56:37PM -0700, Tony Lindgren wrote:
> On the CPCAP PMIC we can use the ADCs for monitoring the battery,
> and there is also a coulomb counter. So let's add basic support for
> the battery driver.
> 
> I did not add any capacity prediction as that should probably be
> done in the user space. Or at least user space should tell the kernel
> some battery statistics and then the kernel driver could display the
> capacity based on that.
> 
> Note that I left out the battery interrupt handling for now as I need
> to spend more time on it for the battery empty interrupts. The driver
> works just fine without the interrupts too.
> 
> Cc: devicetree@xxxxxxxxxxxxxxx
> Cc: Marcel Partap <mpartap@xxxxxxx>
> Cc: Michael Scott <michael.scott@xxxxxxxxxx>
> Cc: Rob Herring <robh@xxxxxxxxxx>
> Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>
> ---
> 
> Changes since v1:
> 
> - Add support for battery low interrupts
> 
> - Fix POWER_SUPPLY_STATUS during charging to not flip constantly
>   by using average current
> 
> ---
>  .../bindings/power/supply/cpcap-battery.txt        |  27 +
>  drivers/power/supply/Kconfig                       |   8 +
>  drivers/power/supply/Makefile                      |   1 +
>  drivers/power/supply/cpcap-battery.c               | 808 +++++++++++++++++++++
>  4 files changed, 844 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/power/supply/cpcap-battery.txt
>  create mode 100644 drivers/power/supply/cpcap-battery.c
> 
> diff --git a/Documentation/devicetree/bindings/power/supply/cpcap-battery.txt b/Documentation/devicetree/bindings/power/supply/cpcap-battery.txt
> new file mode 100644
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/power/supply/cpcap-battery.txt
> @@ -0,0 +1,27 @@
> +Motorola CPCAP PMIC battery driver binding
> +
> +Required properties:
> +- compatible: Shall be "motorola,cpcap-battery"
> +- interrupts: Interrupt specifier for each name in interrupt-names
> +- interrupt-names: Should contain the following entries:
> +		   "lowbph", "lowbpl", "chrgcurr1", "battdetb"
> +- io-channels: IIO ADC channel specifier for each name in io-channel-names
> +- io-channel-names: Should contain the following entries:
> +		    "battdetb", "battp"

Doesn't match the example.

> +
> +Example:
> +
> +cpcap_battery: battery {
> +	compatible = "motorola,cpcap-battery";
> +	interrupts-extended = <
> +		&cpcap 5 0 &cpcap 3 0
> +		&cpcap 20 0 &cpcap 54 0
> +	>;
> +	interrupt-names =
> +		"lowbph", "lowbpl",
> +		"chrgcurr1", "battdetb";
> +	io-channels = <&cpcap_adc 0 &cpcap_adc 1
> +		       &cpcap_adc 5 &cpcap_adc 6>;
> +	io-channel-names = "battdetb", "battp",
> +			   "chg_isense", "batti";
> +};
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]
  Powered by Linux