Re: linux-next: manual merge of the omap_dss2 tree with the omap tree

From: Grazvydas Ignotas
Date: Wed Feb 03 2010 - 07:29:52 EST


hi,

On Wed, Feb 3, 2010 at 6:29 AM, Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote:
> Hi Tomi,
>
> Today's linux-next merge of the omap_dss2 tree got a conflict in
> arch/arm/mach-omap2/board-omap3pandora.c between commit
> f8b6f704105164eac7c043a48f79c4234e03e4b2 ("omap: Rename hsmmc symbols to
> reflect independence from twl4030") from the omap tree and commit
> aacb4387a1e6f3b57977375532c6d8e47fcd5652 ("OMAP: pandora: add DSS2
> support and related regulators") from the omap_dss2 tree.

I've rebased my patch against linux-omap/for-next (attached). To fix
the conflict, Tomi can rebase his queue on linux-omap/for-next, or
Tony can simply take this to his queue - this has no "hard"
dependencies on other queued DSS2 changes, has only board file changes
and builds fine in linux-omap/for-next. I would prefer the second
option, as I plan sending more boardfile changes to linux-omap.

>
> I fixed it up (see below) and can carry the fix as necessary.
> --
> Cheers,
> Stephen Rothwell                    sfr@xxxxxxxxxxxxxxxx
>
> diff --cc arch/arm/mach-omap2/board-omap3pandora.c
> index 9967b5d,bd3e577..0000000
> --- a/arch/arm/mach-omap2/board-omap3pandora.c
> +++ b/arch/arm/mach-omap2/board-omap3pandora.c
> @@@ -192,7 -193,62 +193,62 @@@ static struct twl4030_keypad_data pando
>        .rep            = 1,
>  };
>
> + static struct omap_dss_device pandora_lcd_device = {
> +       .name                   = "lcd",
> +       .driver_name            = "tpo_td043mtea1_panel",
> +       .type                   = OMAP_DISPLAY_TYPE_DPI,
> +       .phy.dpi.data_lines     = 24,
> +       .reset_gpio             = 157,
> + };
> +
> + static struct omap_dss_device pandora_tv_device = {
> +       .name                   = "tv",
> +       .driver_name            = "venc",
> +       .type                   = OMAP_DISPLAY_TYPE_VENC,
> +       .phy.venc.type          = OMAP_DSS_VENC_TYPE_SVIDEO,
> + };
> +
> + static struct omap_dss_device *pandora_dss_devices[] = {
> +       &pandora_lcd_device,
> +       &pandora_tv_device,
> + };
> +
> + static struct omap_dss_board_info pandora_dss_data = {
> +       .num_devices    = ARRAY_SIZE(pandora_dss_devices),
> +       .devices        = pandora_dss_devices,
> +       .default_device = &pandora_lcd_device,
> + };
> +
> + static struct platform_device pandora_dss_device = {
> +       .name           = "omapdss",
> +       .id             = -1,
> +       .dev            = {
> +               .platform_data = &pandora_dss_data,
> +       },
> + };
> +
> + static struct regulator_consumer_supply pandora_vcc_lcd_supply = {
> +       .supply         = "vcc",
> +       .dev            = &pandora_lcd_device.dev,
> + };
> +
> + static struct regulator_consumer_supply pandora_vdda_dac_supply = {
> +       .supply         = "vdda_dac",
> +       .dev            = &pandora_dss_device.dev,
> + };
> +
> + static struct regulator_consumer_supply pandora_vdds_supplies[] = {
> +       {
> +               .supply         = "vdds_sdi",
> +               .dev            = &pandora_dss_device.dev,
> +       },
> +       {
> +               .supply         = "vdds_dsi",
> +               .dev            = &pandora_dss_device.dev,
> +       },
> + };
> +
>  -static struct twl4030_hsmmc_info omap3pandora_mmc[] = {
>  +static struct omap2_hsmmc_info omap3pandora_mmc[] = {
>        {
>                .mmc            = 1,
>                .wires          = 4,
>
From 6ef850a159b4e57b792d7f84e18c443ef15fe3e5 Mon Sep 17 00:00:00 2001
From: Grazvydas Ignotas <notasas@xxxxxxxxx>
Date: Wed, 13 Jan 2010 22:19:07 +0100
Subject: [PATCH] OMAP: pandora: add DSS2 support and related regulators

This patch adds configuration data for DSS2 and sets up
display related regulators.

Signed-off-by: Grazvydas Ignotas <notasas@xxxxxxxxx>
Acked-by: Tomi Valkeinen <tomi.valkeinen@xxxxxxxxx>
---
arch/arm/mach-omap2/board-omap3pandora.c | 111 ++++++++++++++++++++++++++++++
1 files changed, 111 insertions(+), 0 deletions(-)

diff --git a/arch/arm/mach-omap2/board-omap3pandora.c b/arch/arm/mach-omap2/board-omap3pandora.c
index 9967b5d..7ea3894 100644
--- a/arch/arm/mach-omap2/board-omap3pandora.c
+++ b/arch/arm/mach-omap2/board-omap3pandora.c
@@ -40,6 +40,7 @@
#include <mach/hardware.h>
#include <plat/mcspi.h>
#include <plat/usb.h>
+#include <plat/display.h>

#include "mux.h"
#include "sdram-micron-mt46h32m32lf-6.h"
@@ -192,6 +193,61 @@ static struct twl4030_keypad_data pandora_kp_data = {
.rep = 1,
};

+static struct omap_dss_device pandora_lcd_device = {
+ .name = "lcd",
+ .driver_name = "tpo_td043mtea1_panel",
+ .type = OMAP_DISPLAY_TYPE_DPI,
+ .phy.dpi.data_lines = 24,
+ .reset_gpio = 157,
+};
+
+static struct omap_dss_device pandora_tv_device = {
+ .name = "tv",
+ .driver_name = "venc",
+ .type = OMAP_DISPLAY_TYPE_VENC,
+ .phy.venc.type = OMAP_DSS_VENC_TYPE_SVIDEO,
+};
+
+static struct omap_dss_device *pandora_dss_devices[] = {
+ &pandora_lcd_device,
+ &pandora_tv_device,
+};
+
+static struct omap_dss_board_info pandora_dss_data = {
+ .num_devices = ARRAY_SIZE(pandora_dss_devices),
+ .devices = pandora_dss_devices,
+ .default_device = &pandora_lcd_device,
+};
+
+static struct platform_device pandora_dss_device = {
+ .name = "omapdss",
+ .id = -1,
+ .dev = {
+ .platform_data = &pandora_dss_data,
+ },
+};
+
+static struct regulator_consumer_supply pandora_vcc_lcd_supply = {
+ .supply = "vcc",
+ .dev = &pandora_lcd_device.dev,
+};
+
+static struct regulator_consumer_supply pandora_vdda_dac_supply = {
+ .supply = "vdda_dac",
+ .dev = &pandora_dss_device.dev,
+};
+
+static struct regulator_consumer_supply pandora_vdds_supplies[] = {
+ {
+ .supply = "vdds_sdi",
+ .dev = &pandora_dss_device.dev,
+ },
+ {
+ .supply = "vdds_dsi",
+ .dev = &pandora_dss_device.dev,
+ },
+};
+
static struct omap2_hsmmc_info omap3pandora_mmc[] = {
{
.mmc = 1,
@@ -277,6 +333,51 @@ static struct regulator_init_data pandora_vmmc2 = {
.consumer_supplies = &pandora_vmmc2_supply,
};

+/* VDAC for DSS driving S-Video */
+static struct regulator_init_data pandora_vdac = {
+ .constraints = {
+ .min_uV = 1800000,
+ .max_uV = 1800000,
+ .apply_uV = true,
+ .valid_modes_mask = REGULATOR_MODE_NORMAL
+ | REGULATOR_MODE_STANDBY,
+ .valid_ops_mask = REGULATOR_CHANGE_MODE
+ | REGULATOR_CHANGE_STATUS,
+ },
+ .num_consumer_supplies = 1,
+ .consumer_supplies = &pandora_vdda_dac_supply,
+};
+
+/* VPLL2 for digital video outputs */
+static struct regulator_init_data pandora_vpll2 = {
+ .constraints = {
+ .min_uV = 1800000,
+ .max_uV = 1800000,
+ .apply_uV = true,
+ .valid_modes_mask = REGULATOR_MODE_NORMAL
+ | REGULATOR_MODE_STANDBY,
+ .valid_ops_mask = REGULATOR_CHANGE_MODE
+ | REGULATOR_CHANGE_STATUS,
+ },
+ .num_consumer_supplies = ARRAY_SIZE(pandora_vdds_supplies),
+ .consumer_supplies = pandora_vdds_supplies,
+};
+
+/* VAUX1 for LCD */
+static struct regulator_init_data pandora_vaux1 = {
+ .constraints = {
+ .min_uV = 3000000,
+ .max_uV = 3000000,
+ .apply_uV = true,
+ .valid_modes_mask = REGULATOR_MODE_NORMAL
+ | REGULATOR_MODE_STANDBY,
+ .valid_ops_mask = REGULATOR_CHANGE_MODE
+ | REGULATOR_CHANGE_STATUS,
+ },
+ .num_consumer_supplies = 1,
+ .consumer_supplies = &pandora_vcc_lcd_supply,
+};
+
static struct twl4030_usb_data omap3pandora_usb_data = {
.usb_mode = T2_USB_MODE_ULPI,
};
@@ -298,6 +399,9 @@ static struct twl4030_platform_data omap3pandora_twldata = {
.codec = &omap3pandora_codec_data,
.vmmc1 = &pandora_vmmc1,
.vmmc2 = &pandora_vmmc2,
+ .vdac = &pandora_vdac,
+ .vpll2 = &pandora_vpll2,
+ .vaux1 = &pandora_vaux1,
.keypad = &pandora_kp_data,
};

@@ -365,6 +469,12 @@ static struct spi_board_info omap3pandora_spi_board_info[] __initdata = {
.controller_data = &ads7846_mcspi_config,
.irq = OMAP_GPIO_IRQ(OMAP3_PANDORA_TS_GPIO),
.platform_data = &ads7846_config,
+ }, {
+ .modalias = "tpo_td043mtea1_panel_spi",
+ .bus_num = 1,
+ .chip_select = 1,
+ .max_speed_hz = 375000,
+ .platform_data = &pandora_lcd_device,
}
};

@@ -379,6 +489,7 @@ static void __init omap3pandora_init_irq(void)
static struct platform_device *omap3pandora_devices[] __initdata = {
&pandora_leds_gpio,
&pandora_keys_gpio,
+ &pandora_dss_device,
};

static struct ehci_hcd_omap_platform_data ehci_pdata __initconst = {
--
1.5.6.3