On 1 June 2011 09:30, Linus Walleij <linus.walleij@xxxxxxxxxx> wrote: > 2011/5/31 Per Forlin <per.forlin@xxxxxxxxxx>: > >> +/** >> + * sdio_single_irq_enable - enable or disable SDIO single IRQ function >> + * @card: card to enable SDIO single irq >> + * @value: true to enable SDIO single irq function, false to disable >> + * >> + * If there is only 1 function interrupt registered and SDIO single IRQ >> + * is enable, the irq handler is called directly without reading >> + * the CCCR registers >> + */ >> +void sdio_single_irq_enable(struct mmc_card *card, bool value) >> +{ >> + card->sdio_single_irq_en = value; >> +} >> +EXPORT_SYMBOL_GPL(sdio_single_irq_enable); > > Can we use a quirk for implementing this for the specific problematic > card instead? > Yes, quirks is the thing I should use. I'll remove this function and replace it with a quirk. The default state could then be sdio_single_irq enable and for all none supported hardware (device ID) sdio_single_irq will be disable. > Daniel, do you have the vendor and device ID for the problematic > Libertas card you're working on so this can be quirked explicitly > in drivers/mmc/core/quirks.c? > Even if Daniel fix this issue in libertas it is still good to have a sdio_single_irq quirk in place for other SDIO devices with the same hardware issue. > Yours, > Linus Walleij > Thanks, Per -- 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