| /* |
| * 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->dmt_flags = dt->dmt_flags; |
| vm->data_flags = dt->data_flags; |
| |
| return 0; |
| } |
| EXPORT_SYMBOL_GPL(videomode_from_timing); |