[Intel-gfx] [PATCH 1/3] drm/crtc: Add property for aspect ratio
Vandana Kannan
vandana.kannan at intel.com
Fri May 23 12:48:02 CEST 2014
On May-22-2014 5:46 PM, Daniel Vetter wrote:
> On Thu, May 22, 2014 at 04:50:48PM +0530, Vandana Kannan wrote:
>> Added a property to enable user space to set aspect ratio.
>> This patch contains declaration of the property and code to create the
>> property.
>>
>> Signed-off-by: Vandana Kannan <vandana.kannan at intel.com>
>> Cc: dri-devel at lists.freedesktop.org
>
> Documentation update is missing. Also for such patch series I recommend to
> post the entire patch series to dri-devel and intel-gfx. Otherwise people
> on dri-devel don't see how the new code is used and so can't really review
> it properly.
> -Daniel
>
Thanks for your inputs.
I will send the Documentation change along with the rest of the patches
(when I resend them).
Resent patch 3 adding dri-devel..
Thanks,
Vandana
>> ---
>> drivers/gpu/drm/drm_crtc.c | 31 +++++++++++++++++++++++++++++++
>> include/drm/drm_crtc.h | 2 ++
>> 2 files changed, 33 insertions(+)
>>
>> diff --git a/drivers/gpu/drm/drm_crtc.c b/drivers/gpu/drm/drm_crtc.c
>> index 37a3e07..84d359e 100644
>> --- a/drivers/gpu/drm/drm_crtc.c
>> +++ b/drivers/gpu/drm/drm_crtc.c
>> @@ -139,6 +139,12 @@ static const struct drm_prop_enum_list drm_scaling_mode_enum_list[] =
>> { DRM_MODE_SCALE_ASPECT, "Full aspect" },
>> };
>>
>> +static const struct drm_prop_enum_list drm_aspect_ratio_enum_list[] = {
>> + { HDMI_PICTURE_ASPECT_NONE, "Automatic" },
>> + { HDMI_PICTURE_ASPECT_4_3, "4:3" },
>> + { HDMI_PICTURE_ASPECT_16_9, "16:9" },
>> +};
>> +
>> /*
>> * Non-global properties, but "required" for certain connectors.
>> */
>> @@ -1344,6 +1350,31 @@ int drm_mode_create_scaling_mode_property(struct drm_device *dev)
>> EXPORT_SYMBOL(drm_mode_create_scaling_mode_property);
>>
>> /**
>> + * drm_mode_create_aspect_ratio_property - create aspect ratio property
>> + * @dev: DRM device
>> + *
>> + * Called by a driver the first time it's needed, must be attached to desired
>> + * connectors.
>> + */
>> +int drm_mode_create_aspect_ratio_property(struct drm_device *dev)
>> +{
>> + struct drm_property *aspect_ratio;
>> +
>> + if (dev->mode_config.aspect_ratio_property)
>> + return 0;
>> +
>> + aspect_ratio =
>> + drm_property_create_enum(dev, 0, "aspect ratio",
>> + drm_aspect_ratio_enum_list,
>> + ARRAY_SIZE(drm_aspect_ratio_enum_list));
>> +
>> + dev->mode_config.aspect_ratio_property = aspect_ratio;
>> +
>> + return 0;
>> +}
>> +EXPORT_SYMBOL(drm_mode_create_aspect_ratio_property);
>> +
>> +/**
>> * drm_mode_create_dirty_property - create dirty property
>> * @dev: DRM device
>> *
>> diff --git a/include/drm/drm_crtc.h b/include/drm/drm_crtc.h
>> index 5c1c31c..1149617 100644
>> --- a/include/drm/drm_crtc.h
>> +++ b/include/drm/drm_crtc.h
>> @@ -801,6 +801,7 @@ struct drm_mode_config {
>>
>> /* Optional properties */
>> struct drm_property *scaling_mode_property;
>> + struct drm_property *aspect_ratio_property;
>> struct drm_property *dirty_info_property;
>>
>> /* dumb ioctl parameters */
>> @@ -971,6 +972,7 @@ extern int drm_mode_create_dvi_i_properties(struct drm_device *dev);
>> extern int drm_mode_create_tv_properties(struct drm_device *dev, int num_formats,
>> char *formats[]);
>> extern int drm_mode_create_scaling_mode_property(struct drm_device *dev);
>> +extern int drm_mode_create_aspect_ratio_property(struct drm_device *dev);
>> extern int drm_mode_create_dirty_info_property(struct drm_device *dev);
>> extern const char *drm_get_encoder_name(const struct drm_encoder *encoder);
>>
>> --
>> 1.9.3
>>
>> _______________________________________________
>> Intel-gfx mailing list
>> Intel-gfx at lists.freedesktop.org
>> http://lists.freedesktop.org/mailman/listinfo/intel-gfx
>
More information about the Intel-gfx
mailing list