Re: [Query] PCIe power management with designware

From: Pratyush Anand
Date: Tue May 05 2015 - 09:04:11 EST


Hi Kishon,

Correcting Mohit's ID

On Mon, May 4, 2015 at 9:54 PM, Kishon Vijay Abraham I <kishon@xxxxxx> wrote:
>
> Hi,
>
> I'm planning to add power management (suspend/resume) support for DRA7xx and have a query.
>
> The pci_pm_suspend_noirq callback being a bus pm_ops gets invoked late i.e after the suspend hooks of the pci devices (including the RC driver). The problem is after the 'suspend' of the RC driver, the clocks are disabled. Now

I think, clocks should not be disabled at this point.

pci_pm_suspend_noirq has a call to pci_save_state() which tries to access the
> configuration space registers. Since the clocks are disabled by now, this results in an abort. Shouldn't we do save_state() earlier?

So, RC driver should need to implement a pm->suspend_noirq() where it
can handle all these.

>
> After working around the above problem, I face one more issue with broadcom BCM95721 A211 card. After resuming, I'm unable to access the memory space. I'm not sure if that is specific to that particular card, since I have no problems with USB cards.

If you are able to access configuration space and not able to access
memory space then that seems strange.
If cfg is also not accessible then can you check if link training with
BCM95721 A211 card was successful?

~Pratyush
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/