Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge tag 'omapdss-for-3.7-rc' of git://gitorious.org/linux-omap-dss2/linux

Pull omapdss fixes from Tomi Valkeinen:
"Here are a few OMAPDSS fixes for the next -rc. I'm sending these
directly to you, and quite late, as the fbdev tree maintainer
(Florian) has been busy with his work and hasn't had time to manage
the fb patches."

* tag 'omapdss-for-3.7-rc' of git://gitorious.org/linux-omap-dss2/linux:
OMAPDSS: do not fail if dpll4_m4_ck is missing
OMAPFB: Fix possible null pointer dereferencing
OMAPDSS: HDMI: fix missing unlock on error in hdmi_dump_regs()
omapdss: dss: Fix clocks on OMAP363x
OMAPDSS: DSI: fix dsi_get_dsidev_from_id()

+26 -11
+11 -2
drivers/video/omap2/dss/dsi.c
··· 365 365 struct omap_dss_output *out; 366 366 enum omap_dss_output_id id; 367 367 368 - id = module == 0 ? OMAP_DSS_OUTPUT_DSI1 : OMAP_DSS_OUTPUT_DSI2; 368 + switch (module) { 369 + case 0: 370 + id = OMAP_DSS_OUTPUT_DSI1; 371 + break; 372 + case 1: 373 + id = OMAP_DSS_OUTPUT_DSI2; 374 + break; 375 + default: 376 + return NULL; 377 + } 369 378 370 379 out = omap_dss_get_output(id); 371 380 372 - return out->pdev; 381 + return out ? out->pdev : NULL; 373 382 } 374 383 375 384 static inline void dsi_write_reg(struct platform_device *dsidev,
+11 -7
drivers/video/omap2/dss/dss.c
··· 697 697 698 698 dss.dss_clk = clk; 699 699 700 - clk = clk_get(NULL, dss.feat->clk_name); 701 - if (IS_ERR(clk)) { 702 - DSSERR("Failed to get %s\n", dss.feat->clk_name); 703 - r = PTR_ERR(clk); 704 - goto err; 700 + if (dss.feat->clk_name) { 701 + clk = clk_get(NULL, dss.feat->clk_name); 702 + if (IS_ERR(clk)) { 703 + DSSERR("Failed to get %s\n", dss.feat->clk_name); 704 + r = PTR_ERR(clk); 705 + goto err; 706 + } 707 + } else { 708 + clk = NULL; 705 709 } 706 710 707 711 dss.dpll4_m4_ck = clk; ··· 809 805 810 806 if (cpu_is_omap24xx()) 811 807 src = &omap24xx_dss_feats; 812 - else if (cpu_is_omap34xx()) 813 - src = &omap34xx_dss_feats; 814 808 else if (cpu_is_omap3630()) 815 809 src = &omap3630_dss_feats; 810 + else if (cpu_is_omap34xx()) 811 + src = &omap34xx_dss_feats; 816 812 else if (cpu_is_omap44xx()) 817 813 src = &omap44xx_dss_feats; 818 814 else if (soc_is_omap54xx())
+3 -1
drivers/video/omap2/dss/hdmi.c
··· 644 644 { 645 645 mutex_lock(&hdmi.lock); 646 646 647 - if (hdmi_runtime_get()) 647 + if (hdmi_runtime_get()) { 648 + mutex_unlock(&hdmi.lock); 648 649 return; 650 + } 649 651 650 652 hdmi.ip_data.ops->dump_wrapper(&hdmi.ip_data, s); 651 653 hdmi.ip_data.ops->dump_pll(&hdmi.ip_data, s);
+1 -1
drivers/video/omap2/omapfb/omapfb-ioctl.c
··· 787 787 788 788 case OMAPFB_WAITFORVSYNC: 789 789 DBG("ioctl WAITFORVSYNC\n"); 790 - if (!display && !display->output && !display->output->manager) { 790 + if (!display || !display->output || !display->output->manager) { 791 791 r = -EINVAL; 792 792 break; 793 793 }