diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2012-10-11 21:21:02 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-10-11 21:21:02 -0400 |
commit | 5f76945a9c978b8b8bf8eb7fe3b17b9981240a97 (patch) | |
tree | df61aca168df657bc71ce8b578bcb0c81b0622ee /arch/arm/mach-omap2 | |
parent | 940e3a8dd6683a3787faf769b3df7a06f1c2fa31 (diff) | |
parent | cd9d6f10d07f26dd8a70e519c22b6b4f8a9e3e7a (diff) |
Merge tag 'fbdev-updates-for-3.7' of git://github.com/schandinat/linux-2.6
Pull fbdev updates from Florian Tobias Schandinat:
"This includes:
- large updates for OMAP
- basic OMAP5 DSS support for DPI and DSI outputs
- large cleanups and restructuring
- some update to Exynos and da8xx-fb
- removal of the pnx4008 driver (arch removed)
- various other small patches"
Fix up some trivial conflicts (mostly just include line changes, but
also some due to the renaming of the deferred work functions by Tejun).
* tag 'fbdev-updates-for-3.7' of git://github.com/schandinat/linux-2.6: (193 commits)
gbefb: fix compile error
video: mark nuc900fb_map_video_memory as __devinit
video/mx3fb: set .owner to prevent module unloading while being used
video: exynos_dp: use clk_prepare_enable and clk_disable_unprepare
drivers/video/exynos/exynos_mipi_dsi.c: fix error return code
drivers/video/savage/savagefb_driver.c: fix error return code
video: s3c-fb: use clk_prepare_enable and clk_disable_unprepare
da8xx-fb: save and restore LCDC context across suspend/resume cycle
da8xx-fb: add pm_runtime support
video/udlfb: fix line counting in fb_write
OMAPDSS: add missing include for string.h
OMAPDSS: DISPC: Configure color conversion coefficients for writeback
OMAPDSS: DISPC: Add manager like functions for writeback
OMAPDSS: DISPC: Configure writeback FIFOs
OMAPDSS: DISPC: Configure writeback specific parameters in dispc_wb_setup()
OMAPDSS: DISPC: Configure overlay-like parameters in dispc_wb_setup
OMAPDSS: DISPC: Add function to set channel in for writeback
OMAPDSS: DISPC: Don't set chroma resampling bit for writeback
OMAPDSS: DISPC: Downscale chroma if plane is writeback
OMAPDSS: DISPC: Configure input and output sizes for writeback
...
Diffstat (limited to 'arch/arm/mach-omap2')
-rw-r--r-- | arch/arm/mach-omap2/board-4430sdp.c | 73 | ||||
-rw-r--r-- | arch/arm/mach-omap2/board-omap4panda.c | 27 | ||||
-rw-r--r-- | arch/arm/mach-omap2/display.c | 1 | ||||
-rw-r--r-- | arch/arm/mach-omap2/twl-common.c | 6 |
4 files changed, 10 insertions, 97 deletions
diff --git a/arch/arm/mach-omap2/board-4430sdp.c b/arch/arm/mach-omap2/board-4430sdp.c index 5ff28afbefe..3669c120c7e 100644 --- a/arch/arm/mach-omap2/board-4430sdp.c +++ b/arch/arm/mach-omap2/board-4430sdp.c | |||
@@ -607,29 +607,6 @@ static void __init omap_sfh7741prox_init(void) | |||
607 | __func__, OMAP4_SFH7741_ENABLE_GPIO, error); | 607 | __func__, OMAP4_SFH7741_ENABLE_GPIO, error); |
608 | } | 608 | } |
609 | 609 | ||
610 | static struct gpio sdp4430_hdmi_gpios[] = { | ||
611 | { HDMI_GPIO_CT_CP_HPD, GPIOF_OUT_INIT_HIGH, "hdmi_gpio_ct_cp_hpd" }, | ||
612 | { HDMI_GPIO_LS_OE, GPIOF_OUT_INIT_HIGH, "hdmi_gpio_ls_oe" }, | ||
613 | { HDMI_GPIO_HPD, GPIOF_DIR_IN, "hdmi_gpio_hpd" }, | ||
614 | }; | ||
615 | |||
616 | static int sdp4430_panel_enable_hdmi(struct omap_dss_device *dssdev) | ||
617 | { | ||
618 | int status; | ||
619 | |||
620 | status = gpio_request_array(sdp4430_hdmi_gpios, | ||
621 | ARRAY_SIZE(sdp4430_hdmi_gpios)); | ||
622 | if (status) | ||
623 | pr_err("%s: Cannot request HDMI GPIOs\n", __func__); | ||
624 | |||
625 | return status; | ||
626 | } | ||
627 | |||
628 | static void sdp4430_panel_disable_hdmi(struct omap_dss_device *dssdev) | ||
629 | { | ||
630 | gpio_free_array(sdp4430_hdmi_gpios, ARRAY_SIZE(sdp4430_hdmi_gpios)); | ||
631 | } | ||
632 | |||
633 | static struct nokia_dsi_panel_data dsi1_panel = { | 610 | static struct nokia_dsi_panel_data dsi1_panel = { |
634 | .name = "taal", | 611 | .name = "taal", |
635 | .reset_gpio = 102, | 612 | .reset_gpio = 102, |
@@ -650,29 +627,6 @@ static struct omap_dss_device sdp4430_lcd_device = { | |||
650 | .phy.dsi = { | 627 | .phy.dsi = { |
651 | .module = 0, | 628 | .module = 0, |
652 | }, | 629 | }, |
653 | |||
654 | .clocks = { | ||
655 | .dispc = { | ||
656 | .channel = { | ||
657 | /* Logic Clock = 172.8 MHz */ | ||
658 | .lck_div = 1, | ||
659 | /* Pixel Clock = 34.56 MHz */ | ||
660 | .pck_div = 5, | ||
661 | .lcd_clk_src = OMAP_DSS_CLK_SRC_DSI_PLL_HSDIV_DISPC, | ||
662 | }, | ||
663 | .dispc_fclk_src = OMAP_DSS_CLK_SRC_FCK, | ||
664 | }, | ||
665 | |||
666 | .dsi = { | ||
667 | .regn = 16, /* Fint = 2.4 MHz */ | ||
668 | .regm = 180, /* DDR Clock = 216 MHz */ | ||
669 | .regm_dispc = 5, /* PLL1_CLK1 = 172.8 MHz */ | ||
670 | .regm_dsi = 5, /* PLL1_CLK2 = 172.8 MHz */ | ||
671 | |||
672 | .lp_clk_div = 10, /* LP Clock = 8.64 MHz */ | ||
673 | .dsi_fclk_src = OMAP_DSS_CLK_SRC_DSI_PLL_HSDIV_DSI, | ||
674 | }, | ||
675 | }, | ||
676 | .channel = OMAP_DSS_CHANNEL_LCD, | 630 | .channel = OMAP_DSS_CHANNEL_LCD, |
677 | }; | 631 | }; |
678 | 632 | ||
@@ -697,33 +651,12 @@ static struct omap_dss_device sdp4430_lcd2_device = { | |||
697 | 651 | ||
698 | .module = 1, | 652 | .module = 1, |
699 | }, | 653 | }, |
700 | |||
701 | .clocks = { | ||
702 | .dispc = { | ||
703 | .channel = { | ||
704 | /* Logic Clock = 172.8 MHz */ | ||
705 | .lck_div = 1, | ||
706 | /* Pixel Clock = 34.56 MHz */ | ||
707 | .pck_div = 5, | ||
708 | .lcd_clk_src = OMAP_DSS_CLK_SRC_DSI2_PLL_HSDIV_DISPC, | ||
709 | }, | ||
710 | .dispc_fclk_src = OMAP_DSS_CLK_SRC_FCK, | ||
711 | }, | ||
712 | |||
713 | .dsi = { | ||
714 | .regn = 16, /* Fint = 2.4 MHz */ | ||
715 | .regm = 180, /* DDR Clock = 216 MHz */ | ||
716 | .regm_dispc = 5, /* PLL1_CLK1 = 172.8 MHz */ | ||
717 | .regm_dsi = 5, /* PLL1_CLK2 = 172.8 MHz */ | ||
718 | |||
719 | .lp_clk_div = 10, /* LP Clock = 8.64 MHz */ | ||
720 | .dsi_fclk_src = OMAP_DSS_CLK_SRC_DSI2_PLL_HSDIV_DSI, | ||
721 | }, | ||
722 | }, | ||
723 | .channel = OMAP_DSS_CHANNEL_LCD2, | 654 | .channel = OMAP_DSS_CHANNEL_LCD2, |
724 | }; | 655 | }; |
725 | 656 | ||
726 | static struct omap_dss_hdmi_data sdp4430_hdmi_data = { | 657 | static struct omap_dss_hdmi_data sdp4430_hdmi_data = { |
658 | .ct_cp_hpd_gpio = HDMI_GPIO_CT_CP_HPD, | ||
659 | .ls_oe_gpio = HDMI_GPIO_LS_OE, | ||
727 | .hpd_gpio = HDMI_GPIO_HPD, | 660 | .hpd_gpio = HDMI_GPIO_HPD, |
728 | }; | 661 | }; |
729 | 662 | ||
@@ -731,8 +664,6 @@ static struct omap_dss_device sdp4430_hdmi_device = { | |||
731 | .name = "hdmi", | 664 | .name = "hdmi", |
732 | .driver_name = "hdmi_panel", | 665 | .driver_name = "hdmi_panel", |
733 | .type = OMAP_DISPLAY_TYPE_HDMI, | 666 | .type = OMAP_DISPLAY_TYPE_HDMI, |
734 | .platform_enable = sdp4430_panel_enable_hdmi, | ||
735 | .platform_disable = sdp4430_panel_disable_hdmi, | ||
736 | .channel = OMAP_DSS_CHANNEL_DIGIT, | 667 | .channel = OMAP_DSS_CHANNEL_DIGIT, |
737 | .data = &sdp4430_hdmi_data, | 668 | .data = &sdp4430_hdmi_data, |
738 | }; | 669 | }; |
diff --git a/arch/arm/mach-omap2/board-omap4panda.c b/arch/arm/mach-omap2/board-omap4panda.c index f62b903f3ea..bfcd397e233 100644 --- a/arch/arm/mach-omap2/board-omap4panda.c +++ b/arch/arm/mach-omap2/board-omap4panda.c | |||
@@ -428,30 +428,9 @@ static struct omap_dss_device omap4_panda_dvi_device = { | |||
428 | .channel = OMAP_DSS_CHANNEL_LCD2, | 428 | .channel = OMAP_DSS_CHANNEL_LCD2, |
429 | }; | 429 | }; |
430 | 430 | ||
431 | static struct gpio panda_hdmi_gpios[] = { | ||
432 | { HDMI_GPIO_CT_CP_HPD, GPIOF_OUT_INIT_HIGH, "hdmi_gpio_ct_cp_hpd" }, | ||
433 | { HDMI_GPIO_LS_OE, GPIOF_OUT_INIT_HIGH, "hdmi_gpio_ls_oe" }, | ||
434 | { HDMI_GPIO_HPD, GPIOF_DIR_IN, "hdmi_gpio_hpd" }, | ||
435 | }; | ||
436 | |||
437 | static int omap4_panda_panel_enable_hdmi(struct omap_dss_device *dssdev) | ||
438 | { | ||
439 | int status; | ||
440 | |||
441 | status = gpio_request_array(panda_hdmi_gpios, | ||
442 | ARRAY_SIZE(panda_hdmi_gpios)); | ||
443 | if (status) | ||
444 | pr_err("Cannot request HDMI GPIOs\n"); | ||
445 | |||
446 | return status; | ||
447 | } | ||
448 | |||
449 | static void omap4_panda_panel_disable_hdmi(struct omap_dss_device *dssdev) | ||
450 | { | ||
451 | gpio_free_array(panda_hdmi_gpios, ARRAY_SIZE(panda_hdmi_gpios)); | ||
452 | } | ||
453 | |||
454 | static struct omap_dss_hdmi_data omap4_panda_hdmi_data = { | 431 | static struct omap_dss_hdmi_data omap4_panda_hdmi_data = { |
432 | .ct_cp_hpd_gpio = HDMI_GPIO_CT_CP_HPD, | ||
433 | .ls_oe_gpio = HDMI_GPIO_LS_OE, | ||
455 | .hpd_gpio = HDMI_GPIO_HPD, | 434 | .hpd_gpio = HDMI_GPIO_HPD, |
456 | }; | 435 | }; |
457 | 436 | ||
@@ -459,8 +438,6 @@ static struct omap_dss_device omap4_panda_hdmi_device = { | |||
459 | .name = "hdmi", | 438 | .name = "hdmi", |
460 | .driver_name = "hdmi_panel", | 439 | .driver_name = "hdmi_panel", |
461 | .type = OMAP_DISPLAY_TYPE_HDMI, | 440 | .type = OMAP_DISPLAY_TYPE_HDMI, |
462 | .platform_enable = omap4_panda_panel_enable_hdmi, | ||
463 | .platform_disable = omap4_panda_panel_disable_hdmi, | ||
464 | .channel = OMAP_DSS_CHANNEL_DIGIT, | 441 | .channel = OMAP_DSS_CHANNEL_DIGIT, |
465 | .data = &omap4_panda_hdmi_data, | 442 | .data = &omap4_panda_hdmi_data, |
466 | }; | 443 | }; |
diff --git a/arch/arm/mach-omap2/display.c b/arch/arm/mach-omap2/display.c index a51ece491b9..1011995f150 100644 --- a/arch/arm/mach-omap2/display.c +++ b/arch/arm/mach-omap2/display.c | |||
@@ -95,7 +95,6 @@ static const struct omap_dss_hwmod_data omap4_dss_hwmod_data[] __initconst = { | |||
95 | { "dss_core", "omapdss_dss", -1 }, | 95 | { "dss_core", "omapdss_dss", -1 }, |
96 | { "dss_dispc", "omapdss_dispc", -1 }, | 96 | { "dss_dispc", "omapdss_dispc", -1 }, |
97 | { "dss_rfbi", "omapdss_rfbi", -1 }, | 97 | { "dss_rfbi", "omapdss_rfbi", -1 }, |
98 | { "dss_venc", "omapdss_venc", -1 }, | ||
99 | { "dss_dsi1", "omapdss_dsi", 0 }, | 98 | { "dss_dsi1", "omapdss_dsi", 0 }, |
100 | { "dss_dsi2", "omapdss_dsi", 1 }, | 99 | { "dss_dsi2", "omapdss_dsi", 1 }, |
101 | { "dss_hdmi", "omapdss_hdmi", -1 }, | 100 | { "dss_hdmi", "omapdss_hdmi", -1 }, |
diff --git a/arch/arm/mach-omap2/twl-common.c b/arch/arm/mach-omap2/twl-common.c index d83ae4540b9..635e109f5ad 100644 --- a/arch/arm/mach-omap2/twl-common.c +++ b/arch/arm/mach-omap2/twl-common.c | |||
@@ -239,6 +239,10 @@ void __init omap3_pmic_get_config(struct twl4030_platform_data *pmic_data, | |||
239 | static struct twl4030_usb_data omap4_usb_pdata = { | 239 | static struct twl4030_usb_data omap4_usb_pdata = { |
240 | }; | 240 | }; |
241 | 241 | ||
242 | static struct regulator_consumer_supply omap4_vdda_hdmi_dac_supplies[] = { | ||
243 | REGULATOR_SUPPLY("vdda_hdmi_dac", "omapdss_hdmi"), | ||
244 | }; | ||
245 | |||
242 | static struct regulator_init_data omap4_vdac_idata = { | 246 | static struct regulator_init_data omap4_vdac_idata = { |
243 | .constraints = { | 247 | .constraints = { |
244 | .min_uV = 1800000, | 248 | .min_uV = 1800000, |
@@ -248,6 +252,8 @@ static struct regulator_init_data omap4_vdac_idata = { | |||
248 | .valid_ops_mask = REGULATOR_CHANGE_MODE | 252 | .valid_ops_mask = REGULATOR_CHANGE_MODE |
249 | | REGULATOR_CHANGE_STATUS, | 253 | | REGULATOR_CHANGE_STATUS, |
250 | }, | 254 | }, |
255 | .num_consumer_supplies = ARRAY_SIZE(omap4_vdda_hdmi_dac_supplies), | ||
256 | .consumer_supplies = omap4_vdda_hdmi_dac_supplies, | ||
251 | .supply_regulator = "V2V1", | 257 | .supply_regulator = "V2V1", |
252 | }; | 258 | }; |
253 | 259 | ||