On 20/07/15 09:51, Mikko Perttunen wrote: > On 07/20/2015 11:28 AM, Jon Hunter wrote: >> Hi Mikko, > > Hi! > >> ... >>> +static int vic_runtime_resume(struct device *dev) >>> +{ >>> + struct vic *vic = dev_get_drvdata(dev); >>> + int err; >>> + >>> + err = tegra_powergate_sequence_power_up(TEGRA_POWERGATE_VIC, >>> + vic->clk, vic->rst); >> >> I would like to deprecate use of the above function [1]. I have been >> trying to migrate driver to use a new API instead of the above. > > Yes, we will need to coordinate the API change here. I kept the old way > here to not depend on your series for now. > >> >>> + if (err < 0) >>> + dev_err(dev, "failed to power up device\n"); >>> + >>> + return err; >>> +} >>> + >>> ... >>> + >>> + pm_runtime_enable(&pdev->dev); >>> + if (!pm_runtime_enabled(&pdev->dev)) { >>> + err = vic_runtime_resume(&pdev->dev); >>> + if (err < 0) >>> + goto unregister_client; >>> + } >> >> I don't see why pm_runtime_enable() should ever fail to enable >> pm_runtime here. Hence, the if-statement appears to be redundant. If you >> are trying to determine whether rpm is supported for the power-domains >> then you should simply check to see if the DT node for the device has >> the "power-domains" property. See my series [1]. > > The intention is that if runtime PM is not enabled, the power domain is > still brought up. On a cursory look, it seems like with your patch, this > should indeed work fine without this check if CONFIG_PM is enabled. Now, > that might always be enabled? If so, then everything would be fine; if > this lands after your series, we could even just make the power-domains > prop mandatory and not implement the legacy mode at all. If not, then > AFAIU we must still keep this path. Ok, I see you just wish to test it is enabled in the kernel config. Then yes that would make sense and the above is fine. Cheers Jon -- To unsubscribe from this list: send the line "unsubscribe linux-tegra" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html