diff --git a/drivers/memory/tegra/tegra210-emc-core.c b/drivers/memory/tegra/tegra210-emc-core.c
index e8d4cd8fdec2..07c7654dac63 100644
--- a/drivers/memory/tegra/tegra210-emc-core.c
+++ b/drivers/memory/tegra/tegra210-emc-core.c
@@ -1847,16 +1847,16 @@ static int tegra210_emc_probe(struct platform_device *pdev)
np = pdev->dev.of_node;
/* attach to the nominal and (optional) derated tables */
- err = of_reserved_mem_device_init_by_name(emc->dev, np, "nominal");
+ err = devm_of_reserved_mem_device_init_by_name(emc->dev, np, "nominal");
if (err < 0) {
dev_err(emc->dev, "failed to get nominal EMC table: %d\n", err);
return err;
}
- err = of_reserved_mem_device_init_by_name(emc->dev, np, "derated");
+ err = devm_of_reserved_mem_device_init_by_name(emc->dev, np, "derated");
if (err < 0 && err != -ENODEV) {
dev_err(emc->dev, "failed to get derated EMC table: %d\n", err);
- goto release;
+ return err;
}
/* validate the tables */@@ -1864,14 +1864,14 @@ static int tegra210_emc_probe(struct platform_device *pdev)
err = tegra210_emc_validate_timings(emc, emc->nominal,
emc->num_timings);
if (err < 0)
- goto release;
+ return err;
}
if (emc->derated) {
err = tegra210_emc_validate_timings(emc, emc->derated,
emc->num_timings);
if (err < 0)
- goto release;
+ return err;
}
/* default to the nominal table */@@ -1891,7 +1891,7 @@ static int tegra210_emc_probe(struct platform_device *pdev)
dev_err(emc->dev, "no EMC table entry found for %lu kHz\n",
current_rate);
err = -ENOENT;
- goto release;
+ return err;
}
/* pick a compatible clock change sequence for the EMC table */
@@ -1909,7 +1909,7 @@ static int tegra210_emc_probe(struct platform_device *pdev)
dev_err(&pdev->dev, "sequence %u not supported\n",
emc->timings[0].revision);
err = -ENOTSUPP;
- goto release;
+ return err;
}
emc->offsets = &tegra210_emc_table_register_offsets;
@@ -1924,7 +1924,7 @@ static int tegra210_emc_probe(struct platform_device *pdev)
GFP_KERNEL);
if (!emc->provider.configs) {
err = -ENOMEM;
- goto release;
+ return err;
}
emc->provider.num_configs = emc->num_timings;@@ -1949,7 +1949,7 @@ static int tegra210_emc_probe(struct platform_device *pdev)
err = tegra210_clk_emc_attach(emc->clk, &emc->provider);
if (err < 0) {
dev_err(&pdev->dev, "failed to attach to EMC clock: %d\n", err);
- goto release;
+ return err;
}
emc->clkchange_delay = 100;@@ -1979,8 +1979,6 @@ static int tegra210_emc_probe(struct platform_device *pdev)
detach:
debugfs_remove_recursive(emc->debugfs.root);
tegra210_clk_emc_detach(emc->clk);
-release:
- of_reserved_mem_device_release(emc->dev);
return err;
}
@@ -1991,7 +1989,6 @@ static void tegra210_emc_remove(struct platform_device *pdev)
debugfs_remove_recursive(emc->debugfs.root);
tegra210_clk_emc_detach(emc->clk);
- of_reserved_mem_device_release(emc->dev);
}
static int __maybe_unused tegra210_emc_suspend(struct device *dev)
--
2.53.0