diff options
author | Lowry Li (Arm Technology China) <Lowry.Li@arm.com> | 2019-04-22 04:16:30 +0100 |
---|---|---|
committer | Liviu Dudau <Liviu.Dudau@arm.com> | 2019-06-19 11:42:17 +0100 |
commit | 19358630f3a570e7ced509a65c28693840d2ae65 (patch) | |
tree | 9cc2860bc01bdbb49804b02915d0a68cf9ca4adc /drivers/gpu/drm/arm/display/komeda/komeda_format_caps.h | |
parent | 429bfabe00549c3a5db4d7d6aacd7852a1f53f12 (diff) | |
download | linux-19358630f3a570e7ced509a65c28693840d2ae65.tar.bz2 |
drm/komeda: Adds limitation check for AFBC wide block not support Rot90
Komeda series hardware doesn't support Rot90 for AFBC wide block. So
add limitation check to reject it if such configuration has been posted.
Signed-off-by: Lowry Li (Arm Technology China) <lowry.li@arm.com>
Reviewed-by: James Qian Wang (Arm Technology China) <james.qian.wang@arm.com>
Signed-off-by: Liviu Dudau <liviu.dudau@arm.com>
Diffstat (limited to 'drivers/gpu/drm/arm/display/komeda/komeda_format_caps.h')
-rw-r--r-- | drivers/gpu/drm/arm/display/komeda/komeda_format_caps.h | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/gpu/drm/arm/display/komeda/komeda_format_caps.h b/drivers/gpu/drm/arm/display/komeda/komeda_format_caps.h index 96de22ecfa08..381e87345e9c 100644 --- a/drivers/gpu/drm/arm/display/komeda/komeda_format_caps.h +++ b/drivers/gpu/drm/arm/display/komeda/komeda_format_caps.h @@ -71,10 +71,15 @@ struct komeda_format_caps { * * @n_formats: the size of format_caps list. * @format_caps: format_caps list. + * @format_mod_supported: Optional. Some HW may have special requirements or + * limitations which can not be described by format_caps, this func supply HW + * the ability to do the further HW specific check. */ struct komeda_format_caps_table { u32 n_formats; const struct komeda_format_caps *format_caps; + bool (*format_mod_supported)(const struct komeda_format_caps *caps, + u32 layer_type, u64 modifier, u32 rot); }; extern u64 komeda_supported_modifiers[]; @@ -100,6 +105,7 @@ u32 *komeda_get_layer_fourcc_list(struct komeda_format_caps_table *table, void komeda_put_fourcc_list(u32 *fourcc_list); bool komeda_format_mod_supported(struct komeda_format_caps_table *table, - u32 layer_type, u32 fourcc, u64 modifier); + u32 layer_type, u32 fourcc, u64 modifier, + u32 rot); #endif |