According to the comments in include/drm/drm_print.h, the DRM_...()
functions are deprecated in favor of drm_...() or dev_...() functions.
Use drm_err()/drm_dbg_core()/drm_dbg_kms() instead of
DRM_DEV_ERROR()/DRM_ERROR()/DRM_DEV_DEBUG()/DRM_DEBUG_KMS() after
rockchip_dp_bind() is called, and replace DRM_DEV_ERROR() with dev_err()
before calling it.
Signed-off-by: Damon Ding <damon.ding@rock-chips.com>
---
.../gpu/drm/rockchip/analogix_dp-rockchip.c | 29 ++++++++++---------
1 file changed, 15 insertions(+), 14 deletions(-)
diff --git a/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c b/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c
index 546d13f19f9b..8114c3238609 100644
--- a/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c
+++ b/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c
@@ -100,13 +100,13 @@ static int rockchip_dp_poweron(struct analogix_dp_plat_data *plat_data)
ret = clk_prepare_enable(dp->pclk);
if (ret < 0) {
- DRM_DEV_ERROR(dp->dev, "failed to enable pclk %d\n", ret);
+ drm_err(dp->drm_dev, "failed to enable pclk %d\n", ret);
return ret;
}
ret = rockchip_dp_pre_init(dp);
if (ret < 0) {
- DRM_DEV_ERROR(dp->dev, "failed to dp pre init %d\n", ret);
+ drm_err(dp->drm_dev, "failed to dp pre init %d\n", ret);
clk_disable_unprepare(dp->pclk);
return ret;
}
@@ -126,12 +126,13 @@ static int rockchip_dp_powerdown(struct analogix_dp_plat_data *plat_data)
static int rockchip_dp_get_modes(struct analogix_dp_plat_data *plat_data,
struct drm_connector *connector)
{
+ struct rockchip_dp_device *dp = pdata_encoder_to_dp(plat_data);
struct drm_display_info *di = &connector->display_info;
/* VOP couldn't output YUV video format for eDP rightly */
u32 mask = DRM_COLOR_FORMAT_YCBCR444 | DRM_COLOR_FORMAT_YCBCR422;
if ((di->color_formats & mask)) {
- DRM_DEBUG_KMS("Swapping display color format from YUV to RGB\n");
+ drm_dbg_kms(dp->drm_dev, "Swapping display color format from YUV to RGB\n");
di->color_formats &= ~mask;
di->color_formats |= DRM_COLOR_FORMAT_RGB444;
di->bpc = 8;
@@ -201,17 +202,17 @@ static void rockchip_dp_drm_encoder_enable(struct drm_encoder *encoder,
else
val = dp->data->lcdsel_big;
- DRM_DEV_DEBUG(dp->dev, "vop %s output to dp\n", (ret) ? "LIT" : "BIG");
+ drm_dbg_core(dp->drm_dev, "vop %s output to dp\n", (ret) ? "LIT" : "BIG");
ret = clk_prepare_enable(dp->grfclk);
if (ret < 0) {
- DRM_DEV_ERROR(dp->dev, "failed to enable grfclk %d\n", ret);
+ drm_err(dp->drm_dev, "failed to enable grfclk %d\n", ret);
return;
}
ret = regmap_write(dp->grf, dp->data->lcdsel_grf_reg, val);
if (ret != 0)
- DRM_DEV_ERROR(dp->dev, "Could not write to GRF: %d\n", ret);
+ drm_err(dp->drm_dev, "Could not write to GRF: %d\n", ret);
clk_disable_unprepare(dp->grfclk);
}
@@ -236,7 +237,7 @@ static void rockchip_dp_drm_encoder_disable(struct drm_encoder *encoder,
ret = rockchip_drm_wait_vact_end(crtc, PSR_WAIT_LINE_FLAG_TIMEOUT_MS);
if (ret)
- DRM_DEV_ERROR(dp->dev, "line flag irq timed out\n");
+ drm_err(dp->drm_dev, "line flag irq timed out\n");
}
static int
@@ -277,7 +278,7 @@ static int rockchip_dp_of_probe(struct rockchip_dp_device *dp)
dp->grf = syscon_regmap_lookup_by_phandle(np, "rockchip,grf");
if (IS_ERR(dp->grf)) {
- DRM_DEV_ERROR(dev, "failed to get rockchip,grf property\n");
+ dev_err(dev, "failed to get rockchip,grf property\n");
return PTR_ERR(dp->grf);
}
@@ -287,19 +288,19 @@ static int rockchip_dp_of_probe(struct rockchip_dp_device *dp)
} else if (PTR_ERR(dp->grfclk) == -EPROBE_DEFER) {
return -EPROBE_DEFER;
} else if (IS_ERR(dp->grfclk)) {
- DRM_DEV_ERROR(dev, "failed to get grf clock\n");
+ dev_err(dev, "failed to get grf clock\n");
return PTR_ERR(dp->grfclk);
}
dp->pclk = devm_clk_get(dev, "pclk");
if (IS_ERR(dp->pclk)) {
- DRM_DEV_ERROR(dev, "failed to get pclk property\n");
+ dev_err(dev, "failed to get pclk property\n");
return PTR_ERR(dp->pclk);
}
dp->rst = devm_reset_control_get(dev, "dp");
if (IS_ERR(dp->rst)) {
- DRM_DEV_ERROR(dev, "failed to get dp reset control\n");
+ dev_err(dev, "failed to get dp reset control\n");
return PTR_ERR(dp->rst);
}
@@ -315,12 +316,12 @@ static int rockchip_dp_drm_create_encoder(struct rockchip_dp_device *dp)
encoder->possible_crtcs = drm_of_find_possible_crtcs(drm_dev,
dev->of_node);
- DRM_DEBUG_KMS("possible_crtcs = 0x%x\n", encoder->possible_crtcs);
+ drm_dbg_kms(drm_dev, "possible_crtcs = 0x%x\n", encoder->possible_crtcs);
ret = drm_simple_encoder_init(drm_dev, encoder,
DRM_MODE_ENCODER_TMDS);
if (ret) {
- DRM_ERROR("failed to initialize encoder with drm\n");
+ drm_err(drm_dev, "failed to initialize encoder with drm\n");
return ret;
}
@@ -340,7 +341,7 @@ static int rockchip_dp_bind(struct device *dev, struct device *master,
ret = rockchip_dp_drm_create_encoder(dp);
if (ret) {
- DRM_ERROR("failed to create drm encoder\n");
+ drm_err(drm_dev, "failed to create drm encoder\n");
return ret;
}
--
2.34.1
Hi Damon,
At 2025-01-09 11:27:10, "Damon Ding" <damon.ding@rock-chips.com> wrote:
>According to the comments in include/drm/drm_print.h, the DRM_...()
>functions are deprecated in favor of drm_...() or dev_...() functions.
>
>Use drm_err()/drm_dbg_core()/drm_dbg_kms() instead of
>DRM_DEV_ERROR()/DRM_ERROR()/DRM_DEV_DEBUG()/DRM_DEBUG_KMS() after
>rockchip_dp_bind() is called, and replace DRM_DEV_ERROR() with dev_err()
>before calling it.
>
>Signed-off-by: Damon Ding <damon.ding@rock-chips.com>
>---
> .../gpu/drm/rockchip/analogix_dp-rockchip.c | 29 ++++++++++---------
> 1 file changed, 15 insertions(+), 14 deletions(-)
>
>diff --git a/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c b/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c
>index 546d13f19f9b..8114c3238609 100644
>--- a/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c
>+++ b/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c
>@@ -100,13 +100,13 @@ static int rockchip_dp_poweron(struct analogix_dp_plat_data *plat_data)
>
> ret = clk_prepare_enable(dp->pclk);
> if (ret < 0) {
>- DRM_DEV_ERROR(dp->dev, "failed to enable pclk %d\n", ret);
>+ drm_err(dp->drm_dev, "failed to enable pclk %d\n", ret);
You just need to pass dp here:
drm_err(dp, "failed to enable pclk %d\n", ret);
> return ret;
> }
>
> ret = rockchip_dp_pre_init(dp);
> if (ret < 0) {
>- DRM_DEV_ERROR(dp->dev, "failed to dp pre init %d\n", ret);
>+ drm_err(dp->drm_dev, "failed to dp pre init %d\n", ret);
> clk_disable_unprepare(dp->pclk);
> return ret;
> }
>@@ -126,12 +126,13 @@ static int rockchip_dp_powerdown(struct analogix_dp_plat_data *plat_data)
> static int rockchip_dp_get_modes(struct analogix_dp_plat_data *plat_data,
> struct drm_connector *connector)
> {
>+ struct rockchip_dp_device *dp = pdata_encoder_to_dp(plat_data);
> struct drm_display_info *di = &connector->display_info;
> /* VOP couldn't output YUV video format for eDP rightly */
> u32 mask = DRM_COLOR_FORMAT_YCBCR444 | DRM_COLOR_FORMAT_YCBCR422;
>
> if ((di->color_formats & mask)) {
>- DRM_DEBUG_KMS("Swapping display color format from YUV to RGB\n");
>+ drm_dbg_kms(dp->drm_dev, "Swapping display color format from YUV to RGB\n");
> di->color_formats &= ~mask;
> di->color_formats |= DRM_COLOR_FORMAT_RGB444;
> di->bpc = 8;
>@@ -201,17 +202,17 @@ static void rockchip_dp_drm_encoder_enable(struct drm_encoder *encoder,
> else
> val = dp->data->lcdsel_big;
>
>- DRM_DEV_DEBUG(dp->dev, "vop %s output to dp\n", (ret) ? "LIT" : "BIG");
>+ drm_dbg_core(dp->drm_dev, "vop %s output to dp\n", (ret) ? "LIT" : "BIG");
>
> ret = clk_prepare_enable(dp->grfclk);
> if (ret < 0) {
>- DRM_DEV_ERROR(dp->dev, "failed to enable grfclk %d\n", ret);
>+ drm_err(dp->drm_dev, "failed to enable grfclk %d\n", ret);
> return;
> }
>
> ret = regmap_write(dp->grf, dp->data->lcdsel_grf_reg, val);
> if (ret != 0)
>- DRM_DEV_ERROR(dp->dev, "Could not write to GRF: %d\n", ret);
>+ drm_err(dp->drm_dev, "Could not write to GRF: %d\n", ret);
>
> clk_disable_unprepare(dp->grfclk);
> }
>@@ -236,7 +237,7 @@ static void rockchip_dp_drm_encoder_disable(struct drm_encoder *encoder,
>
> ret = rockchip_drm_wait_vact_end(crtc, PSR_WAIT_LINE_FLAG_TIMEOUT_MS);
> if (ret)
>- DRM_DEV_ERROR(dp->dev, "line flag irq timed out\n");
>+ drm_err(dp->drm_dev, "line flag irq timed out\n");
> }
>
> static int
>@@ -277,7 +278,7 @@ static int rockchip_dp_of_probe(struct rockchip_dp_device *dp)
>
> dp->grf = syscon_regmap_lookup_by_phandle(np, "rockchip,grf");
> if (IS_ERR(dp->grf)) {
>- DRM_DEV_ERROR(dev, "failed to get rockchip,grf property\n");
>+ dev_err(dev, "failed to get rockchip,grf property\n");
> return PTR_ERR(dp->grf);
> }
>
>@@ -287,19 +288,19 @@ static int rockchip_dp_of_probe(struct rockchip_dp_device *dp)
> } else if (PTR_ERR(dp->grfclk) == -EPROBE_DEFER) {
> return -EPROBE_DEFER;
> } else if (IS_ERR(dp->grfclk)) {
>- DRM_DEV_ERROR(dev, "failed to get grf clock\n");
>+ dev_err(dev, "failed to get grf clock\n");
> return PTR_ERR(dp->grfclk);
> }
>
> dp->pclk = devm_clk_get(dev, "pclk");
> if (IS_ERR(dp->pclk)) {
>- DRM_DEV_ERROR(dev, "failed to get pclk property\n");
>+ dev_err(dev, "failed to get pclk property\n");
> return PTR_ERR(dp->pclk);
> }
>
> dp->rst = devm_reset_control_get(dev, "dp");
> if (IS_ERR(dp->rst)) {
>- DRM_DEV_ERROR(dev, "failed to get dp reset control\n");
>+ dev_err(dev, "failed to get dp reset control\n");
> return PTR_ERR(dp->rst);
> }
>
>@@ -315,12 +316,12 @@ static int rockchip_dp_drm_create_encoder(struct rockchip_dp_device *dp)
>
> encoder->possible_crtcs = drm_of_find_possible_crtcs(drm_dev,
> dev->of_node);
>- DRM_DEBUG_KMS("possible_crtcs = 0x%x\n", encoder->possible_crtcs);
>+ drm_dbg_kms(drm_dev, "possible_crtcs = 0x%x\n", encoder->possible_crtcs);
>
> ret = drm_simple_encoder_init(drm_dev, encoder,
> DRM_MODE_ENCODER_TMDS);
> if (ret) {
>- DRM_ERROR("failed to initialize encoder with drm\n");
>+ drm_err(drm_dev, "failed to initialize encoder with drm\n");
> return ret;
> }
>
>@@ -340,7 +341,7 @@ static int rockchip_dp_bind(struct device *dev, struct device *master,
>
> ret = rockchip_dp_drm_create_encoder(dp);
> if (ret) {
>- DRM_ERROR("failed to create drm encoder\n");
>+ drm_err(drm_dev, "failed to create drm encoder\n");
> return ret;
> }
>
>--
>2.34.1
>
Hi Andy,
On 2025/1/9 14:28, Andy Yan wrote:
>
> Hi Damon,
>
> At 2025-01-09 11:27:10, "Damon Ding" <damon.ding@rock-chips.com> wrote:
>> According to the comments in include/drm/drm_print.h, the DRM_...()
>> functions are deprecated in favor of drm_...() or dev_...() functions.
>>
>> Use drm_err()/drm_dbg_core()/drm_dbg_kms() instead of
>> DRM_DEV_ERROR()/DRM_ERROR()/DRM_DEV_DEBUG()/DRM_DEBUG_KMS() after
>> rockchip_dp_bind() is called, and replace DRM_DEV_ERROR() with dev_err()
>> before calling it.
>>
>> Signed-off-by: Damon Ding <damon.ding@rock-chips.com>
>> ---
>> .../gpu/drm/rockchip/analogix_dp-rockchip.c | 29 ++++++++++---------
>> 1 file changed, 15 insertions(+), 14 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c b/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c
>> index 546d13f19f9b..8114c3238609 100644
>> --- a/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c
>> +++ b/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c
>> @@ -100,13 +100,13 @@ static int rockchip_dp_poweron(struct analogix_dp_plat_data *plat_data)
>>
>> ret = clk_prepare_enable(dp->pclk);
>> if (ret < 0) {
>> - DRM_DEV_ERROR(dp->dev, "failed to enable pclk %d\n", ret);
>> + drm_err(dp->drm_dev, "failed to enable pclk %d\n", ret);
>
> You just need to pass dp here:
> drm_err(dp, "failed to enable pclk %d\n", ret);
>
I see. It is really better to pass dp instead of dp->drm_dev. I will
update all relevant logs in the next version.
>> return ret;
>> }
>>
>> ret = rockchip_dp_pre_init(dp);
>> if (ret < 0) {
>> - DRM_DEV_ERROR(dp->dev, "failed to dp pre init %d\n", ret);
>> + drm_err(dp->drm_dev, "failed to dp pre init %d\n", ret);
>> clk_disable_unprepare(dp->pclk);
>> return ret;
>> }
>> @@ -126,12 +126,13 @@ static int rockchip_dp_powerdown(struct analogix_dp_plat_data *plat_data)
>> static int rockchip_dp_get_modes(struct analogix_dp_plat_data *plat_data,
>> struct drm_connector *connector)
>> {
>> + struct rockchip_dp_device *dp = pdata_encoder_to_dp(plat_data);
>> struct drm_display_info *di = &connector->display_info;
>> /* VOP couldn't output YUV video format for eDP rightly */
>> u32 mask = DRM_COLOR_FORMAT_YCBCR444 | DRM_COLOR_FORMAT_YCBCR422;
>>
>> if ((di->color_formats & mask)) {
>> - DRM_DEBUG_KMS("Swapping display color format from YUV to RGB\n");
>> + drm_dbg_kms(dp->drm_dev, "Swapping display color format from YUV to RGB\n");
>> di->color_formats &= ~mask;
>> di->color_formats |= DRM_COLOR_FORMAT_RGB444;
>> di->bpc = 8;
>> @@ -201,17 +202,17 @@ static void rockchip_dp_drm_encoder_enable(struct drm_encoder *encoder,
>> else
>> val = dp->data->lcdsel_big;
>>
>> - DRM_DEV_DEBUG(dp->dev, "vop %s output to dp\n", (ret) ? "LIT" : "BIG");
>> + drm_dbg_core(dp->drm_dev, "vop %s output to dp\n", (ret) ? "LIT" : "BIG");
>>
>> ret = clk_prepare_enable(dp->grfclk);
>> if (ret < 0) {
>> - DRM_DEV_ERROR(dp->dev, "failed to enable grfclk %d\n", ret);
>> + drm_err(dp->drm_dev, "failed to enable grfclk %d\n", ret);
>> return;
>> }
>>
>> ret = regmap_write(dp->grf, dp->data->lcdsel_grf_reg, val);
>> if (ret != 0)
>> - DRM_DEV_ERROR(dp->dev, "Could not write to GRF: %d\n", ret);
>> + drm_err(dp->drm_dev, "Could not write to GRF: %d\n", ret);
>>
>> clk_disable_unprepare(dp->grfclk);
>> }
>> @@ -236,7 +237,7 @@ static void rockchip_dp_drm_encoder_disable(struct drm_encoder *encoder,
>>
>> ret = rockchip_drm_wait_vact_end(crtc, PSR_WAIT_LINE_FLAG_TIMEOUT_MS);
>> if (ret)
>> - DRM_DEV_ERROR(dp->dev, "line flag irq timed out\n");
>> + drm_err(dp->drm_dev, "line flag irq timed out\n");
>> }
>>
>> static int
>> @@ -277,7 +278,7 @@ static int rockchip_dp_of_probe(struct rockchip_dp_device *dp)
>>
>> dp->grf = syscon_regmap_lookup_by_phandle(np, "rockchip,grf");
>> if (IS_ERR(dp->grf)) {
>> - DRM_DEV_ERROR(dev, "failed to get rockchip,grf property\n");
>> + dev_err(dev, "failed to get rockchip,grf property\n");
>> return PTR_ERR(dp->grf);
>> }
>>
>> @@ -287,19 +288,19 @@ static int rockchip_dp_of_probe(struct rockchip_dp_device *dp)
>> } else if (PTR_ERR(dp->grfclk) == -EPROBE_DEFER) {
>> return -EPROBE_DEFER;
>> } else if (IS_ERR(dp->grfclk)) {
>> - DRM_DEV_ERROR(dev, "failed to get grf clock\n");
>> + dev_err(dev, "failed to get grf clock\n");
>> return PTR_ERR(dp->grfclk);
>> }
>>
>> dp->pclk = devm_clk_get(dev, "pclk");
>> if (IS_ERR(dp->pclk)) {
>> - DRM_DEV_ERROR(dev, "failed to get pclk property\n");
>> + dev_err(dev, "failed to get pclk property\n");
>> return PTR_ERR(dp->pclk);
>> }
>>
>> dp->rst = devm_reset_control_get(dev, "dp");
>> if (IS_ERR(dp->rst)) {
>> - DRM_DEV_ERROR(dev, "failed to get dp reset control\n");
>> + dev_err(dev, "failed to get dp reset control\n");
>> return PTR_ERR(dp->rst);
>> }
>>
>> @@ -315,12 +316,12 @@ static int rockchip_dp_drm_create_encoder(struct rockchip_dp_device *dp)
>>
>> encoder->possible_crtcs = drm_of_find_possible_crtcs(drm_dev,
>> dev->of_node);
>> - DRM_DEBUG_KMS("possible_crtcs = 0x%x\n", encoder->possible_crtcs);
>> + drm_dbg_kms(drm_dev, "possible_crtcs = 0x%x\n", encoder->possible_crtcs);
>>
>> ret = drm_simple_encoder_init(drm_dev, encoder,
>> DRM_MODE_ENCODER_TMDS);
>> if (ret) {
>> - DRM_ERROR("failed to initialize encoder with drm\n");
>> + drm_err(drm_dev, "failed to initialize encoder with drm\n");
>> return ret;
>> }
>>
>> @@ -340,7 +341,7 @@ static int rockchip_dp_bind(struct device *dev, struct device *master,
>>
>> ret = rockchip_dp_drm_create_encoder(dp);
>> if (ret) {
>> - DRM_ERROR("failed to create drm encoder\n");
>> + drm_err(drm_dev, "failed to create drm encoder\n");
>> return ret;
>> }
>>
>> --
>> 2.34.1
>>
Best regards,
Damon
On Wed, 22 Jan 2025, Damon Ding <damon.ding@rock-chips.com> wrote:
> Hi Andy,
>
> On 2025/1/9 14:28, Andy Yan wrote:
>>
>> Hi Damon,
>>
>> At 2025-01-09 11:27:10, "Damon Ding" <damon.ding@rock-chips.com> wrote:
>>> According to the comments in include/drm/drm_print.h, the DRM_...()
>>> functions are deprecated in favor of drm_...() or dev_...() functions.
>>>
>>> Use drm_err()/drm_dbg_core()/drm_dbg_kms() instead of
>>> DRM_DEV_ERROR()/DRM_ERROR()/DRM_DEV_DEBUG()/DRM_DEBUG_KMS() after
>>> rockchip_dp_bind() is called, and replace DRM_DEV_ERROR() with dev_err()
>>> before calling it.
>>>
>>> Signed-off-by: Damon Ding <damon.ding@rock-chips.com>
>>> ---
>>> .../gpu/drm/rockchip/analogix_dp-rockchip.c | 29 ++++++++++---------
>>> 1 file changed, 15 insertions(+), 14 deletions(-)
>>>
>>> diff --git a/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c b/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c
>>> index 546d13f19f9b..8114c3238609 100644
>>> --- a/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c
>>> +++ b/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c
>>> @@ -100,13 +100,13 @@ static int rockchip_dp_poweron(struct analogix_dp_plat_data *plat_data)
>>>
>>> ret = clk_prepare_enable(dp->pclk);
>>> if (ret < 0) {
>>> - DRM_DEV_ERROR(dp->dev, "failed to enable pclk %d\n", ret);
>>> + drm_err(dp->drm_dev, "failed to enable pclk %d\n", ret);
>>
>> You just need to pass dp here:
>> drm_err(dp, "failed to enable pclk %d\n", ret);
>>
>
> I see. It is really better to pass dp instead of dp->drm_dev. I will
> update all relevant logs in the next version.
No, this was bad review feedback. You're absolutely expected to pass
struct drm_device to drm_err() and friends.
BR,
Jani.
>
>>> return ret;
>>> }
>>>
>>> ret = rockchip_dp_pre_init(dp);
>>> if (ret < 0) {
>>> - DRM_DEV_ERROR(dp->dev, "failed to dp pre init %d\n", ret);
>>> + drm_err(dp->drm_dev, "failed to dp pre init %d\n", ret);
>>> clk_disable_unprepare(dp->pclk);
>>> return ret;
>>> }
>>> @@ -126,12 +126,13 @@ static int rockchip_dp_powerdown(struct analogix_dp_plat_data *plat_data)
>>> static int rockchip_dp_get_modes(struct analogix_dp_plat_data *plat_data,
>>> struct drm_connector *connector)
>>> {
>>> + struct rockchip_dp_device *dp = pdata_encoder_to_dp(plat_data);
>>> struct drm_display_info *di = &connector->display_info;
>>> /* VOP couldn't output YUV video format for eDP rightly */
>>> u32 mask = DRM_COLOR_FORMAT_YCBCR444 | DRM_COLOR_FORMAT_YCBCR422;
>>>
>>> if ((di->color_formats & mask)) {
>>> - DRM_DEBUG_KMS("Swapping display color format from YUV to RGB\n");
>>> + drm_dbg_kms(dp->drm_dev, "Swapping display color format from YUV to RGB\n");
>>> di->color_formats &= ~mask;
>>> di->color_formats |= DRM_COLOR_FORMAT_RGB444;
>>> di->bpc = 8;
>>> @@ -201,17 +202,17 @@ static void rockchip_dp_drm_encoder_enable(struct drm_encoder *encoder,
>>> else
>>> val = dp->data->lcdsel_big;
>>>
>>> - DRM_DEV_DEBUG(dp->dev, "vop %s output to dp\n", (ret) ? "LIT" : "BIG");
>>> + drm_dbg_core(dp->drm_dev, "vop %s output to dp\n", (ret) ? "LIT" : "BIG");
>>>
>>> ret = clk_prepare_enable(dp->grfclk);
>>> if (ret < 0) {
>>> - DRM_DEV_ERROR(dp->dev, "failed to enable grfclk %d\n", ret);
>>> + drm_err(dp->drm_dev, "failed to enable grfclk %d\n", ret);
>>> return;
>>> }
>>>
>>> ret = regmap_write(dp->grf, dp->data->lcdsel_grf_reg, val);
>>> if (ret != 0)
>>> - DRM_DEV_ERROR(dp->dev, "Could not write to GRF: %d\n", ret);
>>> + drm_err(dp->drm_dev, "Could not write to GRF: %d\n", ret);
>>>
>>> clk_disable_unprepare(dp->grfclk);
>>> }
>>> @@ -236,7 +237,7 @@ static void rockchip_dp_drm_encoder_disable(struct drm_encoder *encoder,
>>>
>>> ret = rockchip_drm_wait_vact_end(crtc, PSR_WAIT_LINE_FLAG_TIMEOUT_MS);
>>> if (ret)
>>> - DRM_DEV_ERROR(dp->dev, "line flag irq timed out\n");
>>> + drm_err(dp->drm_dev, "line flag irq timed out\n");
>>> }
>>>
>>> static int
>>> @@ -277,7 +278,7 @@ static int rockchip_dp_of_probe(struct rockchip_dp_device *dp)
>>>
>>> dp->grf = syscon_regmap_lookup_by_phandle(np, "rockchip,grf");
>>> if (IS_ERR(dp->grf)) {
>>> - DRM_DEV_ERROR(dev, "failed to get rockchip,grf property\n");
>>> + dev_err(dev, "failed to get rockchip,grf property\n");
>>> return PTR_ERR(dp->grf);
>>> }
>>>
>>> @@ -287,19 +288,19 @@ static int rockchip_dp_of_probe(struct rockchip_dp_device *dp)
>>> } else if (PTR_ERR(dp->grfclk) == -EPROBE_DEFER) {
>>> return -EPROBE_DEFER;
>>> } else if (IS_ERR(dp->grfclk)) {
>>> - DRM_DEV_ERROR(dev, "failed to get grf clock\n");
>>> + dev_err(dev, "failed to get grf clock\n");
>>> return PTR_ERR(dp->grfclk);
>>> }
>>>
>>> dp->pclk = devm_clk_get(dev, "pclk");
>>> if (IS_ERR(dp->pclk)) {
>>> - DRM_DEV_ERROR(dev, "failed to get pclk property\n");
>>> + dev_err(dev, "failed to get pclk property\n");
>>> return PTR_ERR(dp->pclk);
>>> }
>>>
>>> dp->rst = devm_reset_control_get(dev, "dp");
>>> if (IS_ERR(dp->rst)) {
>>> - DRM_DEV_ERROR(dev, "failed to get dp reset control\n");
>>> + dev_err(dev, "failed to get dp reset control\n");
>>> return PTR_ERR(dp->rst);
>>> }
>>>
>>> @@ -315,12 +316,12 @@ static int rockchip_dp_drm_create_encoder(struct rockchip_dp_device *dp)
>>>
>>> encoder->possible_crtcs = drm_of_find_possible_crtcs(drm_dev,
>>> dev->of_node);
>>> - DRM_DEBUG_KMS("possible_crtcs = 0x%x\n", encoder->possible_crtcs);
>>> + drm_dbg_kms(drm_dev, "possible_crtcs = 0x%x\n", encoder->possible_crtcs);
>>>
>>> ret = drm_simple_encoder_init(drm_dev, encoder,
>>> DRM_MODE_ENCODER_TMDS);
>>> if (ret) {
>>> - DRM_ERROR("failed to initialize encoder with drm\n");
>>> + drm_err(drm_dev, "failed to initialize encoder with drm\n");
>>> return ret;
>>> }
>>>
>>> @@ -340,7 +341,7 @@ static int rockchip_dp_bind(struct device *dev, struct device *master,
>>>
>>> ret = rockchip_dp_drm_create_encoder(dp);
>>> if (ret) {
>>> - DRM_ERROR("failed to create drm encoder\n");
>>> + drm_err(drm_dev, "failed to create drm encoder\n");
>>> return ret;
>>> }
>>>
>>> --
>>> 2.34.1
>>>
>
> Best regards,
> Damon
--
Jani Nikula, Intel
Hi,
At 2025-01-23 20:27:50, "Jani Nikula" <jani.nikula@linux.intel.com> wrote:
>On Wed, 22 Jan 2025, Damon Ding <damon.ding@rock-chips.com> wrote:
>> Hi Andy,
>>
>> On 2025/1/9 14:28, Andy Yan wrote:
>>>
>>> Hi Damon,
>>>
>>> At 2025-01-09 11:27:10, "Damon Ding" <damon.ding@rock-chips.com> wrote:
>>>> According to the comments in include/drm/drm_print.h, the DRM_...()
>>>> functions are deprecated in favor of drm_...() or dev_...() functions.
>>>>
>>>> Use drm_err()/drm_dbg_core()/drm_dbg_kms() instead of
>>>> DRM_DEV_ERROR()/DRM_ERROR()/DRM_DEV_DEBUG()/DRM_DEBUG_KMS() after
>>>> rockchip_dp_bind() is called, and replace DRM_DEV_ERROR() with dev_err()
>>>> before calling it.
>>>>
>>>> Signed-off-by: Damon Ding <damon.ding@rock-chips.com>
>>>> ---
>>>> .../gpu/drm/rockchip/analogix_dp-rockchip.c | 29 ++++++++++---------
>>>> 1 file changed, 15 insertions(+), 14 deletions(-)
>>>>
>>>> diff --git a/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c b/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c
>>>> index 546d13f19f9b..8114c3238609 100644
>>>> --- a/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c
>>>> +++ b/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c
>>>> @@ -100,13 +100,13 @@ static int rockchip_dp_poweron(struct analogix_dp_plat_data *plat_data)
>>>>
>>>> ret = clk_prepare_enable(dp->pclk);
>>>> if (ret < 0) {
>>>> - DRM_DEV_ERROR(dp->dev, "failed to enable pclk %d\n", ret);
>>>> + drm_err(dp->drm_dev, "failed to enable pclk %d\n", ret);
>>>
>>> You just need to pass dp here:
>>> drm_err(dp, "failed to enable pclk %d\n", ret);
>>>
>>
>> I see. It is really better to pass dp instead of dp->drm_dev. I will
>> update all relevant logs in the next version.
>
>No, this was bad review feedback. You're absolutely expected to pass
>struct drm_device to drm_err() and friends.
No, I didn't see how the drm_err macro and friends restrict/expect the passing of only the drm_device pointer.
As for the platform device driver itself, we hope that when an error occurs, the log clearly indicates
the specific device that the log corresponds to, rather than a generic drm_device.
The original code of this driver used the macro related to DRM_DEV_ERROR to do just that.
And similar patches have been merged before
Please also refer to the discussion here.[0]
[0]https://lore.kernel.org/linux-rockchip/20250109032725.1102465-1-damon.ding@rock-chips.com/T/#m54bd842be660031773834cedea6c73a5033ca973
>
>BR,
>Jani.
>
>
>>
>>>> return ret;
>>>> }
>>>>
>>>> ret = rockchip_dp_pre_init(dp);
>>>> if (ret < 0) {
>>>> - DRM_DEV_ERROR(dp->dev, "failed to dp pre init %d\n", ret);
>>>> + drm_err(dp->drm_dev, "failed to dp pre init %d\n", ret);
>>>> clk_disable_unprepare(dp->pclk);
>>>> return ret;
>>>> }
>>>> @@ -126,12 +126,13 @@ static int rockchip_dp_powerdown(struct analogix_dp_plat_data *plat_data)
>>>> static int rockchip_dp_get_modes(struct analogix_dp_plat_data *plat_data,
>>>> struct drm_connector *connector)
>>>> {
>>>> + struct rockchip_dp_device *dp = pdata_encoder_to_dp(plat_data);
>>>> struct drm_display_info *di = &connector->display_info;
>>>> /* VOP couldn't output YUV video format for eDP rightly */
>>>> u32 mask = DRM_COLOR_FORMAT_YCBCR444 | DRM_COLOR_FORMAT_YCBCR422;
>>>>
>>>> if ((di->color_formats & mask)) {
>>>> - DRM_DEBUG_KMS("Swapping display color format from YUV to RGB\n");
>>>> + drm_dbg_kms(dp->drm_dev, "Swapping display color format from YUV to RGB\n");
>>>> di->color_formats &= ~mask;
>>>> di->color_formats |= DRM_COLOR_FORMAT_RGB444;
>>>> di->bpc = 8;
>>>> @@ -201,17 +202,17 @@ static void rockchip_dp_drm_encoder_enable(struct drm_encoder *encoder,
>>>> else
>>>> val = dp->data->lcdsel_big;
>>>>
>>>> - DRM_DEV_DEBUG(dp->dev, "vop %s output to dp\n", (ret) ? "LIT" : "BIG");
>>>> + drm_dbg_core(dp->drm_dev, "vop %s output to dp\n", (ret) ? "LIT" : "BIG");
>>>>
>>>> ret = clk_prepare_enable(dp->grfclk);
>>>> if (ret < 0) {
>>>> - DRM_DEV_ERROR(dp->dev, "failed to enable grfclk %d\n", ret);
>>>> + drm_err(dp->drm_dev, "failed to enable grfclk %d\n", ret);
>>>> return;
>>>> }
>>>>
>>>> ret = regmap_write(dp->grf, dp->data->lcdsel_grf_reg, val);
>>>> if (ret != 0)
>>>> - DRM_DEV_ERROR(dp->dev, "Could not write to GRF: %d\n", ret);
>>>> + drm_err(dp->drm_dev, "Could not write to GRF: %d\n", ret);
>>>>
>>>> clk_disable_unprepare(dp->grfclk);
>>>> }
>>>> @@ -236,7 +237,7 @@ static void rockchip_dp_drm_encoder_disable(struct drm_encoder *encoder,
>>>>
>>>> ret = rockchip_drm_wait_vact_end(crtc, PSR_WAIT_LINE_FLAG_TIMEOUT_MS);
>>>> if (ret)
>>>> - DRM_DEV_ERROR(dp->dev, "line flag irq timed out\n");
>>>> + drm_err(dp->drm_dev, "line flag irq timed out\n");
>>>> }
>>>>
>>>> static int
>>>> @@ -277,7 +278,7 @@ static int rockchip_dp_of_probe(struct rockchip_dp_device *dp)
>>>>
>>>> dp->grf = syscon_regmap_lookup_by_phandle(np, "rockchip,grf");
>>>> if (IS_ERR(dp->grf)) {
>>>> - DRM_DEV_ERROR(dev, "failed to get rockchip,grf property\n");
>>>> + dev_err(dev, "failed to get rockchip,grf property\n");
>>>> return PTR_ERR(dp->grf);
>>>> }
>>>>
>>>> @@ -287,19 +288,19 @@ static int rockchip_dp_of_probe(struct rockchip_dp_device *dp)
>>>> } else if (PTR_ERR(dp->grfclk) == -EPROBE_DEFER) {
>>>> return -EPROBE_DEFER;
>>>> } else if (IS_ERR(dp->grfclk)) {
>>>> - DRM_DEV_ERROR(dev, "failed to get grf clock\n");
>>>> + dev_err(dev, "failed to get grf clock\n");
>>>> return PTR_ERR(dp->grfclk);
>>>> }
>>>>
>>>> dp->pclk = devm_clk_get(dev, "pclk");
>>>> if (IS_ERR(dp->pclk)) {
>>>> - DRM_DEV_ERROR(dev, "failed to get pclk property\n");
>>>> + dev_err(dev, "failed to get pclk property\n");
>>>> return PTR_ERR(dp->pclk);
>>>> }
>>>>
>>>> dp->rst = devm_reset_control_get(dev, "dp");
>>>> if (IS_ERR(dp->rst)) {
>>>> - DRM_DEV_ERROR(dev, "failed to get dp reset control\n");
>>>> + dev_err(dev, "failed to get dp reset control\n");
>>>> return PTR_ERR(dp->rst);
>>>> }
>>>>
>>>> @@ -315,12 +316,12 @@ static int rockchip_dp_drm_create_encoder(struct rockchip_dp_device *dp)
>>>>
>>>> encoder->possible_crtcs = drm_of_find_possible_crtcs(drm_dev,
>>>> dev->of_node);
>>>> - DRM_DEBUG_KMS("possible_crtcs = 0x%x\n", encoder->possible_crtcs);
>>>> + drm_dbg_kms(drm_dev, "possible_crtcs = 0x%x\n", encoder->possible_crtcs);
>>>>
>>>> ret = drm_simple_encoder_init(drm_dev, encoder,
>>>> DRM_MODE_ENCODER_TMDS);
>>>> if (ret) {
>>>> - DRM_ERROR("failed to initialize encoder with drm\n");
>>>> + drm_err(drm_dev, "failed to initialize encoder with drm\n");
>>>> return ret;
>>>> }
>>>>
>>>> @@ -340,7 +341,7 @@ static int rockchip_dp_bind(struct device *dev, struct device *master,
>>>>
>>>> ret = rockchip_dp_drm_create_encoder(dp);
>>>> if (ret) {
>>>> - DRM_ERROR("failed to create drm encoder\n");
>>>> + drm_err(drm_dev, "failed to create drm encoder\n");
>>>> return ret;
>>>> }
>>>>
>>>> --
>>>> 2.34.1
>>>>
>>
>> Best regards,
>> Damon
>
>--
>Jani Nikula, Intel
On Fri, Jan 24, 2025 at 05:41:58PM +0800, Andy Yan wrote:
> Hi,
>
> At 2025-01-23 20:27:50, "Jani Nikula" <jani.nikula@linux.intel.com> wrote:
> >On Wed, 22 Jan 2025, Damon Ding <damon.ding@rock-chips.com> wrote:
> >> Hi Andy,
> >>
> >> On 2025/1/9 14:28, Andy Yan wrote:
> >>>
> >>> Hi Damon,
> >>>
> >>> At 2025-01-09 11:27:10, "Damon Ding" <damon.ding@rock-chips.com> wrote:
> >>>> According to the comments in include/drm/drm_print.h, the DRM_...()
> >>>> functions are deprecated in favor of drm_...() or dev_...() functions.
> >>>>
> >>>> Use drm_err()/drm_dbg_core()/drm_dbg_kms() instead of
> >>>> DRM_DEV_ERROR()/DRM_ERROR()/DRM_DEV_DEBUG()/DRM_DEBUG_KMS() after
> >>>> rockchip_dp_bind() is called, and replace DRM_DEV_ERROR() with dev_err()
> >>>> before calling it.
> >>>>
> >>>> Signed-off-by: Damon Ding <damon.ding@rock-chips.com>
> >>>> ---
> >>>> .../gpu/drm/rockchip/analogix_dp-rockchip.c | 29 ++++++++++---------
> >>>> 1 file changed, 15 insertions(+), 14 deletions(-)
> >>>>
> >>>> diff --git a/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c b/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c
> >>>> index 546d13f19f9b..8114c3238609 100644
> >>>> --- a/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c
> >>>> +++ b/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c
> >>>> @@ -100,13 +100,13 @@ static int rockchip_dp_poweron(struct analogix_dp_plat_data *plat_data)
> >>>>
> >>>> ret = clk_prepare_enable(dp->pclk);
> >>>> if (ret < 0) {
> >>>> - DRM_DEV_ERROR(dp->dev, "failed to enable pclk %d\n", ret);
> >>>> + drm_err(dp->drm_dev, "failed to enable pclk %d\n", ret);
> >>>
> >>> You just need to pass dp here:
> >>> drm_err(dp, "failed to enable pclk %d\n", ret);
> >>>
> >>
> >> I see. It is really better to pass dp instead of dp->drm_dev. I will
> >> update all relevant logs in the next version.
> >
> >No, this was bad review feedback. You're absolutely expected to pass
> >struct drm_device to drm_err() and friends.
>
> No, I didn't see how the drm_err macro and friends restrict/expect the passing of only the drm_device pointer.
> As for the platform device driver itself, we hope that when an error occurs, the log clearly indicates
> the specific device that the log corresponds to, rather than a generic drm_device.
> The original code of this driver used the macro related to DRM_DEV_ERROR to do just that.
> And similar patches have been merged before
>
> Please also refer to the discussion here.[0]
> [0]https://lore.kernel.org/linux-rockchip/20250109032725.1102465-1-damon.ding@rock-chips.com/T/#m54bd842be660031773834cedea6c73a5033ca973
Reviewer's mistake (mine). I assumed that you wanted to pass drm device.
>
>
--
With best wishes
Dmitry
© 2016 - 2025 Red Hat, Inc.