20.04.2021 19:52, Thierry Reding пишет: > -static int tegra_mc_suspend(struct device *dev) > +static int __maybe_unused tegra_mc_suspend(struct device *dev) > { > struct tegra_mc *mc = dev_get_drvdata(dev); > - int err; > > - if (IS_ENABLED(CONFIG_TEGRA_IOMMU_GART) && mc->gart) { > - err = tegra_gart_suspend(mc->gart); > - if (err) > - return err; > - } > + if (mc->soc->ops && mc->soc->ops->suspend) > + return mc->soc->ops->suspend(mc); > > return 0; > } > > -static int tegra_mc_resume(struct device *dev) > +static int __maybe_unused tegra_mc_resume(struct device *dev) > { > struct tegra_mc *mc = dev_get_drvdata(dev); > - int err; > > - if (IS_ENABLED(CONFIG_TEGRA_IOMMU_GART) && mc->gart) { > - err = tegra_gart_resume(mc->gart); > - if (err) > - return err; > - } > + if (mc->soc->ops && mc->soc->ops->resume) > + return mc->soc->ops->resume(mc); > > return 0; > } You added __maybe_unused, but haven't changed tegra_mc_pm_ops to use SET_SYSTEM_SLEEP_PM_OPS(), so the functions are always used.