.. | .. |
---|
14 | 14 | |
---|
15 | 15 | #include "card.h" |
---|
16 | 16 | |
---|
17 | | -static const struct mmc_fixup mmc_blk_fixups[] = { |
---|
| 17 | +static const struct mmc_fixup __maybe_unused mmc_blk_fixups[] = { |
---|
18 | 18 | #define INAND_CMD38_ARG_EXT_CSD 113 |
---|
19 | 19 | #define INAND_CMD38_ARG_ERASE 0x00 |
---|
20 | 20 | #define INAND_CMD38_ARG_TRIM 0x01 |
---|
.. | .. |
---|
59 | 59 | MMC_QUIRK_BLK_NO_CMD23), |
---|
60 | 60 | MMC_FIXUP("APUSD", CID_MANFID_APACER, 0x5048, add_quirk_sd, |
---|
61 | 61 | MMC_QUIRK_BLK_NO_CMD23), |
---|
| 62 | + MMC_FIXUP(CID_NAME_ANY, CID_MANFID_DH, CID_OEMID_ANY, add_quirk_sd, |
---|
| 63 | + MMC_QUIRK_BLK_NO_CMD23), |
---|
62 | 64 | |
---|
63 | 65 | /* |
---|
64 | 66 | * Some MMC cards need longer data read timeout than indicated in CSD. |
---|
.. | .. |
---|
99 | 101 | MMC_FIXUP("V10016", CID_MANFID_KINGSTON, CID_OEMID_ANY, add_quirk_mmc, |
---|
100 | 102 | MMC_QUIRK_TRIM_BROKEN), |
---|
101 | 103 | |
---|
| 104 | + /* |
---|
| 105 | + * Kingston EMMC04G-M627 advertises TRIM but it does not seems to |
---|
| 106 | + * support being used to offload WRITE_ZEROES. |
---|
| 107 | + */ |
---|
| 108 | + MMC_FIXUP("M62704", CID_MANFID_KINGSTON, 0x0100, add_quirk_mmc, |
---|
| 109 | + MMC_QUIRK_TRIM_BROKEN), |
---|
| 110 | + |
---|
| 111 | + /* |
---|
| 112 | + * Micron MTFC4GACAJCN-1M advertises TRIM but it does not seems to |
---|
| 113 | + * support being used to offload WRITE_ZEROES. |
---|
| 114 | + */ |
---|
| 115 | + MMC_FIXUP("Q2J54A", CID_MANFID_MICRON, 0x014e, add_quirk_mmc, |
---|
| 116 | + MMC_QUIRK_TRIM_BROKEN), |
---|
| 117 | + |
---|
| 118 | + /* |
---|
| 119 | + * Some SD cards reports discard support while they don't |
---|
| 120 | + */ |
---|
| 121 | + MMC_FIXUP(CID_NAME_ANY, CID_MANFID_SANDISK_SD, 0x5344, add_quirk_sd, |
---|
| 122 | + MMC_QUIRK_BROKEN_SD_DISCARD), |
---|
| 123 | + |
---|
102 | 124 | END_FIXUP |
---|
103 | 125 | }; |
---|
104 | 126 | |
---|
105 | | -static const struct mmc_fixup mmc_ext_csd_fixups[] = { |
---|
| 127 | +static const struct mmc_fixup __maybe_unused mmc_ext_csd_fixups[] = { |
---|
106 | 128 | /* |
---|
107 | 129 | * Certain Hynix eMMC 4.41 cards might get broken when HPI feature |
---|
108 | 130 | * is used so disable the HPI feature for such buggy cards. |
---|
.. | .. |
---|
120 | 142 | }; |
---|
121 | 143 | |
---|
122 | 144 | |
---|
123 | | -static const struct mmc_fixup sdio_fixup_methods[] = { |
---|
| 145 | +static const struct mmc_fixup __maybe_unused sdio_fixup_methods[] = { |
---|
124 | 146 | SDIO_FIXUP(SDIO_VENDOR_ID_TI_WL1251, SDIO_DEVICE_ID_TI_WL1251, |
---|
125 | 147 | add_quirk, MMC_QUIRK_NONSTD_FUNC_IF), |
---|
126 | 148 | |
---|
.. | .. |
---|
139 | 161 | SDIO_FIXUP(SDIO_VENDOR_ID_MARVELL, SDIO_DEVICE_ID_MARVELL_8797_F0, |
---|
140 | 162 | add_quirk, MMC_QUIRK_BROKEN_IRQ_POLLING), |
---|
141 | 163 | |
---|
142 | | - SDIO_FIXUP(SDIO_VENDOR_ID_MARVELL, SDIO_DEVICE_ID_MARVELL_8887WLAN, |
---|
| 164 | + SDIO_FIXUP(SDIO_VENDOR_ID_MARVELL, SDIO_DEVICE_ID_MARVELL_8887_F0, |
---|
143 | 165 | add_limit_rate_quirk, 150000000), |
---|
144 | 166 | |
---|
145 | 167 | END_FIXUP |
---|
.. | .. |
---|
166 | 188 | (f->ext_csd_rev == EXT_CSD_REV_ANY || |
---|
167 | 189 | f->ext_csd_rev == card->ext_csd.rev) && |
---|
168 | 190 | rev >= f->rev_start && rev <= f->rev_end) { |
---|
169 | | - dev_dbg(&card->dev, "calling %pf\n", f->vendor_fixup); |
---|
| 191 | + dev_dbg(&card->dev, "calling %ps\n", f->vendor_fixup); |
---|
170 | 192 | f->vendor_fixup(card, f->data); |
---|
171 | 193 | } |
---|
172 | 194 | } |
---|