On 3/21/2019 11:03 PM, Jon Hunter wrote:
On 21/03/2019 17:23, Sameer Pujar wrote:
...
>>> data = of_device_get_match_data(&pdev->dev);
if (!data) {
dev_err(&pdev->dev, "no device match found\n");
return -ENODEV;
}
+ chip_pm->clk_data = data;
+ platform_set_drvdata(pdev, chip_pm);
So why has this been moved? There is a comment in gic_runtime_resume()
on why this was set after pm_runtime_get_sync() in probe.
This is moved up to make sure clk_data in chip_pm is populated by the time
gic_get_clocks() is called. The comment in runtime_resume() would still
hold
good, gic would be NULL till gic_of_init_child() is called. May be the
comment
needs to be slightly updated, because chip_pm is the new driver data now.
I see, but I am not sure it is necessary as you are directly passing
chip_pm to gic_get_clocks().
Ah yes, chip_pm need not be passed for gic_get_clocks(). But driver data
needs
to be set before runtime_resume() happens.
Cheers
Jon