xref: /freebsd/sys/contrib/device-tree/Bindings/mmc/mmc-pwrseq-simple.yaml (revision b51f459a2098622c31ed54f5c1bf0e03efce403b)
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 binding
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    $ref: /schemas/types.yaml#/definitions/uint32
45
46  power-off-delay-us:
47    description:
48      Delay in us after asserting the reset-gpios (if any)
49      during power off of the card.
50    $ref: /schemas/types.yaml#/definitions/uint32
51
52required:
53  - compatible
54
55additionalProperties: false
56
57examples:
58  - |
59    #include <dt-bindings/gpio/gpio.h>
60    sdhci0_pwrseq {
61      compatible = "mmc-pwrseq-simple";
62      reset-gpios = <&gpio1 12 GPIO_ACTIVE_LOW>;
63      clocks = <&clk_32768_ck>;
64      clock-names = "ext_clock";
65    };
66...
67