drm: extract dp link train delay functions from radeon
authorDaniel Vetter <daniel.vetter@ffwll.ch>
Thu, 18 Oct 2012 13:32:40 +0000 (15:32 +0200)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Mon, 22 Oct 2012 20:34:46 +0000 (22:34 +0200)
commit1a644cd47ca0c40a9210db170bd0630031c3a60b
tree03144ce14e66c9b155369b5af92227ac8080e5f1
parent0f037bdee1a12947a0c55b21a05f57793332bc07
drm: extract dp link train delay functions from radeon

This requires a few changes since that dpcd value is above the
range currently cached by radeon. I've check the dp specs, and
above 0xf there's a big gap and nothing that looks like we should
cache it while a given device is plugged in. It's also the same value
that i915.ko uses.

Hence extend the various dpcd arrays in the radeon driver, use
proper symbolic constants where applicable (one place overallocated
the dpcd array to 25 bytes). Then also drop the rd_interval cache -
radeon_dp_link_train_init re-reads the dpcd block, so the values we'll
consume in train_cr and train_ce will always be fresh.

To avoid needless diff-churn, #define the old size of dpcd as the new
one and keep it around.

v2: Alex Deucher noticed one place where I've forgotten to replace 8
with DP_RECEIVER_CAP_SIZE.

Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Acked-by: Dave Airlie <airlied@gmail.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/drm_dp_helper.c
drivers/gpu/drm/i915/intel_dp.c
drivers/gpu/drm/radeon/atombios_dp.c
drivers/gpu/drm/radeon/radeon_mode.h
include/drm/drm_dp_helper.h