[PATCH v2 3/7] drm_modes: add videomode_from_drm_display_mode
Emil Velikov
emil.l.velikov at gmail.com
Fri Dec 19 11:03:49 PST 2014
On 19/12/14 11:03, Philipp Zabel wrote:
> Am Donnerstag, den 18.12.2014, 18:00 -0800 schrieb Steve Longerbeam:
>> Add conversion from drm_display_mode to videomode.
>>
>> Signed-off-by: Steve Longerbeam <steve_longerbeam at mentor.com>
>> ---
>> drivers/gpu/drm/drm_modes.c | 40 ++++++++++++++++++++++++++++++++++++++++
>> include/drm/drm_modes.h | 2 ++
>> 2 files changed, 42 insertions(+)
>>
>> diff --git a/drivers/gpu/drm/drm_modes.c b/drivers/gpu/drm/drm_modes.c
>> index 6d8b941..583a391 100644
>> --- a/drivers/gpu/drm/drm_modes.c
>> +++ b/drivers/gpu/drm/drm_modes.c
>> @@ -615,6 +615,46 @@ void drm_display_mode_from_videomode(const struct videomode *vm,
>> }
>> EXPORT_SYMBOL_GPL(drm_display_mode_from_videomode);
>>
>> +/**
>> + * videomode_from_drm_display_mode - fill in @vm using @dmode,
>> + * @dmode: drm_display_mode structure to use as source
>> + * @vm: videomode structure to use as destination
>> + *
>> + * Fills out @vm using the display mode specified in @dmode.
>> + */
>> +void videomode_from_drm_display_mode(const struct drm_display_mode *dmode,
>> + struct videomode *vm)
>> +{
>> + vm->hactive = dmode->hdisplay;
>> + vm->hfront_porch = dmode->hsync_start - dmode->hdisplay;
>> + vm->hsync_len = dmode->hsync_end - dmode->hsync_start;
>> + vm->hback_porch = dmode->htotal - dmode->hsync_end;
>> +
>> + vm->vactive = dmode->vdisplay;
>> + vm->vfront_porch = dmode->vsync_start - dmode->vdisplay;
>> + vm->vsync_len = dmode->vsync_end - dmode->vsync_start;
>> + vm->vback_porch = dmode->vtotal - dmode->vsync_end;
>> +
>> + vm->pixelclock = dmode->clock * 1000;
>> +
>> + vm->flags = 0;
>> + if (dmode->flags & DRM_MODE_FLAG_PHSYNC)
>> + vm->flags |= DISPLAY_FLAGS_HSYNC_HIGH;
>> + else if (dmode->flags & DRM_MODE_FLAG_NHSYNC)
>> + vm->flags |= DISPLAY_FLAGS_HSYNC_LOW;
>> + if (dmode->flags & DRM_MODE_FLAG_PVSYNC)
>> + vm->flags |= DISPLAY_FLAGS_VSYNC_HIGH;
>> + else if (dmode->flags & DRM_MODE_FLAG_NVSYNC)
>> + vm->flags |= DISPLAY_FLAGS_VSYNC_LOW;
>> + if (dmode->flags & DRM_MODE_FLAG_INTERLACE)
>> + vm->flags |= DISPLAY_FLAGS_INTERLACED;
>> + if (dmode->flags & DRM_MODE_FLAG_DBLSCAN)
>> + vm->flags |= DISPLAY_FLAGS_DOUBLESCAN;
>> + if (dmode->flags & DRM_MODE_FLAG_DBLCLK)
>> + vm->flags |= DISPLAY_FLAGS_DOUBLECLK;
>> +}
>> +EXPORT_SYMBOL_GPL(videomode_from_drm_display_mode);
>
> Is it ok for drm_modes to export a function that doesn't start with
> drm_ ? We could just rename this to drm_display_mode_to_videomode if
> necessary. I can fix it up as I apply it, but I'd like to know which is
> preferred.
>
Non-native English speaker here, and drm_display_mode_to_videomode
sounds better. Plus I think that *to* functions are more common than
*from* ones.
I'm not a drm dev, so just my 2c :)
Cheers,
Emil
More information about the dri-devel
mailing list