Hi, 2015-05-20 Daniel Stone <daniel@xxxxxxxxxxxxx>: > Hi, > > On 20 May 2015 at 17:58, Tobias Jakobi <tjakobi@xxxxxxxxxxxxxxxxxxxxx> wrote: > > On 2015-05-20 16:33, Gustavo Padovan wrote: > >> When mode's vrefresh is zero we should ask DRM core to calculate vrefresh > >> for us so we can get the correct value instead of relying on fixed value > >> defined in a macro. > >> > >> Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx> > >> --- > >> drivers/gpu/drm/exynos/exynos_drm_fimd.c | 3 +-- > >> 1 file changed, 1 insertion(+), 2 deletions(-) > >> > >> diff --git a/drivers/gpu/drm/exynos/exynos_drm_fimd.c > >> b/drivers/gpu/drm/exynos/exynos_drm_fimd.c > >> index 9819fa6..08f7197 100644 > >> --- a/drivers/gpu/drm/exynos/exynos_drm_fimd.c > >> +++ b/drivers/gpu/drm/exynos/exynos_drm_fimd.c > >> @@ -42,7 +42,6 @@ > >> * CPU Interface. > >> */ > >> > >> -#define FIMD_DEFAULT_FRAMERATE 60 > >> #define MIN_FB_WIDTH_FOR_16WORD_BURST 128 > >> > >> /* position control register for hardware window 0, 2 ~ 4.*/ > >> @@ -329,7 +328,7 @@ static bool fimd_mode_fixup(struct exynos_drm_crtc > >> *crtc, > >> struct drm_display_mode *adjusted_mode) > >> { > >> if (adjusted_mode->vrefresh == 0) > > > > Well, I'm not completly sure how this all works, but shouldn't we check > > 'mode' here, and not 'adjusted_mode'? > > adjusted_mode is fine; it is pre-populated with the value from mode. > 'mode' itself _must not_ be modified. > > Mind you, this is missing a hunk to reject entirely invalid modes, i.e.: > if (adjusted_mode->vrefresh == 0) > adjusted_mode->vrefresh = drm_mode_vrefresh(adjusted_mode); > if (adjusted_mode->vrefresh == 0) > return false; I have sent a v2 with the proposed change. I can't really test this here as I don't have the hardware where it fails. So in v1 I was just guessing that it would fix the issue. Gustavo _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel