Re: [PATCH] mmc: dw_mmc: Consider HLE errors to be data and command errors

From: Shawn Lin
Date: Tue May 17 2016 - 22:00:27 EST


Hi Doug,

On 2016-5-18 8:47, Doug Anderson wrote:
Jaehoon,

On Mon, Mar 30, 2015 at 8:47 AM, Doug Anderson <dianders@xxxxxxxxxxxx> wrote:
Jaehoon,

On Sun, Mar 29, 2015 at 5:55 PM, Jaehoon Chung <jh80.chung@xxxxxxxxxxx> wrote:
Dear Doug,

I'm considering to control HLE error..So holding this patch.
If this is absolutely necessary patch, let me know, plz.

Best Regards,
Jaehoon Chung
Sounds OK. I have certainly applied this locally and the driver isn't
robust against insertions / removals without it, but once the card is
inserted things are OK so it's probably not urgent that it be applied
upstream. Hopefully we can figure out a better solution...
I'm now testing a nice new rebased kernel and I'm hitting this again.

Of course I'll just pick my same patch to my new kernel tree, but
since it's been a year and nobody has done anything better, would you
consider landing my patch? It is certainly better than nothing.

Could you try this patch to see if you can still find HLE?

@@ -2356,12 +2356,22 @@ static void dw_mci_cmd_interrupt(struct dw_mci *host, u32 status)
static void dw_mci_handle_cd(struct dw_mci *host)
{
int i;
+ int present;

for (i = 0; i < host->num_slots; i++) {
struct dw_mci_slot *slot = host->slot[i];

if (!slot)
continue;

+ present = !(mci_readl(slot->host, CDETECT) & (1 << slot->id));
+ if (present)
+ set_bit(DW_MMC_CARD_PRESENT, &slot->flags);
+ else
+ clear_bit(DW_MMC_CARD_PRESENT, &slot->flags);

if (slot->mmc->ops->card_event)
slot->mmc->ops->card_event(slot->mmc);



-Doug
--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html