0001 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
0002 %YAML 1.2
0003 ---
0004 $id: http://devicetree.org/schemas/mmc/mmc-spi-slot.yaml#
0005 $schema: http://devicetree.org/meta-schemas/core.yaml#
0006
0007 title: MMC/SD/SDIO slot directly connected to a SPI bus
0008
0009 maintainers:
0010 - Ulf Hansson <ulf.hansson@linaro.org>
0011
0012 allOf:
0013 - $ref: "mmc-controller.yaml"
0014 - $ref: /schemas/spi/spi-peripheral-props.yaml
0015
0016 description: |
0017 The extra properties used by an mmc connected via SPI.
0018
0019 properties:
0020 compatible:
0021 const: mmc-spi-slot
0022
0023 reg:
0024 maxItems: 1
0025
0026 spi-max-frequency: true
0027
0028 interrupts:
0029 maxItems: 1
0030
0031 voltage-ranges:
0032 $ref: /schemas/types.yaml#/definitions/uint32-array
0033 description: |
0034 Two cells are required, first cell specifies minimum slot voltage (mV),
0035 second cell specifies maximum slot voltage (mV).
0036 items:
0037 - description: |
0038 value for minimum slot voltage in mV
0039 default: 3200
0040 - description: |
0041 value for maximum slot voltage in mV
0042 default: 3400
0043
0044 gpios:
0045 description: |
0046 For historical reasons, this does not follow the generic mmc-controller
0047 binding.
0048 minItems: 1
0049 items:
0050 - description: Card-Detect GPIO
0051 - description: Write-Protect GPIO
0052
0053 required:
0054 - compatible
0055 - reg
0056 - spi-max-frequency
0057
0058 unevaluatedProperties: false
0059
0060 examples:
0061 - |
0062 #include <dt-bindings/gpio/gpio.h>
0063 spi {
0064 #address-cells = <1>;
0065 #size-cells = <0>;
0066 mmc@0 {
0067 compatible = "mmc-spi-slot";
0068 reg = <0>;
0069 gpios = <&gpio 14 GPIO_ACTIVE_LOW>, <&gpio 15 GPIO_ACTIVE_HIGH>;
0070 voltage-ranges = <3300 3300>;
0071 spi-max-frequency = <50000000>;
0072 interrupts = <42>;
0073 interrupt-parent = <&PIC>;
0074 };
0075 };
0076
0077 ...