drm/msm/mdp5: add support for MDP5 v1.3
authorStephane Viau <sviau@codeaurora.org>
Mon, 7 Jul 2014 14:34:01 +0000 (10:34 -0400)
committerRob Clark <robdclark@gmail.com>
Mon, 4 Aug 2014 15:55:30 +0000 (11:55 -0400)
commit3d47fd47f28903f5a9167e95f32a906bd53e13e6
tree973c6d9045c8bc267f3bcb1de235e5cb67521384
parenta1ad35233345e7ddd9ea3ea7b841432f4723d743
drm/msm/mdp5: add support for MDP5 v1.3

MDP5 has several functional blocks (ie: VIG/RGB pipes, LMs, ...).
From one revision to another, these blocks' base addresses might
change due to the number of instances present in the MDP5 hw.
A way of dealing with these offset changes is to introduce
dynamic offsets 'per block'.

This change adds support for the new revision of MDP5: v1.3.
The idea is to define one hw config per MDP version and select
either one of them at runtime, after reading the MDP5 version.

Once the MDP version is known, 'per block' dynamic offsets
are initialized through a global pointer, which is then used for
read/write register access.

Signed-off-by: Stephane Viau <sviau@codeaurora.org>
Signed-off-by: Rob Clark <robdclark@gmail.com>
drivers/gpu/drm/msm/mdp/mdp5/mdp5.xml.h
drivers/gpu/drm/msm/mdp/mdp5/mdp5_kms.c
drivers/gpu/drm/msm/mdp/mdp5/mdp5_kms.h