Convert the gpio-charger bindings from text format to new YAML based representation. Signed-off-by: Sebastian Reichel <sebastian.reichel@xxxxxxxxxxxxx> --- .../bindings/power/supply/gpio-charger.txt | 38 ---------- .../bindings/power/supply/gpio-charger.yaml | 75 +++++++++++++++++++ 2 files changed, 75 insertions(+), 38 deletions(-) delete mode 100644 Documentation/devicetree/bindings/power/supply/gpio-charger.txt create mode 100644 Documentation/devicetree/bindings/power/supply/gpio-charger.yaml diff --git a/Documentation/devicetree/bindings/power/supply/gpio-charger.txt b/Documentation/devicetree/bindings/power/supply/gpio-charger.txt deleted file mode 100644 index dbfd29029f69..000000000000 --- a/Documentation/devicetree/bindings/power/supply/gpio-charger.txt +++ /dev/null @@ -1,38 +0,0 @@ -gpio-charger - -Required properties : - - compatible : "gpio-charger" - - charger-type : power supply type, one of - unknown - battery - ups - mains - usb-sdp (USB standard downstream port) - usb-dcp (USB dedicated charging port) - usb-cdp (USB charging downstream port) - usb-aca (USB accessory charger adapter) - -Optional properties: - - gpios : GPIO indicating the charger presence. - See GPIO binding in bindings/gpio/gpio.txt . - - charge-status-gpios: GPIO indicating whether a battery is charging. - - charge-current-limit-gpios: Output GPIOs specifiers for limiting the charge current - - charge-current-limit-mapping: List of touples with current in uA and a GPIO bitmap (in this order). - The GPIOs are encoded in the same order as specified in charge-current-limit-gpios. - The touples must be provided in descending order of the current limit. - -Example: - - usb_charger: charger { - compatible = "gpio-charger"; - charger-type = "usb-sdp"; - gpios = <&gpd 28 GPIO_ACTIVE_LOW>; - charge-status-gpios = <&gpc 27 GPIO_ACTIVE_LOW>; - - charge-current-limit-gpios = <&gpioA 11 GPIO_ACTIVE_HIGH>, <&gpioA 12 GPIO_ACTIVE_HIGH>; - charge-current-limit-mapping = <2500000 0x00>, <700000 0x01>, <0 0x02>; - }; - - battery { - power-supplies = <&usb_charger>; - }; diff --git a/Documentation/devicetree/bindings/power/supply/gpio-charger.yaml b/Documentation/devicetree/bindings/power/supply/gpio-charger.yaml new file mode 100644 index 000000000000..14fb3e54f861 --- /dev/null +++ b/Documentation/devicetree/bindings/power/supply/gpio-charger.yaml @@ -0,0 +1,75 @@ +# SPDX-License-Identifier: GPL-2.0 +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/power/supply/gpio-charger.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: simple battery chargers only communicating through GPIOs + +maintainers: + - Sebastian Reichel <sre@xxxxxxxxxx> + +description: | + This binding is for all chargers, which are working more + or less autonomously, only providing some status GPIOs + and possibly some GPIOs for limited control over the + charging process. + +properties: + compatible: + const: gpio-charger + + charger-type: + oneOf: + - const: unknown + - const: battery + - const: ups + - const: mains + - const: usb-sdp # USB standard downstream port + - const: usb-dcp # USB dedicated charging port + - const: usb-cdp # USB charging downstream port + - const: usb-aca # USB accessory charger adapter + + gpios: + maxItems: 1 + description: GPIO indicating the charger presence + + charge-status-gpios: + maxItems: 1 + description: GPIO indicating the charging status + + charge-current-limit-gpios: + minItems: 1 + maxItems: 32 + description: GPIOs used for current limiting + + charge-current-limit-mapping: + description: List of touples with current in uA and a GPIO bitmap (in + this order). The GPIOs are encoded in the same order as specified in + charge-current-limit-gpios. The touples must be provided in descending + order of the current limit. + $ref: "/meta-schemas/cell.yaml#array" + +required: + - compatible +additionalProperties: false + +dependencies: + charge-current-limit-gpios: [ charge-current-limit-mapping ] + charge-current-limit-mapping: [ charge-current-limit-gpios ] + +examples: + - | + #include <dt-bindings/gpio/gpio.h> + + charger { + compatible = "gpio-charger"; + charger-type = "usb-sdp"; + + gpios = <&gpd 28 GPIO_ACTIVE_LOW>; + charge-status-gpios = <&gpc 27 GPIO_ACTIVE_LOW>; + + charge-current-limit-gpios = <&gpioA 11 GPIO_ACTIVE_HIGH>, + <&gpioA 12 GPIO_ACTIVE_HIGH>; + charge-current-limit-mapping = <2500000 0x00>, <700000 0x01>, <0 0x02>; + }; -- 2.26.2