On Mon, Jan 4, 2016 at 10:44 AM, Thierry Reding <thierry.reding at gmail.com> wrote: > From: Thierry Reding <treding at nvidia.com> > > Commit 88e72717c2de ("drm/irq: Use unsigned int pipe in public API") > updated the prototype of this function but not the implementation. This > wasn't noticed even through compile tests because the prototype is part > of the source file that uses it and hence the compiler won't know the > prototype when it compiles the implementation. > > The right thing would've been to move the prototype to a header that's > included in radeon_kms.c so that the implementation signature could be > checked against it, but the closest thing would've been radeon_drv.h > and including that results in a lot of build errors, so we'll leave it > as is for now. > > Cc: Christian König <christian.koenig at amd.com> > Cc: Alex Deucher <alexander.deucher at amd.com> > Signed-off-by: Thierry Reding <treding at nvidia.com> > --- > Changes in v2: > - remove unnecessary check for unsigned int < 0
I had applied your previous patch before Michel's feedback so it's already in drm-next, any change you could spin a new patch to just drop the < 0 check? Thanks, Alex > > drivers/gpu/drm/radeon/radeon_kms.c | 24 ++++++++++++------------ > 1 file changed, 12 insertions(+), 12 deletions(-) > > diff --git a/drivers/gpu/drm/radeon/radeon_kms.c > b/drivers/gpu/drm/radeon/radeon_kms.c > index 2e8b114272dd..74068bf0b8bb 100644 > --- a/drivers/gpu/drm/radeon/radeon_kms.c > +++ b/drivers/gpu/drm/radeon/radeon_kms.c > @@ -748,19 +748,19 @@ void radeon_driver_preclose_kms(struct drm_device *dev, > * radeon_get_vblank_counter_kms - get frame count > * > * @dev: drm dev pointer > - * @crtc: crtc to get the frame count from > + * @pipe: crtc to get the frame count from > * > * Gets the frame count on the requested crtc (all asics). > * Returns frame count on success, -EINVAL on failure. > */ > -u32 radeon_get_vblank_counter_kms(struct drm_device *dev, int crtc) > +u32 radeon_get_vblank_counter_kms(struct drm_device *dev, unsigned int pipe) > { > int vpos, hpos, stat; > u32 count; > struct radeon_device *rdev = dev->dev_private; > > - if (crtc < 0 || crtc >= rdev->num_crtc) { > - DRM_ERROR("Invalid crtc %d\n", crtc); > + if (pipe >= rdev->num_crtc) { > + DRM_ERROR("Invalid crtc %u\n", pipe); > return -EINVAL; > } > > @@ -772,29 +772,29 @@ u32 radeon_get_vblank_counter_kms(struct drm_device > *dev, int crtc) > * and start of vsync, so vpos >= 0 means to bump the hw frame counter > * result by 1 to give the proper appearance to caller. > */ > - if (rdev->mode_info.crtcs[crtc]) { > + if (rdev->mode_info.crtcs[pipe]) { > /* Repeat readout if needed to provide stable result if > * we cross start of vsync during the queries. > */ > do { > - count = radeon_get_vblank_counter(rdev, crtc); > + count = radeon_get_vblank_counter(rdev, pipe); > /* Ask radeon_get_crtc_scanoutpos to return vpos as > * distance to start of vblank, instead of regular > * vertical scanout pos. > */ > stat = radeon_get_crtc_scanoutpos( > - dev, crtc, GET_DISTANCE_TO_VBLANKSTART, > + dev, pipe, GET_DISTANCE_TO_VBLANKSTART, > &vpos, &hpos, NULL, NULL, > - &rdev->mode_info.crtcs[crtc]->base.hwmode); > - } while (count != radeon_get_vblank_counter(rdev, crtc)); > + &rdev->mode_info.crtcs[pipe]->base.hwmode); > + } while (count != radeon_get_vblank_counter(rdev, pipe)); > > if (((stat & (DRM_SCANOUTPOS_VALID | > DRM_SCANOUTPOS_ACCURATE)) != > (DRM_SCANOUTPOS_VALID | DRM_SCANOUTPOS_ACCURATE))) { > DRM_DEBUG_VBL("Query failed! stat %d\n", stat); > } > else { > - DRM_DEBUG_VBL("crtc %d: dist from vblank start %d\n", > - crtc, vpos); > + DRM_DEBUG_VBL("crtc %u: dist from vblank start %d\n", > + pipe, vpos); > > /* Bump counter if we are at >= leading edge of > vblank, > * but before vsync where vpos would turn negative and > @@ -806,7 +806,7 @@ u32 radeon_get_vblank_counter_kms(struct drm_device *dev, > int crtc) > } > else { > /* Fallback to use value as is. */ > - count = radeon_get_vblank_counter(rdev, crtc); > + count = radeon_get_vblank_counter(rdev, pipe); > DRM_DEBUG_VBL("NULL mode info! Returned count may be wrong.\n"); > } > > -- > 2.5.0 > > _______________________________________________ > dri-devel mailing list > dri-devel at lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/dri-devel