dts/sdhc: support mmc dts and usdhc dts
1) dts/bindings/mmc/mmc.yaml: specifies common mmc.
2) dts/bindings/mmc/nxp,imx-usdhc.yaml: specifies
nxp usdhc module which inherits mmc.
3) dts/arm/nxp/nxp_rt.dtsi: usdhc support on RT chip.
4) boards/arm/mimxrt1050_evk/mimxrt1050_evk.dts:
usdhc slot support on mimxrt1050_evk board.
Signed-off-by: Jun Yang <jun.yang@nxp.com>
diff --git a/boards/arm/mimxrt1050_evk/mimxrt1050_evk.dts b/boards/arm/mimxrt1050_evk/mimxrt1050_evk.dts
index e8348d7..68b47eb 100644
--- a/boards/arm/mimxrt1050_evk/mimxrt1050_evk.dts
+++ b/boards/arm/mimxrt1050_evk/mimxrt1050_evk.dts
@@ -122,3 +122,9 @@
&usbd1 {
status = "okay";
};
+
+&usdhc1 {
+ status = "okay";
+ pwr-gpios = <&gpio1 5 0>;
+ cd-gpios = <&gpio2 28 0>;
+};
diff --git a/boards/arm/mimxrt1050_evk/mimxrt1050_evk.yaml b/boards/arm/mimxrt1050_evk/mimxrt1050_evk.yaml
index e17edec..e91113c 100644
--- a/boards/arm/mimxrt1050_evk/mimxrt1050_evk.yaml
+++ b/boards/arm/mimxrt1050_evk/mimxrt1050_evk.yaml
@@ -22,3 +22,4 @@
- hwinfo
- usb_device
- counter
+ - sdhc
diff --git a/dts/arm/nxp/nxp_rt.dtsi b/dts/arm/nxp/nxp_rt.dtsi
index 78312e9..655c7b4 100644
--- a/dts/arm/nxp/nxp_rt.dtsi
+++ b/dts/arm/nxp/nxp_rt.dtsi
@@ -370,6 +370,24 @@
status = "disabled";
label = "USBD_2";
};
+
+ usdhc1: usdhc@402c0000 {
+ compatible = "nxp,imx-usdhc";
+ reg = <0x402c0000 0x4000>;
+ status = "disabled";
+ interrupts = <110 0>;
+ clocks = <&ccm IMX_CCM_USDHC1_CLK 0 0>;
+ label = "USDHC_1";
+ };
+
+ usdhc2: usdhc@402c4000 {
+ compatible = "nxp,imx-usdhc";
+ reg = <0x402c4000 0x4000>;
+ status = "disabled";
+ interrupts = <111 0>;
+ clocks = <&ccm IMX_CCM_USDHC2_CLK 0 0>;
+ label = "USDHC_2";
+ };
};
};
diff --git a/dts/bindings/mmc/mmc.yaml b/dts/bindings/mmc/mmc.yaml
new file mode 100644
index 0000000..1baf0a9
--- /dev/null
+++ b/dts/bindings/mmc/mmc.yaml
@@ -0,0 +1,22 @@
+#
+# Copyright (c) 2019, NXP
+#
+# SPDX-License-Identifier: Apache-2.0
+#
+---
+title: MMC/SDHC module
+version: 0.1
+
+description: >
+ This binding specifies the MMC/SDHC module.
+
+inherits:
+ !include base.yaml
+
+properties:
+ clocks:
+ type: array
+ category: optional
+ description: Clock gate information
+ generation: define
+...
diff --git a/dts/bindings/mmc/nxp,imx-usdhc.yaml b/dts/bindings/mmc/nxp,imx-usdhc.yaml
new file mode 100644
index 0000000..d826214
--- /dev/null
+++ b/dts/bindings/mmc/nxp,imx-usdhc.yaml
@@ -0,0 +1,37 @@
+#
+# Copyright (c) 2019, NXP
+#
+# SPDX-License-Identifier: Apache-2.0
+#
+---
+title: NXP i.MXRT USDHC module
+version: 0.1
+
+description: >
+ This binding specifies the NXP i.MXRT USDHC module.
+
+inherits:
+ !include mmc.yaml
+
+properties:
+ compatible:
+ constraint: "nxp,imx-usdhc"
+
+ clocks:
+ category: required
+
+ pwr-gpios:
+ type: compound
+ category: optional
+ description: Power pin
+ generation: define
+
+ cd-gpios:
+ type: compound
+ category: optional
+ description: Detect pin
+ generation: define
+
+ label:
+ category: required
+...