Commit f3b0d879 authored by Thierry Reding's avatar Thierry Reding

drm/tegra: dpaux: Make VDD supply optional

The VDD supply is only needed to supply power to eDP panels connected to
DPAUX. Technically that supply should be dealt with in the panel driver,
but for backwards-compatibility we need to keep this around anyway.

Also as a bit of background: the reason for why this supply is attached
to DPAUX is to make sure the panel is properly powered early on so that
it can generate a hotplug pulse at the appropriate time. This may no
longer be required given the support for deferred fbdev setup that was
"recently" introduced in DRM/KMS.
Signed-off-by: default avatarThierry Reding <treding@nvidia.com>
parent bbad6407
...@@ -485,12 +485,17 @@ static int tegra_dpaux_probe(struct platform_device *pdev) ...@@ -485,12 +485,17 @@ static int tegra_dpaux_probe(struct platform_device *pdev)
return err; return err;
} }
dpaux->vdd = devm_regulator_get(&pdev->dev, "vdd"); dpaux->vdd = devm_regulator_get_optional(&pdev->dev, "vdd");
if (IS_ERR(dpaux->vdd)) { if (IS_ERR(dpaux->vdd)) {
dev_err(&pdev->dev, "failed to get VDD supply: %ld\n", if (PTR_ERR(dpaux->vdd) != -ENODEV) {
if (PTR_ERR(dpaux->vdd) != -EPROBE_DEFER)
dev_err(&pdev->dev,
"failed to get VDD supply: %ld\n",
PTR_ERR(dpaux->vdd)); PTR_ERR(dpaux->vdd));
return PTR_ERR(dpaux->vdd); return PTR_ERR(dpaux->vdd);
} }
}
platform_set_drvdata(pdev, dpaux); platform_set_drvdata(pdev, dpaux);
pm_runtime_enable(&pdev->dev); pm_runtime_enable(&pdev->dev);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment