The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/contrib/device-tree/Bindings/power/supply/gpio-charger.yaml

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 # SPDX-License-Identifier: GPL-2.0
    2 %YAML 1.2
    3 ---
    4 $id: http://devicetree.org/schemas/power/supply/gpio-charger.yaml#
    5 $schema: http://devicetree.org/meta-schemas/core.yaml#
    6 
    7 title: simple battery chargers only communicating through GPIOs
    8 
    9 maintainers:
   10   - Sebastian Reichel <sre@kernel.org>
   11 
   12 description:
   13   This binding is for all chargers, which are working more or less
   14   autonomously, only providing some status GPIOs and possibly some
   15   GPIOs for limited control over the charging process.
   16 
   17 properties:
   18   compatible:
   19     const: gpio-charger
   20 
   21   charger-type:
   22     enum:
   23       - unknown
   24       - battery
   25       - ups
   26       - mains
   27       - usb-sdp                   # USB standard downstream port
   28       - usb-dcp                   # USB dedicated charging port
   29       - usb-cdp                   # USB charging downstream port
   30       - usb-aca                   # USB accessory charger adapter
   31     description:
   32       Type of the charger, e.g. "mains" for a wall charger.
   33 
   34   gpios:
   35     maxItems: 1
   36     description: GPIO indicating the charger presence
   37 
   38   charge-status-gpios:
   39     maxItems: 1
   40     description: GPIO indicating the charging status
   41 
   42   charge-current-limit-gpios:
   43     minItems: 1
   44     maxItems: 32
   45     description: GPIOs used for current limiting
   46 
   47   charge-current-limit-mapping:
   48     description: List of tuples with current in uA and a GPIO bitmap (in
   49       this order). The tuples must be provided in descending order of the
   50       current limit.
   51     $ref: /schemas/types.yaml#/definitions/uint32-matrix
   52     items:
   53       items:
   54         - description:
   55             Current limit in uA
   56         - description:
   57             Encoded GPIO setting. Bit 0 represents last GPIO from the
   58             charge-current-limit-gpios property. Bit 1 second to last
   59             GPIO and so on.
   60 
   61 required:
   62   - compatible
   63 
   64 anyOf:
   65   - required:
   66       - gpios
   67   - required:
   68       - charge-status-gpios
   69   - required:
   70       - charge-current-limit-gpios
   71 
   72 dependencies:
   73   charge-current-limit-gpios: [ charge-current-limit-mapping ]
   74   charge-current-limit-mapping: [ charge-current-limit-gpios ]
   75 
   76 additionalProperties: false
   77 
   78 examples:
   79   - |
   80     #include <dt-bindings/gpio/gpio.h>
   81 
   82     charger {
   83       compatible = "gpio-charger";
   84       charger-type = "usb-sdp";
   85 
   86       gpios = <&gpd 28 GPIO_ACTIVE_LOW>;
   87       charge-status-gpios = <&gpc 27 GPIO_ACTIVE_LOW>;
   88 
   89       charge-current-limit-gpios = <&gpioA 11 GPIO_ACTIVE_HIGH>,
   90                                    <&gpioA 12 GPIO_ACTIVE_HIGH>;
   91       charge-current-limit-mapping = <2500000 0x00>, // 2.5 A => both GPIOs low
   92                                      <700000 0x01>, // 700 mA => GPIO A.12 high
   93                                      <0 0x02>; // 0 mA => GPIO A.11 high
   94     };

Cache object: 31c74089d968c590a9a86971e9e33955


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.