[PATCH 1/3] drm: Widen vblank count to 64 bits. Change vblank time precision to ns

Michel Dänzer michel at daenzer.net
Fri Jul 7 01:34:12 UTC 2017


On 07/07/17 12:04 AM, Keith Packard wrote:
> Michel Dänzer <michel at daenzer.net> writes:
> 
>>> @@ -317,6 +317,9 @@ int via_driver_irq_postinstall(struct drm_device *dev)
>>>  	if (!dev_priv)
>>>  		return -EINVAL;
>>>  
>>> +	if (dev->driver->get_vblank_counter)
>>> +		dev->max_vblank_count = 0xffffffff;
>>
>> What's the purpose of this? All drivers providing get_vblank_counter
>> should already initialize max_vblank_count correctly.
> 
> Yeah, I couldn't prove that this driver did that,

Which driver?

> and as Daniel says, we haven't ever audited the drivers to make sure
> they do.

I don't think that's what he meant, rather that with the change above,
all drivers have to be audited to make sure the added assignment doesn't
clobber an earlier assignment by the driver.


> We have a check to see that they don't set max_vblank_count if they
> don't provide a get function, but I can't find the matching check for
> drivers that do provide a function and aren't setting max_vblank_count.

I don't think that's necessary, see drm_update_vblank_count: 

	if (dev->max_vblank_count != 0) {
		/* trust the hw counter when it's around */
		diff = (cur_vblank - vblank->last) & dev->max_vblank_count;
	} else [...]

The hardware vblank counter is only used for updating the DRM vblank
counter if dev->max_vblank_count != 0.


-- 
Earthling Michel Dänzer               |               http://www.amd.com
Libre software enthusiast             |             Mesa and X developer

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 224 bytes
Desc: OpenPGP digital signature
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20170707/926bc42a/attachment.sig>


More information about the dri-devel mailing list