linux-fbdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/17] OMAP DSS2 model restructuring
@ 2010-02-08 15:57 Tomi Valkeinen
  2010-02-08 15:57 ` [PATCH 01/17] OMAP: DSS2: DSI: change DSI bus_lock to semaphore Tomi Valkeinen
  2010-02-13 15:34 ` [PATCH 00/17] OMAP DSS2 model restructuring Grazvydas Ignotas
  0 siblings, 2 replies; 22+ messages in thread
From: Tomi Valkeinen @ 2010-02-08 15:57 UTC (permalink / raw)
  To: linux-omap, linux-fbdev; +Cc: Tomi Valkeinen

Here are a bunch of patches that change the DSS2 driver's driver model a bit.
This change was triggered by trying to support new hardware, and realizing that
the current model just won't work.

Currently the omapdss driver is in control of most aspects of the DSS, and
omapdss calls necessary functions in display drivers. I made it that way to
keep the display drivers simple, and I, naively, thought that it will work
because the display panels are using standard bus interfaces and thus will be
very similar. I was so wrong =).

This patch set moves the control to the display driver. The display driver then
calls omapdss functions to perform whatever deed is needed at that time. This
will make display drivers slightly more complex, but it will be easier to
control the hardware properly with strange or complex display devices.

As a simple example, let's look at the update function.

Currently user space app issues OMAPFB_UPDATE_WINDOW ioctl, and omapfb driver
then calls update() in corresponding dss device struct, which goes to omapdss.
omapdss will configure the update, calling the panel driver if needed.

After these patches, omapfb will call update() in the panel driver. The panel
driver will then call functions in omapdss to setup the update, start the
update, and the panel driver will eventually get a callback informing that the
update is done.

These patches are still under work, but my basic tests on 3430SDP board seems
to work ok.

The patches can also be found from
http://gitorious.org/linux-omap-dss2/linux work branch

Tomi Valkeinen (17):
  OMAP: DSS2: DSI: change DSI bus_lock to semaphore
  OMAP: DSS2: DSI: remove auto-update perf measurement
  OMAP: DSS2: move run_test()
  OMAP: DSS2: move memory_read()
  OMAP: DSS2: move set/get_mirror()
  OMAP: DSS2: move get/set_rotate()
  OMAP: DSS2: move wait_vsync()
  OMAP: DSS2: move enable/disable_channel to overlay manager
  OMAP: DSS2: move get_resolution()
  OMAP: DSS2: move get_recommended_bpp()
  OMAP: DSS2: move enable/get_te()
  OMAP: DSS2: move set/get_update_mode()
  OMAP: DSS2: move update() and sync()
  OMAP: DSS2: move enable/disable/suspend/resume
  OMAP: DSS2: move set/get_wss()
  OMAP: DSS2: move timing functions
  OMAP: DSS2: DSI: Add VC support for update

 arch/arm/plat-omap/include/plat/display.h          |  108 ++--
 drivers/video/omap2/displays/panel-generic.c       |   56 ++-
 .../video/omap2/displays/panel-sharp-lq043t1dg01.c |   67 ++-
 .../video/omap2/displays/panel-sharp-ls037v7dw01.c |   42 +-
 drivers/video/omap2/displays/panel-taal.c          |  221 +++++--
 .../video/omap2/displays/panel-toppoly-tdo35s.c    |   56 ++-
 .../video/omap2/displays/panel-tpo-td043mtea1.c    |   61 ++-
 drivers/video/omap2/dss/core.c                     |    7 +
 drivers/video/omap2/dss/dispc.c                    |   36 +-
 drivers/video/omap2/dss/display.c                  |   87 +--
 drivers/video/omap2/dss/dpi.c                      |  149 +----
 drivers/video/omap2/dss/dsi.c                      |  829 ++++----------------
 drivers/video/omap2/dss/dss.h                      |    4 +-
 drivers/video/omap2/dss/manager.c                  |   48 +-
 drivers/video/omap2/dss/overlay.c                  |    2 +-
 drivers/video/omap2/dss/rfbi.c                     |  321 +-------
 drivers/video/omap2/dss/sdi.c                      |  115 +---
 drivers/video/omap2/dss/venc.c                     |  294 +++----
 drivers/video/omap2/omapfb/omapfb-ioctl.c          |   44 +-
 drivers/video/omap2/omapfb/omapfb-main.c           |   89 ++-
 drivers/video/omap2/omapfb/omapfb.h                |    6 +
 21 files changed, 1004 insertions(+), 1638 deletions(-)


^ permalink raw reply	[flat|nested] 22+ messages in thread

end of thread, other threads:[~2010-02-15  7:45 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-02-08 15:57 [PATCH 00/17] OMAP DSS2 model restructuring Tomi Valkeinen
2010-02-08 15:57 ` [PATCH 01/17] OMAP: DSS2: DSI: change DSI bus_lock to semaphore Tomi Valkeinen
2010-02-08 15:57   ` [PATCH 02/17] OMAP: DSS2: DSI: remove auto-update perf measurement Tomi Valkeinen
2010-02-08 15:57     ` [PATCH 03/17] OMAP: DSS2: move run_test() Tomi Valkeinen
2010-02-08 15:57       ` [PATCH 04/17] OMAP: DSS2: move memory_read() Tomi Valkeinen
2010-02-08 15:57         ` [PATCH 05/17] OMAP: DSS2: move set/get_mirror() Tomi Valkeinen
2010-02-08 15:57           ` [PATCH 06/17] OMAP: DSS2: move get/set_rotate() Tomi Valkeinen
2010-02-08 15:57             ` [PATCH 07/17] OMAP: DSS2: move wait_vsync() Tomi Valkeinen
2010-02-08 15:57               ` [PATCH 08/17] OMAP: DSS2: move enable/disable_channel to overlay manager Tomi Valkeinen
2010-02-08 15:57                 ` [PATCH 09/17] OMAP: DSS2: move get_resolution() Tomi Valkeinen
2010-02-08 15:57                   ` [PATCH 10/17] OMAP: DSS2: move get_recommended_bpp() Tomi Valkeinen
2010-02-08 15:57                     ` [PATCH 11/17] OMAP: DSS2: move enable/get_te() Tomi Valkeinen
2010-02-08 15:57                       ` [PATCH 12/17] OMAP: DSS2: move set/get_update_mode() Tomi Valkeinen
2010-02-08 15:57                         ` [PATCH 13/17] OMAP: DSS2: move update() and sync() Tomi Valkeinen
2010-02-08 15:57                           ` [PATCH 14/17] OMAP: DSS2: move enable/disable/suspend/resume Tomi Valkeinen
2010-02-08 15:57                             ` [PATCH 15/17] OMAP: DSS2: move set/get_wss() Tomi Valkeinen
2010-02-08 15:57                               ` [PATCH 16/17] OMAP: DSS2: move timing functions Tomi Valkeinen
2010-02-08 15:57                                 ` [PATCH 17/17] OMAP: DSS2: DSI: Add VC support for update Tomi Valkeinen
2010-02-09 10:15                             ` [PATCH 14/17] OMAP: DSS2: move enable/disable/suspend/resume Grazvydas Ignotas
2010-02-09 12:12                               ` Tomi Valkeinen
2010-02-13 15:34 ` [PATCH 00/17] OMAP DSS2 model restructuring Grazvydas Ignotas
2010-02-15  7:45   ` Tomi Valkeinen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).