Am Montag, den 14.11.2016, 10:02 +0100 schrieb Daniel Vetter: > No one outside of drm_irq.c should ever need this. The correct way to > implement get_vblank_count for hw lacking a vblank counter is > drm_vblank_no_hw_counter. Fix this up in mtk, which is the only > offender left over. > > Cc: CK Hu <ck.hu@xxxxxxxxxxxx> > Cc: Philipp Zabel <p.zabel@xxxxxxxxxxxxxx> > Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxxx> Acked-by: Philipp Zabel <p.zabel@xxxxxxxxxxxxxx> regards Philipp > --- > drivers/gpu/drm/drm_irq.c | 37 +++++++++------------------------- > drivers/gpu/drm/mediatek/mtk_drm_drv.c | 2 +- > 2 files changed, 11 insertions(+), 28 deletions(-) > > diff --git a/drivers/gpu/drm/drm_irq.c b/drivers/gpu/drm/drm_irq.c > index 2fb5861b04b7..1681e919b866 100644 > --- a/drivers/gpu/drm/drm_irq.c > +++ b/drivers/gpu/drm/drm_irq.c > @@ -234,6 +234,16 @@ static void drm_update_vblank_count(struct drm_device *dev, unsigned int pipe, > store_vblank(dev, pipe, diff, &t_vblank, cur_vblank); > } > > +static u32 drm_vblank_count(struct drm_device *dev, unsigned int pipe) > +{ > + struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; > + > + if (WARN_ON(pipe >= dev->num_crtcs)) > + return 0; > + > + return vblank->count; > +} > + > /** > * drm_accurate_vblank_count - retrieve the master vblank counter > * @crtc: which counter to retrieve > @@ -888,31 +898,6 @@ drm_get_last_vbltimestamp(struct drm_device *dev, unsigned int pipe, > } > > /** > - * drm_vblank_count - retrieve "cooked" vblank counter value > - * @dev: DRM device > - * @pipe: index of CRTC for which to retrieve the counter > - * > - * Fetches the "cooked" vblank count value that represents the number of > - * vblank events since the system was booted, including lost events due to > - * modesetting activity. > - * > - * This is the legacy version of drm_crtc_vblank_count(). > - * > - * Returns: > - * The software vblank counter. > - */ > -u32 drm_vblank_count(struct drm_device *dev, unsigned int pipe) > -{ > - struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; > - > - if (WARN_ON(pipe >= dev->num_crtcs)) > - return 0; > - > - return vblank->count; > -} > -EXPORT_SYMBOL(drm_vblank_count); > - > -/** > * drm_crtc_vblank_count - retrieve "cooked" vblank counter value > * @crtc: which counter to retrieve > * > @@ -920,8 +905,6 @@ EXPORT_SYMBOL(drm_vblank_count); > * vblank events since the system was booted, including lost events due to > * modesetting activity. > * > - * This is the native KMS version of drm_vblank_count(). > - * > * Returns: > * The software vblank counter. > */ > diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.c b/drivers/gpu/drm/mediatek/mtk_drm_drv.c > index d90152e85ed0..4b7fe7eaec01 100644 > --- a/drivers/gpu/drm/mediatek/mtk_drm_drv.c > +++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.c > @@ -256,7 +256,7 @@ static struct drm_driver mtk_drm_driver = { > .driver_features = DRIVER_MODESET | DRIVER_GEM | DRIVER_PRIME | > DRIVER_ATOMIC, > > - .get_vblank_counter = drm_vblank_count, > + .get_vblank_counter = drm_vblank_no_hw_counter, > .enable_vblank = mtk_drm_crtc_enable_vblank, > .disable_vblank = mtk_drm_crtc_disable_vblank, > _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel