diff options
author | Dmitry Osipenko <digetx@gmail.com> | 2022-02-08 00:29:23 +0300 |
---|---|---|
committer | Thierry Reding <treding@nvidia.com> | 2022-02-24 17:03:08 +0100 |
commit | f07f04a51d92165e0ad711f1be1cc5bbbfcb4766 (patch) | |
tree | 834a60db44169e4b6674e09d3f525b5310dae1cc /drivers/gpu/drm/tegra/dc.c | |
parent | 8913e1aea4b32a866343b14e565c62cec54f3f78 (diff) | |
download | linux-f07f04a51d92165e0ad711f1be1cc5bbbfcb4766.tar.gz linux-f07f04a51d92165e0ad711f1be1cc5bbbfcb4766.tar.bz2 linux-f07f04a51d92165e0ad711f1be1cc5bbbfcb4766.zip |
drm/tegra: Use dev_err_probe()
Replace dev_printk() with a generic dev_err_probe() helper which silences
noisy error messages about deferred probe and makes easy to debug failing
deferred probe by printing notification about the failure to KMSG in the
end of kernel booting process and by adding failing device and the reason
of deferred probe to devices_deferred of debugfs. This was proven to be
useful in the case of eDP driver regression by immediately showing why
display driver was failing when user asked for help, otherwise it would've
been much more difficult to debug such problems on a third party device
that doesn't have developer setup.
Signed-off-by: Dmitry Osipenko <digetx@gmail.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Diffstat (limited to 'drivers/gpu/drm/tegra/dc.c')
-rw-r--r-- | drivers/gpu/drm/tegra/dc.c | 13 |
1 files changed, 3 insertions, 10 deletions
diff --git a/drivers/gpu/drm/tegra/dc.c b/drivers/gpu/drm/tegra/dc.c index eb70eee8992a..9435c867c865 100644 --- a/drivers/gpu/drm/tegra/dc.c +++ b/drivers/gpu/drm/tegra/dc.c @@ -3211,16 +3211,9 @@ static int tegra_dc_probe(struct platform_device *pdev) return -ENXIO; err = tegra_dc_rgb_probe(dc); - if (err < 0 && err != -ENODEV) { - const char *level = KERN_ERR; - - if (err == -EPROBE_DEFER) - level = KERN_DEBUG; - - dev_printk(level, dc->dev, "failed to probe RGB output: %d\n", - err); - return err; - } + if (err < 0 && err != -ENODEV) + return dev_err_probe(&pdev->dev, err, + "failed to probe RGB output\n"); platform_set_drvdata(pdev, dc); pm_runtime_enable(&pdev->dev); |