OpenCloudOS-Kernel/drivers/gpu/drm/nouveau
Ville Syrjälä 3bb403bf42 drm: Stop using linedur_ns and pixeldur_ns for vblank timestamps
linedur_ns, and especially pixeldur_ns are becoming rather inaccurate
to be used for the vblank timestamp correction. With 4k@60 the pixel
duration is already below 2ns, so the amount of error due to the
truncation to nanoseconds is introducing quite a bit of error.

We can avoid such problems if we instead calculate the timestamp
delta_ns directly from the dislay timings, avoiding the use of
these intermediate truncated values.

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
[danvet: Squash in fixup from Thierry Reding for amdgpu.]
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2015-09-24 20:14:21 +02:00
..
dispnv04 drm: Constify TV mode names 2015-09-08 13:45:52 +02:00
include drm/nouveau/tegra: merge platform setup from nouveau drm 2015-08-28 12:40:49 +10:00
nvif drm/nouveau/nvif: device time mthd 2015-08-28 12:40:33 +10:00
nvkm Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux 2015-09-11 09:35:56 -07:00
Kbuild drm/nouveau/pci: merge agp handling from nouveau drm 2015-08-28 12:40:49 +10:00
Kconfig drm/nouveau: merge nouveau_platform.ko into nouveau.ko 2015-01-22 12:15:09 +10:00
nouveau_abi16.c drm/nouveau/pci: merge agp handling from nouveau drm 2015-08-28 12:40:49 +10:00
nouveau_abi16.h drm/nouveau/nvif: assign internal class identifiers to sw classes 2015-08-28 12:40:32 +10:00
nouveau_acpi.c drm/nouveau/device: remove pci/platform_device from common struct 2015-08-28 12:40:49 +10:00
nouveau_acpi.h drm/nouveau/device: remove pci/platform_device from common struct 2015-08-28 12:40:49 +10:00
nouveau_backlight.c drm/nouveau/nvif: simplify and tidy library interfaces 2015-08-28 12:40:32 +10:00
nouveau_bios.c drm/nouveau/nvif: simplify and tidy library interfaces 2015-08-28 12:40:32 +10:00
nouveau_bios.h
nouveau_bo.c drm/nouveau/pci: merge agp handling from nouveau drm 2015-08-28 12:40:49 +10:00
nouveau_bo.h drm/nouveau: finalise nvkm namespace switch (no binary change) 2015-01-22 12:18:07 +10:00
nouveau_chan.c drm/nouveau/pci: merge agp handling from nouveau drm 2015-08-28 12:40:49 +10:00
nouveau_chan.h drm/nouveau/nvif: simplify and tidy library interfaces 2015-08-28 12:40:32 +10:00
nouveau_connector.c drm/nouveau/gpio: convert to new-style nvkm_subdev 2015-08-28 12:40:43 +10:00
nouveau_connector.h drm/nouveau: finalise nvkm namespace switch (no binary change) 2015-01-22 12:18:07 +10:00
nouveau_crtc.h drm/nouveau/disp: implement nvif event sources for vblank/connector notifiers 2014-08-10 05:28:12 +10:00
nouveau_debugfs.c
nouveau_debugfs.h
nouveau_display.c drm: Stop using linedur_ns and pixeldur_ns for vblank timestamps 2015-09-24 20:14:21 +02:00
nouveau_display.h drm: Stop using linedur_ns and pixeldur_ns for vblank timestamps 2015-09-24 20:14:21 +02:00
nouveau_dma.c drm/nouveau/nvif: simplify and tidy library interfaces 2015-08-28 12:40:32 +10:00
nouveau_dma.h drm/nouveau/nvif: simplify and tidy library interfaces 2015-08-28 12:40:32 +10:00
nouveau_dp.c drm/nouveau/i2c: transition pad/ports away from being based on nvkm_object 2015-08-28 12:40:29 +10:00
nouveau_drm.c drm/nouveau/pci: merge agp handling from nouveau drm 2015-08-28 12:40:49 +10:00
nouveau_drm.h drm/nouveau: bump driver version for release 2015-08-28 12:40:49 +10:00
nouveau_encoder.h drm/nouveau/i2c: transition pad/ports away from being based on nvkm_object 2015-08-28 12:40:29 +10:00
nouveau_fbcon.c drm/nouveau: Use new drm_fb_helper functions 2015-08-06 14:13:05 +02:00
nouveau_fbcon.h drm/nouveau: dont switch vt on suspend 2015-01-22 12:15:08 +10:00
nouveau_fence.c drm/nouveau/nvif: simplify and tidy library interfaces 2015-08-28 12:40:32 +10:00
nouveau_fence.h drm/nouveau/sw: turn flip completion into an event 2015-08-28 12:40:38 +10:00
nouveau_gem.c drm/nouveau/fb: convert to new-style nvkm_subdev 2015-08-28 12:40:43 +10:00
nouveau_gem.h drm: Pass dma-buf as argument to gem_prime_import_sg_table 2014-09-30 14:04:00 +02:00
nouveau_hwmon.c drm/nouveau/therm: convert to new-style nvkm_subdev 2015-08-28 12:40:45 +10:00
nouveau_hwmon.h
nouveau_ioc32.c
nouveau_ioctl.h
nouveau_nvif.c drm/nouveau/client: tidy ctor/dtor interfaces 2015-08-28 12:40:30 +10:00
nouveau_platform.c drm/nouveau/tegra: merge platform setup from nouveau drm 2015-08-28 12:40:49 +10:00
nouveau_platform.h drm/nouveau/tegra: merge platform setup from nouveau drm 2015-08-28 12:40:49 +10:00
nouveau_prime.c drm/nouveau: teach nouveau_bo_pin() how to force a contig vram allocation 2014-12-02 15:44:09 +10:00
nouveau_reg.h drm/nouveau/sw: rename from software (no binary change) 2015-01-22 12:17:47 +10:00
nouveau_sgdma.c drm/nouveau: finalise nvkm namespace switch (no binary change) 2015-01-22 12:18:07 +10:00
nouveau_sysfs.c drm/nouveau/device: remove pci/platform_device from common struct 2015-08-28 12:40:49 +10:00
nouveau_sysfs.h drm/nouveau: Display Nouveau boot options at launch 2014-09-15 22:24:58 +10:00
nouveau_ttm.c drm/nouveau/pci: merge agp handling from nouveau drm 2015-08-28 12:40:49 +10:00
nouveau_ttm.h
nouveau_usif.c drm/nouveau: expose the full object/event interfaces to userspace 2014-08-10 05:28:18 +10:00
nouveau_usif.h drm/nouveau: expose the full object/event interfaces to userspace 2014-08-10 05:28:18 +10:00
nouveau_vga.c drm/nouveau/nvif: simplify and tidy library interfaces 2015-08-28 12:40:32 +10:00
nouveau_vga.h
nv04_fbcon.c drm/nouveau/nvif: simplify and tidy library interfaces 2015-08-28 12:40:32 +10:00
nv04_fence.c drm/nouveau/sw/nv04: replace direct context access with GetRef method 2015-08-28 12:40:37 +10:00
nv10_fence.c drm/nouveau/nvif: simplify and tidy library interfaces 2015-08-28 12:40:32 +10:00
nv10_fence.h drm/nouveau: remove as much direct use of core headers as possible 2014-08-10 05:13:16 +10:00
nv17_fence.c drm/nouveau/nvif: simplify and tidy library interfaces 2015-08-28 12:40:32 +10:00
nv50_display.c drm/nouveau/device: remove pci/platform_device from common struct 2015-08-28 12:40:49 +10:00
nv50_display.h
nv50_fbcon.c drm/nouveau/nvif: simplify and tidy library interfaces 2015-08-28 12:40:32 +10:00
nv50_fence.c drm/nouveau/nvif: simplify and tidy library interfaces 2015-08-28 12:40:32 +10:00
nv84_fence.c drm/nouveau/fifo: convert user classes to new-style nvkm_object 2015-08-28 12:40:40 +10:00
nvc0_fbcon.c drm/nouveau/nvif: simplify and tidy library interfaces 2015-08-28 12:40:32 +10:00
nvc0_fence.c drm/nouveau: remove as much direct use of core headers as possible 2014-08-10 05:13:16 +10:00