aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm
diff options
context:
space:
mode:
authorTomi Valkeinen <tomi.valkeinen@nokia.com>2010-01-12 07:16:41 -0500
committerTomi Valkeinen <tomi.valkeinen@nokia.com>2010-02-24 07:31:28 -0500
commit18946f62c6cc8cf051bafca8b7fa72309e8a1067 (patch)
treef1e33d76a571ebc4580b15c1b7ba1bec8e441cf6 /arch/arm
parent446f7bff703f5f82560afde90fb22b7a1d366bbc (diff)
OMAP: DSS2: move update() and sync()
Move update() and sync() from omap_dss_device to omap_dss_driver. Also, update was hardcoded to use virtual channel 0. This patch adds a parameter that specifies the VC. This is part of a larger patch-set, which moves the control from omapdss driver to the display driver. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
Diffstat (limited to 'arch/arm')
-rw-r--r--arch/arm/plat-omap/include/plat/display.h24
1 files changed, 18 insertions, 6 deletions
diff --git a/arch/arm/plat-omap/include/plat/display.h b/arch/arm/plat-omap/include/plat/display.h
index c04aadf3d9f8..e124f11e9bba 100644
--- a/arch/arm/plat-omap/include/plat/display.h
+++ b/arch/arm/plat-omap/include/plat/display.h
@@ -474,9 +474,6 @@ struct omap_dss_device {
474 struct omap_video_timings *timings); 474 struct omap_video_timings *timings);
475 void (*get_timings)(struct omap_dss_device *dssdev, 475 void (*get_timings)(struct omap_dss_device *dssdev,
476 struct omap_video_timings *timings); 476 struct omap_video_timings *timings);
477 int (*update)(struct omap_dss_device *dssdev,
478 u16 x, u16 y, u16 w, u16 h);
479 int (*sync)(struct omap_dss_device *dssdev);
480 477
481 int (*set_wss)(struct omap_dss_device *dssdev, u32 wss); 478 int (*set_wss)(struct omap_dss_device *dssdev, u32 wss);
482 u32 (*get_wss)(struct omap_dss_device *dssdev); 479 u32 (*get_wss)(struct omap_dss_device *dssdev);
@@ -500,15 +497,16 @@ struct omap_dss_driver {
500 int (*resume)(struct omap_dss_device *display); 497 int (*resume)(struct omap_dss_device *display);
501 int (*run_test)(struct omap_dss_device *display, int test); 498 int (*run_test)(struct omap_dss_device *display, int test);
502 499
503 void (*setup_update)(struct omap_dss_device *dssdev,
504 u16 x, u16 y, u16 w, u16 h);
505 int (*set_update_mode)(struct omap_dss_device *dssdev, 500 int (*set_update_mode)(struct omap_dss_device *dssdev,
506 enum omap_dss_update_mode); 501 enum omap_dss_update_mode);
507 enum omap_dss_update_mode (*get_update_mode)( 502 enum omap_dss_update_mode (*get_update_mode)(
508 struct omap_dss_device *dssdev); 503 struct omap_dss_device *dssdev);
509 504
505 int (*update)(struct omap_dss_device *dssdev,
506 u16 x, u16 y, u16 w, u16 h);
507 int (*sync)(struct omap_dss_device *dssdev);
508
510 int (*enable_te)(struct omap_dss_device *dssdev, bool enable); 509 int (*enable_te)(struct omap_dss_device *dssdev, bool enable);
511 int (*wait_for_te)(struct omap_dss_device *dssdev);
512 int (*get_te)(struct omap_dss_device *dssdev); 510 int (*get_te)(struct omap_dss_device *dssdev);
513 511
514 u8 (*get_rotate)(struct omap_dss_device *dssdev); 512 u8 (*get_rotate)(struct omap_dss_device *dssdev);
@@ -566,4 +564,18 @@ int omap_dispc_wait_for_irq_interruptible_timeout(u32 irqmask,
566void omapdss_dsi_vc_enable_hs(int channel, bool enable); 564void omapdss_dsi_vc_enable_hs(int channel, bool enable);
567int omapdss_dsi_enable_te(struct omap_dss_device *dssdev, bool enable); 565int omapdss_dsi_enable_te(struct omap_dss_device *dssdev, bool enable);
568 566
567int omap_dsi_prepare_update(struct omap_dss_device *dssdev,
568 u16 *x, u16 *y, u16 *w, u16 *h);
569int omap_dsi_update(struct omap_dss_device *dssdev,
570 int channel,
571 u16 x, u16 y, u16 w, u16 h,
572 void (*callback)(int, void *), void *data);
573
574int omap_rfbi_prepare_update(struct omap_dss_device *dssdev,
575 u16 *x, u16 *y, u16 *w, u16 *h);
576int omap_rfbi_update(struct omap_dss_device *dssdev,
577 u16 x, u16 y, u16 w, u16 h,
578 void (*callback)(void *), void *data);
579
580
569#endif 581#endif