@@ -9,6 +9,9 @@ title: The SD/SDIO/eMMC host controller for Loongson-2K family SoCs
9
9
description :
10
10
The MMC host controller on the Loongson-2K0500/2K1000 (using an externally
11
11
shared apbdma controller) provides the SD and SDIO device interfaces.
12
+ The two MMC host controllers on the Loongson-2K2000 are similar,
13
+ except that they use internal exclusive DMA. one controller provides
14
+ the eMMC interface and the other provides the SD/SDIO interface.
12
15
13
16
maintainers :
14
17
@@ -21,8 +24,10 @@ properties:
21
24
enum :
22
25
- loongson,ls2k0500-mmc
23
26
- loongson,ls2k1000-mmc
27
+ - loongson,ls2k2000-mmc
24
28
25
29
reg :
30
+ minItems : 1
26
31
items :
27
32
- description : Loongson-2K MMC controller registers.
28
33
- description : APB DMA config register for Loongson-2K MMC controller.
@@ -44,11 +49,31 @@ required:
44
49
- reg
45
50
- interrupts
46
51
- clocks
47
- - dmas
48
- - dma-names
49
52
50
53
unevaluatedProperties : false
51
54
55
+ if :
56
+ properties :
57
+ compatible :
58
+ contains :
59
+ enum :
60
+ - loongson,ls2k0500-mmc
61
+ - loongson,ls2k1000-mmc
62
+
63
+ then :
64
+ properties :
65
+ reg :
66
+ minItems : 2
67
+
68
+ required :
69
+ - dmas
70
+ - dma-names
71
+
72
+ else :
73
+ properties :
74
+ reg :
75
+ maxItems : 1
76
+
52
77
examples :
53
78
- |
54
79
#include <dt-bindings/gpio/gpio.h>
@@ -67,3 +92,21 @@ examples:
67
92
bus-width = <4>;
68
93
cd-gpios = <&gpio0 22 GPIO_ACTIVE_LOW>;
69
94
};
95
+
96
+ - |
97
+ #include <dt-bindings/interrupt-controller/irq.h>
98
+ #include <dt-bindings/clock/loongson,ls2k-clk.h>
99
+
100
+ mmc@79990000 {
101
+ compatible = "loongson,ls2k2000-mmc";
102
+ reg = <0x79990000 0x1000>;
103
+ interrupt-parent = <&pic>;
104
+ interrupts = <51 IRQ_TYPE_LEVEL_HIGH>;
105
+ clocks = <&clk LOONGSON2_EMMC_CLK>;
106
+ bus-width = <8>;
107
+ non-removable;
108
+ cap-mmc-highspeed;
109
+ mmc-hs200-1_8v;
110
+ no-sd;
111
+ no-sdio;
112
+ };
0 commit comments