On Mon, Aug 12, 2013 at 10:00:04AM -0600, Stephen Warren wrote: > From: Stephen Warren <swarren@xxxxxxxxxx> > > Tegra20 HW appears to have a bug such that PCIe device interrupts, > whether they are legacy IRQs or MSI, are lost when LP2 is enabled. To > work around this, simply disable LP2 if any PCIe devices with interrupts > are present. Detect this via the IRQ domain map operation. This is > slightly over-conservative; if a device with an interrupt is present but > the driver does not actually use them, LP2 will still be disabled. > However, this is a reasonable trade-off which enables a simpler > workaround. > > Signed-off-by: Stephen Warren <swarren@xxxxxxxxxx> > Tested-by: Thierry Reding <treding@xxxxxxxxxx> > Acked-by: Thierry Reding <treding@xxxxxxxxxx> > --- > v4: Add missing tegra-cpuidle.h, re-write commit description. Add acks. > > v3: Only disable LP2 if a PCIe device that requests an interrupt is > actually present. This prevents the loss of power-saving when the WAR > isn't required. Great, looks good to me and I see that you've applied it to your tree already. This has been in the works for (literally!) years and it's quite a relief to see it finally merged. Thanks a lot! Thierry
Attachment:
pgpYQLaM2l2l8.pgp
Description: PGP signature