xref: /freebsd/sys/contrib/device-tree/Bindings/mmc/mmc-pwrseq-simple.yaml (revision a90b9d0159070121c221b966469c3e36d912bf82)
1# SPDX-License-Identifier: GPL-2.0
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/mmc/mmc-pwrseq-simple.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Simple MMC power sequence provider
8
9maintainers:
10  - Ulf Hansson <ulf.hansson@linaro.org>
11
12description:
13  The purpose of the simple MMC power sequence provider is to supports a set
14  of common properties between various SOC designs. It thus enables us to use
15  the same provider for several SOC designs.
16
17properties:
18  compatible:
19    const: mmc-pwrseq-simple
20
21  reset-gpios:
22    minItems: 1
23    # Put some limit to avoid false warnings
24    maxItems: 32
25    description:
26      contains a list of GPIO specifiers. The reset GPIOs are asserted
27      at initialization and prior we start the power up procedure of the card.
28      They will be de-asserted right after the power has been provided to the
29      card.
30
31  clocks:
32    minItems: 1
33    description: Handle for the entry in clock-names.
34
35  clock-names:
36    items:
37      - const: ext_clock
38    description: External clock provided to the card.
39
40  post-power-on-delay-ms:
41    description:
42      Delay in ms after powering the card and de-asserting the
43      reset-gpios (if any).
44
45  power-off-delay-us:
46    description:
47      Delay in us after asserting the reset-gpios (if any)
48      during power off of the card.
49
50required:
51  - compatible
52
53additionalProperties: false
54
55examples:
56  - |
57    #include <dt-bindings/gpio/gpio.h>
58    pwrseq {
59      compatible = "mmc-pwrseq-simple";
60      reset-gpios = <&gpio1 12 GPIO_ACTIVE_LOW>;
61      clocks = <&clk_32768_ck>;
62      clock-names = "ext_clock";
63    };
64...
65