On Wed, Aug 17, 2011 at 12:06:56PM +0200, Guennadi Liakhovetski wrote:
> On Wed, 17 Aug 2011, Simon Horman wrote:
>
> > On Wed, Aug 17, 2011 at 10:20:24AM +0200, Guennadi Liakhovetski wrote:
> > > On Wed, 17 Aug 2011, Simon Horman wrote:
> >
> > [snip ]
> >
> > > > + ret = irq = platform_get_irq(pdev, SH_MOBILE_SDHI_IRQ_SDCARD);
> > > > + if (irq >= 0) {
> > > > + multi_irq = true;
> > > > + ret = request_irq(irq, tmio_mmc_sdcard_irq, 0,
> > > > + dev_name(&pdev->dev), host);
> > > > + if (ret)
> > > > + goto eirq_sdcard;
> > > > + } else if (multi_irq)
> > > > + goto eirq_sdcard;
> > > > +
> > > > + ret = irq = platform_get_irq(pdev,
> > > > SH_MOBILE_SDHI_IRQ_CARD_DETECT);
> > > > + if (irq < 0)
> > > > + goto eirq_card_detect;
> > > > + f = multi_irq ? tmio_mmc_card_detect_irq : tmio_mmc_irq;
> > > > + ret = request_irq(irq, f, 0, dev_name(&pdev->dev), host);
> > > > + if (ret)
> > > > + goto eirq_card_detect;
> > > > +
> > >
> > > I still don't see why a multi-IRQ configuration without a card-detect IRQ
> > > like
> > >
> > > static struct resource sdhi_resources[] = {
> > > [0] = {
> > > .name = "SDHI2",
> > > ...,
> > > },
> > > [1 + SH_MOBILE_SDHI_IRQ_SDCARD] = {
> > > .start = ...,
> > > .flags = IORESOURCE_IRQ,
> > > },
> > > [1 + SH_MOBILE_SDHI_IRQ_SDIO] = {
> > > .start = ...,
> > > .flags = IORESOURCE_IRQ,
> > > },
> > > };
> > >
> > > should be invalid. Especially since we actually want to avoid using the
> > > controller card-detect IRQ for power efficiency and use a GPIO instead.
> >
> > Ok, in this case you would like SH_MOBILE_SDHI_IRQ_SDCARD to use
> > tmio_mmc_sdcard_irq() ?
>
> This is a good question. I think your erroring out is wrong, but I'm not
> sure what is best here. Using sdcard and sdio ISR in this case seems most
> logical to me. But I don't know if we ever can get hardware, where we
> indeed only have two SDHI interrupts - one for SDIO and one for SDCARD and
> CARD_DETECT. I'm not aware of such hardware so far, so, yes, I'd go with
> SDIO and SDCARD ISRs for now. In any case, this is SDHI internal decision,
> so, we can change it at any time, if we need to.
Agreed.
--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html