1e67e8565SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2e67e8565SEmmanuel Vadot%YAML 1.2 3e67e8565SEmmanuel Vadot--- 4e67e8565SEmmanuel Vadot$id: http://devicetree.org/schemas/mmc/brcm,sdhci-brcmstb.yaml# 5e67e8565SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6e67e8565SEmmanuel Vadot 78bab661aSEmmanuel Vadottitle: Broadcom BRCMSTB/BMIPS SDHCI Controller 8e67e8565SEmmanuel Vadot 9e67e8565SEmmanuel Vadotmaintainers: 10e67e8565SEmmanuel Vadot - Al Cooper <alcooperx@gmail.com> 11e67e8565SEmmanuel Vadot - Florian Fainelli <f.fainelli@gmail.com> 12e67e8565SEmmanuel Vadot 13e67e8565SEmmanuel Vadotproperties: 14e67e8565SEmmanuel Vadot compatible: 15e67e8565SEmmanuel Vadot oneOf: 16e67e8565SEmmanuel Vadot - items: 17e67e8565SEmmanuel Vadot - enum: 18e67e8565SEmmanuel Vadot - brcm,bcm7216-sdhci 19e67e8565SEmmanuel Vadot - const: brcm,bcm7445-sdhci 20e67e8565SEmmanuel Vadot - const: brcm,sdhci-brcmstb 21e67e8565SEmmanuel Vadot - items: 22e67e8565SEmmanuel Vadot - enum: 23*0e8011faSEmmanuel Vadot - brcm,bcm2712-sdhci 248d13bc63SEmmanuel Vadot - brcm,bcm74165b0-sdhci 25e67e8565SEmmanuel Vadot - brcm,bcm7445-sdhci 26e67e8565SEmmanuel Vadot - brcm,bcm7425-sdhci 27e67e8565SEmmanuel Vadot - const: brcm,sdhci-brcmstb 28e67e8565SEmmanuel Vadot 29e67e8565SEmmanuel Vadot reg: 30d5b0e70fSEmmanuel Vadot maxItems: 2 31e67e8565SEmmanuel Vadot 32e67e8565SEmmanuel Vadot reg-names: 33e67e8565SEmmanuel Vadot items: 34e67e8565SEmmanuel Vadot - const: host 35e67e8565SEmmanuel Vadot - const: cfg 36e67e8565SEmmanuel Vadot 37e67e8565SEmmanuel Vadot interrupts: 38e67e8565SEmmanuel Vadot maxItems: 1 39e67e8565SEmmanuel Vadot 40e67e8565SEmmanuel Vadot clocks: 41b97ee269SEmmanuel Vadot minItems: 1 42b97ee269SEmmanuel Vadot items: 43b97ee269SEmmanuel Vadot - description: handle to core clock for the sdhci controller 44b97ee269SEmmanuel Vadot - description: handle to improved 150Mhz clock for sdhci controller (Optional clock) 45e67e8565SEmmanuel Vadot 46e67e8565SEmmanuel Vadot clock-names: 47b97ee269SEmmanuel Vadot minItems: 1 48e67e8565SEmmanuel Vadot items: 49e67e8565SEmmanuel Vadot - const: sw_sdio 50b97ee269SEmmanuel Vadot - const: sdio_freq # Optional clock 51b97ee269SEmmanuel Vadot 52b97ee269SEmmanuel Vadot clock-frequency: 53b97ee269SEmmanuel Vadot description: 54b97ee269SEmmanuel Vadot Maximum operating frequency of sdio_freq sdhci controller clock 55b97ee269SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 56b97ee269SEmmanuel Vadot minimum: 100000000 57b97ee269SEmmanuel Vadot maximum: 150000000 58e67e8565SEmmanuel Vadot 59e67e8565SEmmanuel Vadot sdhci,auto-cmd12: 60e67e8565SEmmanuel Vadot type: boolean 61e67e8565SEmmanuel Vadot description: Specifies that controller should use auto CMD12 62e67e8565SEmmanuel Vadot 63b97ee269SEmmanuel VadotallOf: 64b97ee269SEmmanuel Vadot - $ref: mmc-controller.yaml# 65b97ee269SEmmanuel Vadot - if: 66b97ee269SEmmanuel Vadot properties: 67b97ee269SEmmanuel Vadot clock-names: 68b97ee269SEmmanuel Vadot contains: 69b97ee269SEmmanuel Vadot const: sdio_freq 70b97ee269SEmmanuel Vadot 71b97ee269SEmmanuel Vadot then: 72b97ee269SEmmanuel Vadot required: 73b97ee269SEmmanuel Vadot - clock-frequency 74b97ee269SEmmanuel Vadot 75e67e8565SEmmanuel Vadotrequired: 76e67e8565SEmmanuel Vadot - compatible 77e67e8565SEmmanuel Vadot - reg 78e67e8565SEmmanuel Vadot - interrupts 79e67e8565SEmmanuel Vadot - clocks 80b97ee269SEmmanuel Vadot - clock-names 81e67e8565SEmmanuel Vadot 82e67e8565SEmmanuel VadotunevaluatedProperties: false 83e67e8565SEmmanuel Vadot 84e67e8565SEmmanuel Vadotexamples: 85e67e8565SEmmanuel Vadot - | 86e67e8565SEmmanuel Vadot mmc@84b0000 { 87e67e8565SEmmanuel Vadot compatible = "brcm,bcm7216-sdhci", 88e67e8565SEmmanuel Vadot "brcm,bcm7445-sdhci", 89e67e8565SEmmanuel Vadot "brcm,sdhci-brcmstb"; 90e67e8565SEmmanuel Vadot reg = <0x84b0000 0x260>, <0x84b0300 0x200>; 91e67e8565SEmmanuel Vadot reg-names = "host", "cfg"; 92d5b0e70fSEmmanuel Vadot sd-uhs-sdr50; 93d5b0e70fSEmmanuel Vadot sd-uhs-ddr50; 94d5b0e70fSEmmanuel Vadot sd-uhs-sdr104; 95d5b0e70fSEmmanuel Vadot sdhci,auto-cmd12; 96e67e8565SEmmanuel Vadot interrupts = <0x0 0x26 0x4>; 97e67e8565SEmmanuel Vadot clocks = <&scmi_clk 245>; 98e67e8565SEmmanuel Vadot clock-names = "sw_sdio"; 99e67e8565SEmmanuel Vadot }; 100e67e8565SEmmanuel Vadot 101e67e8565SEmmanuel Vadot mmc@84b1000 { 102d5b0e70fSEmmanuel Vadot compatible = "brcm,bcm7216-sdhci", 103d5b0e70fSEmmanuel Vadot "brcm,bcm7445-sdhci", 104d5b0e70fSEmmanuel Vadot "brcm,sdhci-brcmstb"; 105d5b0e70fSEmmanuel Vadot reg = <0x84b1000 0x260>, <0x84b1300 0x200>; 106d5b0e70fSEmmanuel Vadot reg-names = "host", "cfg"; 107e67e8565SEmmanuel Vadot mmc-ddr-1_8v; 108e67e8565SEmmanuel Vadot mmc-hs200-1_8v; 109e67e8565SEmmanuel Vadot mmc-hs400-1_8v; 110e67e8565SEmmanuel Vadot mmc-hs400-enhanced-strobe; 111e67e8565SEmmanuel Vadot supports-cqe; 112e67e8565SEmmanuel Vadot non-removable; 113e67e8565SEmmanuel Vadot bus-width = <0x8>; 114e67e8565SEmmanuel Vadot interrupts = <0x0 0x27 0x4>; 115e67e8565SEmmanuel Vadot clocks = <&scmi_clk 245>; 116e67e8565SEmmanuel Vadot clock-names = "sw_sdio"; 117e67e8565SEmmanuel Vadot }; 118