* [GIT PULL] OMAP DSS for v3.4 @ 2012-03-19 11:01 Tomi Valkeinen 2012-03-19 16:24 ` Arnd Bergmann ` (2 more replies) 0 siblings, 3 replies; 7+ messages in thread From: Tomi Valkeinen @ 2012-03-19 11:01 UTC (permalink / raw) To: Florian Tobias Schandinat, Arnd Bergmann; +Cc: linux-omap, linux-fbdev [-- Attachment #1: Type: text/plain, Size: 7590 bytes --] 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 [-- Attachment #2: This is a digitally signed message part --] [-- Type: application/pgp-signature, Size: 836 bytes --] ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [GIT PULL] OMAP DSS for v3.4 2012-03-19 11:01 [GIT PULL] OMAP DSS for v3.4 Tomi Valkeinen @ 2012-03-19 16:24 ` Arnd Bergmann 2012-03-22 15:51 ` Florian Tobias Schandinat 2012-03-21 12:39 ` Tomi Valkeinen 2012-03-21 18:45 ` Florian Tobias Schandinat 2 siblings, 1 reply; 7+ messages in thread From: Arnd Bergmann @ 2012-03-19 16:24 UTC (permalink / raw) To: Tomi Valkeinen; +Cc: Florian Tobias Schandinat, linux-omap, linux-fbdev 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&m\x133214966902577&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 ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [GIT PULL] OMAP DSS for v3.4 2012-03-19 16:24 ` Arnd Bergmann @ 2012-03-22 15:51 ` Florian Tobias Schandinat 2012-03-22 15:58 ` Arnd Bergmann 0 siblings, 1 reply; 7+ messages in thread From: Florian Tobias Schandinat @ 2012-03-22 15:51 UTC (permalink / raw) To: Arnd Bergmann; +Cc: Tomi Valkeinen, linux-omap, linux-fbdev 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 > ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [GIT PULL] OMAP DSS for v3.4 2012-03-22 15:51 ` Florian Tobias Schandinat @ 2012-03-22 15:58 ` Arnd Bergmann 0 siblings, 0 replies; 7+ messages in thread From: Arnd Bergmann @ 2012-03-22 15:58 UTC (permalink / raw) To: Florian Tobias Schandinat; +Cc: Tomi Valkeinen, linux-omap, linux-fbdev On Thursday 22 March 2012, Florian Tobias Schandinat wrote: > 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. Ok, thanks for the notification. I'm still waiting for Russell to go first, so I'll pull in your branch. Arnd ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [GIT PULL] OMAP DSS for v3.4 2012-03-19 11:01 [GIT PULL] OMAP DSS for v3.4 Tomi Valkeinen 2012-03-19 16:24 ` Arnd Bergmann @ 2012-03-21 12:39 ` Tomi Valkeinen 2012-03-21 18:48 ` Florian Tobias Schandinat 2012-03-21 18:45 ` Florian Tobias Schandinat 2 siblings, 1 reply; 7+ messages in thread From: Tomi Valkeinen @ 2012-03-21 12:39 UTC (permalink / raw) To: Florian Tobias Schandinat; +Cc: Arnd Bergmann, linux-omap, linux-fbdev [-- Attachment #1: Type: text/plain, Size: 6583 bytes --] 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 <tomi.valkeinen@ti.com> 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 <tomi.valkeinen@ti.com> --- 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 [-- Attachment #2: This is a digitally signed message part --] [-- Type: application/pgp-signature, Size: 836 bytes --] ^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [GIT PULL] OMAP DSS for v3.4 2012-03-21 12:39 ` Tomi Valkeinen @ 2012-03-21 18:48 ` Florian Tobias Schandinat 0 siblings, 0 replies; 7+ messages in thread From: Florian Tobias Schandinat @ 2012-03-21 18:48 UTC (permalink / raw) To: Tomi Valkeinen; +Cc: Arnd Bergmann, linux-omap, linux-fbdev On 03/21/2012 12:39 PM, Tomi Valkeinen wrote: > From 849c07b1fd3d9f23e8ed94436b6221f8652462c0 Mon Sep 17 00:00:00 2001 > From: Tomi Valkeinen <tomi.valkeinen@ti.com> > 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 <tomi.valkeinen@ti.com> Applied. Thanks, Florian Tobias Schandinat > --- > 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); ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [GIT PULL] OMAP DSS for v3.4 2012-03-19 11:01 [GIT PULL] OMAP DSS for v3.4 Tomi Valkeinen 2012-03-19 16:24 ` Arnd Bergmann 2012-03-21 12:39 ` Tomi Valkeinen @ 2012-03-21 18:45 ` Florian Tobias Schandinat 2 siblings, 0 replies; 7+ messages in thread From: Florian Tobias Schandinat @ 2012-03-21 18:45 UTC (permalink / raw) To: Tomi Valkeinen; +Cc: Arnd Bergmann, linux-omap, linux-fbdev 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&m\x133214966902577&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 > ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2012-03-22 15:58 UTC | newest] Thread overview: 7+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2012-03-19 11:01 [GIT PULL] OMAP DSS for v3.4 Tomi Valkeinen 2012-03-19 16:24 ` Arnd Bergmann 2012-03-22 15:51 ` Florian Tobias Schandinat 2012-03-22 15:58 ` Arnd Bergmann 2012-03-21 12:39 ` Tomi Valkeinen 2012-03-21 18:48 ` Florian Tobias Schandinat 2012-03-21 18:45 ` Florian Tobias Schandinat
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).