12ebeea2bSPaul Cercueil# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 22ebeea2bSPaul Cercueil%YAML 1.2 32ebeea2bSPaul Cercueil--- 42ebeea2bSPaul Cercueil$id: http://devicetree.org/schemas/mmc/ingenic,mmc.yaml# 52ebeea2bSPaul Cercueil$schema: http://devicetree.org/meta-schemas/core.yaml# 62ebeea2bSPaul Cercueil 72ebeea2bSPaul Cercueiltitle: Ingenic SoCs MMC Controller DT bindings 82ebeea2bSPaul Cercueil 92ebeea2bSPaul Cercueilmaintainers: 102ebeea2bSPaul Cercueil - Paul Cercueil <paul@crapouillou.net> 112ebeea2bSPaul Cercueil 122ebeea2bSPaul CercueilallOf: 132ebeea2bSPaul Cercueil - $ref: mmc-controller.yaml# 142ebeea2bSPaul Cercueil 152ebeea2bSPaul Cercueilproperties: 162ebeea2bSPaul Cercueil compatible: 172ebeea2bSPaul Cercueil oneOf: 182ebeea2bSPaul Cercueil - enum: 192ebeea2bSPaul Cercueil - ingenic,jz4740-mmc 202ebeea2bSPaul Cercueil - ingenic,jz4725b-mmc 212ebeea2bSPaul Cercueil - ingenic,jz4760-mmc 223160e025S周琰杰 (Zhou Yanjie) - ingenic,jz4775-mmc 232ebeea2bSPaul Cercueil - ingenic,jz4780-mmc 242ebeea2bSPaul Cercueil - ingenic,x1000-mmc 252ebeea2bSPaul Cercueil - items: 262ebeea2bSPaul Cercueil - const: ingenic,jz4770-mmc 272ebeea2bSPaul Cercueil - const: ingenic,jz4760-mmc 282ebeea2bSPaul Cercueil 292ebeea2bSPaul Cercueil reg: 302ebeea2bSPaul Cercueil maxItems: 1 312ebeea2bSPaul Cercueil 322ebeea2bSPaul Cercueil interrupts: 332ebeea2bSPaul Cercueil maxItems: 1 342ebeea2bSPaul Cercueil 352ebeea2bSPaul Cercueil clocks: 362ebeea2bSPaul Cercueil maxItems: 1 372ebeea2bSPaul Cercueil 382ebeea2bSPaul Cercueil clock-names: 392ebeea2bSPaul Cercueil const: mmc 402ebeea2bSPaul Cercueil 412ebeea2bSPaul Cercueil dmas: 42*34ce2930SPaul Cercueil minItems: 1 43*34ce2930SPaul Cercueil maxItems: 2 442ebeea2bSPaul Cercueil 452ebeea2bSPaul Cercueil dma-names: 46*34ce2930SPaul Cercueil oneOf: 47*34ce2930SPaul Cercueil - items: 482ebeea2bSPaul Cercueil - const: rx 492ebeea2bSPaul Cercueil - const: tx 50*34ce2930SPaul Cercueil - const: tx-rx 512ebeea2bSPaul Cercueil 522ebeea2bSPaul Cercueilrequired: 532ebeea2bSPaul Cercueil - compatible 542ebeea2bSPaul Cercueil - reg 552ebeea2bSPaul Cercueil - interrupts 562ebeea2bSPaul Cercueil - clocks 572ebeea2bSPaul Cercueil - clock-names 582ebeea2bSPaul Cercueil - dmas 592ebeea2bSPaul Cercueil - dma-names 602ebeea2bSPaul Cercueil 616fdc6e23SRob HerringunevaluatedProperties: false 626fdc6e23SRob Herring 632ebeea2bSPaul Cercueilexamples: 642ebeea2bSPaul Cercueil - | 65c4a11bf4SPaul Cercueil #include <dt-bindings/clock/ingenic,jz4780-cgu.h> 662ebeea2bSPaul Cercueil #include <dt-bindings/dma/jz4780-dma.h> 672ebeea2bSPaul Cercueil mmc0: mmc@13450000 { 682ebeea2bSPaul Cercueil compatible = "ingenic,jz4780-mmc"; 692ebeea2bSPaul Cercueil reg = <0x13450000 0x1000>; 702ebeea2bSPaul Cercueil 712ebeea2bSPaul Cercueil interrupt-parent = <&intc>; 722ebeea2bSPaul Cercueil interrupts = <37>; 732ebeea2bSPaul Cercueil 742ebeea2bSPaul Cercueil clocks = <&cgu JZ4780_CLK_MSC0>; 752ebeea2bSPaul Cercueil clock-names = "mmc"; 762ebeea2bSPaul Cercueil 772ebeea2bSPaul Cercueil cap-sd-highspeed; 782ebeea2bSPaul Cercueil cap-mmc-highspeed; 792ebeea2bSPaul Cercueil cap-sdio-irq; 802ebeea2bSPaul Cercueil dmas = <&dma JZ4780_DMA_MSC0_RX 0xffffffff>, 812ebeea2bSPaul Cercueil <&dma JZ4780_DMA_MSC0_TX 0xffffffff>; 822ebeea2bSPaul Cercueil dma-names = "rx", "tx"; 832ebeea2bSPaul Cercueil }; 84*34ce2930SPaul Cercueil - | 85*34ce2930SPaul Cercueil #include <dt-bindings/clock/ingenic,jz4780-cgu.h> 86*34ce2930SPaul Cercueil #include <dt-bindings/dma/jz4780-dma.h> 87*34ce2930SPaul Cercueil /* 88*34ce2930SPaul Cercueil * Alternative version of the example above, 89*34ce2930SPaul Cercueil * but using one single DMA channel for both 90*34ce2930SPaul Cercueil * TX and RX. 91*34ce2930SPaul Cercueil */ 92*34ce2930SPaul Cercueil mmc1: mmc@13460000 { 93*34ce2930SPaul Cercueil compatible = "ingenic,jz4780-mmc"; 94*34ce2930SPaul Cercueil reg = <0x13460000 0x1000>; 95*34ce2930SPaul Cercueil 96*34ce2930SPaul Cercueil interrupt-parent = <&intc>; 97*34ce2930SPaul Cercueil interrupts = <36>; 98*34ce2930SPaul Cercueil 99*34ce2930SPaul Cercueil clocks = <&cgu JZ4780_CLK_MSC1>; 100*34ce2930SPaul Cercueil clock-names = "mmc"; 101*34ce2930SPaul Cercueil 102*34ce2930SPaul Cercueil cap-sd-highspeed; 103*34ce2930SPaul Cercueil cap-mmc-highspeed; 104*34ce2930SPaul Cercueil cap-sdio-irq; 105*34ce2930SPaul Cercueil dmas = <&dma JZ4780_DMA_MSC1_TX JZ4780_DMA_MSC1_RX 0xffffffff>; 106*34ce2930SPaul Cercueil dma-names = "tx-rx"; 107*34ce2930SPaul Cercueil }; 108