linux/Documentation/devicetree/bindings/mmc/amlogic,meson-mx-sdio.yaml
Dharma Balasubiramani ec53e2ea6b dt-bindings: mmc: mmc-slot: Make compatible property optional
The compatible property is required for some vendor-specific device trees,
such as Amlogic's meson-mx-sdio, but is unnecessary for others, like
Microchip's DTS. To resolve unintended warnings for configurations that do
not require it, remove compatible from the required properties in
mmc-slot.yaml.

Since meson-mx-sdio still requires compatible, explicitly add it to its
required list in amlogic,meson-mx-sdio.yaml.

Signed-off-by: Dharma Balasubiramani <dharma.b@microchip.com>
Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
Link: https://lore.kernel.org/r/20250224-mmc-slot-v4-1-231620a31e88@microchip.com
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
2025-03-11 18:48:18 +01:00

97 lines
2 KiB
YAML

# 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 <neil.armstrong@linaro.org>
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]
required:
- compatible
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>;
};
};