[PATCH 0/5] drm: Fix rounding errors and use scaling in i915.

Maarten Lankhorst maarten.lankhorst at linux.intel.com
Mon Apr 30 13:46:06 UTC 2018


There were some small rounding errors in when clamping with
1.0001 and 0.9999 scaling, solve these and add a testcase for drm
helpers, which can be used to prevent more of these errors in the
future.

The testcases helped me find an error in v1, which wouldn't have
been found in another way.

Maarten Lankhorst (5):
  drm/rect: Round above 1 << 16 upwards to correct scale calculation functions.
  drm/rect: Handle rounding errors in drm_rect_clip_scaled, v2.
  drm/i915: Do not adjust scale when out of bounds, v2.
  drm/selftests: Rename the Kconfig option to CONFIG_DRM_DEBUG_SELFTEST
  drm/selftests: Add drm helper selftest

 drivers/gpu/drm/Kconfig                       |   9 +-
 drivers/gpu/drm/Makefile                      |   2 +-
 drivers/gpu/drm/drm_rect.c                    |  80 ++++--
 drivers/gpu/drm/i915/intel_sprite.c           | 144 +++-------
 drivers/gpu/drm/selftests/Makefile            |   2 +-
 .../gpu/drm/selftests/drm_helper_selftests.h  |   9 +
 drivers/gpu/drm/selftests/test-drm-helper.c   | 247 ++++++++++++++++++
 7 files changed, 362 insertions(+), 131 deletions(-)
 create mode 100644 drivers/gpu/drm/selftests/drm_helper_selftests.h
 create mode 100644 drivers/gpu/drm/selftests/test-drm-helper.c

-- 
2.17.0



More information about the dri-devel mailing list