summaryrefslogtreecommitdiffstats
path: root/include/fb.h
diff options
context:
space:
mode:
authorSascha Hauer <s.hauer@pengutronix.de>2014-03-13 14:32:26 +0100
committerSascha Hauer <s.hauer@pengutronix.de>2014-03-29 06:33:34 +0100
commit297b0e4672a7273fcb19acea1c5681db9f87ae37 (patch)
tree8663707f836e058aecf0a69a84b042316d4340b1 /include/fb.h
parentce6755ca1c41b8dd3b40cf3c9d6f3a1237a92720 (diff)
downloadbarebox-297b0e4672a7273fcb19acea1c5681db9f87ae37.tar.gz
barebox-297b0e4672a7273fcb19acea1c5681db9f87ae37.tar.xz
video: introduce struct display_timings
And use it inside struct fb_info. This struct has the advantage that the supported modes can be passed around in a single pointer. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'include/fb.h')
-rw-r--r--include/fb.h16
1 files changed, 14 insertions, 2 deletions
diff --git a/include/fb.h b/include/fb.h
index 22fa9b130b..1cc352ba87 100644
--- a/include/fb.h
+++ b/include/fb.h
@@ -77,10 +77,22 @@ struct fb_ops {
int (*fb_activate_var)(struct fb_info *info);
};
+/*
+ * This describes all timing settings a display provides.
+ * The native_mode is the default setting for this display.
+ * Drivers that can handle multiple videomodes should work with this struct and
+ * convert each entry to the desired end result.
+ */
+struct display_timings {
+ unsigned int native_mode;
+
+ unsigned int num_modes;
+ struct fb_videomode *modes;
+};
+
struct fb_info {
struct fb_videomode *mode;
- struct fb_videomode *mode_list;
- unsigned num_modes;
+ struct display_timings modes;
struct fb_ops *fbops;
struct device_d dev; /* This is this fb device */