Message ID | 20240226-anx7625-defer-log-no-dsi-host-v1-1-242b1af31884@collabora.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm/bridge: anx7625: Don't log an error when DSI host can't be found | expand |
Il 26/02/24 22:20, Nícolas F. R. A. Prado ha scritto: > Given that failing to find a DSI host causes the driver to defer probe, > make use of dev_err_probe() to log the reason. This makes the defer > probe reason available and avoids alerting userspace about something > that is not necessarily an error. > > Fixes: 269332997a16 ("drm/bridge: anx7625: Return -EPROBE_DEFER if the dsi host was not found") > Signed-off-by: Nícolas F. R. A. Prado <nfraprado@collabora.com> > --- > drivers/gpu/drm/bridge/analogix/anx7625.c | 6 ++---- > 1 file changed, 2 insertions(+), 4 deletions(-) > > diff --git a/drivers/gpu/drm/bridge/analogix/anx7625.c b/drivers/gpu/drm/bridge/analogix/anx7625.c > index 29d91493b101..4ee5614a2623 100644 > --- a/drivers/gpu/drm/bridge/analogix/anx7625.c > +++ b/drivers/gpu/drm/bridge/analogix/anx7625.c > @@ -2076,10 +2076,8 @@ static int anx7625_setup_dsi_device(struct anx7625_data *ctx) > }; > > host = of_find_mipi_dsi_host_by_node(ctx->pdata.mipi_host_node); > - if (!host) { > - DRM_DEV_ERROR(dev, "fail to find dsi host.\n"); > - return -EPROBE_DEFER; > - } > + if (!host) > + return dev_err_probe(dev, -EPROBE_DEFER, "fail to find dsi host.\n"); Agreed, but while at it: 1. This is not the only driver doing this, so you might as well go fix all of them in a series (toshiba tcxxxx, lontium, chipone.... check them, the error message is exactly the same even, that'd take 3 seconds); 2. I've just noticed that, in this driver, of_node_put() is never called for the `mipi_host_node`, so the reference is never dropped... but that can come later and not necessarily in the eventual series that fixes the err message strategy. In the meanwhile, for this commit Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> > > dsi = devm_mipi_dsi_device_register_full(dev, host, &info); > if (IS_ERR(dsi)) { > > --- > base-commit: 2ae0a045e6814c8c1d676d6153c605a65746aa29 > change-id: 20240226-anx7625-defer-log-no-dsi-host-c3f9ccbcb287 > > Best regards,
On 26/02/2024 22:20, Nícolas F. R. A. Prado wrote: > Given that failing to find a DSI host causes the driver to defer probe, > make use of dev_err_probe() to log the reason. This makes the defer > probe reason available and avoids alerting userspace about something > that is not necessarily an error. > > Fixes: 269332997a16 ("drm/bridge: anx7625: Return -EPROBE_DEFER if the dsi host was not found") > Signed-off-by: Nícolas F. R. A. Prado <nfraprado@collabora.com> > --- > drivers/gpu/drm/bridge/analogix/anx7625.c | 6 ++---- > 1 file changed, 2 insertions(+), 4 deletions(-) > > diff --git a/drivers/gpu/drm/bridge/analogix/anx7625.c b/drivers/gpu/drm/bridge/analogix/anx7625.c > index 29d91493b101..4ee5614a2623 100644 > --- a/drivers/gpu/drm/bridge/analogix/anx7625.c > +++ b/drivers/gpu/drm/bridge/analogix/anx7625.c > @@ -2076,10 +2076,8 @@ static int anx7625_setup_dsi_device(struct anx7625_data *ctx) > }; > > host = of_find_mipi_dsi_host_by_node(ctx->pdata.mipi_host_node); > - if (!host) { > - DRM_DEV_ERROR(dev, "fail to find dsi host.\n"); > - return -EPROBE_DEFER; > - } > + if (!host) > + return dev_err_probe(dev, -EPROBE_DEFER, "fail to find dsi host.\n"); > > dsi = devm_mipi_dsi_device_register_full(dev, host, &info); > if (IS_ERR(dsi)) { > > --- > base-commit: 2ae0a045e6814c8c1d676d6153c605a65746aa29 > change-id: 20240226-anx7625-defer-log-no-dsi-host-c3f9ccbcb287 > > Best regards, Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
diff --git a/drivers/gpu/drm/bridge/analogix/anx7625.c b/drivers/gpu/drm/bridge/analogix/anx7625.c index 29d91493b101..4ee5614a2623 100644 --- a/drivers/gpu/drm/bridge/analogix/anx7625.c +++ b/drivers/gpu/drm/bridge/analogix/anx7625.c @@ -2076,10 +2076,8 @@ static int anx7625_setup_dsi_device(struct anx7625_data *ctx) }; host = of_find_mipi_dsi_host_by_node(ctx->pdata.mipi_host_node); - if (!host) { - DRM_DEV_ERROR(dev, "fail to find dsi host.\n"); - return -EPROBE_DEFER; - } + if (!host) + return dev_err_probe(dev, -EPROBE_DEFER, "fail to find dsi host.\n"); dsi = devm_mipi_dsi_device_register_full(dev, host, &info); if (IS_ERR(dsi)) {
Given that failing to find a DSI host causes the driver to defer probe, make use of dev_err_probe() to log the reason. This makes the defer probe reason available and avoids alerting userspace about something that is not necessarily an error. Fixes: 269332997a16 ("drm/bridge: anx7625: Return -EPROBE_DEFER if the dsi host was not found") Signed-off-by: Nícolas F. R. A. Prado <nfraprado@collabora.com> --- drivers/gpu/drm/bridge/analogix/anx7625.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) --- base-commit: 2ae0a045e6814c8c1d676d6153c605a65746aa29 change-id: 20240226-anx7625-defer-log-no-dsi-host-c3f9ccbcb287 Best regards,