blob: 810afff79bc140ff5d694e0ac5a465a7d2ed133d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
/*
* generic display timing functions
*
* Copyright (c) 2012 Steffen Trumtrar <s.trumtrar@pengutronix.de>, Pengutronix
*
* This file is released under the GPLv2
*/
#include <linux/errno.h>
#include <linux/export.h>
#include <video/display_timing.h>
#include <video/videomode.h>
int videomode_from_timing(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;
vm->pixelclock = display_timing_get_value(&dt->pixelclock, TE_TYP);
vm->hactive = display_timing_get_value(&dt->hactive, TE_TYP);
vm->hfront_porch = display_timing_get_value(&dt->hfront_porch, TE_TYP);
vm->hback_porch = display_timing_get_value(&dt->hback_porch, TE_TYP);
vm->hsync_len = display_timing_get_value(&dt->hsync_len, TE_TYP);
vm->vactive = display_timing_get_value(&dt->vactive, TE_TYP);
vm->vfront_porch = display_timing_get_value(&dt->vfront_porch, TE_TYP);
vm->vback_porch = display_timing_get_value(&dt->vback_porch, TE_TYP);
vm->vsync_len = display_timing_get_value(&dt->vsync_len, TE_TYP);
vm->flags = dt->flags;
return 0;
}
EXPORT_SYMBOL_GPL(videomode_from_timing);
|