diff options
author | jilai wang | 2015-07-09 00:12:40 +0200 |
---|---|---|
committer | Rob Clark | 2015-08-16 00:27:20 +0200 |
commit | 3498409f0315b93f969f87c31d014a9819f6fa7d (patch) | |
tree | 6ad309fed27f54c5219f30c8da5e93d7d881a221 /drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.h | |
parent | drm/msm/mdp5: add more YUV formats for MDP5 (diff) | |
download | kernel-qcow2-linux-3498409f0315b93f969f87c31d014a9819f6fa7d.tar.gz kernel-qcow2-linux-3498409f0315b93f969f87c31d014a9819f6fa7d.tar.xz kernel-qcow2-linux-3498409f0315b93f969f87c31d014a9819f6fa7d.zip |
drm/msm/mdp: Add capabilities to MDP planes (v2)
MDP planes can be implemented using different type of HW pipes,
RGB/VIG/DMA pipes for MDP5 and RGB/VG/DMA pipes for MDP4. Each type
of pipe has different HW capabilities such as scaling, color space
conversion, decimation... Add a variable in plane data structure
to specify the difference of each plane which comes from mdp5_cfg data
and use it to differenciate the plane operation.
V1: Initial change
V2: Fix a typo in mdp4_kms.h
Signed-off-by: Jilai Wang <jilaiw@codeaurora.org>
Signed-off-by: Rob Clark <robdclark@gmail.com>
Diffstat (limited to 'drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.h')
-rw-r--r-- | drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.h | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.h b/drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.h index 8a19d271d18f..efb918d9f68b 100644 --- a/drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.h +++ b/drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.h @@ -46,6 +46,11 @@ struct mdp5_lm_block { uint32_t max_height; }; +struct mdp5_pipe_block { + MDP5_SUB_BLOCK_DEFINITION; + uint32_t caps; /* pipe capabilities */ +}; + struct mdp5_ctl_block { MDP5_SUB_BLOCK_DEFINITION; uint32_t flush_hw_mask; /* FLUSH register's hardware mask */ @@ -72,9 +77,9 @@ struct mdp5_cfg_hw { struct mdp5_sub_block mdp; struct mdp5_smp_block smp; struct mdp5_ctl_block ctl; - struct mdp5_sub_block pipe_vig; - struct mdp5_sub_block pipe_rgb; - struct mdp5_sub_block pipe_dma; + struct mdp5_pipe_block pipe_vig; + struct mdp5_pipe_block pipe_rgb; + struct mdp5_pipe_block pipe_dma; struct mdp5_lm_block lm; struct mdp5_sub_block dspp; struct mdp5_sub_block ad; |