blob: 022682a977c6d347c36279f958dcd6f53d385b71 [file] [log] [blame] [edit]
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/mmc/amlogic,meson-mx-sdio.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Amlogic Meson6, Meson8 and Meson8b SDIO/MMC controller
description: |
The highspeed MMC host controller on Amlogic SoCs provides an interface
for MMC, SD, SDIO and SDHC types of memory cards.
Supported maximum speeds are the ones of the eMMC standard 4.41 as well
as the speed of SD standard 2.0.
The hardware provides an internal "mux" which allows up to three slots
to be controlled. Only one slot can be accessed at a time.
maintainers:
- Neil Armstrong <[email protected]>
properties:
compatible:
items:
- enum:
- amlogic,meson8-sdio
- amlogic,meson8b-sdio
- const: amlogic,meson-mx-sdio
reg:
maxItems: 1
interrupts:
maxItems: 1
clocks:
maxItems: 2
clock-names:
items:
- const: core
- const: clkin
"#address-cells":
const: 1
"#size-cells":
const: 0
patternProperties:
"slot@[0-2]$":
$ref: mmc-slot.yaml#
description:
A node for each slot provided by the MMC controller
properties:
reg:
enum: [0, 1, 2]
bus-width:
enum: [1, 4]
unevaluatedProperties: false
required:
- compatible
- reg
- interrupts
- clocks
- clock-names
- "#address-cells"
- "#size-cells"
additionalProperties: false
examples:
- |
#include <dt-bindings/interrupt-controller/irq.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
mmc@c1108c20 {
compatible = "amlogic,meson8-sdio", "amlogic,meson-mx-sdio";
reg = <0xc1108c20 0x20>;
interrupts = <GIC_SPI 28 IRQ_TYPE_EDGE_RISING>;
clocks = <&clk_core>, <&clk_in>;
clock-names = "core", "clkin";
#address-cells = <1>;
#size-cells = <0>;
slot@1 {
compatible = "mmc-slot";
reg = <1>;
bus-width = <4>;
};
};