Subdevices of bpmp, such as bpmp-i2c, require the bpmp device's
drvdata to be set during their probe. Currently this is not always the
case. Fix this by calling platform_set_drvdata() earlier during bpmp's
probe.
Signed-off-by: Timo Alho <[email protected]>
---
drivers/firmware/tegra/bpmp.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/firmware/tegra/bpmp.c b/drivers/firmware/tegra/bpmp.c
index b251795..73ca55b 100644
--- a/drivers/firmware/tegra/bpmp.c
+++ b/drivers/firmware/tegra/bpmp.c
@@ -806,6 +806,8 @@ static int tegra_bpmp_probe(struct platform_device *pdev)
dev_info(&pdev->dev, "firmware: %s\n", tag);
+ platform_set_drvdata(pdev, bpmp);
+
err = of_platform_default_populate(pdev->dev.of_node, NULL, &pdev->dev);
if (err < 0)
goto free_mrq;
@@ -822,8 +824,6 @@ static int tegra_bpmp_probe(struct platform_device *pdev)
if (err < 0)
goto free_mrq;
- platform_set_drvdata(pdev, bpmp);
-
return 0;
free_mrq:
--
2.7.4
On Thu, Aug 17, 2017 at 12:49:11PM +0300, Timo Alho wrote:
> Subdevices of bpmp, such as bpmp-i2c, require the bpmp device's
> drvdata to be set during their probe. Currently this is not always the
> case. Fix this by calling platform_set_drvdata() earlier during bpmp's
> probe.
>
> Signed-off-by: Timo Alho <[email protected]>
> ---
> drivers/firmware/tegra/bpmp.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
Applied to for-4.14/firmware, thanks.
Thierry