54b719c6ec084132799feef83196dcea0fdf3742
[openwrt/staging/jow.git] /
1 From 80dd8795ca631ac692fd3079487aea6d934a829c Mon Sep 17 00:00:00 2001
2 From: Jonathan Bell <jonathan@raspberrypi.com>
3 Date: Wed, 8 Nov 2023 16:12:59 +0000
4 Subject: [PATCH] drivers: mmc: sdhci-of-dwcmshc: add RP1 dt ID and quirks
5
6 Differentiate the RP1 variant of the Designware MSHC controller(s).
7
8 Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
9 ---
10 drivers/mmc/host/sdhci-of-dwcmshc.c | 13 +++++++++++++
11 1 file changed, 13 insertions(+)
12
13 --- a/drivers/mmc/host/sdhci-of-dwcmshc.c
14 +++ b/drivers/mmc/host/sdhci-of-dwcmshc.c
15 @@ -373,6 +373,15 @@ static const struct sdhci_pltfm_data sdh
16 };
17 #endif
18
19 +static const struct sdhci_pltfm_data sdhci_dwcmshc_rp1_pdata = {
20 + .ops = &sdhci_dwcmshc_ops,
21 + .quirks = SDHCI_QUIRK_CAP_CLOCK_BASE_BROKEN |
22 + SDHCI_QUIRK_BROKEN_CARD_DETECTION,
23 + .quirks2 = SDHCI_QUIRK2_PRESET_VALUE_BROKEN |
24 + SDHCI_QUIRK2_BROKEN_HS200 |
25 + SDHCI_QUIRK2_SPURIOUS_INT_RESP,
26 +};
27 +
28 static const struct sdhci_pltfm_data sdhci_dwcmshc_rk35xx_pdata = {
29 .ops = &sdhci_dwcmshc_rk35xx_ops,
30 .quirks = SDHCI_QUIRK_CAP_CLOCK_BASE_BROKEN |
31 @@ -441,6 +450,10 @@ static void dwcmshc_rk35xx_postinit(stru
32
33 static const struct of_device_id sdhci_dwcmshc_dt_ids[] = {
34 {
35 + .compatible = "raspberrypi,rp1-dwcmshc",
36 + .data = &sdhci_dwcmshc_rp1_pdata,
37 + },
38 + {
39 .compatible = "rockchip,rk3588-dwcmshc",
40 .data = &sdhci_dwcmshc_rk35xx_pdata,
41 },