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 7*a612130cSKrzysztof Kozlowskititle: Ingenic SoCs MMC Controller 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: 4234ce2930SPaul Cercueil minItems: 1 4334ce2930SPaul Cercueil maxItems: 2 442ebeea2bSPaul Cercueil 452ebeea2bSPaul Cercueil dma-names: 4634ce2930SPaul Cercueil oneOf: 4734ce2930SPaul Cercueil - items: 482ebeea2bSPaul Cercueil - const: rx 492ebeea2bSPaul Cercueil - const: tx 5034ce2930SPaul 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 }; 8434ce2930SPaul Cercueil - | 8534ce2930SPaul Cercueil #include <dt-bindings/clock/ingenic,jz4780-cgu.h> 8634ce2930SPaul Cercueil #include <dt-bindings/dma/jz4780-dma.h> 8734ce2930SPaul Cercueil /* 8834ce2930SPaul Cercueil * Alternative version of the example above, 8934ce2930SPaul Cercueil * but using one single DMA channel for both 9034ce2930SPaul Cercueil * TX and RX. 9134ce2930SPaul Cercueil */ 9234ce2930SPaul Cercueil mmc1: mmc@13460000 { 9334ce2930SPaul Cercueil compatible = "ingenic,jz4780-mmc"; 9434ce2930SPaul Cercueil reg = <0x13460000 0x1000>; 9534ce2930SPaul Cercueil 9634ce2930SPaul Cercueil interrupt-parent = <&intc>; 9734ce2930SPaul Cercueil interrupts = <36>; 9834ce2930SPaul Cercueil 9934ce2930SPaul Cercueil clocks = <&cgu JZ4780_CLK_MSC1>; 10034ce2930SPaul Cercueil clock-names = "mmc"; 10134ce2930SPaul Cercueil 10234ce2930SPaul Cercueil cap-sd-highspeed; 10334ce2930SPaul Cercueil cap-mmc-highspeed; 10434ce2930SPaul Cercueil cap-sdio-irq; 10534ce2930SPaul Cercueil dmas = <&dma JZ4780_DMA_MSC1_TX JZ4780_DMA_MSC1_RX 0xffffffff>; 10634ce2930SPaul Cercueil dma-names = "tx-rx"; 10734ce2930SPaul Cercueil }; 108