[GIT PULL] OMAP DSS for v3.4

7 messages, 3 authors, 2012-03-22 · open the first message on its own page

[GIT PULL] OMAP DSS for v3.4

From: Tomi Valkeinen <hidden>
Date: 2012-03-19 11:01:05

Hi Florian, Arnd,

Here are the changes for OMAP DSS driver for v3.4.

There's an issue with the dss driver that appears on arm-soc/for-next
branch, which I'm still solving
(http://marc.info/?l=linux-omap&m=133214966902577&w=2). I hope to get
fix for that ready and merged for -rc1, but I'm not sure if I can make
it in time, so I wanted to sent this pull request already.

Arnd, as discussed before, you can also merge this branch to solve the
conflicts between arm-soc and omapdss trees.

Note that this is the first pull request I've sent with a branch that I
have not been rebasing, so please check that the branch looks sane.

 Tomi

The following changes since commit c16fa4f2ad19908a47c63d8fa436a1178438c7e7:

  Linux 3.3 (2012-03-18 16:15:34 -0700)

are available in the git repository at:
  git://gitorious.org/linux-omap-dss2/linux.git for-3.4

Archit Taneja (2):
      OMAPDSS: Features: Maintain dss_feats as a list
      OMAPDSS: DISPC: Fix scaling constraints for OMAP4

Danny Kukawka (1):
      OMAPDSS: VENC: fix NULL pointer dereference in DSS2 VENC sysfs debug attr on OMAP4

Grazvydas Ignotas (2):
      OMAPDSS: TPO-TD03MTEA1: fix suspend hang
      OMAPDSS: TPO-TD03MTEA1: update default gamma

Julia Lawall (1):
      OMAPDSS: use devm_ functions

Lajos Molnar (3):
      OMAPDSS: DISPC: Fix OMAP4 supported color formats
      OMAPDSS: DISPC: Fix FIR coefficients
      OMAPDSS: MANAGER/APPLY: Add runtime_pm protection around wait_for_go/vsync functions

Mythri P K (6):
      OMAPDSS: HDMI: remove duplicate video interface code
      OMAPDSS: HDMI: update static timing table
      OMAPDSS: HDMI: change the timing match logic
      OMAPDSS: HDMI: remove duplicate code and mode parameter
      OMAPDSS: HDMI: Move Avi-infoframe struct to hdmi_ip_data
      OMAPDSS: HDMI: Add M2 divider while calculating clkout

Ricardo Neri (4):
      OMAPDSS: HDMI: Correct source of the pixel clock in ACR calculation
      OMAPDSS: Add DSS feature for HDMI MCLK for audio
      OMAPDSS: HDMI: Implement initialization of MCLK
      OMAPDSS: HDMI: Modify logic to configure MCLK

Tomi Valkeinen (29):
      OMAPDSS: FEAT: Add FIFO_MERGE feature
      OMAPDSS: APPLY: add fifo merge support funcs
      OMAPDSS: APPLY: add fifo-merge support
      OMAPDSS: DISPC: print fifo threshold values in bytes
      OMAPDSS: DISPC: move fifo threhold calc to dispc.c
      OMAPDSS: DISPC: Add naive threshold calc for fifomerge
      Merge branch 'work/fifomerge'
      Merge commit 'v3.3-rc4'
      OMAPDSS: cleanup probe functions
      OMAPFB: remove old blizzard driver
      OMAPFB: Remove OMAP2/3 support from old omapfb driver
      OMAPDSS: Remove video SRAM support
      OMAPFB: Remove video SRAM support (old omapfb)
      OMAP2+: remove unneeded #include omapfb.h
      OMAP: N770: remove HWA742 platform data
      OAMPFB: remove unused omapfb_set_ctrl_platform_data()
      OMAPFB: remove early mem alloc from old omapfb
      OMAPFB: remove mem info from platform_data
      OMAPFB: remove unused fb_format_to_dss_mode()
      OMAPFB: Move old omapfb private structs to a private include file
      OMAPFB: remove omapfb_set_platform_data()
      OMAP1: pass LCD config with omapfb_set_lcd_config()
      OMAP: Remove OMAP_TAG_LCD and OMAP_TAG_FBMEM
      OMAP1: Remove unused LCD devices from board files
      OMAPFB: remove remaining OMAP arch checks
      Merge branch 'work/old-omapfb-removal'
      Merge commit 'v3.3-rc6'
      OMAPDSS: APPLY: print warning if wait_pending_extra_info_updates fails
      OMAPDSS: APPLY: fix clearing shadow dirty flag with manual update

Tony Lindgren (1):
      ARM: OMAP2+: Fix compile error when FB_OMAP2 is not set

Yegor Yefremov (1):
      OMAPDSS: add Innolux AT080TN52 display support

 arch/arm/mach-omap1/board-ams-delta.c              |    9 +-
 arch/arm/mach-omap1/board-fsample.c                |   15 +-
 arch/arm/mach-omap1/board-h2.c                     |   15 +-
 arch/arm/mach-omap1/board-h3.c                     |    9 +-
 arch/arm/mach-omap1/board-htcherald.c              |    9 +-
 arch/arm/mach-omap1/board-innovator.c              |   11 +-
 arch/arm/mach-omap1/board-nokia770.c               |   19 +-
 arch/arm/mach-omap1/board-osk.c                    |   14 +-
 arch/arm/mach-omap1/board-palmte.c                 |   10 +-
 arch/arm/mach-omap1/board-palmtt.c                 |   10 +-
 arch/arm/mach-omap1/board-palmz71.c                |   10 +-
 arch/arm/mach-omap1/board-perseus2.c               |   15 +-
 arch/arm/mach-omap1/board-sx1.c                    |   16 +-
 arch/arm/mach-omap2/io.c                           |    1 -
 arch/arm/plat-omap/common.c                        |    2 -
 arch/arm/plat-omap/fb.c                            |  334 +----
 arch/arm/plat-omap/fb.h                            |   10 -
 arch/arm/plat-omap/include/plat/blizzard.h         |   12 -
 arch/arm/plat-omap/include/plat/board.h            |    2 -
 arch/arm/plat-omap/include/plat/hwa742.h           |    8 -
 arch/arm/plat-omap/include/plat/vram.h             |   21 +-
 drivers/video/omap/Kconfig                         |   16 +-
 drivers/video/omap/Makefile                        |   12 +-
 drivers/video/omap/blizzard.c                      | 1648 --------------------
 drivers/video/omap/dispc.c                         | 1547 ------------------
 drivers/video/omap/dispc.h                         |   46 -
 drivers/video/omap/hwa742.c                        |   21 +-
 drivers/video/omap/omapfb.h                        |   25 +-
 drivers/video/omap/omapfb_main.c                   |   30 +-
 drivers/video/omap/rfbi.c                          |  598 -------
 drivers/video/omap2/displays/panel-generic-dpi.c   |   23 +
 .../video/omap2/displays/panel-tpo-td043mtea1.c    |  153 ++-
 drivers/video/omap2/dss/apply.c                    |  275 +++-
 drivers/video/omap2/dss/dispc.c                    |  121 +-
 drivers/video/omap2/dss/dispc_coefs.c              |    9 +-
 drivers/video/omap2/dss/display.c                  |   10 -
 drivers/video/omap2/dss/dsi.c                      |   65 +-
 drivers/video/omap2/dss/dss.c                      |   17 +-
 drivers/video/omap2/dss/dss.h                      |   10 +-
 drivers/video/omap2/dss/dss_features.c             |  181 ++-
 drivers/video/omap2/dss/dss_features.h             |   54 +-
 drivers/video/omap2/dss/hdmi.c                     |  278 ++--
 drivers/video/omap2/dss/manager.c                  |   12 +-
 drivers/video/omap2/dss/rfbi.c                     |   36 +-
 drivers/video/omap2/dss/ti_hdmi.h                  |   56 +-
 drivers/video/omap2/dss/ti_hdmi_4xxx_ip.c          |   94 +-
 drivers/video/omap2/dss/ti_hdmi_4xxx_ip.h          |   47 -
 drivers/video/omap2/dss/venc.c                     |   32 +-
 drivers/video/omap2/omapfb/omapfb-ioctl.c          |    2 +-
 drivers/video/omap2/omapfb/omapfb-main.c           |  101 +--
 drivers/video/omap2/vram.c                         |   99 +--
 include/linux/omapfb.h                             |   32 +-
 52 files changed, 1001 insertions(+), 5201 deletions(-)
 delete mode 100644 arch/arm/plat-omap/fb.h
 delete mode 100644 arch/arm/plat-omap/include/plat/blizzard.h
 delete mode 100644 arch/arm/plat-omap/include/plat/hwa742.h
 delete mode 100644 drivers/video/omap/blizzard.c
 delete mode 100644 drivers/video/omap/dispc.c
 delete mode 100644 drivers/video/omap/dispc.h
 delete mode 100644 drivers/video/omap/rfbi.c

Re: [GIT PULL] OMAP DSS for v3.4

From: Arnd Bergmann <arnd@arndb.de>
Date: 2012-03-19 16:24:41

On Monday 19 March 2012, Tomi Valkeinen wrote:
Here are the changes for OMAP DSS driver for v3.4.

There's an issue with the dss driver that appears on arm-soc/for-next
branch, which I'm still solving
(http://marc.info/?l=linux-omap&amp;m3214966902577&amp;w=2). I hope to get
fix for that ready and merged for -rc1, but I'm not sure if I can make
it in time, so I wanted to sent this pull request already.

Arnd, as discussed before, you can also merge this branch to solve the
conflicts between arm-soc and omapdss trees.

Note that this is the first pull request I've sent with a branch that I
have not been rebasing, so please check that the branch looks sane.
Thanks Tomi,

I've looked at the specific conflicts again, and it seems that the only
conflicting commit in arm-soc is 2e3ee9f45b "ARM: OMAP1: Move most of
plat/io.h into local iomap.h". I'm planning to send that one very early,
as soon as Russell has his first set up patches merged, so I don't
actually have to resolve the conflict here unless Florian is also
there early.

Florian, if I end up being faster than you, feel free to pull the
omap/cleanup branch from git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc.git
if you want to get a conflict resolution using the minimum set of patches
from upstream. Alternatively, pulling "cleanup" from 
git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap should give you
the same.

	Arnd

Re: [GIT PULL] OMAP DSS for v3.4

From: Tomi Valkeinen <hidden>
Date: 2012-03-21 12:39:13

Hi Florian,

On Mon, 2012-03-19 at 13:01 +0200, Tomi Valkeinen wrote:
Hi Florian, Arnd,

Here are the changes for OMAP DSS driver for v3.4.

There's an issue with the dss driver that appears on arm-soc/for-next
branch, which I'm still solving
(http://marc.info/?l=linux-omap&m=133214966902577&w=2). I hope to get
fix for that ready and merged for -rc1, but I'm not sure if I can make
it in time, so I wanted to sent this pull request already.
Below is a patch that fixes the issue I mentioned above. So briefly, the
problem is that omapdss's driver registration is broken, and it has been
working so far by luck. arm-soc tree contains a patch which changes how
arch/arm/plat-omap/omap_device.c creates the devices, and this causes
the (broken) omapdss driver registration to break, causing a deadlock.

The patch below makes the omapdss driver registration saner. The patch
works with and without the omap_device.c patch from arm-soc.

Florian, if you didn't send the pull request yet, this would be a good
patch to add to it. We can, of course, get it in for -rc2, but avoiding
a kernel deadlock on -rc1 would be nice.

 Tomi


From 849c07b1fd3d9f23e8ed94436b6221f8652462c0 Mon Sep 17 00:00:00 2001
From: Tomi Valkeinen <redacted>
Date: Mon, 19 Mar 2012 15:05:02 +0200
Subject: [PATCH] OMAPDSS: register dss drivers in module init

We do the dss driver registration in a rather strange way: we have the
higher level omapdss driver, and we use that driver's probe function to
register the drivers for the rest of the dss devices.

There doesn't seem to be any reason for that, and additionally the
soon-to-be-merged patch "ARM: OMAP: omap_device: remove
omap_device_parent" will break omapdss initialization with the current
registration model.

This patch changes the registration for all drivers to happen at the
same place, in the init of the module.

Signed-off-by: Tomi Valkeinen <redacted>
---
 drivers/video/omap2/dss/core.c |  135 +++++++++++++++++++++++-----------------
 1 files changed, 77 insertions(+), 58 deletions(-)
diff --git a/drivers/video/omap2/dss/core.c b/drivers/video/omap2/dss/core.c
index 8613f86..e8a1207 100644
--- a/drivers/video/omap2/dss/core.c
+++ b/drivers/video/omap2/dss/core.c
@@ -183,42 +183,6 @@ static int omap_dss_probe(struct platform_device *pdev)
 	dss_init_overlay_managers(pdev);
 	dss_init_overlays(pdev);
 
-	r = dss_init_platform_driver();
-	if (r) {
-		DSSERR("Failed to initialize DSS platform driver\n");
-		goto err_dss;
-	}
-
-	r = dispc_init_platform_driver();
-	if (r) {
-		DSSERR("Failed to initialize dispc platform driver\n");
-		goto err_dispc;
-	}
-
-	r = rfbi_init_platform_driver();
-	if (r) {
-		DSSERR("Failed to initialize rfbi platform driver\n");
-		goto err_rfbi;
-	}
-
-	r = venc_init_platform_driver();
-	if (r) {
-		DSSERR("Failed to initialize venc platform driver\n");
-		goto err_venc;
-	}
-
-	r = dsi_init_platform_driver();
-	if (r) {
-		DSSERR("Failed to initialize DSI platform driver\n");
-		goto err_dsi;
-	}
-
-	r = hdmi_init_platform_driver();
-	if (r) {
-		DSSERR("Failed to initialize hdmi\n");
-		goto err_hdmi;
-	}
-
 	r = dss_initialize_debugfs();
 	if (r)
 		goto err_debugfs;
@@ -246,18 +210,6 @@ static int omap_dss_probe(struct platform_device *pdev)
 err_register:
 	dss_uninitialize_debugfs();
 err_debugfs:
-	hdmi_uninit_platform_driver();
-err_hdmi:
-	dsi_uninit_platform_driver();
-err_dsi:
-	venc_uninit_platform_driver();
-err_venc:
-	dispc_uninit_platform_driver();
-err_dispc:
-	rfbi_uninit_platform_driver();
-err_rfbi:
-	dss_uninit_platform_driver();
-err_dss:
 
 	return r;
 }
@@ -269,13 +221,6 @@ static int omap_dss_remove(struct platform_device *pdev)
 
 	dss_uninitialize_debugfs();
 
-	hdmi_uninit_platform_driver();
-	dsi_uninit_platform_driver();
-	venc_uninit_platform_driver();
-	rfbi_uninit_platform_driver();
-	dispc_uninit_platform_driver();
-	dss_uninit_platform_driver();
-
 	dss_uninit_overlays(pdev);
 	dss_uninit_overlay_managers(pdev);
 
@@ -525,6 +470,80 @@ static int omap_dss_bus_register(void)
 
 /* INIT */
 
+static int __init omap_dss_register_drivers(void)
+{
+	int r;
+
+	r = platform_driver_register(&omap_dss_driver);
+	if (r)
+		return r;
+
+	r = dss_init_platform_driver();
+	if (r) {
+		DSSERR("Failed to initialize DSS platform driver\n");
+		goto err_dss;
+	}
+
+	r = dispc_init_platform_driver();
+	if (r) {
+		DSSERR("Failed to initialize dispc platform driver\n");
+		goto err_dispc;
+	}
+
+	r = rfbi_init_platform_driver();
+	if (r) {
+		DSSERR("Failed to initialize rfbi platform driver\n");
+		goto err_rfbi;
+	}
+
+	r = venc_init_platform_driver();
+	if (r) {
+		DSSERR("Failed to initialize venc platform driver\n");
+		goto err_venc;
+	}
+
+	r = dsi_init_platform_driver();
+	if (r) {
+		DSSERR("Failed to initialize DSI platform driver\n");
+		goto err_dsi;
+	}
+
+	r = hdmi_init_platform_driver();
+	if (r) {
+		DSSERR("Failed to initialize hdmi\n");
+		goto err_hdmi;
+	}
+
+	return 0;
+
+err_hdmi:
+	dsi_uninit_platform_driver();
+err_dsi:
+	venc_uninit_platform_driver();
+err_venc:
+	rfbi_uninit_platform_driver();
+err_rfbi:
+	dispc_uninit_platform_driver();
+err_dispc:
+	dss_uninit_platform_driver();
+err_dss:
+	platform_driver_unregister(&omap_dss_driver);
+
+	return r;
+}
+
+static void __exit omap_dss_unregister_drivers(void)
+{
+	hdmi_uninit_platform_driver();
+	dsi_uninit_platform_driver();
+	venc_uninit_platform_driver();
+	rfbi_uninit_platform_driver();
+	dispc_uninit_platform_driver();
+	dss_uninit_platform_driver();
+
+	platform_driver_unregister(&omap_dss_driver);
+}
+
 #ifdef CONFIG_OMAP2_DSS_MODULE
 static void omap_dss_bus_unregister(void)
 {
@@ -541,7 +560,7 @@ static int __init omap_dss_init(void)
 	if (r)
 		return r;
 
-	r = platform_driver_register(&omap_dss_driver);
+	r = omap_dss_register_drivers();
 	if (r) {
 		omap_dss_bus_unregister();
 		return r;
@@ -562,7 +581,7 @@ static void __exit omap_dss_exit(void)
 		core.vdds_sdi_reg = NULL;
 	}
 
-	platform_driver_unregister(&omap_dss_driver);
+	omap_dss_unregister_drivers();
 
 	omap_dss_bus_unregister();
 }
@@ -577,7 +596,7 @@ static int __init omap_dss_init(void)
 
 static int __init omap_dss_init2(void)
 {
-	return platform_driver_register(&omap_dss_driver);
+	return omap_dss_register_drivers();
 }
 
 core_initcall(omap_dss_init);
-- 
1.7.4.1

Re: [GIT PULL] OMAP DSS for v3.4

From: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
Date: 2012-03-21 18:45:11

On 03/19/2012 11:01 AM, Tomi Valkeinen wrote:
Hi Florian, Arnd,

Here are the changes for OMAP DSS driver for v3.4.

There's an issue with the dss driver that appears on arm-soc/for-next
branch, which I'm still solving
(http://marc.info/?l=linux-omap&m3214966902577&w=2). I hope to get
fix for that ready and merged for -rc1, but I'm not sure if I can make
it in time, so I wanted to sent this pull request already.

Arnd, as discussed before, you can also merge this branch to solve the
conflicts between arm-soc and omapdss trees.

Note that this is the first pull request I've sent with a branch that I
have not been rebasing, so please check that the branch looks sane.

 Tomi

The following changes since commit c16fa4f2ad19908a47c63d8fa436a1178438c7e7:

  Linux 3.3 (2012-03-18 16:15:34 -0700)
Interesting, I never tried to start at a commit that is not part of the
branch. Good to know that it does work.
are available in the git repository at:
  git://gitorious.org/linux-omap-dss2/linux.git for-3.4
Merged.


Thanks,

Florian Tobias Schandinat
Archit Taneja (2):
      OMAPDSS: Features: Maintain dss_feats as a list
      OMAPDSS: DISPC: Fix scaling constraints for OMAP4

Danny Kukawka (1):
      OMAPDSS: VENC: fix NULL pointer dereference in DSS2 VENC sysfs debug attr on OMAP4

Grazvydas Ignotas (2):
      OMAPDSS: TPO-TD03MTEA1: fix suspend hang
      OMAPDSS: TPO-TD03MTEA1: update default gamma

Julia Lawall (1):
      OMAPDSS: use devm_ functions

Lajos Molnar (3):
      OMAPDSS: DISPC: Fix OMAP4 supported color formats
      OMAPDSS: DISPC: Fix FIR coefficients
      OMAPDSS: MANAGER/APPLY: Add runtime_pm protection around wait_for_go/vsync functions

Mythri P K (6):
      OMAPDSS: HDMI: remove duplicate video interface code
      OMAPDSS: HDMI: update static timing table
      OMAPDSS: HDMI: change the timing match logic
      OMAPDSS: HDMI: remove duplicate code and mode parameter
      OMAPDSS: HDMI: Move Avi-infoframe struct to hdmi_ip_data
      OMAPDSS: HDMI: Add M2 divider while calculating clkout

Ricardo Neri (4):
      OMAPDSS: HDMI: Correct source of the pixel clock in ACR calculation
      OMAPDSS: Add DSS feature for HDMI MCLK for audio
      OMAPDSS: HDMI: Implement initialization of MCLK
      OMAPDSS: HDMI: Modify logic to configure MCLK

Tomi Valkeinen (29):
      OMAPDSS: FEAT: Add FIFO_MERGE feature
      OMAPDSS: APPLY: add fifo merge support funcs
      OMAPDSS: APPLY: add fifo-merge support
      OMAPDSS: DISPC: print fifo threshold values in bytes
      OMAPDSS: DISPC: move fifo threhold calc to dispc.c
      OMAPDSS: DISPC: Add naive threshold calc for fifomerge
      Merge branch 'work/fifomerge'
      Merge commit 'v3.3-rc4'
      OMAPDSS: cleanup probe functions
      OMAPFB: remove old blizzard driver
      OMAPFB: Remove OMAP2/3 support from old omapfb driver
      OMAPDSS: Remove video SRAM support
      OMAPFB: Remove video SRAM support (old omapfb)
      OMAP2+: remove unneeded #include omapfb.h
      OMAP: N770: remove HWA742 platform data
      OAMPFB: remove unused omapfb_set_ctrl_platform_data()
      OMAPFB: remove early mem alloc from old omapfb
      OMAPFB: remove mem info from platform_data
      OMAPFB: remove unused fb_format_to_dss_mode()
      OMAPFB: Move old omapfb private structs to a private include file
      OMAPFB: remove omapfb_set_platform_data()
      OMAP1: pass LCD config with omapfb_set_lcd_config()
      OMAP: Remove OMAP_TAG_LCD and OMAP_TAG_FBMEM
      OMAP1: Remove unused LCD devices from board files
      OMAPFB: remove remaining OMAP arch checks
      Merge branch 'work/old-omapfb-removal'
      Merge commit 'v3.3-rc6'
      OMAPDSS: APPLY: print warning if wait_pending_extra_info_updates fails
      OMAPDSS: APPLY: fix clearing shadow dirty flag with manual update

Tony Lindgren (1):
      ARM: OMAP2+: Fix compile error when FB_OMAP2 is not set

Yegor Yefremov (1):
      OMAPDSS: add Innolux AT080TN52 display support

 arch/arm/mach-omap1/board-ams-delta.c              |    9 +-
 arch/arm/mach-omap1/board-fsample.c                |   15 +-
 arch/arm/mach-omap1/board-h2.c                     |   15 +-
 arch/arm/mach-omap1/board-h3.c                     |    9 +-
 arch/arm/mach-omap1/board-htcherald.c              |    9 +-
 arch/arm/mach-omap1/board-innovator.c              |   11 +-
 arch/arm/mach-omap1/board-nokia770.c               |   19 +-
 arch/arm/mach-omap1/board-osk.c                    |   14 +-
 arch/arm/mach-omap1/board-palmte.c                 |   10 +-
 arch/arm/mach-omap1/board-palmtt.c                 |   10 +-
 arch/arm/mach-omap1/board-palmz71.c                |   10 +-
 arch/arm/mach-omap1/board-perseus2.c               |   15 +-
 arch/arm/mach-omap1/board-sx1.c                    |   16 +-
 arch/arm/mach-omap2/io.c                           |    1 -
 arch/arm/plat-omap/common.c                        |    2 -
 arch/arm/plat-omap/fb.c                            |  334 +----
 arch/arm/plat-omap/fb.h                            |   10 -
 arch/arm/plat-omap/include/plat/blizzard.h         |   12 -
 arch/arm/plat-omap/include/plat/board.h            |    2 -
 arch/arm/plat-omap/include/plat/hwa742.h           |    8 -
 arch/arm/plat-omap/include/plat/vram.h             |   21 +-
 drivers/video/omap/Kconfig                         |   16 +-
 drivers/video/omap/Makefile                        |   12 +-
 drivers/video/omap/blizzard.c                      | 1648 --------------------
 drivers/video/omap/dispc.c                         | 1547 ------------------
 drivers/video/omap/dispc.h                         |   46 -
 drivers/video/omap/hwa742.c                        |   21 +-
 drivers/video/omap/omapfb.h                        |   25 +-
 drivers/video/omap/omapfb_main.c                   |   30 +-
 drivers/video/omap/rfbi.c                          |  598 -------
 drivers/video/omap2/displays/panel-generic-dpi.c   |   23 +
 .../video/omap2/displays/panel-tpo-td043mtea1.c    |  153 ++-
 drivers/video/omap2/dss/apply.c                    |  275 +++-
 drivers/video/omap2/dss/dispc.c                    |  121 +-
 drivers/video/omap2/dss/dispc_coefs.c              |    9 +-
 drivers/video/omap2/dss/display.c                  |   10 -
 drivers/video/omap2/dss/dsi.c                      |   65 +-
 drivers/video/omap2/dss/dss.c                      |   17 +-
 drivers/video/omap2/dss/dss.h                      |   10 +-
 drivers/video/omap2/dss/dss_features.c             |  181 ++-
 drivers/video/omap2/dss/dss_features.h             |   54 +-
 drivers/video/omap2/dss/hdmi.c                     |  278 ++--
 drivers/video/omap2/dss/manager.c                  |   12 +-
 drivers/video/omap2/dss/rfbi.c                     |   36 +-
 drivers/video/omap2/dss/ti_hdmi.h                  |   56 +-
 drivers/video/omap2/dss/ti_hdmi_4xxx_ip.c          |   94 +-
 drivers/video/omap2/dss/ti_hdmi_4xxx_ip.h          |   47 -
 drivers/video/omap2/dss/venc.c                     |   32 +-
 drivers/video/omap2/omapfb/omapfb-ioctl.c          |    2 +-
 drivers/video/omap2/omapfb/omapfb-main.c           |  101 +--
 drivers/video/omap2/vram.c                         |   99 +--
 include/linux/omapfb.h                             |   32 +-
 52 files changed, 1001 insertions(+), 5201 deletions(-)
 delete mode 100644 arch/arm/plat-omap/fb.h
 delete mode 100644 arch/arm/plat-omap/include/plat/blizzard.h
 delete mode 100644 arch/arm/plat-omap/include/plat/hwa742.h
 delete mode 100644 drivers/video/omap/blizzard.c
 delete mode 100644 drivers/video/omap/dispc.c
 delete mode 100644 drivers/video/omap/dispc.h
 delete mode 100644 drivers/video/omap/rfbi.c

Re: [GIT PULL] OMAP DSS for v3.4

From: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
Date: 2012-03-21 18:48:54

On 03/21/2012 12:39 PM, Tomi Valkeinen wrote:
From 849c07b1fd3d9f23e8ed94436b6221f8652462c0 Mon Sep 17 00:00:00 2001
From: Tomi Valkeinen <redacted>
Date: Mon, 19 Mar 2012 15:05:02 +0200
Subject: [PATCH] OMAPDSS: register dss drivers in module init

We do the dss driver registration in a rather strange way: we have the
higher level omapdss driver, and we use that driver's probe function to
register the drivers for the rest of the dss devices.

There doesn't seem to be any reason for that, and additionally the
soon-to-be-merged patch "ARM: OMAP: omap_device: remove
omap_device_parent" will break omapdss initialization with the current
registration model.

This patch changes the registration for all drivers to happen at the
same place, in the init of the module.

Signed-off-by: Tomi Valkeinen <redacted>
Applied.


Thanks,

Florian Tobias Schandinat
quoted hunk
---
 drivers/video/omap2/dss/core.c |  135 +++++++++++++++++++++++-----------------
 1 files changed, 77 insertions(+), 58 deletions(-)
diff --git a/drivers/video/omap2/dss/core.c b/drivers/video/omap2/dss/core.c
index 8613f86..e8a1207 100644
--- a/drivers/video/omap2/dss/core.c
+++ b/drivers/video/omap2/dss/core.c
@@ -183,42 +183,6 @@ static int omap_dss_probe(struct platform_device *pdev)
 	dss_init_overlay_managers(pdev);
 	dss_init_overlays(pdev);
 
-	r = dss_init_platform_driver();
-	if (r) {
-		DSSERR("Failed to initialize DSS platform driver\n");
-		goto err_dss;
-	}
-
-	r = dispc_init_platform_driver();
-	if (r) {
-		DSSERR("Failed to initialize dispc platform driver\n");
-		goto err_dispc;
-	}
-
-	r = rfbi_init_platform_driver();
-	if (r) {
-		DSSERR("Failed to initialize rfbi platform driver\n");
-		goto err_rfbi;
-	}
-
-	r = venc_init_platform_driver();
-	if (r) {
-		DSSERR("Failed to initialize venc platform driver\n");
-		goto err_venc;
-	}
-
-	r = dsi_init_platform_driver();
-	if (r) {
-		DSSERR("Failed to initialize DSI platform driver\n");
-		goto err_dsi;
-	}
-
-	r = hdmi_init_platform_driver();
-	if (r) {
-		DSSERR("Failed to initialize hdmi\n");
-		goto err_hdmi;
-	}
-
 	r = dss_initialize_debugfs();
 	if (r)
 		goto err_debugfs;
@@ -246,18 +210,6 @@ static int omap_dss_probe(struct platform_device *pdev)
 err_register:
 	dss_uninitialize_debugfs();
 err_debugfs:
-	hdmi_uninit_platform_driver();
-err_hdmi:
-	dsi_uninit_platform_driver();
-err_dsi:
-	venc_uninit_platform_driver();
-err_venc:
-	dispc_uninit_platform_driver();
-err_dispc:
-	rfbi_uninit_platform_driver();
-err_rfbi:
-	dss_uninit_platform_driver();
-err_dss:
 
 	return r;
 }
@@ -269,13 +221,6 @@ static int omap_dss_remove(struct platform_device *pdev)
 
 	dss_uninitialize_debugfs();
 
-	hdmi_uninit_platform_driver();
-	dsi_uninit_platform_driver();
-	venc_uninit_platform_driver();
-	rfbi_uninit_platform_driver();
-	dispc_uninit_platform_driver();
-	dss_uninit_platform_driver();
-
 	dss_uninit_overlays(pdev);
 	dss_uninit_overlay_managers(pdev);
 
@@ -525,6 +470,80 @@ static int omap_dss_bus_register(void)
 
 /* INIT */
 
+static int __init omap_dss_register_drivers(void)
+{
+	int r;
+
+	r = platform_driver_register(&omap_dss_driver);
+	if (r)
+		return r;
+
+	r = dss_init_platform_driver();
+	if (r) {
+		DSSERR("Failed to initialize DSS platform driver\n");
+		goto err_dss;
+	}
+
+	r = dispc_init_platform_driver();
+	if (r) {
+		DSSERR("Failed to initialize dispc platform driver\n");
+		goto err_dispc;
+	}
+
+	r = rfbi_init_platform_driver();
+	if (r) {
+		DSSERR("Failed to initialize rfbi platform driver\n");
+		goto err_rfbi;
+	}
+
+	r = venc_init_platform_driver();
+	if (r) {
+		DSSERR("Failed to initialize venc platform driver\n");
+		goto err_venc;
+	}
+
+	r = dsi_init_platform_driver();
+	if (r) {
+		DSSERR("Failed to initialize DSI platform driver\n");
+		goto err_dsi;
+	}
+
+	r = hdmi_init_platform_driver();
+	if (r) {
+		DSSERR("Failed to initialize hdmi\n");
+		goto err_hdmi;
+	}
+
+	return 0;
+
+err_hdmi:
+	dsi_uninit_platform_driver();
+err_dsi:
+	venc_uninit_platform_driver();
+err_venc:
+	rfbi_uninit_platform_driver();
+err_rfbi:
+	dispc_uninit_platform_driver();
+err_dispc:
+	dss_uninit_platform_driver();
+err_dss:
+	platform_driver_unregister(&omap_dss_driver);
+
+	return r;
+}
+
+static void __exit omap_dss_unregister_drivers(void)
+{
+	hdmi_uninit_platform_driver();
+	dsi_uninit_platform_driver();
+	venc_uninit_platform_driver();
+	rfbi_uninit_platform_driver();
+	dispc_uninit_platform_driver();
+	dss_uninit_platform_driver();
+
+	platform_driver_unregister(&omap_dss_driver);
+}
+
 #ifdef CONFIG_OMAP2_DSS_MODULE
 static void omap_dss_bus_unregister(void)
 {
@@ -541,7 +560,7 @@ static int __init omap_dss_init(void)
 	if (r)
 		return r;
 
-	r = platform_driver_register(&omap_dss_driver);
+	r = omap_dss_register_drivers();
 	if (r) {
 		omap_dss_bus_unregister();
 		return r;
@@ -562,7 +581,7 @@ static void __exit omap_dss_exit(void)
 		core.vdds_sdi_reg = NULL;
 	}
 
-	platform_driver_unregister(&omap_dss_driver);
+	omap_dss_unregister_drivers();
 
 	omap_dss_bus_unregister();
 }
@@ -577,7 +596,7 @@ static int __init omap_dss_init(void)
 
 static int __init omap_dss_init2(void)
 {
-	return platform_driver_register(&omap_dss_driver);
+	return omap_dss_register_drivers();
 }
 
 core_initcall(omap_dss_init);

Re: [GIT PULL] OMAP DSS for v3.4

From: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
Date: 2012-03-22 15:51:28

Arnd,

On 03/19/2012 04:24 PM, Arnd Bergmann wrote:
I've looked at the specific conflicts again, and it seems that the only
conflicting commit in arm-soc is 2e3ee9f45b "ARM: OMAP1: Move most of
plat/io.h into local iomap.h". I'm planning to send that one very early,
as soon as Russell has his first set up patches merged, so I don't
actually have to resolve the conflict here unless Florian is also
there early.
just for your info, I am going to send my pull request today. As I
didn't find any pull request from you until now, I didn't pull any of
the branches below.


Best regards,

Florian Tobias Schandinat
Florian, if I end up being faster than you, feel free to pull the
omap/cleanup branch from git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc.git
if you want to get a conflict resolution using the minimum set of patches
from upstream. Alternatively, pulling "cleanup" from 
git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap should give you
the same.

	Arnd
--
To unsubscribe from this list: send the line "unsubscribe linux-fbdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Re: [GIT PULL] OMAP DSS for v3.4

From: Arnd Bergmann <arnd@arndb.de>
Date: 2012-03-22 15:58:33

On Thursday 22 March 2012, Florian Tobias Schandinat wrote:
On 03/19/2012 04:24 PM, Arnd Bergmann wrote:
quoted
I've looked at the specific conflicts again, and it seems that the only
conflicting commit in arm-soc is 2e3ee9f45b "ARM: OMAP1: Move most of
plat/io.h into local iomap.h". I'm planning to send that one very early,
as soon as Russell has his first set up patches merged, so I don't
actually have to resolve the conflict here unless Florian is also
there early.
just for your info, I am going to send my pull request today. As I
didn't find any pull request from you until now, I didn't pull any of
the branches below.
Ok, thanks for the notification. I'm still waiting for Russell to go
first, so I'll pull in your branch.

	Arnd
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help