On 12/07/2016 11:02 PM, Bjorn Helgaas wrote: > Hi Kishon, et al, > > Does dra7xx suspend/resume work? I'm not sure dra7xx_pcie_resume() > and dra7xx_pcie_resume_noirq() restore everything necessary. For > example, the probe path has this: > > dra7xx_pcie_probe > dra7xx_add_pcie_port > dw_pcie_host_init > dra7xx_pcie_host_init # .host_init > dw_pcie_setup_rc > dw_pcie_prog_outbound_atu > > so I think it programs the ATU in dw_pcie_setup_rc(). But the resume > path doesn't call dw_pcie_setup_rc(), so I don't see where the ATU > setup would be restored. > > Related to this, dra7xx_pcie_resume_noirq() contains phy init and > power-on code that is duplicated in dra7xx_pcie_probe(). It seems > like that ought to be done by a common function instead of being cut > and pasted. > > I haven't looked in detail at all the other DW-based drivers; dra7xx > just happens to be first in alphabetical order :) But I suspect I'd > have the same question about them. There doesn't appear to be any DW-based driver supporting suspend/resume other than dra7xx :) > > Bjorn -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html