xref: /freebsd-src/sys/contrib/device-tree/Bindings/mmc/mmc-spi-slot.yaml (revision 0e8011faf58b743cc652e3b2ad0f7671227610df)
1b97ee269SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2b97ee269SEmmanuel Vadot%YAML 1.2
3b97ee269SEmmanuel Vadot---
4b97ee269SEmmanuel Vadot$id: http://devicetree.org/schemas/mmc/mmc-spi-slot.yaml#
5b97ee269SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6b97ee269SEmmanuel Vadot
7b97ee269SEmmanuel Vadottitle: MMC/SD/SDIO slot directly connected to a SPI bus
8b97ee269SEmmanuel Vadot
9b97ee269SEmmanuel Vadotmaintainers:
10b97ee269SEmmanuel Vadot  - Ulf Hansson <ulf.hansson@linaro.org>
11b97ee269SEmmanuel Vadot
12b97ee269SEmmanuel VadotallOf:
13cb7aa33aSEmmanuel Vadot  - $ref: mmc-controller.yaml
14b97ee269SEmmanuel Vadot  - $ref: /schemas/spi/spi-peripheral-props.yaml
15b97ee269SEmmanuel Vadot
16b97ee269SEmmanuel Vadotdescription: |
17b97ee269SEmmanuel Vadot  The extra properties used by an mmc connected via SPI.
18b97ee269SEmmanuel Vadot
19b97ee269SEmmanuel Vadotproperties:
20b97ee269SEmmanuel Vadot  compatible:
21b97ee269SEmmanuel Vadot    const: mmc-spi-slot
22b97ee269SEmmanuel Vadot
23b97ee269SEmmanuel Vadot  reg:
24b97ee269SEmmanuel Vadot    maxItems: 1
25b97ee269SEmmanuel Vadot
26b97ee269SEmmanuel Vadot  interrupts:
27b97ee269SEmmanuel Vadot    maxItems: 1
28b97ee269SEmmanuel Vadot
29b97ee269SEmmanuel Vadot  voltage-ranges:
30*0e8011faSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32-matrix
31b97ee269SEmmanuel Vadot    description: |
32b97ee269SEmmanuel Vadot      Two cells are required, first cell specifies minimum slot voltage (mV),
33b97ee269SEmmanuel Vadot      second cell specifies maximum slot voltage (mV).
34b97ee269SEmmanuel Vadot    items:
35*0e8011faSEmmanuel Vadot      items:
36b97ee269SEmmanuel Vadot        - description: |
37b97ee269SEmmanuel Vadot            value for minimum slot voltage in mV
38b97ee269SEmmanuel Vadot          default: 3200
39b97ee269SEmmanuel Vadot        - description: |
40b97ee269SEmmanuel Vadot            value for maximum slot voltage in mV
41b97ee269SEmmanuel Vadot          default: 3400
42*0e8011faSEmmanuel Vadot    maxItems: 1
43b97ee269SEmmanuel Vadot
44b97ee269SEmmanuel Vadot  gpios:
45b97ee269SEmmanuel Vadot    description: |
46b97ee269SEmmanuel Vadot      For historical reasons, this does not follow the generic mmc-controller
47b97ee269SEmmanuel Vadot      binding.
48b97ee269SEmmanuel Vadot    minItems: 1
49b97ee269SEmmanuel Vadot    items:
50b97ee269SEmmanuel Vadot      - description: Card-Detect GPIO
51b97ee269SEmmanuel Vadot      - description: Write-Protect GPIO
52b97ee269SEmmanuel Vadot
53b97ee269SEmmanuel Vadotrequired:
54b97ee269SEmmanuel Vadot  - compatible
55b97ee269SEmmanuel Vadot  - reg
56b97ee269SEmmanuel Vadot  - spi-max-frequency
57b97ee269SEmmanuel Vadot
58b97ee269SEmmanuel VadotunevaluatedProperties: false
59b97ee269SEmmanuel Vadot
60b97ee269SEmmanuel Vadotexamples:
61b97ee269SEmmanuel Vadot  - |
62b97ee269SEmmanuel Vadot    #include <dt-bindings/gpio/gpio.h>
63b97ee269SEmmanuel Vadot    spi {
64b97ee269SEmmanuel Vadot      #address-cells = <1>;
65b97ee269SEmmanuel Vadot      #size-cells = <0>;
66b97ee269SEmmanuel Vadot      mmc@0 {
67b97ee269SEmmanuel Vadot        compatible = "mmc-spi-slot";
68b97ee269SEmmanuel Vadot        reg = <0>;
69b97ee269SEmmanuel Vadot        gpios = <&gpio 14 GPIO_ACTIVE_LOW>, <&gpio 15 GPIO_ACTIVE_HIGH>;
70b97ee269SEmmanuel Vadot        voltage-ranges = <3300 3300>;
71b97ee269SEmmanuel Vadot        spi-max-frequency = <50000000>;
72b97ee269SEmmanuel Vadot        interrupts = <42>;
73b97ee269SEmmanuel Vadot        interrupt-parent = <&PIC>;
74b97ee269SEmmanuel Vadot      };
75b97ee269SEmmanuel Vadot    };
76b97ee269SEmmanuel Vadot
77b97ee269SEmmanuel Vadot...
78