• Mikko Perttunen's avatar
    drm/tegra: Enable runtime PM during probe · 62fa0a98
    Mikko Perttunen authored
    Currently, engine drivers only enable runtime PM during the host1x
    init callback. This can happen slightly later than the probe, which
    can cause the power domain to intermittently not be turned off after
    probe.
    
    My hypothesis is that there is a race condition between the post-probe
    power domain poweroff that is done from a queued work, and the
    pm_runtime_enable call happening in the host1x init callback.
    If the pm_runtime_enable call happens first, everything is OK and
    the power off work can disable the power domain as PM runtime is
    enabled and the device is runtime suspended. If power off work runs
    first, PM runtime is still disabled for the device and the domain
    must be kept powered.
    
    Resolve the issue by moving the runtime PM enablement to the
    probe function.
    Signed-off-by: default avatarMikko Perttunen <mperttunen@nvidia.com>
    Signed-off-by: default avatarThierry Reding <treding@nvidia.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20230613095215.2497004-1-cyndis@kapsi.fi
    62fa0a98
gr2d.c 8.97 KB