diff options
author | Tomi Valkeinen <tomi.valkeinen@ti.com> | 2013-03-21 08:20:12 -0400 |
---|---|---|
committer | Tomi Valkeinen <tomi.valkeinen@ti.com> | 2013-03-21 08:34:33 -0400 |
commit | 6cd2c7db41eab204b6474534df4ca68a7dc53d86 (patch) | |
tree | b559543ced377ff12f7285fff3459374d66afc3c | |
parent | 694f050650798b82f2c7b9983e80117d58b34bf3 (diff) |
videomode: videomode_from_timing work
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>
-rw-r--r-- | drivers/gpu/drm/tilcdc/tilcdc_panel.c | 2 | ||||
-rw-r--r-- | drivers/video/of_videomode.c | 2 | ||||
-rw-r--r-- | drivers/video/videomode.c | 25 | ||||
-rw-r--r-- | include/video/videomode.h | 15 |
4 files changed, 31 insertions, 13 deletions
diff --git a/drivers/gpu/drm/tilcdc/tilcdc_panel.c b/drivers/gpu/drm/tilcdc/tilcdc_panel.c index 580b74e2022b..90ee49786372 100644 --- a/drivers/gpu/drm/tilcdc/tilcdc_panel.c +++ b/drivers/gpu/drm/tilcdc/tilcdc_panel.c | |||
@@ -173,7 +173,7 @@ static int panel_connector_get_modes(struct drm_connector *connector) | |||
173 | struct drm_display_mode *mode = drm_mode_create(dev); | 173 | struct drm_display_mode *mode = drm_mode_create(dev); |
174 | struct videomode vm; | 174 | struct videomode vm; |
175 | 175 | ||
176 | if (videomode_from_timing(timings, &vm, i)) | 176 | if (videomode_from_timings(timings, &vm, i)) |
177 | break; | 177 | break; |
178 | 178 | ||
179 | drm_display_mode_from_videomode(&vm, mode); | 179 | drm_display_mode_from_videomode(&vm, mode); |
diff --git a/drivers/video/of_videomode.c b/drivers/video/of_videomode.c index 5b8066cd397f..111c2d1911d3 100644 --- a/drivers/video/of_videomode.c +++ b/drivers/video/of_videomode.c | |||
@@ -43,7 +43,7 @@ int of_get_videomode(struct device_node *np, struct videomode *vm, | |||
43 | if (index == OF_USE_NATIVE_MODE) | 43 | if (index == OF_USE_NATIVE_MODE) |
44 | index = disp->native_mode; | 44 | index = disp->native_mode; |
45 | 45 | ||
46 | ret = videomode_from_timing(disp, vm, index); | 46 | ret = videomode_from_timings(disp, vm, index); |
47 | if (ret) | 47 | if (ret) |
48 | return ret; | 48 | return ret; |
49 | 49 | ||
diff --git a/drivers/video/videomode.c b/drivers/video/videomode.c index a3d95f263cd5..df375c96c5d3 100644 --- a/drivers/video/videomode.c +++ b/drivers/video/videomode.c | |||
@@ -11,15 +11,9 @@ | |||
11 | #include <video/display_timing.h> | 11 | #include <video/display_timing.h> |
12 | #include <video/videomode.h> | 12 | #include <video/videomode.h> |
13 | 13 | ||
14 | int videomode_from_timing(const struct display_timings *disp, | 14 | void videomode_from_timing(const struct display_timing *dt, |
15 | struct videomode *vm, unsigned int index) | 15 | struct videomode *vm) |
16 | { | 16 | { |
17 | struct display_timing *dt; | ||
18 | |||
19 | dt = display_timings_get(disp, index); | ||
20 | if (!dt) | ||
21 | return -EINVAL; | ||
22 | |||
23 | vm->pixelclock = dt->pixelclock.typ; | 17 | vm->pixelclock = dt->pixelclock.typ; |
24 | vm->hactive = dt->hactive.typ; | 18 | vm->hactive = dt->hactive.typ; |
25 | vm->hfront_porch = dt->hfront_porch.typ; | 19 | vm->hfront_porch = dt->hfront_porch.typ; |
@@ -32,7 +26,20 @@ int videomode_from_timing(const struct display_timings *disp, | |||
32 | vm->vsync_len = dt->vsync_len.typ; | 26 | vm->vsync_len = dt->vsync_len.typ; |
33 | 27 | ||
34 | vm->flags = dt->flags; | 28 | vm->flags = dt->flags; |
29 | } | ||
30 | EXPORT_SYMBOL_GPL(videomode_from_timing); | ||
31 | |||
32 | int videomode_from_timings(const struct display_timings *disp, | ||
33 | struct videomode *vm, unsigned int index) | ||
34 | { | ||
35 | struct display_timing *dt; | ||
36 | |||
37 | dt = display_timings_get(disp, index); | ||
38 | if (!dt) | ||
39 | return -EINVAL; | ||
40 | |||
41 | videomode_from_timing(dt, vm); | ||
35 | 42 | ||
36 | return 0; | 43 | return 0; |
37 | } | 44 | } |
38 | EXPORT_SYMBOL_GPL(videomode_from_timing); | 45 | EXPORT_SYMBOL_GPL(videomode_from_timings); |
diff --git a/include/video/videomode.h b/include/video/videomode.h index 8b12e60b6173..3f1049d870d5 100644 --- a/include/video/videomode.h +++ b/include/video/videomode.h | |||
@@ -34,14 +34,25 @@ struct videomode { | |||
34 | 34 | ||
35 | /** | 35 | /** |
36 | * videomode_from_timing - convert display timing to videomode | 36 | * videomode_from_timing - convert display timing to videomode |
37 | * @dt: display_timing structure | ||
38 | * @vm: return value | ||
39 | * | ||
40 | * DESCRIPTION: | ||
41 | * This function converts a struct display_timing to a struct videomode. | ||
42 | */ | ||
43 | void videomode_from_timing(const struct display_timing *dt, | ||
44 | struct videomode *vm); | ||
45 | |||
46 | /** | ||
47 | * videomode_from_timings - convert one display timings entry to videomode | ||
37 | * @disp: structure with all possible timing entries | 48 | * @disp: structure with all possible timing entries |
38 | * @vm: return value | 49 | * @vm: return value |
39 | * @index: index into the list of display timings in devicetree | 50 | * @index: index into the list of display timings in devicetree |
40 | * | 51 | * |
41 | * DESCRIPTION: | 52 | * DESCRIPTION: |
42 | * This function converts a struct display_timing to a struct videomode. | 53 | * This function converts one struct display_timing entry to a struct videomode. |
43 | */ | 54 | */ |
44 | int videomode_from_timing(const struct display_timings *disp, | 55 | int videomode_from_timings(const struct display_timings *disp, |
45 | struct videomode *vm, unsigned int index); | 56 | struct videomode *vm, unsigned int index); |
46 | 57 | ||
47 | #endif | 58 | #endif |