Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for LT8491 #2639

Open
wants to merge 3 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
89 changes: 89 additions & 0 deletions Documentation/devicetree/bindings/power/supply/adi,lt8491.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,89 @@
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/power/supply/adi,lt8491.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Linear Technology (Analog Devices) LT8491 Battery Charger

maintainers:
- John Erasmus Mari Geronimo <[email protected]>

description: |
The LT8491 is a buck-boost switching regulator battery charger that implements
a constant-current constant-voltage (CCCV) charging profile used for most
battery types, including sealed lead-acid (SLA), flooded, gel and lithium-ion.

Specifications about the charger can be found at:
https://www.analog.com/en/products/lt8491.html

properties:
compatible:
enum:
- adi,lt8491

reg:
maxItems: 1

adi,rsense1-micro-ohms:
description: Resistance value of RSENSE1 in micro ohms.

adi,rimon-out-ohms:
description: Resistance value of RIMON_OUT in ohms.

adi,rsense2-micro-ohms:
description: Resistance value of RSENSE2 in micro ohms.

adi,rdaco-ohms:
description: Resistance value of RDACO in ohms.

adi,rfbout1-ohms:
description: Resistance value of RFBOUT1 in ohms.

adi,rfbout2-ohms:
description: Resistance value of RFBOUT2 in ohms.

adi,rdaci-ohms:
description: Resistance value of RDACI in ohms.

adi,rfbin2-ohms:
description: Resistance value of RFBIN2 in ohms.

adi,rfbin1-ohms:
description: Resistance value of RFBIN1 in ohms.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are there any constrains for the resistor values (or default values)?


required:
- compatible
- reg
- adi,rsense1-micro-ohms
- adi,rimon-out-ohms
- adi,rsense2-micro-ohms
- adi,rdaco-ohms
- adi,rfbout1-ohms
- adi,rfbout2-ohms
- adi,rdaci-ohms
- adi,rfbin2-ohms
- adi,rfbin1-ohms
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just to make sure. Are all these properties really mandatory?


additionalProperties: false

examples:
- |
i2c {
#address-cells = <1>;
#size-cells = <0>;

battery-charger@10 {
compatible = "adi,lt8491";
reg = <0x10>;
adi,rsense1-micro-ohms = <5000>;
adi,rimon-out-ohms = <124000>;
adi,rsense2-micro-ohms = <3000>;
adi,rdaco-ohms = <64900>;
adi,rfbout1-ohms = <113000>;
adi,rfbout2-ohms = <10000>;
adi,rdaci-ohms = <7000>;
adi,rfbin2-ohms = <3480>;
adi,rfbin1-ohms = <102000>;
};
};
1 change: 1 addition & 0 deletions Kconfig.adi
Original file line number Diff line number Diff line change
Expand Up @@ -92,6 +92,7 @@ config KERNEL_ALL_ADI_DRIVERS
imply RTC_DRV_MAX31335
imply REGULATOR_MAX77503
imply REGULATOR_MAX77857
imply CHARGER_LT8491

source "drivers/clk/Kconfig.adi"
source "drivers/hwmon/Kconfig.adi"
Expand Down
9 changes: 9 additions & 0 deletions drivers/power/supply/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -533,6 +533,15 @@ config CHARGER_LT3651
Say Y to include support for the Analog Devices (Linear Technology)
LT3651 battery charger which reports its status via GPIO lines.

config CHARGER_LT8491
tristate "Analog Devices LT8491 charger"
depends on I2C
help
Say Y to include support for the Analog Devices (Linear Technology)
LT8491 battery charge controller connected to I2C. The LT8491 is a
high voltage buck-boost switching regulator battery charger
controller.

config CHARGER_LTC4162L
tristate "LTC4162-L charger"
depends on I2C
Expand Down
1 change: 1 addition & 0 deletions drivers/power/supply/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,7 @@ obj-$(CONFIG_CHARGER_LP8788) += lp8788-charger.o
obj-$(CONFIG_CHARGER_GPIO) += gpio-charger.o
obj-$(CONFIG_CHARGER_MANAGER) += charger-manager.o
obj-$(CONFIG_CHARGER_LT3651) += lt3651-charger.o
obj-$(CONFIG_CHARGER_LT8491) += lt8491_charger.o
obj-$(CONFIG_CHARGER_LTC4162L) += ltc4162-l-charger.o
obj-$(CONFIG_CHARGER_MAX14577) += max14577_charger.o
obj-$(CONFIG_CHARGER_DETECTOR_MAX14656) += max14656_charger_detector.o
Expand Down
Loading