xref: /openbmc/linux/Documentation/devicetree/bindings/mmc/arasan,sdhci.yaml (revision 9d69d47fd399137d41b744065aab2f9677ccc377)
116ecd8f3SWan Ahmad Zainie# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
216ecd8f3SWan Ahmad Zainie%YAML 1.2
316ecd8f3SWan Ahmad Zainie---
416ecd8f3SWan Ahmad Zainie$id: "http://devicetree.org/schemas/mmc/arasan,sdhci.yaml#"
516ecd8f3SWan Ahmad Zainie$schema: "http://devicetree.org/meta-schemas/core.yaml#"
616ecd8f3SWan Ahmad Zainie
7*9d69d47fSKrzysztof Kozlowskititle: Arasan SDHCI Controller
816ecd8f3SWan Ahmad Zainie
916ecd8f3SWan Ahmad Zainiemaintainers:
1016ecd8f3SWan Ahmad Zainie  - Adrian Hunter <adrian.hunter@intel.com>
1116ecd8f3SWan Ahmad Zainie
1216ecd8f3SWan Ahmad ZainieallOf:
1316ecd8f3SWan Ahmad Zainie  - $ref: "mmc-controller.yaml#"
1416ecd8f3SWan Ahmad Zainie  - if:
1516ecd8f3SWan Ahmad Zainie      properties:
1616ecd8f3SWan Ahmad Zainie        compatible:
1716ecd8f3SWan Ahmad Zainie          contains:
1816ecd8f3SWan Ahmad Zainie            const: arasan,sdhci-5.1
1916ecd8f3SWan Ahmad Zainie    then:
2016ecd8f3SWan Ahmad Zainie      required:
2116ecd8f3SWan Ahmad Zainie        - phys
2216ecd8f3SWan Ahmad Zainie        - phy-names
2316ecd8f3SWan Ahmad Zainie  - if:
2416ecd8f3SWan Ahmad Zainie      properties:
2516ecd8f3SWan Ahmad Zainie        compatible:
2616ecd8f3SWan Ahmad Zainie          contains:
2716ecd8f3SWan Ahmad Zainie            enum:
2816ecd8f3SWan Ahmad Zainie              - xlnx,zynqmp-8.9a
2916ecd8f3SWan Ahmad Zainie              - xlnx,versal-8.9a
3016ecd8f3SWan Ahmad Zainie    then:
3116ecd8f3SWan Ahmad Zainie      properties:
3216ecd8f3SWan Ahmad Zainie        clock-output-names:
33710d4d91SMichal Simek          oneOf:
34710d4d91SMichal Simek            - items:
3516ecd8f3SWan Ahmad Zainie                - const: clk_out_sd0
3616ecd8f3SWan Ahmad Zainie                - const: clk_in_sd0
37710d4d91SMichal Simek            - items:
38710d4d91SMichal Simek                - const: clk_out_sd1
39710d4d91SMichal Simek                - const: clk_in_sd1
4016ecd8f3SWan Ahmad Zainie
4116ecd8f3SWan Ahmad Zainieproperties:
4216ecd8f3SWan Ahmad Zainie  compatible:
4316ecd8f3SWan Ahmad Zainie    oneOf:
4416ecd8f3SWan Ahmad Zainie      - const: arasan,sdhci-8.9a                # generic Arasan SDHCI 8.9a PHY
4516ecd8f3SWan Ahmad Zainie      - const: arasan,sdhci-4.9a                # generic Arasan SDHCI 4.9a PHY
4616ecd8f3SWan Ahmad Zainie      - const: arasan,sdhci-5.1                 # generic Arasan SDHCI 5.1 PHY
4716ecd8f3SWan Ahmad Zainie      - items:
4816ecd8f3SWan Ahmad Zainie          - const: rockchip,rk3399-sdhci-5.1    # rk3399 eMMC PHY
4916ecd8f3SWan Ahmad Zainie          - const: arasan,sdhci-5.1
5016ecd8f3SWan Ahmad Zainie        description:
5116ecd8f3SWan Ahmad Zainie          For this device it is strongly suggested to include
5216ecd8f3SWan Ahmad Zainie          arasan,soc-ctl-syscon.
5316ecd8f3SWan Ahmad Zainie      - items:
5416ecd8f3SWan Ahmad Zainie          - const: xlnx,zynqmp-8.9a             # ZynqMP SDHCI 8.9a PHY
5516ecd8f3SWan Ahmad Zainie          - const: arasan,sdhci-8.9a
5616ecd8f3SWan Ahmad Zainie        description:
5716ecd8f3SWan Ahmad Zainie          For this device it is strongly suggested to include
5816ecd8f3SWan Ahmad Zainie          clock-output-names and '#clock-cells'.
5916ecd8f3SWan Ahmad Zainie      - items:
6016ecd8f3SWan Ahmad Zainie          - const: xlnx,versal-8.9a             # Versal SDHCI 8.9a PHY
6116ecd8f3SWan Ahmad Zainie          - const: arasan,sdhci-8.9a
6216ecd8f3SWan Ahmad Zainie        description:
6316ecd8f3SWan Ahmad Zainie          For this device it is strongly suggested to include
6416ecd8f3SWan Ahmad Zainie          clock-output-names and '#clock-cells'.
6516ecd8f3SWan Ahmad Zainie      - items:
6616ecd8f3SWan Ahmad Zainie          - const: intel,lgm-sdhci-5.1-emmc     # Intel LGM eMMC PHY
6716ecd8f3SWan Ahmad Zainie          - const: arasan,sdhci-5.1
6816ecd8f3SWan Ahmad Zainie        description:
6916ecd8f3SWan Ahmad Zainie          For this device it is strongly suggested to include
7016ecd8f3SWan Ahmad Zainie          arasan,soc-ctl-syscon.
7116ecd8f3SWan Ahmad Zainie      - items:
7216ecd8f3SWan Ahmad Zainie          - const: intel,lgm-sdhci-5.1-sdxc     # Intel LGM SDXC PHY
7316ecd8f3SWan Ahmad Zainie          - const: arasan,sdhci-5.1
7416ecd8f3SWan Ahmad Zainie        description:
7516ecd8f3SWan Ahmad Zainie          For this device it is strongly suggested to include
7616ecd8f3SWan Ahmad Zainie          arasan,soc-ctl-syscon.
7716ecd8f3SWan Ahmad Zainie      - items:
7816ecd8f3SWan Ahmad Zainie          - const: intel,keembay-sdhci-5.1-emmc # Intel Keem Bay eMMC PHY
7916ecd8f3SWan Ahmad Zainie          - const: arasan,sdhci-5.1
8016ecd8f3SWan Ahmad Zainie        description:
8116ecd8f3SWan Ahmad Zainie          For this device it is strongly suggested to include
8216ecd8f3SWan Ahmad Zainie          arasan,soc-ctl-syscon.
8316ecd8f3SWan Ahmad Zainie      - const: intel,keembay-sdhci-5.1-sd       # Intel Keem Bay SD controller
8416ecd8f3SWan Ahmad Zainie        description:
8516ecd8f3SWan Ahmad Zainie          For this device it is strongly suggested to include
8616ecd8f3SWan Ahmad Zainie          arasan,soc-ctl-syscon.
8716ecd8f3SWan Ahmad Zainie      - const: intel,keembay-sdhci-5.1-sdio     # Intel Keem Bay SDIO controller
8816ecd8f3SWan Ahmad Zainie        description:
8916ecd8f3SWan Ahmad Zainie          For this device it is strongly suggested to include
9016ecd8f3SWan Ahmad Zainie          arasan,soc-ctl-syscon.
91ab991c05SRashmi A      - items:
92ab991c05SRashmi A          - const: intel,thunderbay-sdhci-5.1   # Intel Thunder Bay eMMC PHY
93ab991c05SRashmi A          - const: arasan,sdhci-5.1
94ab991c05SRashmi A        description:
95ab991c05SRashmi A          For this device it is strongly suggested to include
96ab991c05SRashmi A          clock-output-names and '#clock-cells'.
9716ecd8f3SWan Ahmad Zainie
9816ecd8f3SWan Ahmad Zainie  reg:
9916ecd8f3SWan Ahmad Zainie    maxItems: 1
10016ecd8f3SWan Ahmad Zainie
10116ecd8f3SWan Ahmad Zainie  clocks:
10216ecd8f3SWan Ahmad Zainie    minItems: 2
10316ecd8f3SWan Ahmad Zainie    maxItems: 3
10416ecd8f3SWan Ahmad Zainie
10516ecd8f3SWan Ahmad Zainie  clock-names:
10616ecd8f3SWan Ahmad Zainie    minItems: 2
10716ecd8f3SWan Ahmad Zainie    items:
10816ecd8f3SWan Ahmad Zainie      - const: clk_xin
10916ecd8f3SWan Ahmad Zainie      - const: clk_ahb
11016ecd8f3SWan Ahmad Zainie      - const: gate
11116ecd8f3SWan Ahmad Zainie
11216ecd8f3SWan Ahmad Zainie  interrupts:
11316ecd8f3SWan Ahmad Zainie    maxItems: 1
11416ecd8f3SWan Ahmad Zainie
11516ecd8f3SWan Ahmad Zainie  phys:
11616ecd8f3SWan Ahmad Zainie    maxItems: 1
11716ecd8f3SWan Ahmad Zainie
11816ecd8f3SWan Ahmad Zainie  phy-names:
11916ecd8f3SWan Ahmad Zainie    const: phy_arasan
12016ecd8f3SWan Ahmad Zainie
1214df297aaSRob Herring  resets:
1224df297aaSRob Herring    maxItems: 1
1234df297aaSRob Herring
12416ecd8f3SWan Ahmad Zainie  arasan,soc-ctl-syscon:
12516ecd8f3SWan Ahmad Zainie    $ref: /schemas/types.yaml#/definitions/phandle
12616ecd8f3SWan Ahmad Zainie    description:
12716ecd8f3SWan Ahmad Zainie      A phandle to a syscon device (see ../mfd/syscon.txt) used to access
12816ecd8f3SWan Ahmad Zainie      core corecfg registers. Offsets of registers in this syscon are
12916ecd8f3SWan Ahmad Zainie      determined based on the main compatible string for the device.
13016ecd8f3SWan Ahmad Zainie
13116ecd8f3SWan Ahmad Zainie  clock-output-names:
13216ecd8f3SWan Ahmad Zainie    minItems: 1
13316ecd8f3SWan Ahmad Zainie    maxItems: 2
13416ecd8f3SWan Ahmad Zainie    description:
13516ecd8f3SWan Ahmad Zainie      Name of the card clock which will be exposed by this device.
13616ecd8f3SWan Ahmad Zainie
13716ecd8f3SWan Ahmad Zainie  '#clock-cells':
13816ecd8f3SWan Ahmad Zainie    enum: [0, 1]
13916ecd8f3SWan Ahmad Zainie    description:
14016ecd8f3SWan Ahmad Zainie      With this property in place we will export one or two clocks
14116ecd8f3SWan Ahmad Zainie      representing the Card Clock. These clocks are expected to be
14216ecd8f3SWan Ahmad Zainie      consumed by our PHY.
14316ecd8f3SWan Ahmad Zainie
14416ecd8f3SWan Ahmad Zainie  xlnx,fails-without-test-cd:
14516ecd8f3SWan Ahmad Zainie    $ref: /schemas/types.yaml#/definitions/flag
14616ecd8f3SWan Ahmad Zainie    description:
14716ecd8f3SWan Ahmad Zainie      When present, the controller doesn't work when the CD line is not
14816ecd8f3SWan Ahmad Zainie      connected properly, and the line is not connected properly.
14916ecd8f3SWan Ahmad Zainie      Test mode can be used to force the controller to function.
15016ecd8f3SWan Ahmad Zainie
15116ecd8f3SWan Ahmad Zainie  xlnx,int-clock-stable-broken:
15216ecd8f3SWan Ahmad Zainie    $ref: /schemas/types.yaml#/definitions/flag
15316ecd8f3SWan Ahmad Zainie    description:
15416ecd8f3SWan Ahmad Zainie      When present, the controller always reports that the internal clock
15516ecd8f3SWan Ahmad Zainie      is stable even when it is not.
15616ecd8f3SWan Ahmad Zainie
15716ecd8f3SWan Ahmad Zainie  xlnx,mio-bank:
15816ecd8f3SWan Ahmad Zainie    $ref: /schemas/types.yaml#/definitions/uint32
1592a394808SMichal Simek    enum: [0, 1, 2]
16016ecd8f3SWan Ahmad Zainie    default: 0
16116ecd8f3SWan Ahmad Zainie    description:
16216ecd8f3SWan Ahmad Zainie      The MIO bank number in which the command and data lines are configured.
16316ecd8f3SWan Ahmad Zainie
16416ecd8f3SWan Ahmad Zainiedependencies:
16516ecd8f3SWan Ahmad Zainie  '#clock-cells': [ clock-output-names ]
16616ecd8f3SWan Ahmad Zainie
16716ecd8f3SWan Ahmad Zainierequired:
16816ecd8f3SWan Ahmad Zainie  - compatible
16916ecd8f3SWan Ahmad Zainie  - reg
17016ecd8f3SWan Ahmad Zainie  - interrupts
17116ecd8f3SWan Ahmad Zainie  - clocks
17216ecd8f3SWan Ahmad Zainie  - clock-names
17316ecd8f3SWan Ahmad Zainie
17416ecd8f3SWan Ahmad ZainieunevaluatedProperties: false
17516ecd8f3SWan Ahmad Zainie
17616ecd8f3SWan Ahmad Zainieexamples:
17716ecd8f3SWan Ahmad Zainie  - |
17816ecd8f3SWan Ahmad Zainie    mmc@e0100000 {
17916ecd8f3SWan Ahmad Zainie          compatible = "arasan,sdhci-8.9a";
18016ecd8f3SWan Ahmad Zainie          reg = <0xe0100000 0x1000>;
18116ecd8f3SWan Ahmad Zainie          clock-names = "clk_xin", "clk_ahb";
18216ecd8f3SWan Ahmad Zainie          clocks = <&clkc 21>, <&clkc 32>;
18316ecd8f3SWan Ahmad Zainie          interrupt-parent = <&gic>;
18416ecd8f3SWan Ahmad Zainie          interrupts = <0 24 4>;
18516ecd8f3SWan Ahmad Zainie    };
18616ecd8f3SWan Ahmad Zainie
18716ecd8f3SWan Ahmad Zainie  - |
18816ecd8f3SWan Ahmad Zainie    mmc@e2800000 {
18916ecd8f3SWan Ahmad Zainie          compatible = "arasan,sdhci-5.1";
19016ecd8f3SWan Ahmad Zainie          reg = <0xe2800000 0x1000>;
19116ecd8f3SWan Ahmad Zainie          clock-names = "clk_xin", "clk_ahb";
19216ecd8f3SWan Ahmad Zainie          clocks = <&cru 8>, <&cru 18>;
19316ecd8f3SWan Ahmad Zainie          interrupt-parent = <&gic>;
19416ecd8f3SWan Ahmad Zainie          interrupts = <0 24 4>;
19516ecd8f3SWan Ahmad Zainie          phys = <&emmc_phy>;
19616ecd8f3SWan Ahmad Zainie          phy-names = "phy_arasan";
19716ecd8f3SWan Ahmad Zainie    };
19816ecd8f3SWan Ahmad Zainie
19916ecd8f3SWan Ahmad Zainie  - |
20016ecd8f3SWan Ahmad Zainie    #include <dt-bindings/clock/rk3399-cru.h>
20116ecd8f3SWan Ahmad Zainie    #include <dt-bindings/interrupt-controller/arm-gic.h>
20216ecd8f3SWan Ahmad Zainie    #include <dt-bindings/interrupt-controller/irq.h>
20316ecd8f3SWan Ahmad Zainie    mmc@fe330000 {
20416ecd8f3SWan Ahmad Zainie          compatible = "rockchip,rk3399-sdhci-5.1", "arasan,sdhci-5.1";
20516ecd8f3SWan Ahmad Zainie          reg = <0xfe330000 0x10000>;
20616ecd8f3SWan Ahmad Zainie          interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
20716ecd8f3SWan Ahmad Zainie          clocks = <&cru SCLK_EMMC>, <&cru ACLK_EMMC>;
20816ecd8f3SWan Ahmad Zainie          clock-names = "clk_xin", "clk_ahb";
20916ecd8f3SWan Ahmad Zainie          arasan,soc-ctl-syscon = <&grf>;
21016ecd8f3SWan Ahmad Zainie          assigned-clocks = <&cru SCLK_EMMC>;
21116ecd8f3SWan Ahmad Zainie          assigned-clock-rates = <200000000>;
21216ecd8f3SWan Ahmad Zainie          clock-output-names = "emmc_cardclock";
21316ecd8f3SWan Ahmad Zainie          phys = <&emmc_phy>;
21416ecd8f3SWan Ahmad Zainie          phy-names = "phy_arasan";
21516ecd8f3SWan Ahmad Zainie          #clock-cells = <0>;
21616ecd8f3SWan Ahmad Zainie    };
21716ecd8f3SWan Ahmad Zainie
21816ecd8f3SWan Ahmad Zainie  - |
21916ecd8f3SWan Ahmad Zainie    mmc@ff160000 {
22016ecd8f3SWan Ahmad Zainie          compatible = "xlnx,zynqmp-8.9a", "arasan,sdhci-8.9a";
22116ecd8f3SWan Ahmad Zainie          interrupt-parent = <&gic>;
22216ecd8f3SWan Ahmad Zainie          interrupts = <0 48 4>;
22316ecd8f3SWan Ahmad Zainie          reg = <0xff160000 0x1000>;
22416ecd8f3SWan Ahmad Zainie          clocks = <&clk200>, <&clk200>;
22516ecd8f3SWan Ahmad Zainie          clock-names = "clk_xin", "clk_ahb";
22616ecd8f3SWan Ahmad Zainie          clock-output-names = "clk_out_sd0", "clk_in_sd0";
22716ecd8f3SWan Ahmad Zainie          #clock-cells = <1>;
22816ecd8f3SWan Ahmad Zainie          clk-phase-sd-hs = <63>, <72>;
22916ecd8f3SWan Ahmad Zainie    };
23016ecd8f3SWan Ahmad Zainie
23116ecd8f3SWan Ahmad Zainie  - |
23216ecd8f3SWan Ahmad Zainie    mmc@f1040000 {
23316ecd8f3SWan Ahmad Zainie          compatible = "xlnx,versal-8.9a", "arasan,sdhci-8.9a";
23416ecd8f3SWan Ahmad Zainie          interrupt-parent = <&gic>;
23516ecd8f3SWan Ahmad Zainie          interrupts = <0 126 4>;
23616ecd8f3SWan Ahmad Zainie          reg = <0xf1040000 0x10000>;
23716ecd8f3SWan Ahmad Zainie          clocks = <&clk200>, <&clk200>;
23816ecd8f3SWan Ahmad Zainie          clock-names = "clk_xin", "clk_ahb";
23916ecd8f3SWan Ahmad Zainie          clock-output-names = "clk_out_sd0", "clk_in_sd0";
24016ecd8f3SWan Ahmad Zainie          #clock-cells = <1>;
24116ecd8f3SWan Ahmad Zainie          clk-phase-sd-hs = <132>, <60>;
24216ecd8f3SWan Ahmad Zainie    };
24316ecd8f3SWan Ahmad Zainie
24416ecd8f3SWan Ahmad Zainie  - |
24516ecd8f3SWan Ahmad Zainie    #define LGM_CLK_EMMC5
24616ecd8f3SWan Ahmad Zainie    #define LGM_CLK_NGI
24716ecd8f3SWan Ahmad Zainie    #define LGM_GCLK_EMMC
24816ecd8f3SWan Ahmad Zainie    mmc@ec700000 {
24916ecd8f3SWan Ahmad Zainie          compatible = "intel,lgm-sdhci-5.1-emmc", "arasan,sdhci-5.1";
25016ecd8f3SWan Ahmad Zainie          reg = <0xec700000 0x300>;
25116ecd8f3SWan Ahmad Zainie          interrupt-parent = <&ioapic1>;
25216ecd8f3SWan Ahmad Zainie          interrupts = <44 1>;
25316ecd8f3SWan Ahmad Zainie          clocks = <&cgu0 LGM_CLK_EMMC5>, <&cgu0 LGM_CLK_NGI>,
25416ecd8f3SWan Ahmad Zainie                   <&cgu0 LGM_GCLK_EMMC>;
25516ecd8f3SWan Ahmad Zainie          clock-names = "clk_xin", "clk_ahb", "gate";
25616ecd8f3SWan Ahmad Zainie          clock-output-names = "emmc_cardclock";
25716ecd8f3SWan Ahmad Zainie          #clock-cells = <0>;
25816ecd8f3SWan Ahmad Zainie          phys = <&emmc_phy>;
25916ecd8f3SWan Ahmad Zainie          phy-names = "phy_arasan";
26016ecd8f3SWan Ahmad Zainie          arasan,soc-ctl-syscon = <&sysconf>;
26116ecd8f3SWan Ahmad Zainie    };
26216ecd8f3SWan Ahmad Zainie
26316ecd8f3SWan Ahmad Zainie  - |
26416ecd8f3SWan Ahmad Zainie    #define LGM_CLK_SDIO
26516ecd8f3SWan Ahmad Zainie    #define LGM_GCLK_SDXC
26616ecd8f3SWan Ahmad Zainie    mmc@ec600000 {
26716ecd8f3SWan Ahmad Zainie          compatible = "intel,lgm-sdhci-5.1-sdxc", "arasan,sdhci-5.1";
26816ecd8f3SWan Ahmad Zainie          reg = <0xec600000 0x300>;
26916ecd8f3SWan Ahmad Zainie          interrupt-parent = <&ioapic1>;
27016ecd8f3SWan Ahmad Zainie          interrupts = <43 1>;
27116ecd8f3SWan Ahmad Zainie          clocks = <&cgu0 LGM_CLK_SDIO>, <&cgu0 LGM_CLK_NGI>,
27216ecd8f3SWan Ahmad Zainie                   <&cgu0 LGM_GCLK_SDXC>;
27316ecd8f3SWan Ahmad Zainie          clock-names = "clk_xin", "clk_ahb", "gate";
27416ecd8f3SWan Ahmad Zainie          clock-output-names = "sdxc_cardclock";
27516ecd8f3SWan Ahmad Zainie          #clock-cells = <0>;
27616ecd8f3SWan Ahmad Zainie          phys = <&sdxc_phy>;
27716ecd8f3SWan Ahmad Zainie          phy-names = "phy_arasan";
27816ecd8f3SWan Ahmad Zainie          arasan,soc-ctl-syscon = <&sysconf>;
27916ecd8f3SWan Ahmad Zainie    };
28016ecd8f3SWan Ahmad Zainie
28116ecd8f3SWan Ahmad Zainie  - |
28216ecd8f3SWan Ahmad Zainie    #define KEEM_BAY_PSS_AUX_EMMC
28316ecd8f3SWan Ahmad Zainie    #define KEEM_BAY_PSS_EMMC
28416ecd8f3SWan Ahmad Zainie    mmc@33000000 {
28516ecd8f3SWan Ahmad Zainie          compatible = "intel,keembay-sdhci-5.1-emmc", "arasan,sdhci-5.1";
28616ecd8f3SWan Ahmad Zainie          interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>;
28716ecd8f3SWan Ahmad Zainie          reg = <0x33000000 0x300>;
28816ecd8f3SWan Ahmad Zainie          clock-names = "clk_xin", "clk_ahb";
28916ecd8f3SWan Ahmad Zainie          clocks = <&scmi_clk KEEM_BAY_PSS_AUX_EMMC>,
29016ecd8f3SWan Ahmad Zainie                   <&scmi_clk KEEM_BAY_PSS_EMMC>;
29116ecd8f3SWan Ahmad Zainie          phys = <&emmc_phy>;
29216ecd8f3SWan Ahmad Zainie          phy-names = "phy_arasan";
29316ecd8f3SWan Ahmad Zainie          assigned-clocks = <&scmi_clk KEEM_BAY_PSS_AUX_EMMC>;
29416ecd8f3SWan Ahmad Zainie          assigned-clock-rates = <200000000>;
29516ecd8f3SWan Ahmad Zainie          clock-output-names = "emmc_cardclock";
29616ecd8f3SWan Ahmad Zainie          #clock-cells = <0>;
29716ecd8f3SWan Ahmad Zainie          arasan,soc-ctl-syscon = <&mmc_phy_syscon>;
29816ecd8f3SWan Ahmad Zainie    };
29916ecd8f3SWan Ahmad Zainie
30016ecd8f3SWan Ahmad Zainie  - |
30116ecd8f3SWan Ahmad Zainie    #define KEEM_BAY_PSS_AUX_SD0
30216ecd8f3SWan Ahmad Zainie    #define KEEM_BAY_PSS_SD0
30316ecd8f3SWan Ahmad Zainie    mmc@31000000 {
30416ecd8f3SWan Ahmad Zainie          compatible = "intel,keembay-sdhci-5.1-sd";
30516ecd8f3SWan Ahmad Zainie          interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
30616ecd8f3SWan Ahmad Zainie          reg = <0x31000000 0x300>;
30716ecd8f3SWan Ahmad Zainie          clock-names = "clk_xin", "clk_ahb";
30816ecd8f3SWan Ahmad Zainie          clocks = <&scmi_clk KEEM_BAY_PSS_AUX_SD0>,
30916ecd8f3SWan Ahmad Zainie                   <&scmi_clk KEEM_BAY_PSS_SD0>;
31016ecd8f3SWan Ahmad Zainie          arasan,soc-ctl-syscon = <&sd0_phy_syscon>;
31116ecd8f3SWan Ahmad Zainie    };
312ab991c05SRashmi A
313ab991c05SRashmi A  - |
314ab991c05SRashmi A    #define EMMC_XIN_CLK
315ab991c05SRashmi A    #define EMMC_AXI_CLK
316ab991c05SRashmi A    #define TBH_PSS_EMMC_RST_N
317ab991c05SRashmi A    mmc@80420000 {
318ab991c05SRashmi A          compatible = "intel,thunderbay-sdhci-5.1", "arasan,sdhci-5.1";
319ab991c05SRashmi A          interrupts = <GIC_SPI 714 IRQ_TYPE_LEVEL_HIGH>;
320ab991c05SRashmi A          reg = <0x80420000 0x400>;
321ab991c05SRashmi A          clocks = <&scmi_clk EMMC_XIN_CLK>,
322ab991c05SRashmi A                   <&scmi_clk EMMC_AXI_CLK>;
323ab991c05SRashmi A          clock-names = "clk_xin", "clk_ahb";
324ab991c05SRashmi A          phys = <&emmc_phy>;
325ab991c05SRashmi A          phy-names = "phy_arasan";
326ab991c05SRashmi A          assigned-clocks = <&scmi_clk EMMC_XIN_CLK>;
327ab991c05SRashmi A          clock-output-names = "emmc_cardclock";
328ab991c05SRashmi A          resets = <&rst_pss1 TBH_PSS_EMMC_RST_N>;
329ab991c05SRashmi A          #clock-cells = <0x0>;
330ab991c05SRashmi A    };
331