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
+...