• Jon Hunter's avatar
    soc/tegra: pmc: Move powergate initialisation to probe · 6ac2a01d
    Jon Hunter authored
    Commit 8df12745 ("soc/tegra: pmc: Enable XUSB partitions on boot")
    was added as a workaround to ensure that the XUSB powergates or domains
    were turned on early during boot because as this time the Tegra XHCI
    driver did not handle the power domains at all. Now that the Tegra XHCI
    driver has been updated to properly managed the power domains, the
    workaround to enable the XUSB power domain early has been removed. This
    also means that we can now move the initialisation of the powergates
    into the PMC driver probe. Therefore, move the powergate initialisation
    into the PMC driver probe and return any errors detected. To handle any
    errors, functions to cleanup and remove any power-domains registered
    with the generic power-domain framework have been added.
    
    Finally the initialisation of the 'powergates_available' bitmask is kept
    in the PMC early init function to allow the legacy PMC powergate APIs to
    be called during early boot for enabling secondary CPUs on 32-bit Tegra
    devices.
    Signed-off-by: default avatarJon Hunter <jonathanh@nvidia.com>
    Signed-off-by: default avatarThierry Reding <treding@nvidia.com>
    6ac2a01d
pmc.c 72.8 KB