8160411c5e1f4e96153e889387c62958cdbdcdf9
[openwrt/staging/linusw.git] /
1 From b738234962a27e365a2490cc6ca3321de2363db8 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 0718/1085] drivers: mmc: sdhci-of-dwcmshc: add RP1 dt ID and
5 quirks
6
7 Differentiate the RP1 variant of the Designware MSHC controller(s).
8
9 Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
10 ---
11 drivers/mmc/host/sdhci-of-dwcmshc.c | 13 +++++++++++++
12 1 file changed, 13 insertions(+)
13
14 --- a/drivers/mmc/host/sdhci-of-dwcmshc.c
15 +++ b/drivers/mmc/host/sdhci-of-dwcmshc.c
16 @@ -386,6 +386,15 @@ static const struct sdhci_pltfm_data sdh
17 };
18 #endif
19
20 +static const struct sdhci_pltfm_data sdhci_dwcmshc_rp1_pdata = {
21 + .ops = &sdhci_dwcmshc_ops,
22 + .quirks = SDHCI_QUIRK_CAP_CLOCK_BASE_BROKEN |
23 + SDHCI_QUIRK_BROKEN_CARD_DETECTION,
24 + .quirks2 = SDHCI_QUIRK2_PRESET_VALUE_BROKEN |
25 + SDHCI_QUIRK2_BROKEN_HS200 |
26 + SDHCI_QUIRK2_SPURIOUS_INT_RESP,
27 +};
28 +
29 static const struct sdhci_pltfm_data sdhci_dwcmshc_rk35xx_pdata = {
30 .ops = &sdhci_dwcmshc_rk35xx_ops,
31 .quirks = SDHCI_QUIRK_CAP_CLOCK_BASE_BROKEN |
32 @@ -454,6 +463,10 @@ static void dwcmshc_rk35xx_postinit(stru
33
34 static const struct of_device_id sdhci_dwcmshc_dt_ids[] = {
35 {
36 + .compatible = "raspberrypi,rp1-dwcmshc",
37 + .data = &sdhci_dwcmshc_rp1_pdata,
38 + },
39 + {
40 .compatible = "rockchip,rk3588-dwcmshc",
41 .data = &sdhci_dwcmshc_rk35xx_pdata,
42 },