* [PATCH v2 0/4] dev_err_probe usage for imx8qxp DPU pipeline
@ 2025-01-07 14:38 Alexander Stein
2025-01-07 14:38 ` [PATCH v2 1/4] drm/bridge: imx8qxp-pxl2dpi: Use dev_err_probe Alexander Stein
` (4 more replies)
0 siblings, 5 replies; 14+ messages in thread
From: Alexander Stein @ 2025-01-07 14:38 UTC (permalink / raw)
To: Liu Ying, Andrzej Hajda, Neil Armstrong, Robert Foss,
Laurent Pinchart, Jonas Karlman, Jernej Skrabec,
Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann, David Airlie,
Simona Vetter, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team,
Fabio Estevam
Cc: Alexander Stein, dri-devel, imx, linux-arm-kernel, linux-kernel
Hi everyone,
this is a v2 of an old series still in my queue.
Changes in v2:
* Rebase to next-20250107
* Remove 'imx' prefix for commit subject in patch 2 & 3
Best regards,
Alexander
Alexander Stein (4):
drm/bridge: imx8qxp-pxl2dpi: Use dev_err_probe
drm/bridge: imx8qxp-ldb: Use dev_err_probe
drm/bridge: imx-ldb-helper: Use dev_err_probe
drm/bridge: imx8qxp-pixel-link: Use dev_err_probe
drivers/gpu/drm/bridge/imx/imx-ldb-helper.c | 13 ++-----
drivers/gpu/drm/bridge/imx/imx8qxp-ldb.c | 37 ++++++-------------
.../gpu/drm/bridge/imx/imx8qxp-pixel-link.c | 19 +++-------
drivers/gpu/drm/bridge/imx/imx8qxp-pxl2dpi.c | 26 ++++---------
4 files changed, 29 insertions(+), 66 deletions(-)
--
2.34.1
^ permalink raw reply [flat|nested] 14+ messages in thread
* [PATCH v2 1/4] drm/bridge: imx8qxp-pxl2dpi: Use dev_err_probe
2025-01-07 14:38 [PATCH v2 0/4] dev_err_probe usage for imx8qxp DPU pipeline Alexander Stein
@ 2025-01-07 14:38 ` Alexander Stein
2025-01-08 3:22 ` Liu Ying
2025-01-08 11:06 ` kernel test robot
2025-01-07 14:38 ` [PATCH v2 2/4] drm/bridge: imx8qxp-ldb: " Alexander Stein
` (3 subsequent siblings)
4 siblings, 2 replies; 14+ messages in thread
From: Alexander Stein @ 2025-01-07 14:38 UTC (permalink / raw)
To: Liu Ying, Andrzej Hajda, Neil Armstrong, Robert Foss,
Laurent Pinchart, Jonas Karlman, Jernej Skrabec,
Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann, David Airlie,
Simona Vetter, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team,
Fabio Estevam
Cc: Alexander Stein, dri-devel, imx, linux-arm-kernel, linux-kernel
This simplifies the code and gives additional information upon deferral.
Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
---
drivers/gpu/drm/bridge/imx/imx8qxp-pxl2dpi.c | 26 ++++++--------------
1 file changed, 7 insertions(+), 19 deletions(-)
diff --git a/drivers/gpu/drm/bridge/imx/imx8qxp-pxl2dpi.c b/drivers/gpu/drm/bridge/imx/imx8qxp-pxl2dpi.c
index 65cf3a6c8ec69..038eaff889bb7 100644
--- a/drivers/gpu/drm/bridge/imx/imx8qxp-pxl2dpi.c
+++ b/drivers/gpu/drm/bridge/imx/imx8qxp-pxl2dpi.c
@@ -398,20 +398,12 @@ static int imx8qxp_pxl2dpi_bridge_probe(struct platform_device *pdev)
return -ENOMEM;
p2d->regmap = syscon_node_to_regmap(np->parent);
- if (IS_ERR(p2d->regmap)) {
- ret = PTR_ERR(p2d->regmap);
- if (ret != -EPROBE_DEFER)
- DRM_DEV_ERROR(dev, "failed to get regmap: %d\n", ret);
- return ret;
- }
+ if (IS_ERR(p2d->regmap))
+ return dev_err_probe(dev, ret, "failed to get regmap\n");
ret = imx_scu_get_handle(&p2d->ipc_handle);
- if (ret) {
- if (ret != -EPROBE_DEFER)
- DRM_DEV_ERROR(dev, "failed to get SCU ipc handle: %d\n",
- ret);
- return ret;
- }
+ if (ret)
+ return dev_err_probe(dev, ret, "failed to get SCU ipc handle\n");
p2d->dev = dev;
@@ -422,13 +414,9 @@ static int imx8qxp_pxl2dpi_bridge_probe(struct platform_device *pdev)
}
p2d->next_bridge = imx8qxp_pxl2dpi_find_next_bridge(p2d);
- if (IS_ERR(p2d->next_bridge)) {
- ret = PTR_ERR(p2d->next_bridge);
- if (ret != -EPROBE_DEFER)
- DRM_DEV_ERROR(dev, "failed to find next bridge: %d\n",
- ret);
- return ret;
- }
+ if (IS_ERR(p2d->next_bridge))
+ return dev_err_probe(dev, PTR_ERR(p2d->next_bridge),
+ "failed to find next bridge\n");
ret = imx8qxp_pxl2dpi_set_pixel_link_sel(p2d);
if (ret)
--
2.34.1
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [PATCH v2 2/4] drm/bridge: imx8qxp-ldb: Use dev_err_probe
2025-01-07 14:38 [PATCH v2 0/4] dev_err_probe usage for imx8qxp DPU pipeline Alexander Stein
2025-01-07 14:38 ` [PATCH v2 1/4] drm/bridge: imx8qxp-pxl2dpi: Use dev_err_probe Alexander Stein
@ 2025-01-07 14:38 ` Alexander Stein
2025-01-08 3:33 ` Liu Ying
2025-01-07 14:38 ` [PATCH v2 3/4] drm/bridge: imx-ldb-helper: " Alexander Stein
` (2 subsequent siblings)
4 siblings, 1 reply; 14+ messages in thread
From: Alexander Stein @ 2025-01-07 14:38 UTC (permalink / raw)
To: Liu Ying, Andrzej Hajda, Neil Armstrong, Robert Foss,
Laurent Pinchart, Jonas Karlman, Jernej Skrabec,
Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann, David Airlie,
Simona Vetter, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team,
Fabio Estevam
Cc: Alexander Stein, dri-devel, imx, linux-arm-kernel, linux-kernel
This simplifies the code and gives additional information upon deferral.
Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
---
drivers/gpu/drm/bridge/imx/imx8qxp-ldb.c | 37 ++++++++----------------
1 file changed, 12 insertions(+), 25 deletions(-)
diff --git a/drivers/gpu/drm/bridge/imx/imx8qxp-ldb.c b/drivers/gpu/drm/bridge/imx/imx8qxp-ldb.c
index 7bce2305d6767..d5e123173f354 100644
--- a/drivers/gpu/drm/bridge/imx/imx8qxp-ldb.c
+++ b/drivers/gpu/drm/bridge/imx/imx8qxp-ldb.c
@@ -557,10 +557,8 @@ static int imx8qxp_ldb_parse_dt_companion(struct imx8qxp_ldb *imx8qxp_ldb)
imx8qxp_ldb->companion = of_drm_find_bridge(companion_port);
if (!imx8qxp_ldb->companion) {
- ret = -EPROBE_DEFER;
- DRM_DEV_DEBUG_DRIVER(dev,
- "failed to find bridge for companion bridge: %d\n",
- ret);
+ ret = dev_err_probe(dev, -EPROBE_DEFER,
+ "failed to find bridge for companion bridge\n");
goto out;
}
@@ -590,22 +588,14 @@ static int imx8qxp_ldb_probe(struct platform_device *pdev)
return -ENOMEM;
imx8qxp_ldb->clk_pixel = devm_clk_get(dev, "pixel");
- if (IS_ERR(imx8qxp_ldb->clk_pixel)) {
- ret = PTR_ERR(imx8qxp_ldb->clk_pixel);
- if (ret != -EPROBE_DEFER)
- DRM_DEV_ERROR(dev,
- "failed to get pixel clock: %d\n", ret);
- return ret;
- }
+ if (IS_ERR(imx8qxp_ldb->clk_pixel))
+ return dev_err_probe(dev, PTR_ERR(imx8qxp_ldb->clk_pixel),
+ "failed to get pixel clock\n");
imx8qxp_ldb->clk_bypass = devm_clk_get(dev, "bypass");
- if (IS_ERR(imx8qxp_ldb->clk_bypass)) {
- ret = PTR_ERR(imx8qxp_ldb->clk_bypass);
- if (ret != -EPROBE_DEFER)
- DRM_DEV_ERROR(dev,
- "failed to get bypass clock: %d\n", ret);
- return ret;
- }
+ if (IS_ERR(imx8qxp_ldb->clk_bypass))
+ return dev_err_probe(dev, PTR_ERR(imx8qxp_ldb->clk_bypass),
+ "failed to get bypass clock\n");
imx8qxp_ldb->dev = dev;
@@ -640,13 +630,10 @@ static int imx8qxp_ldb_probe(struct platform_device *pdev)
}
imx8qxp_ldb_ch->phy = devm_of_phy_get(dev, ldb_ch->np, "lvds_phy");
- if (IS_ERR(imx8qxp_ldb_ch->phy)) {
- ret = PTR_ERR(imx8qxp_ldb_ch->phy);
- if (ret != -EPROBE_DEFER)
- DRM_DEV_ERROR(dev, "failed to get channel%d PHY: %d\n",
- imx8qxp_ldb->active_chno, ret);
- return ret;
- }
+ if (IS_ERR(imx8qxp_ldb_ch->phy))
+ return dev_err_probe(dev, PTR_ERR(imx8qxp_ldb_ch->phy),
+ "failed to get channel%d PHY\n",
+ imx8qxp_ldb->active_chno);
ret = ldb_find_next_bridge_helper(ldb);
if (ret)
--
2.34.1
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [PATCH v2 3/4] drm/bridge: imx-ldb-helper: Use dev_err_probe
2025-01-07 14:38 [PATCH v2 0/4] dev_err_probe usage for imx8qxp DPU pipeline Alexander Stein
2025-01-07 14:38 ` [PATCH v2 1/4] drm/bridge: imx8qxp-pxl2dpi: Use dev_err_probe Alexander Stein
2025-01-07 14:38 ` [PATCH v2 2/4] drm/bridge: imx8qxp-ldb: " Alexander Stein
@ 2025-01-07 14:38 ` Alexander Stein
2025-01-08 3:37 ` Liu Ying
2025-01-07 14:39 ` [PATCH v2 4/4] drm/bridge: imx8qxp-pixel-link: " Alexander Stein
2025-01-08 3:13 ` [PATCH v2 0/4] dev_err_probe usage for imx8qxp DPU pipeline Liu Ying
4 siblings, 1 reply; 14+ messages in thread
From: Alexander Stein @ 2025-01-07 14:38 UTC (permalink / raw)
To: Liu Ying, Andrzej Hajda, Neil Armstrong, Robert Foss,
Laurent Pinchart, Jonas Karlman, Jernej Skrabec,
Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann, David Airlie,
Simona Vetter, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team,
Fabio Estevam
Cc: Alexander Stein, dri-devel, imx, linux-arm-kernel, linux-kernel
This simplifies the code and gives additional information upon deferral.
Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
---
drivers/gpu/drm/bridge/imx/imx-ldb-helper.c | 13 ++++---------
1 file changed, 4 insertions(+), 9 deletions(-)
diff --git a/drivers/gpu/drm/bridge/imx/imx-ldb-helper.c b/drivers/gpu/drm/bridge/imx/imx-ldb-helper.c
index 9b5bebbe357dd..2c9b862af74af 100644
--- a/drivers/gpu/drm/bridge/imx/imx-ldb-helper.c
+++ b/drivers/gpu/drm/bridge/imx/imx-ldb-helper.c
@@ -167,7 +167,7 @@ int ldb_find_next_bridge_helper(struct ldb *ldb)
{
struct device *dev = ldb->dev;
struct ldb_channel *ldb_ch;
- int ret, i;
+ int i;
for (i = 0; i < MAX_LDB_CHAN_NUM; i++) {
ldb_ch = ldb->channel[i];
@@ -177,14 +177,9 @@ int ldb_find_next_bridge_helper(struct ldb *ldb)
ldb_ch->next_bridge = devm_drm_of_get_bridge(dev, ldb_ch->np,
1, 0);
- if (IS_ERR(ldb_ch->next_bridge)) {
- ret = PTR_ERR(ldb_ch->next_bridge);
- if (ret != -EPROBE_DEFER)
- DRM_DEV_ERROR(dev,
- "failed to get next bridge: %d\n",
- ret);
- return ret;
- }
+ if (IS_ERR(ldb_ch->next_bridge))
+ return dev_err_probe(dev, PTR_ERR(ldb_ch->next_bridge),
+ "failed to find next bridge\n");
}
return 0;
--
2.34.1
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [PATCH v2 4/4] drm/bridge: imx8qxp-pixel-link: Use dev_err_probe
2025-01-07 14:38 [PATCH v2 0/4] dev_err_probe usage for imx8qxp DPU pipeline Alexander Stein
` (2 preceding siblings ...)
2025-01-07 14:38 ` [PATCH v2 3/4] drm/bridge: imx-ldb-helper: " Alexander Stein
@ 2025-01-07 14:39 ` Alexander Stein
2025-01-08 3:41 ` Liu Ying
2025-01-08 3:13 ` [PATCH v2 0/4] dev_err_probe usage for imx8qxp DPU pipeline Liu Ying
4 siblings, 1 reply; 14+ messages in thread
From: Alexander Stein @ 2025-01-07 14:39 UTC (permalink / raw)
To: Liu Ying, Andrzej Hajda, Neil Armstrong, Robert Foss,
Laurent Pinchart, Jonas Karlman, Jernej Skrabec,
Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann, David Airlie,
Simona Vetter, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team,
Fabio Estevam
Cc: Alexander Stein, dri-devel, imx, linux-arm-kernel, linux-kernel
This simplifies the code and gives additional information upon deferral.
Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
---
.../gpu/drm/bridge/imx/imx8qxp-pixel-link.c | 19 ++++++-------------
1 file changed, 6 insertions(+), 13 deletions(-)
diff --git a/drivers/gpu/drm/bridge/imx/imx8qxp-pixel-link.c b/drivers/gpu/drm/bridge/imx/imx8qxp-pixel-link.c
index 4b0715ed6f38c..6391038f3949f 100644
--- a/drivers/gpu/drm/bridge/imx/imx8qxp-pixel-link.c
+++ b/drivers/gpu/drm/bridge/imx/imx8qxp-pixel-link.c
@@ -333,12 +333,9 @@ static int imx8qxp_pixel_link_bridge_probe(struct platform_device *pdev)
return -ENOMEM;
ret = imx_scu_get_handle(&pl->ipc_handle);
- if (ret) {
- if (ret != -EPROBE_DEFER)
- DRM_DEV_ERROR(dev, "failed to get SCU ipc handle: %d\n",
- ret);
- return ret;
- }
+ if (ret)
+ return dev_err_probe(dev, ret,
+ "failed to get SCU ipc handle\n");
ret = of_property_read_u8(np, "fsl,dc-id", &pl->dc_id);
if (ret) {
@@ -374,13 +371,9 @@ static int imx8qxp_pixel_link_bridge_probe(struct platform_device *pdev)
return ret;
pl->next_bridge = imx8qxp_pixel_link_find_next_bridge(pl);
- if (IS_ERR(pl->next_bridge)) {
- ret = PTR_ERR(pl->next_bridge);
- if (ret != -EPROBE_DEFER)
- DRM_DEV_ERROR(dev, "failed to find next bridge: %d\n",
- ret);
- return ret;
- }
+ if (IS_ERR(pl->next_bridge))
+ return dev_err_probe(dev, PTR_ERR(pl->next_bridge),
+ "failed to find next bridge\n");
platform_set_drvdata(pdev, pl);
--
2.34.1
^ permalink raw reply related [flat|nested] 14+ messages in thread
* Re: [PATCH v2 0/4] dev_err_probe usage for imx8qxp DPU pipeline
2025-01-07 14:38 [PATCH v2 0/4] dev_err_probe usage for imx8qxp DPU pipeline Alexander Stein
` (3 preceding siblings ...)
2025-01-07 14:39 ` [PATCH v2 4/4] drm/bridge: imx8qxp-pixel-link: " Alexander Stein
@ 2025-01-08 3:13 ` Liu Ying
2025-01-08 9:46 ` Alexander Stein
4 siblings, 1 reply; 14+ messages in thread
From: Liu Ying @ 2025-01-08 3:13 UTC (permalink / raw)
To: Alexander Stein, Andrzej Hajda, Neil Armstrong, Robert Foss,
Laurent Pinchart, Jonas Karlman, Jernej Skrabec,
Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann, David Airlie,
Simona Vetter, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team,
Fabio Estevam
Cc: dri-devel, imx, linux-arm-kernel, linux-kernel
On 01/07/2025, Alexander Stein wrote:
> Hi everyone,
Hi Alexander,
>
> this is a v2 of an old series still in my queue.
>
> Changes in v2:
> * Rebase to next-20250107
> * Remove 'imx' prefix for commit subject in patch 2 & 3
>
> Best regards,
> Alexander
>
> Alexander Stein (4):
> drm/bridge: imx8qxp-pxl2dpi: Use dev_err_probe
> drm/bridge: imx8qxp-ldb: Use dev_err_probe
> drm/bridge: imx-ldb-helper: Use dev_err_probe
> drm/bridge: imx8qxp-pixel-link: Use dev_err_probe
i.MX8QXP Pixel Combiner is also in the pipeline, so imx8qxp-pixel-combiner.c
needs to be changed.
To achieve consistent log upon probe deferral, i.MX8QM LDB bridge driver
imx8qm-ldb.c needs to be changed too, but it can be done with a separate patch.
>
> drivers/gpu/drm/bridge/imx/imx-ldb-helper.c | 13 ++-----
> drivers/gpu/drm/bridge/imx/imx8qxp-ldb.c | 37 ++++++-------------
> .../gpu/drm/bridge/imx/imx8qxp-pixel-link.c | 19 +++-------
> drivers/gpu/drm/bridge/imx/imx8qxp-pxl2dpi.c | 26 ++++---------
> 4 files changed, 29 insertions(+), 66 deletions(-)
>
--
Regards,
Liu Ying
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH v2 1/4] drm/bridge: imx8qxp-pxl2dpi: Use dev_err_probe
2025-01-07 14:38 ` [PATCH v2 1/4] drm/bridge: imx8qxp-pxl2dpi: Use dev_err_probe Alexander Stein
@ 2025-01-08 3:22 ` Liu Ying
2025-01-08 9:36 ` Alexander Stein
2025-01-08 11:06 ` kernel test robot
1 sibling, 1 reply; 14+ messages in thread
From: Liu Ying @ 2025-01-08 3:22 UTC (permalink / raw)
To: Alexander Stein, Andrzej Hajda, Neil Armstrong, Robert Foss,
Laurent Pinchart, Jonas Karlman, Jernej Skrabec,
Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann, David Airlie,
Simona Vetter, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team,
Fabio Estevam
Cc: dri-devel, imx, linux-arm-kernel, linux-kernel
On 01/07/2025, Alexander Stein wrote:
> This simplifies the code and gives additional information upon deferral.
>
> Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
> ---
> drivers/gpu/drm/bridge/imx/imx8qxp-pxl2dpi.c | 26 ++++++--------------
> 1 file changed, 7 insertions(+), 19 deletions(-)
>
> diff --git a/drivers/gpu/drm/bridge/imx/imx8qxp-pxl2dpi.c b/drivers/gpu/drm/bridge/imx/imx8qxp-pxl2dpi.c
> index 65cf3a6c8ec69..038eaff889bb7 100644
> --- a/drivers/gpu/drm/bridge/imx/imx8qxp-pxl2dpi.c
> +++ b/drivers/gpu/drm/bridge/imx/imx8qxp-pxl2dpi.c
> @@ -398,20 +398,12 @@ static int imx8qxp_pxl2dpi_bridge_probe(struct platform_device *pdev)
> return -ENOMEM;
>
> p2d->regmap = syscon_node_to_regmap(np->parent);
> - if (IS_ERR(p2d->regmap)) {
> - ret = PTR_ERR(p2d->regmap);
> - if (ret != -EPROBE_DEFER)
> - DRM_DEV_ERROR(dev, "failed to get regmap: %d\n", ret);
> - return ret;
> - }
> + if (IS_ERR(p2d->regmap))
> + return dev_err_probe(dev, ret, "failed to get regmap\n");
s/ret/PTR_ERR(p2d->regmap)/
>
> ret = imx_scu_get_handle(&p2d->ipc_handle);
> - if (ret) {
> - if (ret != -EPROBE_DEFER)
> - DRM_DEV_ERROR(dev, "failed to get SCU ipc handle: %d\n",
> - ret);
> - return ret;
> - }
> + if (ret)
> + return dev_err_probe(dev, ret, "failed to get SCU ipc handle\n");
>
> p2d->dev = dev;
>
> @@ -422,13 +414,9 @@ static int imx8qxp_pxl2dpi_bridge_probe(struct platform_device *pdev)
> }
>
> p2d->next_bridge = imx8qxp_pxl2dpi_find_next_bridge(p2d);
> - if (IS_ERR(p2d->next_bridge)) {
> - ret = PTR_ERR(p2d->next_bridge);
> - if (ret != -EPROBE_DEFER)
> - DRM_DEV_ERROR(dev, "failed to find next bridge: %d\n",
> - ret);
> - return ret;
> - }
> + if (IS_ERR(p2d->next_bridge))
> + return dev_err_probe(dev, PTR_ERR(p2d->next_bridge),
> + "failed to find next bridge\n");
>
> ret = imx8qxp_pxl2dpi_set_pixel_link_sel(p2d);
> if (ret)
imx8qxp_pxl2dpi_parse_dt_companion() may return -EPROBE_DEFER too, so it needs
to be changed.
--
Regards,
Liu Ying
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH v2 2/4] drm/bridge: imx8qxp-ldb: Use dev_err_probe
2025-01-07 14:38 ` [PATCH v2 2/4] drm/bridge: imx8qxp-ldb: " Alexander Stein
@ 2025-01-08 3:33 ` Liu Ying
0 siblings, 0 replies; 14+ messages in thread
From: Liu Ying @ 2025-01-08 3:33 UTC (permalink / raw)
To: Alexander Stein, Andrzej Hajda, Neil Armstrong, Robert Foss,
Laurent Pinchart, Jonas Karlman, Jernej Skrabec,
Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann, David Airlie,
Simona Vetter, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team,
Fabio Estevam
Cc: dri-devel, imx, linux-arm-kernel, linux-kernel
On 01/07/2025, Alexander Stein wrote:
> This simplifies the code and gives additional information upon deferral.
>
> Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
> ---
> drivers/gpu/drm/bridge/imx/imx8qxp-ldb.c | 37 ++++++++----------------
> 1 file changed, 12 insertions(+), 25 deletions(-)
Reviewed-by: Liu Ying <victor.liu@nxp.com>
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH v2 3/4] drm/bridge: imx-ldb-helper: Use dev_err_probe
2025-01-07 14:38 ` [PATCH v2 3/4] drm/bridge: imx-ldb-helper: " Alexander Stein
@ 2025-01-08 3:37 ` Liu Ying
2025-01-08 9:39 ` Alexander Stein
0 siblings, 1 reply; 14+ messages in thread
From: Liu Ying @ 2025-01-08 3:37 UTC (permalink / raw)
To: Alexander Stein, Andrzej Hajda, Neil Armstrong, Robert Foss,
Laurent Pinchart, Jonas Karlman, Jernej Skrabec,
Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann, David Airlie,
Simona Vetter, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team,
Fabio Estevam
Cc: dri-devel, imx, linux-arm-kernel, linux-kernel
On 01/07/2025, Alexander Stein wrote:
> This simplifies the code and gives additional information upon deferral.
>
> Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
> ---
> drivers/gpu/drm/bridge/imx/imx-ldb-helper.c | 13 ++++---------
> 1 file changed, 4 insertions(+), 9 deletions(-)
>
> diff --git a/drivers/gpu/drm/bridge/imx/imx-ldb-helper.c b/drivers/gpu/drm/bridge/imx/imx-ldb-helper.c
> index 9b5bebbe357dd..2c9b862af74af 100644
> --- a/drivers/gpu/drm/bridge/imx/imx-ldb-helper.c
> +++ b/drivers/gpu/drm/bridge/imx/imx-ldb-helper.c
> @@ -167,7 +167,7 @@ int ldb_find_next_bridge_helper(struct ldb *ldb)
> {
> struct device *dev = ldb->dev;
> struct ldb_channel *ldb_ch;
> - int ret, i;
> + int i;
>
> for (i = 0; i < MAX_LDB_CHAN_NUM; i++) {
> ldb_ch = ldb->channel[i];
> @@ -177,14 +177,9 @@ int ldb_find_next_bridge_helper(struct ldb *ldb)
>
> ldb_ch->next_bridge = devm_drm_of_get_bridge(dev, ldb_ch->np,
> 1, 0);
> - if (IS_ERR(ldb_ch->next_bridge)) {
> - ret = PTR_ERR(ldb_ch->next_bridge);
> - if (ret != -EPROBE_DEFER)
> - DRM_DEV_ERROR(dev,
> - "failed to get next bridge: %d\n",
> - ret);
> - return ret;
> - }
> + if (IS_ERR(ldb_ch->next_bridge))
> + return dev_err_probe(dev, PTR_ERR(ldb_ch->next_bridge),
> + "failed to find next bridge\n");
Nit: s/find/get/, since "get" was used.
> }
>
> return 0;
ldb_init_helper() may return -EPROBE_DEFER too, so it needs to be changed.
--
Regards,
Liu Ying
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH v2 4/4] drm/bridge: imx8qxp-pixel-link: Use dev_err_probe
2025-01-07 14:39 ` [PATCH v2 4/4] drm/bridge: imx8qxp-pixel-link: " Alexander Stein
@ 2025-01-08 3:41 ` Liu Ying
0 siblings, 0 replies; 14+ messages in thread
From: Liu Ying @ 2025-01-08 3:41 UTC (permalink / raw)
To: Alexander Stein, Andrzej Hajda, Neil Armstrong, Robert Foss,
Laurent Pinchart, Jonas Karlman, Jernej Skrabec,
Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann, David Airlie,
Simona Vetter, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team,
Fabio Estevam
Cc: dri-devel, imx, linux-arm-kernel, linux-kernel
On 01/07/2025, Alexander Stein wrote:
> This simplifies the code and gives additional information upon deferral.
>
> Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
> ---
> .../gpu/drm/bridge/imx/imx8qxp-pixel-link.c | 19 ++++++-------------
> 1 file changed, 6 insertions(+), 13 deletions(-)
Reviewed-by: Liu Ying <victor.liu@nxp.com>
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH v2 1/4] drm/bridge: imx8qxp-pxl2dpi: Use dev_err_probe
2025-01-08 3:22 ` Liu Ying
@ 2025-01-08 9:36 ` Alexander Stein
0 siblings, 0 replies; 14+ messages in thread
From: Alexander Stein @ 2025-01-08 9:36 UTC (permalink / raw)
To: Andrzej Hajda, Neil Armstrong, Robert Foss, Laurent Pinchart,
Jonas Karlman, Jernej Skrabec, Maarten Lankhorst, Maxime Ripard,
Thomas Zimmermann, David Airlie, Simona Vetter, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, Liu Ying
Cc: dri-devel, imx, linux-arm-kernel, linux-kernel
Hi,
Am Mittwoch, 8. Januar 2025, 04:22:19 CET schrieb Liu Ying:
> On 01/07/2025, Alexander Stein wrote:
> > This simplifies the code and gives additional information upon deferral.
> >
> > Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
> > ---
> > drivers/gpu/drm/bridge/imx/imx8qxp-pxl2dpi.c | 26 ++++++--------------
> > 1 file changed, 7 insertions(+), 19 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/bridge/imx/imx8qxp-pxl2dpi.c b/drivers/gpu/drm/bridge/imx/imx8qxp-pxl2dpi.c
> > index 65cf3a6c8ec69..038eaff889bb7 100644
> > --- a/drivers/gpu/drm/bridge/imx/imx8qxp-pxl2dpi.c
> > +++ b/drivers/gpu/drm/bridge/imx/imx8qxp-pxl2dpi.c
> > @@ -398,20 +398,12 @@ static int imx8qxp_pxl2dpi_bridge_probe(struct platform_device *pdev)
> > return -ENOMEM;
> >
> > p2d->regmap = syscon_node_to_regmap(np->parent);
> > - if (IS_ERR(p2d->regmap)) {
> > - ret = PTR_ERR(p2d->regmap);
> > - if (ret != -EPROBE_DEFER)
> > - DRM_DEV_ERROR(dev, "failed to get regmap: %d\n", ret);
> > - return ret;
> > - }
> > + if (IS_ERR(p2d->regmap))
> > + return dev_err_probe(dev, ret, "failed to get regmap\n");
>
> s/ret/PTR_ERR(p2d->regmap)/
Thanks for the catch.
> >
> > ret = imx_scu_get_handle(&p2d->ipc_handle);
> > - if (ret) {
> > - if (ret != -EPROBE_DEFER)
> > - DRM_DEV_ERROR(dev, "failed to get SCU ipc handle: %d\n",
> > - ret);
> > - return ret;
> > - }
> > + if (ret)
> > + return dev_err_probe(dev, ret, "failed to get SCU ipc handle\n");
> >
> > p2d->dev = dev;
> >
> > @@ -422,13 +414,9 @@ static int imx8qxp_pxl2dpi_bridge_probe(struct platform_device *pdev)
> > }
> >
> > p2d->next_bridge = imx8qxp_pxl2dpi_find_next_bridge(p2d);
> > - if (IS_ERR(p2d->next_bridge)) {
> > - ret = PTR_ERR(p2d->next_bridge);
> > - if (ret != -EPROBE_DEFER)
> > - DRM_DEV_ERROR(dev, "failed to find next bridge: %d\n",
> > - ret);
> > - return ret;
> > - }
> > + if (IS_ERR(p2d->next_bridge))
> > + return dev_err_probe(dev, PTR_ERR(p2d->next_bridge),
> > + "failed to find next bridge\n");
> >
> > ret = imx8qxp_pxl2dpi_set_pixel_link_sel(p2d);
> > if (ret)
>
> imx8qxp_pxl2dpi_parse_dt_companion() may return -EPROBE_DEFER too, so it needs
> to be changed.
True, I added a dev_err_probe to that function when companion bridge cannot
be found.
Best regards,
Alexander
--
TQ-Systems GmbH | Mühlstraße 2, Gut Delling | 82229 Seefeld, Germany
Amtsgericht München, HRB 105018
Geschäftsführer: Detlef Schneider, Rüdiger Stahl, Stefan Schneider
http://www.tq-group.com/
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH v2 3/4] drm/bridge: imx-ldb-helper: Use dev_err_probe
2025-01-08 3:37 ` Liu Ying
@ 2025-01-08 9:39 ` Alexander Stein
0 siblings, 0 replies; 14+ messages in thread
From: Alexander Stein @ 2025-01-08 9:39 UTC (permalink / raw)
To: Andrzej Hajda, Neil Armstrong, Robert Foss, Laurent Pinchart,
Jonas Karlman, Jernej Skrabec, Maarten Lankhorst, Maxime Ripard,
Thomas Zimmermann, David Airlie, Simona Vetter, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, Liu Ying
Cc: dri-devel, imx, linux-arm-kernel, linux-kernel
Hi,
Am Mittwoch, 8. Januar 2025, 04:37:55 CET schrieb Liu Ying:
> On 01/07/2025, Alexander Stein wrote:
> > This simplifies the code and gives additional information upon deferral.
> >
> > Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
> > ---
> > drivers/gpu/drm/bridge/imx/imx-ldb-helper.c | 13 ++++---------
> > 1 file changed, 4 insertions(+), 9 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/bridge/imx/imx-ldb-helper.c b/drivers/gpu/drm/bridge/imx/imx-ldb-helper.c
> > index 9b5bebbe357dd..2c9b862af74af 100644
> > --- a/drivers/gpu/drm/bridge/imx/imx-ldb-helper.c
> > +++ b/drivers/gpu/drm/bridge/imx/imx-ldb-helper.c
> > @@ -167,7 +167,7 @@ int ldb_find_next_bridge_helper(struct ldb *ldb)
> > {
> > struct device *dev = ldb->dev;
> > struct ldb_channel *ldb_ch;
> > - int ret, i;
> > + int i;
> >
> > for (i = 0; i < MAX_LDB_CHAN_NUM; i++) {
> > ldb_ch = ldb->channel[i];
> > @@ -177,14 +177,9 @@ int ldb_find_next_bridge_helper(struct ldb *ldb)
> >
> > ldb_ch->next_bridge = devm_drm_of_get_bridge(dev, ldb_ch->np,
> > 1, 0);
> > - if (IS_ERR(ldb_ch->next_bridge)) {
> > - ret = PTR_ERR(ldb_ch->next_bridge);
> > - if (ret != -EPROBE_DEFER)
> > - DRM_DEV_ERROR(dev,
> > - "failed to get next bridge: %d\n",
> > - ret);
> > - return ret;
> > - }
> > + if (IS_ERR(ldb_ch->next_bridge))
> > + return dev_err_probe(dev, PTR_ERR(ldb_ch->next_bridge),
> > + "failed to find next bridge\n");
>
> Nit: s/find/get/, since "get" was used.
Thanks, you are right here. Adjusted.
> > }
> >
> > return 0;
>
> ldb_init_helper() may return -EPROBE_DEFER too, so it needs to be changed.
Thanks for spotting. Added dev_err_probe there as well.
Best regards,
Alexander
--
TQ-Systems GmbH | Mühlstraße 2, Gut Delling | 82229 Seefeld, Germany
Amtsgericht München, HRB 105018
Geschäftsführer: Detlef Schneider, Rüdiger Stahl, Stefan Schneider
http://www.tq-group.com/
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH v2 0/4] dev_err_probe usage for imx8qxp DPU pipeline
2025-01-08 3:13 ` [PATCH v2 0/4] dev_err_probe usage for imx8qxp DPU pipeline Liu Ying
@ 2025-01-08 9:46 ` Alexander Stein
0 siblings, 0 replies; 14+ messages in thread
From: Alexander Stein @ 2025-01-08 9:46 UTC (permalink / raw)
To: Andrzej Hajda, Neil Armstrong, Robert Foss, Laurent Pinchart,
Jonas Karlman, Jernej Skrabec, Maarten Lankhorst, Maxime Ripard,
Thomas Zimmermann, David Airlie, Simona Vetter, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, Liu Ying
Cc: dri-devel, imx, linux-arm-kernel, linux-kernel
Hi,
Am Mittwoch, 8. Januar 2025, 04:13:51 CET schrieb Liu Ying:
> On 01/07/2025, Alexander Stein wrote:
> > Hi everyone,
>
> Hi Alexander,
>
> >
> > this is a v2 of an old series still in my queue.
> >
> > Changes in v2:
> > * Rebase to next-20250107
> > * Remove 'imx' prefix for commit subject in patch 2 & 3
> >
> > Best regards,
> > Alexander
> >
> > Alexander Stein (4):
> > drm/bridge: imx8qxp-pxl2dpi: Use dev_err_probe
> > drm/bridge: imx8qxp-ldb: Use dev_err_probe
> > drm/bridge: imx-ldb-helper: Use dev_err_probe
> > drm/bridge: imx8qxp-pixel-link: Use dev_err_probe
>
> i.MX8QXP Pixel Combiner is also in the pipeline, so imx8qxp-pixel-combiner.c
> needs to be changed.
>
> To achieve consistent log upon probe deferral, i.MX8QM LDB bridge driver
> imx8qm-ldb.c needs to be changed too, but it can be done with a separate patch.
Thanks for spotting. I've added both for v2 of this series.
Best regards,
Alexander
> >
> > drivers/gpu/drm/bridge/imx/imx-ldb-helper.c | 13 ++-----
> > drivers/gpu/drm/bridge/imx/imx8qxp-ldb.c | 37 ++++++-------------
> > .../gpu/drm/bridge/imx/imx8qxp-pixel-link.c | 19 +++-------
> > drivers/gpu/drm/bridge/imx/imx8qxp-pxl2dpi.c | 26 ++++---------
> > 4 files changed, 29 insertions(+), 66 deletions(-)
> >
>
>
--
TQ-Systems GmbH | Mühlstraße 2, Gut Delling | 82229 Seefeld, Germany
Amtsgericht München, HRB 105018
Geschäftsführer: Detlef Schneider, Rüdiger Stahl, Stefan Schneider
http://www.tq-group.com/
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH v2 1/4] drm/bridge: imx8qxp-pxl2dpi: Use dev_err_probe
2025-01-07 14:38 ` [PATCH v2 1/4] drm/bridge: imx8qxp-pxl2dpi: Use dev_err_probe Alexander Stein
2025-01-08 3:22 ` Liu Ying
@ 2025-01-08 11:06 ` kernel test robot
1 sibling, 0 replies; 14+ messages in thread
From: kernel test robot @ 2025-01-08 11:06 UTC (permalink / raw)
To: Alexander Stein, Liu Ying, Andrzej Hajda, Neil Armstrong,
Robert Foss, Laurent Pinchart, Jonas Karlman, Jernej Skrabec,
Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann, David Airlie,
Simona Vetter, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team,
Fabio Estevam
Cc: llvm, oe-kbuild-all, Alexander Stein, dri-devel, imx,
linux-arm-kernel, linux-kernel
Hi Alexander,
kernel test robot noticed the following build warnings:
[auto build test WARNING on shawnguo/for-next]
[also build test WARNING on linus/master v6.13-rc6 next-20250107]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/Alexander-Stein/drm-bridge-imx8qxp-pxl2dpi-Use-dev_err_probe/20250107-224125
base: https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux.git for-next
patch link: https://lore.kernel.org/r/20250107143900.988567-2-alexander.stein%40ew.tq-group.com
patch subject: [PATCH v2 1/4] drm/bridge: imx8qxp-pxl2dpi: Use dev_err_probe
config: arm-randconfig-004-20250108 (https://download.01.org/0day-ci/archive/20250108/202501081822.A69smnpW-lkp@intel.com/config)
compiler: clang version 18.1.8 (https://github.com/llvm/llvm-project 3b5b5c1ec4a3095ab096dd780e84d7ab81f3d7ff)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250108/202501081822.A69smnpW-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202501081822.A69smnpW-lkp@intel.com/
All warnings (new ones prefixed by >>):
>> drivers/gpu/drm/bridge/imx/imx8qxp-pxl2dpi.c:402:29: warning: variable 'ret' is uninitialized when used here [-Wuninitialized]
402 | return dev_err_probe(dev, ret, "failed to get regmap\n");
| ^~~
drivers/gpu/drm/bridge/imx/imx8qxp-pxl2dpi.c:394:9: note: initialize the variable 'ret' to silence this warning
394 | int ret;
| ^
| = 0
1 warning generated.
vim +/ret +402 drivers/gpu/drm/bridge/imx/imx8qxp-pxl2dpi.c
388
389 static int imx8qxp_pxl2dpi_bridge_probe(struct platform_device *pdev)
390 {
391 struct imx8qxp_pxl2dpi *p2d;
392 struct device *dev = &pdev->dev;
393 struct device_node *np = dev->of_node;
394 int ret;
395
396 p2d = devm_kzalloc(dev, sizeof(*p2d), GFP_KERNEL);
397 if (!p2d)
398 return -ENOMEM;
399
400 p2d->regmap = syscon_node_to_regmap(np->parent);
401 if (IS_ERR(p2d->regmap))
> 402 return dev_err_probe(dev, ret, "failed to get regmap\n");
403
404 ret = imx_scu_get_handle(&p2d->ipc_handle);
405 if (ret)
406 return dev_err_probe(dev, ret, "failed to get SCU ipc handle\n");
407
408 p2d->dev = dev;
409
410 ret = of_property_read_u32(np, "fsl,sc-resource", &p2d->sc_resource);
411 if (ret) {
412 DRM_DEV_ERROR(dev, "failed to get SC resource %d\n", ret);
413 return ret;
414 }
415
416 p2d->next_bridge = imx8qxp_pxl2dpi_find_next_bridge(p2d);
417 if (IS_ERR(p2d->next_bridge))
418 return dev_err_probe(dev, PTR_ERR(p2d->next_bridge),
419 "failed to find next bridge\n");
420
421 ret = imx8qxp_pxl2dpi_set_pixel_link_sel(p2d);
422 if (ret)
423 return ret;
424
425 ret = imx8qxp_pxl2dpi_parse_dt_companion(p2d);
426 if (ret)
427 return ret;
428
429 platform_set_drvdata(pdev, p2d);
430 pm_runtime_enable(dev);
431
432 p2d->bridge.driver_private = p2d;
433 p2d->bridge.funcs = &imx8qxp_pxl2dpi_bridge_funcs;
434 p2d->bridge.of_node = np;
435
436 drm_bridge_add(&p2d->bridge);
437
438 return ret;
439 }
440
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 14+ messages in thread
end of thread, other threads:[~2025-01-08 11:07 UTC | newest]
Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-01-07 14:38 [PATCH v2 0/4] dev_err_probe usage for imx8qxp DPU pipeline Alexander Stein
2025-01-07 14:38 ` [PATCH v2 1/4] drm/bridge: imx8qxp-pxl2dpi: Use dev_err_probe Alexander Stein
2025-01-08 3:22 ` Liu Ying
2025-01-08 9:36 ` Alexander Stein
2025-01-08 11:06 ` kernel test robot
2025-01-07 14:38 ` [PATCH v2 2/4] drm/bridge: imx8qxp-ldb: " Alexander Stein
2025-01-08 3:33 ` Liu Ying
2025-01-07 14:38 ` [PATCH v2 3/4] drm/bridge: imx-ldb-helper: " Alexander Stein
2025-01-08 3:37 ` Liu Ying
2025-01-08 9:39 ` Alexander Stein
2025-01-07 14:39 ` [PATCH v2 4/4] drm/bridge: imx8qxp-pixel-link: " Alexander Stein
2025-01-08 3:41 ` Liu Ying
2025-01-08 3:13 ` [PATCH v2 0/4] dev_err_probe usage for imx8qxp DPU pipeline Liu Ying
2025-01-08 9:46 ` Alexander Stein
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox