Skip to content

Commit

Permalink
videomode: videomode_from_timing work
Browse files Browse the repository at this point in the history
We currently have videomode_from_timing(), which takes one
display_timing entry from display_timings.

To make it easier to use display_timing without display_timings, this
patch renames videomode_from_timing() to videomode_from_timings(), and
adds a new videomode_from_timing() which just converts a given
display_timing to videomode.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Cc: Steffen Trumtrar <s.trumtrar@pengutronix.de>
  • Loading branch information
Tomi Valkeinen committed Mar 21, 2013
1 parent 694f050 commit 6cd2c7d
Show file tree
Hide file tree
Showing 4 changed files with 31 additions and 13 deletions.
2 changes: 1 addition & 1 deletion drivers/gpu/drm/tilcdc/tilcdc_panel.c
Original file line number Diff line number Diff line change
Expand Up @@ -173,7 +173,7 @@ static int panel_connector_get_modes(struct drm_connector *connector)
struct drm_display_mode *mode = drm_mode_create(dev);
struct videomode vm;

if (videomode_from_timing(timings, &vm, i))
if (videomode_from_timings(timings, &vm, i))
break;

drm_display_mode_from_videomode(&vm, mode);
Expand Down
2 changes: 1 addition & 1 deletion drivers/video/of_videomode.c
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ int of_get_videomode(struct device_node *np, struct videomode *vm,
if (index == OF_USE_NATIVE_MODE)
index = disp->native_mode;

ret = videomode_from_timing(disp, vm, index);
ret = videomode_from_timings(disp, vm, index);
if (ret)
return ret;

Expand Down
25 changes: 16 additions & 9 deletions drivers/video/videomode.c
Original file line number Diff line number Diff line change
Expand Up @@ -11,15 +11,9 @@
#include <video/display_timing.h>
#include <video/videomode.h>

int videomode_from_timing(const struct display_timings *disp,
struct videomode *vm, unsigned int index)
void videomode_from_timing(const struct display_timing *dt,
struct videomode *vm)
{
struct display_timing *dt;

dt = display_timings_get(disp, index);
if (!dt)
return -EINVAL;

vm->pixelclock = dt->pixelclock.typ;
vm->hactive = dt->hactive.typ;
vm->hfront_porch = dt->hfront_porch.typ;
Expand All @@ -32,7 +26,20 @@ int videomode_from_timing(const struct display_timings *disp,
vm->vsync_len = dt->vsync_len.typ;

vm->flags = dt->flags;
}
EXPORT_SYMBOL_GPL(videomode_from_timing);

int videomode_from_timings(const struct display_timings *disp,
struct videomode *vm, unsigned int index)
{
struct display_timing *dt;

dt = display_timings_get(disp, index);
if (!dt)
return -EINVAL;

videomode_from_timing(dt, vm);

return 0;
}
EXPORT_SYMBOL_GPL(videomode_from_timing);
EXPORT_SYMBOL_GPL(videomode_from_timings);
15 changes: 13 additions & 2 deletions include/video/videomode.h
Original file line number Diff line number Diff line change
Expand Up @@ -34,14 +34,25 @@ struct videomode {

/**
* videomode_from_timing - convert display timing to videomode
* @dt: display_timing structure
* @vm: return value
*
* DESCRIPTION:
* This function converts a struct display_timing to a struct videomode.
*/
void videomode_from_timing(const struct display_timing *dt,
struct videomode *vm);

/**
* videomode_from_timings - convert one display timings entry to videomode
* @disp: structure with all possible timing entries
* @vm: return value
* @index: index into the list of display timings in devicetree
*
* DESCRIPTION:
* This function converts a struct display_timing to a struct videomode.
* This function converts one struct display_timing entry to a struct videomode.
*/
int videomode_from_timing(const struct display_timings *disp,
int videomode_from_timings(const struct display_timings *disp,
struct videomode *vm, unsigned int index);

#endif

0 comments on commit 6cd2c7d

Please sign in to comment.