aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2010-03-02 13:41:26 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2010-03-02 13:41:26 -0500
commit3a5b27bf6f29574d667230c7e76e4b83fe3014e0 (patch)
treea80892424269083c292d3eee29c4b3e6289d588b
parent5057bfaff82e12f01a2ffd58f55535cbd7c5c3a2 (diff)
parent21df20fcfb4e88f4cd4991e9e67de549e6480adf (diff)
Merge branch 'for-linus' of git://gitorious.org/linux-omap-dss2/linux
* 'for-linus' of git://gitorious.org/linux-omap-dss2/linux: (49 commits) OMAP: DSS2: Taal: Fix TE when resuming OMAP: DSS2: Taal: Fix ESD check OMAP: DSS2: OMAPFB: Constify some function parameters OMAP: DSS2: OMAPFB: install omapfb.h OMAP: DSS2: DSI: add error prints OMAP: DSS2: TPO-TD03MTEA1: fix function names OMAP: DSS2: DSI: add dsi_vc_dcs_read_2() helper OMAP: DSS2: OMAPFB: Remove FB_OMAP2_FORCE_AUTO_UPDATE OMAP: DSS2: DSI: remove external TE support OMAP: DSS2: move timing functions OMAP: DSS2: move set/get_wss() OMAP: DSS2: move enable/disable/suspend/resume OMAP: DSS2: move update() and sync() OMAP: DSS2: move set/get_update_mode() OMAP: DSS2: move enable/get_te() OMAP: DSS2: move get_recommended_bpp() OMAP: DSS2: move get_resolution() OMAP: DSS2: move enable/disable_channel to overlay manager OMAP: DSS2: move wait_vsync() OMAP: DSS2: move get/set_rotate() ...
-rw-r--r--arch/arm/mach-omap2/board-3430sdp.c4
-rw-r--r--arch/arm/plat-omap/include/plat/display.h117
-rw-r--r--drivers/video/omap/lcd_ams_delta.c93
-rw-r--r--drivers/video/omap/omapfb_main.c7
-rw-r--r--drivers/video/omap2/displays/Kconfig18
-rw-r--r--drivers/video/omap2/displays/Makefile3
-rw-r--r--drivers/video/omap2/displays/panel-generic.c56
-rw-r--r--drivers/video/omap2/displays/panel-sharp-lq043t1dg01.c159
-rw-r--r--drivers/video/omap2/displays/panel-sharp-ls037v7dw01.c77
-rw-r--r--drivers/video/omap2/displays/panel-taal.c253
-rw-r--r--drivers/video/omap2/displays/panel-toppoly-tdo35s.c154
-rw-r--r--drivers/video/omap2/displays/panel-tpo-td043mtea1.c528
-rw-r--r--drivers/video/omap2/dss/Kconfig26
-rw-r--r--drivers/video/omap2/dss/core.c117
-rw-r--r--drivers/video/omap2/dss/dispc.c42
-rw-r--r--drivers/video/omap2/dss/display.c119
-rw-r--r--drivers/video/omap2/dss/dpi.c144
-rw-r--r--drivers/video/omap2/dss/dsi.c1031
-rw-r--r--drivers/video/omap2/dss/dss.c42
-rw-r--r--drivers/video/omap2/dss/dss.h23
-rw-r--r--drivers/video/omap2/dss/manager.c48
-rw-r--r--drivers/video/omap2/dss/overlay.c2
-rw-r--r--drivers/video/omap2/dss/rfbi.c321
-rw-r--r--drivers/video/omap2/dss/sdi.c115
-rw-r--r--drivers/video/omap2/dss/venc.c296
-rw-r--r--drivers/video/omap2/omapfb/Kconfig11
-rw-r--r--drivers/video/omap2/omapfb/omapfb-ioctl.c68
-rw-r--r--drivers/video/omap2/omapfb/omapfb-main.c133
-rw-r--r--drivers/video/omap2/omapfb/omapfb.h9
-rw-r--r--include/linux/Kbuild1
-rw-r--r--include/linux/omapfb.h9
31 files changed, 2186 insertions, 1840 deletions
diff --git a/arch/arm/mach-omap2/board-3430sdp.c b/arch/arm/mach-omap2/board-3430sdp.c
index f312b1513753..a101029ceb6f 100644
--- a/arch/arm/mach-omap2/board-3430sdp.c
+++ b/arch/arm/mach-omap2/board-3430sdp.c
@@ -542,10 +542,6 @@ static struct regulator_init_data sdp3430_vdac = {
542/* VPLL2 for digital video outputs */ 542/* VPLL2 for digital video outputs */
543static struct regulator_consumer_supply sdp3430_vpll2_supplies[] = { 543static struct regulator_consumer_supply sdp3430_vpll2_supplies[] = {
544 { 544 {
545 .supply = "vdvi",
546 .dev = &sdp3430_lcd_device.dev,
547 },
548 {
549 .supply = "vdds_dsi", 545 .supply = "vdds_dsi",
550 .dev = &sdp3430_dss_device.dev, 546 .dev = &sdp3430_dss_device.dev,
551 } 547 }
diff --git a/arch/arm/plat-omap/include/plat/display.h b/arch/arm/plat-omap/include/plat/display.h
index c66e464732df..1c529ce9dc11 100644
--- a/arch/arm/plat-omap/include/plat/display.h
+++ b/arch/arm/plat-omap/include/plat/display.h
@@ -233,8 +233,12 @@ int omap_rfbi_setup_te(enum omap_rfbi_te_mode mode,
233void dsi_bus_lock(void); 233void dsi_bus_lock(void);
234void dsi_bus_unlock(void); 234void dsi_bus_unlock(void);
235int dsi_vc_dcs_write(int channel, u8 *data, int len); 235int dsi_vc_dcs_write(int channel, u8 *data, int len);
236int dsi_vc_dcs_write_0(int channel, u8 dcs_cmd);
237int dsi_vc_dcs_write_1(int channel, u8 dcs_cmd, u8 param);
236int dsi_vc_dcs_write_nosync(int channel, u8 *data, int len); 238int dsi_vc_dcs_write_nosync(int channel, u8 *data, int len);
237int dsi_vc_dcs_read(int channel, u8 dcs_cmd, u8 *buf, int buflen); 239int dsi_vc_dcs_read(int channel, u8 dcs_cmd, u8 *buf, int buflen);
240int dsi_vc_dcs_read_1(int channel, u8 dcs_cmd, u8 *data);
241int dsi_vc_dcs_read_2(int channel, u8 dcs_cmd, u16 *data);
238int dsi_vc_set_max_rx_packet_size(int channel, u16 len); 242int dsi_vc_set_max_rx_packet_size(int channel, u16 len);
239int dsi_vc_send_null(int channel); 243int dsi_vc_send_null(int channel);
240int dsi_vc_send_bta_sync(int channel); 244int dsi_vc_send_bta_sync(int channel);
@@ -367,6 +371,10 @@ struct omap_overlay_manager {
367 371
368 int (*apply)(struct omap_overlay_manager *mgr); 372 int (*apply)(struct omap_overlay_manager *mgr);
369 int (*wait_for_go)(struct omap_overlay_manager *mgr); 373 int (*wait_for_go)(struct omap_overlay_manager *mgr);
374 int (*wait_for_vsync)(struct omap_overlay_manager *mgr);
375
376 int (*enable)(struct omap_overlay_manager *mgr);
377 int (*disable)(struct omap_overlay_manager *mgr);
370}; 378};
371 379
372struct omap_dss_device { 380struct omap_dss_device {
@@ -426,16 +434,11 @@ struct omap_dss_device {
426 int acb; /* ac-bias pin frequency */ 434 int acb; /* ac-bias pin frequency */
427 435
428 enum omap_panel_config config; 436 enum omap_panel_config config;
429
430 u8 recommended_bpp;
431
432 struct omap_dss_device *ctrl;
433 } panel; 437 } panel;
434 438
435 struct { 439 struct {
436 u8 pixel_size; 440 u8 pixel_size;
437 struct rfbi_timings rfbi_timings; 441 struct rfbi_timings rfbi_timings;
438 struct omap_dss_device *panel;
439 } ctrl; 442 } ctrl;
440 443
441 int reset_gpio; 444 int reset_gpio;
@@ -460,49 +463,6 @@ struct omap_dss_device {
460 463
461 enum omap_dss_display_state state; 464 enum omap_dss_display_state state;
462 465
463 int (*enable)(struct omap_dss_device *dssdev);
464 void (*disable)(struct omap_dss_device *dssdev);
465
466 int (*suspend)(struct omap_dss_device *dssdev);
467 int (*resume)(struct omap_dss_device *dssdev);
468
469 void (*get_resolution)(struct omap_dss_device *dssdev,
470 u16 *xres, u16 *yres);
471 int (*get_recommended_bpp)(struct omap_dss_device *dssdev);
472
473 int (*check_timings)(struct omap_dss_device *dssdev,
474 struct omap_video_timings *timings);
475 void (*set_timings)(struct omap_dss_device *dssdev,
476 struct omap_video_timings *timings);
477 void (*get_timings)(struct omap_dss_device *dssdev,
478 struct omap_video_timings *timings);
479 int (*update)(struct omap_dss_device *dssdev,
480 u16 x, u16 y, u16 w, u16 h);
481 int (*sync)(struct omap_dss_device *dssdev);
482 int (*wait_vsync)(struct omap_dss_device *dssdev);
483
484 int (*set_update_mode)(struct omap_dss_device *dssdev,
485 enum omap_dss_update_mode);
486 enum omap_dss_update_mode (*get_update_mode)
487 (struct omap_dss_device *dssdev);
488
489 int (*enable_te)(struct omap_dss_device *dssdev, bool enable);
490 int (*get_te)(struct omap_dss_device *dssdev);
491
492 u8 (*get_rotate)(struct omap_dss_device *dssdev);
493 int (*set_rotate)(struct omap_dss_device *dssdev, u8 rotate);
494
495 bool (*get_mirror)(struct omap_dss_device *dssdev);
496 int (*set_mirror)(struct omap_dss_device *dssdev, bool enable);
497
498 int (*run_test)(struct omap_dss_device *dssdev, int test);
499 int (*memory_read)(struct omap_dss_device *dssdev,
500 void *buf, size_t size,
501 u16 x, u16 y, u16 w, u16 h);
502
503 int (*set_wss)(struct omap_dss_device *dssdev, u32 wss);
504 u32 (*get_wss)(struct omap_dss_device *dssdev);
505
506 /* platform specific */ 466 /* platform specific */
507 int (*platform_enable)(struct omap_dss_device *dssdev); 467 int (*platform_enable)(struct omap_dss_device *dssdev);
508 void (*platform_disable)(struct omap_dss_device *dssdev); 468 void (*platform_disable)(struct omap_dss_device *dssdev);
@@ -522,11 +482,17 @@ struct omap_dss_driver {
522 int (*resume)(struct omap_dss_device *display); 482 int (*resume)(struct omap_dss_device *display);
523 int (*run_test)(struct omap_dss_device *display, int test); 483 int (*run_test)(struct omap_dss_device *display, int test);
524 484
525 void (*setup_update)(struct omap_dss_device *dssdev,