• Manikanta Maddireddy's avatar
    PCI: tegra: Add power management support · da76ba50
    Manikanta Maddireddy authored
    Tegra186 powergate driver is implemented as power domain driver, power
    partition ungate/gate are registered as power_on/power_off callback
    functions. There are no direct functions to power gate/ungate host
    controller in Tegra186. Host controller driver should add "power-domains"
    property in device tree and implement runtime suspend and resume
    callback functons. Power gate and ungate is taken care by power domain
    driver when host controller driver calls pm_runtime_put_sync and
    pm_runtime_get_sync respectively.
    
    Register suspend_noirq & resume_noirq callback functions to allow PCIe to
    come up after resume from RAM. Both runtime and noirq pm ops share same
    callback functions.
    Signed-off-by: default avatarManikanta Maddireddy <mmaddireddy@nvidia.com>
    [lorenzo.pieralisi@arm.com: squashed patch to fix compilation]
    Signed-off-by: default avatarLorenzo Pieralisi <lorenzo.pieralisi@arm.com>
    Acked-by: default avatarThierry Reding <treding@nvidia.com>
    Tested-by: default avatarThierry Reding <treding@nvidia.com>
    da76ba50
pci-tegra.c 62.7 KB