2020-01-09 07:35:50

by Tobias Schramm

[permalink] [raw]
Subject: [PATCH v2 0/1] Regression in rockchipdrm

commit 2589c4025f13 ("drm/rockchip: Avoid drm_dp_link helpers") changed
the datatype used for storing the display port data rate to u8.
A u8 is not sufficient to store the data rate, resulting in a crash due
to incorrect calculations.

This series resolves the issue by restoring the data type changed in
commit 2589c4025f13 to their original type.

Thanks to CrystalGamma for identifying the commit causing the regression.

v2: Keep lane count as u8

Tobias Schramm (1):
drm/rockchip: fix integer type used for storing dp data rate

drivers/gpu/drm/rockchip/cdn-dp-core.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

--
2.24.1


2020-01-09 07:37:13

by Tobias Schramm

[permalink] [raw]
Subject: [PATCH v2 1/1] drm/rockchip: fix integer type used for storing dp data rate

commmit 2589c4025f13 ("drm/rockchip: Avoid drm_dp_link helpers") changes
the type of variables used to store the display port data rate and
number of lanes to u8. However u8 is not sufficient to store the link
data rate of the display port.
This commit reverts the type of data rate to unsigned int.

Signed-off-by: Tobias Schramm <[email protected]>
---
drivers/gpu/drm/rockchip/cdn-dp-core.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/rockchip/cdn-dp-core.h b/drivers/gpu/drm/rockchip/cdn-dp-core.h
index 83c4586665b4..81ac9b658a70 100644
--- a/drivers/gpu/drm/rockchip/cdn-dp-core.h
+++ b/drivers/gpu/drm/rockchip/cdn-dp-core.h
@@ -95,7 +95,7 @@ struct cdn_dp_device {
struct cdn_dp_port *port[MAX_PHY];
u8 ports;
u8 max_lanes;
- u8 max_rate;
+ unsigned int max_rate;
u8 lanes;
int active_port;

--
2.24.1

2020-01-13 13:38:05

by Heiko Stuebner

[permalink] [raw]
Subject: Re: [PATCH v2 1/1] drm/rockchip: fix integer type used for storing dp data rate

Am Donnerstag, 9. Januar 2020, 08:31:29 CET schrieb Tobias Schramm:
> commmit 2589c4025f13 ("drm/rockchip: Avoid drm_dp_link helpers") changes
> the type of variables used to store the display port data rate and
> number of lanes to u8. However u8 is not sufficient to store the link
> data rate of the display port.
> This commit reverts the type of data rate to unsigned int.
>
> Signed-off-by: Tobias Schramm <[email protected]>

applied to drm-misc-fixes

Thanks
Heiko