Message ID | 20220707080600.49041-4-allen.chen@ite.com.tw (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm/bridge: it6505: Fixes bugs | expand |
On Thu, 7 Jul 2022 at 10:06, allen <allen.chen@ite.com.tw> wrote: > > From: allen chen <allen.chen@ite.com.tw> > > Speed up video clock calculation and remove redundant video debug message. > > Signed-off-by: Pin-Yen Lin <treapking@chromium.org> > Signed-off-by: Allen Chen <allen.chen@ite.com.tw> > > --- > drivers/gpu/drm/bridge/ite-it6505.c | 6 ++---- > 1 file changed, 2 insertions(+), 4 deletions(-) > > diff --git a/drivers/gpu/drm/bridge/ite-it6505.c b/drivers/gpu/drm/bridge/ite-it6505.c > index cfd2c3275dc5..11a34ddb60a1 100644 > --- a/drivers/gpu/drm/bridge/ite-it6505.c > +++ b/drivers/gpu/drm/bridge/ite-it6505.c > @@ -703,7 +703,7 @@ static void it6505_calc_video_info(struct it6505 *it6505) > DRM_DEV_DEBUG_DRIVER(dev, "hactive_start:%d, vactive_start:%d", > hdes, vdes); > > - for (i = 0; i < 10; i++) { > + for (i = 0; i < 3; i++) { > it6505_set_bits(it6505, REG_DATA_CTRL0, ENABLE_PCLK_COUNTER, > ENABLE_PCLK_COUNTER); > usleep_range(10000, 15000); > @@ -720,7 +720,7 @@ static void it6505_calc_video_info(struct it6505 *it6505) > return; > } > > - sum /= 10; > + sum /= 3; > pclk = 13500 * 2048 / sum; > it6505->video_info.clock = pclk; > it6505->video_info.hdisplay = hdew; > @@ -2344,8 +2344,6 @@ static void it6505_irq_hpd(struct it6505 *it6505) > > if (!it6505_get_video_status(it6505)) > it6505_video_reset(it6505); > - > - it6505_calc_video_info(it6505); > } else { > memset(it6505->dpcd, 0, sizeof(it6505->dpcd)); > > -- > 2.25.1 > Reviewed-by: Robert Foss <robert.foss@linaro.org>
diff --git a/drivers/gpu/drm/bridge/ite-it6505.c b/drivers/gpu/drm/bridge/ite-it6505.c index cfd2c3275dc5..11a34ddb60a1 100644 --- a/drivers/gpu/drm/bridge/ite-it6505.c +++ b/drivers/gpu/drm/bridge/ite-it6505.c @@ -703,7 +703,7 @@ static void it6505_calc_video_info(struct it6505 *it6505) DRM_DEV_DEBUG_DRIVER(dev, "hactive_start:%d, vactive_start:%d", hdes, vdes); - for (i = 0; i < 10; i++) { + for (i = 0; i < 3; i++) { it6505_set_bits(it6505, REG_DATA_CTRL0, ENABLE_PCLK_COUNTER, ENABLE_PCLK_COUNTER); usleep_range(10000, 15000); @@ -720,7 +720,7 @@ static void it6505_calc_video_info(struct it6505 *it6505) return; } - sum /= 10; + sum /= 3; pclk = 13500 * 2048 / sum; it6505->video_info.clock = pclk; it6505->video_info.hdisplay = hdew; @@ -2344,8 +2344,6 @@ static void it6505_irq_hpd(struct it6505 *it6505) if (!it6505_get_video_status(it6505)) it6505_video_reset(it6505); - - it6505_calc_video_info(it6505); } else { memset(it6505->dpcd, 0, sizeof(it6505->dpcd));