diff mbox

[U-Boot,V4,4/4] EXYNOS5: Add support for FIMD and DP

Message ID 1356086122-4489-5-git-send-email-ajaykumar.rs@samsung.com
State Changes Requested
Delegated to: Minkyu Kang
Headers show

Commit Message

Ajay Kumar Dec. 21, 2012, 10:35 a.m. UTC
Add panel_info structure required by LCD driver
and DP panel platdata for SMDK5250.
Add GPIO configuration for LCD.
Enable FIMD and DP support on SMDK5250.
DP Panel size: 2560x1600.
We use 16BPP resolution to get LCD console.

Signed-off-by: Ajay Kumar <ajaykumar.rs@samsung.com>
Acked-by: Simon Glass <sjg@chomium.org>
---
 board/samsung/smdk5250/smdk5250.c |   97 +++++++++++++++++++++++++++++++++++++
 include/configs/smdk5250.h        |    8 +++
 2 files changed, 105 insertions(+), 0 deletions(-)

Comments

Rajeshwari Birje Dec. 21, 2012, 11:47 a.m. UTC | #1
Hi Ajay

On Fri, Dec 21, 2012 at 4:05 PM, Ajay Kumar <ajaykumar.rs@samsung.com>wrote:

> Add panel_info structure required by LCD driver
> and DP panel platdata for SMDK5250.
> Add GPIO configuration for LCD.
> Enable FIMD and DP support on SMDK5250.
> DP Panel size: 2560x1600.
> We use 16BPP resolution to get LCD console.
>
> Signed-off-by: Ajay Kumar <ajaykumar.rs@samsung.com>
> Acked-by: Simon Glass <sjg@chomium.org>
> ---
>  board/samsung/smdk5250/smdk5250.c |   97
> +++++++++++++++++++++++++++++++++++++
>  include/configs/smdk5250.h        |    8 +++
>  2 files changed, 105 insertions(+), 0 deletions(-)
>
> diff --git a/board/samsung/smdk5250/smdk5250.c
> b/board/samsung/smdk5250/smdk5250.c
> index 4c50342..46fd2a5 100644
> --- a/board/samsung/smdk5250/smdk5250.c
> +++ b/board/samsung/smdk5250/smdk5250.c
> @@ -24,12 +24,15 @@
>  #include <asm/io.h>
>  #include <i2c.h>
>  #include <netdev.h>
> +#include <lcd.h>
>  #include <spi.h>
>  #include <asm/arch/cpu.h>
>  #include <asm/arch/gpio.h>
>  #include <asm/arch/mmc.h>
> +#include <asm/arch/power.h>
>  #include <asm/arch/pinmux.h>
>  #include <asm/arch/sromc.h>
> +#include <asm/arch/dp_info.h>
>  #include <pmic.h>
>
>  DECLARE_GLOBAL_DATA_PTR;
> @@ -181,6 +184,100 @@ static int board_uart_init(void)
>         return 0;
>  }
>
> +void cfg_lcd_gpio(void)
> +{
> +       struct exynos5_gpio_part1 *gpio1 =
> +               (struct exynos5_gpio_part1 *)
> samsung_get_base_gpio_part1();
> +
> +       /* For Backlight */
> +       s5p_gpio_cfg_pin(&gpio1->b2, 0, GPIO_OUTPUT);
> +       s5p_gpio_set_value(&gpio1->b2, 0, 1);
> +
> +       /* LCD power on */
> +       s5p_gpio_cfg_pin(&gpio1->x1, 5, GPIO_OUTPUT);
> +       s5p_gpio_set_value(&gpio1->x1, 5, 1);
> +
> +       /* Set Hotplug detect for DP */
> +       s5p_gpio_cfg_pin(&gpio1->x0, 7, GPIO_FUNC(0x3));
> +}
>
Cant this GPIO changes go to pinmux  file?

> +
> +vidinfo_t panel_info = {
> +       .vl_freq        = 60,
> +       .vl_col         = 2560,
> +       .vl_row         = 1600,
> +       .vl_width       = 2560,
> +       .vl_height      = 1600,
> +       .vl_clkp        = CONFIG_SYS_LOW,
> +       .vl_hsp         = CONFIG_SYS_LOW,
> +       .vl_vsp         = CONFIG_SYS_LOW,
> +       .vl_dp          = CONFIG_SYS_LOW,
> +       .vl_bpix        = 4,    /* LCD_BPP = 2^4, for output conosle on
> LCD */
> +
> +       /* wDP panel timing infomation */
> +       .vl_hspw        = 32,
> +       .vl_hbpd        = 80,
> +       .vl_hfpd        = 48,
> +
> +       .vl_vspw        = 6,
> +       .vl_vbpd        = 37,
> +       .vl_vfpd        = 3,
> +       .vl_cmd_allow_len = 0xf,
> +
> +       .win_id         = 3,
> +       .cfg_gpio       = cfg_lcd_gpio,
> +       .backlight_on   = NULL,
> +       .lcd_power_on   = NULL,
> +       .reset_lcd      = NULL,
> +       .dual_lcd_enabled = 0,
> +
> +       .init_delay     = 0,
> +       .power_on_delay = 0,
> +       .reset_delay    = 0,
> +       .interface_mode = FIMD_RGB_INTERFACE,
> +       .dp_enabled     = 1,
> +};
> +
> +static struct edp_device_info edp_info = {
> +       .disp_info = {
> +               .h_res = 2560,
> +               .h_sync_width = 32,
> +               .h_back_porch = 80,
> +               .h_front_porch = 48,
> +               .v_res = 1600,
> +               .v_sync_width  = 6,
> +               .v_back_porch = 37,
> +               .v_front_porch = 3,
> +               .v_sync_rate = 60,
> +       },
> +       .lt_info = {
> +               .lt_status = DP_LT_NONE,
> +       },
> +       .video_info = {
> +               .master_mode = 0,
> +               .bist_mode = DP_DISABLE,
> +               .bist_pattern = NO_PATTERN,
> +               .h_sync_polarity = 0,
> +               .v_sync_polarity = 0,
> +               .interlaced = 0,
> +               .color_space = COLOR_RGB,
> +               .dynamic_range = VESA,
> +               .ycbcr_coeff = COLOR_YCBCR601,
> +               .color_depth = COLOR_8,
> +       },
> +};
> +
> +static struct exynos_dp_platform_data dp_platform_data = {
> +       .phy_enable     = set_dp_phy_ctrl,
> +       .edp_dev_info   = &edp_info,
> +};
> +
> +void init_panel_info(vidinfo_t *vid)
> +{
> +       vid->rgb_mode   = MODE_RGB_P,
> +
> +       exynos_set_dp_platform_data(&dp_platform_data);
> +}
> +
>  #ifdef CONFIG_SYS_I2C_INIT_BOARD
>  static int board_i2c_init(void)
>  {
> diff --git a/include/configs/smdk5250.h b/include/configs/smdk5250.h
> index e412da8..a9b3b8b 100644
> --- a/include/configs/smdk5250.h
> +++ b/include/configs/smdk5250.h
> @@ -256,6 +256,14 @@
>  #define CONFIG_SOUND_WM8994
>  #endif
>
> +/* Display */
> +#define CONFIG_LCD
> +#define CONFIG_EXYNOS_FB
> +#define CONFIG_EXYNOS_DP
> +#define LCD_XRES                       2560
> +#define LCD_YRES                       1600
> +#define LCD_BPP                        LCD_COLOR16
> +
>  /* Enable devicetree support */
>  #define CONFIG_OF_LIBFDT
>
> --
> 1.7.1
>
> _______________________________________________
> U-Boot mailing list
> U-Boot@lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot
>
Kyungmin Park Dec. 21, 2012, 11:58 a.m. UTC | #2
On Friday, December 21, 2012, Rajeshwari Birje wrote:

> Hi Ajay
>
> On Fri, Dec 21, 2012 at 4:05 PM, Ajay Kumar <ajaykumar.rs@samsung.com<javascript:;>
> >wrote:
>
> > Add panel_info structure required by LCD driver
> > and DP panel platdata for SMDK5250.
> > Add GPIO configuration for LCD.
> > Enable FIMD and DP support on SMDK5250.
> > DP Panel size: 2560x1600.
> > We use 16BPP resolution to get LCD console.
> >
> > Signed-off-by: Ajay Kumar <ajaykumar.rs@samsung.com <javascript:;>>
> > Acked-by: Simon Glass <sjg@chomium.org <javascript:;>>
> > ---
> >  board/samsung/smdk5250/smdk5250.c |   97
> > +++++++++++++++++++++++++++++++++++++
> >  include/configs/smdk5250.h        |    8 +++
> >  2 files changed, 105 insertions(+), 0 deletions(-)
> >
> > diff --git a/board/samsung/smdk5250/smdk5250.c
> > b/board/samsung/smdk5250/smdk5250.c
> > index 4c50342..46fd2a5 100644
> > --- a/board/samsung/smdk5250/smdk5250.c
> > +++ b/board/samsung/smdk5250/smdk5250.c
> > @@ -24,12 +24,15 @@
> >  #include <asm/io.h>
> >  #include <i2c.h>
> >  #include <netdev.h>
> > +#include <lcd.h>
> >  #include <spi.h>
> >  #include <asm/arch/cpu.h>
> >  #include <asm/arch/gpio.h>
> >  #include <asm/arch/mmc.h>
> > +#include <asm/arch/power.h>
> >  #include <asm/arch/pinmux.h>
> >  #include <asm/arch/sromc.h>
> > +#include <asm/arch/dp_info.h>
> >  #include <pmic.h>
> >
> >  DECLARE_GLOBAL_DATA_PTR;
> > @@ -181,6 +184,100 @@ static int board_uart_init(void)
> >         return 0;
> >  }
> >
> > +void cfg_lcd_gpio(void)
> > +{
> > +       struct exynos5_gpio_part1 *gpio1 =
> > +               (struct exynos5_gpio_part1 *)
> > samsung_get_base_gpio_part1();
> > +
> > +       /* For Backlight */
> > +       s5p_gpio_cfg_pin(&gpio1->b2, 0, GPIO_OUTPUT);
> > +       s5p_gpio_set_value(&gpio1->b2, 0, 1);
> > +
> > +       /* LCD power on */
> > +       s5p_gpio_cfg_pin(&gpio1->x1, 5, GPIO_OUTPUT);
> > +       s5p_gpio_set_value(&gpio1->x1, 5, 1);
> > +
> > +       /* Set Hotplug detect for DP */
> > +       s5p_gpio_cfg_pin(&gpio1->x0, 7, GPIO_FUNC(0x3));
> > +}
> >
> Cant this GPIO changes go to pinmux  file?
>
>
> No it's smdk5250 specific. Other board has different GPIOs.

Thank you,



Kyungmin Park

> > +
> > +vidinfo_t panel_info = {
> > +       .vl_freq        = 60,
> > +       .vl_col         = 2560,
> > +       .vl_row         = 1600,
> > +       .vl_width       = 2560,
> > +       .vl_height      = 1600,
> > +       .vl_clkp        = CONFIG_SYS_LOW,
> > +       .vl_hsp         = CONFIG_SYS_LOW,
> > +       .vl_vsp         = CONFIG_SYS_LOW,
> > +       .vl_dp          = CONFIG_SYS_LOW,
> > +       .vl_bpix        = 4,    /* LCD_BPP = 2^4, for output conosle on
> > LCD */
> > +
> > +       /* wDP panel timing infomation */
> > +       .vl_hspw        = 32,
> > +       .vl_hbpd        = 80,
> > +       .vl_hfpd        = 48,
> > +
> > +       .vl_vspw        = 6,
> > +       .vl_vbpd        = 37,
> > +       .vl_vfpd        = 3,
> > +       .vl_cmd_allow_len = 0xf,
> > +
> > +       .win_id         = 3,
> > +       .cfg_gpio       = cfg_lcd_gpio,
> > +       .backlight_on   = NULL,
> > +       .lcd_power_on   = NULL,
> > +       .reset_lcd      = NULL,
> > +       .dual_lcd_enabled = 0,
> > +
> > +       .init_delay     = 0,
> > +       .power_on_delay = 0,
> > +       .reset_delay    = 0,
> > +       .interface_mode = FIMD_RGB_INTERFACE,
> > +       .dp_enabled     = 1,
> > +};
> > +
> > +static struct edp_device_info edp_info = {
> > +       .disp_info = {
> > +               .h_res = 2560,
> > +               .h_sync_width = 32,
> > +               .h_back_porch = 80,
> > +               .h_front_porch = 48,
> > +               .v_res = 1600,
> > +               .v_sync_width  = 6,
> > +               .v_back_porch = 37,
> > +               .v_front_porch = 3,
> > +               .v_sync_rate = 60,
> > +       },
> > +       .lt_info = {
> > +               .lt_status = DP_LT_NONE,
> > +       },
> > +       .video_info = {
> > +               .master_mode = 0,
> > +               .bist_mode = DP_DISABLE,
> > +               .bist_pattern = NO_PATTERN,
> > +               .h_sync_polarity = 0,
> > +               .v_sync_polarity = 0,
> > +               .interlaced = 0,
> > +               .color_space = COLOR_RGB,
> > +               .dynamic_range = VESA,
> > +               .ycbcr_coeff = COLOR_YCBCR601,
> > +               .color_depth = COLOR_8,
> > +       },
> > +};
> > +
> > +static struct exynos_dp_platform_data dp_platform_data = {
> > +       .phy_enable     = set_dp_phy_ctrl,
> > +       .edp_dev_info   = &edp_info,
> > +};
> > +
> > +void init_panel_info(vidinfo_t *vid)
> > +{
> > +       vid->rgb_mode   = MODE_RGB_P,
> > +
> > +       exynos_set_dp_platform_data(&dp_platform_data);
> > +}
> > +
> >  #ifdef CONFIG_SYS_I2C_INIT_BOARD
> >  static int board_i2c_init(void)
> >  {
> > diff --git a/include/configs/smdk5250.h b/include/configs/smdk5250.h
> > index e412da8..a9b3b8b 100644
> > --- a/inc--
> Regards,
> Rajeshwari Shinde
>
Minkyu Kang Dec. 21, 2012, 12:05 p.m. UTC | #3
Dear Rajeshwari,

On 21/12/12 20:47, Rajeshwari Birje wrote:
> Hi Ajay
> 
> On Fri, Dec 21, 2012 at 4:05 PM, Ajay Kumar <ajaykumar.rs@samsung.com>wrote:
> 
>> Add panel_info structure required by LCD driver
>> and DP panel platdata for SMDK5250.
>> Add GPIO configuration for LCD.
>> Enable FIMD and DP support on SMDK5250.
>> DP Panel size: 2560x1600.
>> We use 16BPP resolution to get LCD console.
>>
>> Signed-off-by: Ajay Kumar <ajaykumar.rs@samsung.com>
>> Acked-by: Simon Glass <sjg@chomium.org>
>> ---
>>  board/samsung/smdk5250/smdk5250.c |   97
>> +++++++++++++++++++++++++++++++++++++
>>  include/configs/smdk5250.h        |    8 +++
>>  2 files changed, 105 insertions(+), 0 deletions(-)
>>
>> diff --git a/board/samsung/smdk5250/smdk5250.c
>> b/board/samsung/smdk5250/smdk5250.c
>> index 4c50342..46fd2a5 100644
>> --- a/board/samsung/smdk5250/smdk5250.c
>> +++ b/board/samsung/smdk5250/smdk5250.c
>> @@ -24,12 +24,15 @@
>>  #include <asm/io.h>
>>  #include <i2c.h>
>>  #include <netdev.h>
>> +#include <lcd.h>
>>  #include <spi.h>
>>  #include <asm/arch/cpu.h>
>>  #include <asm/arch/gpio.h>
>>  #include <asm/arch/mmc.h>
>> +#include <asm/arch/power.h>
>>  #include <asm/arch/pinmux.h>
>>  #include <asm/arch/sromc.h>
>> +#include <asm/arch/dp_info.h>
>>  #include <pmic.h>
>>
>>  DECLARE_GLOBAL_DATA_PTR;
>> @@ -181,6 +184,100 @@ static int board_uart_init(void)
>>         return 0;
>>  }
>>
>> +void cfg_lcd_gpio(void)
>> +{
>> +       struct exynos5_gpio_part1 *gpio1 =
>> +               (struct exynos5_gpio_part1 *)
>> samsung_get_base_gpio_part1();
>> +
>> +       /* For Backlight */
>> +       s5p_gpio_cfg_pin(&gpio1->b2, 0, GPIO_OUTPUT);
>> +       s5p_gpio_set_value(&gpio1->b2, 0, 1);
>> +
>> +       /* LCD power on */
>> +       s5p_gpio_cfg_pin(&gpio1->x1, 5, GPIO_OUTPUT);
>> +       s5p_gpio_set_value(&gpio1->x1, 5, 1);
>> +
>> +       /* Set Hotplug detect for DP */
>> +       s5p_gpio_cfg_pin(&gpio1->x0, 7, GPIO_FUNC(0x3));
>> +}
>>
> Cant this GPIO changes go to pinmux  file?
> 

No. It is a board specific feature.
So, can't be located in pinmux file.

Thanks.
Minkyu Kang.
Rajeshwari Birje Dec. 21, 2012, 12:12 p.m. UTC | #4
Hi Minkyu,

Thank you for clarification.

On Fri, Dec 21, 2012 at 5:35 PM, Minkyu Kang <mk7.kang@samsung.com> wrote:

> Dear Rajeshwari,
>
> On 21/12/12 20:47, Rajeshwari Birje wrote:
> > Hi Ajay
> >
> > On Fri, Dec 21, 2012 at 4:05 PM, Ajay Kumar <ajaykumar.rs@samsung.com
> >wrote:
> >
> >> Add panel_info structure required by LCD driver
> >> and DP panel platdata for SMDK5250.
> >> Add GPIO configuration for LCD.
> >> Enable FIMD and DP support on SMDK5250.
> >> DP Panel size: 2560x1600.
> >> We use 16BPP resolution to get LCD console.
> >>
> >> Signed-off-by: Ajay Kumar <ajaykumar.rs@samsung.com>
> >> Acked-by: Simon Glass <sjg@chomium.org>
> >> ---
> >>  board/samsung/smdk5250/smdk5250.c |   97
> >> +++++++++++++++++++++++++++++++++++++
> >>  include/configs/smdk5250.h        |    8 +++
> >>  2 files changed, 105 insertions(+), 0 deletions(-)
> >>
> >> diff --git a/board/samsung/smdk5250/smdk5250.c
> >> b/board/samsung/smdk5250/smdk5250.c
> >> index 4c50342..46fd2a5 100644
> >> --- a/board/samsung/smdk5250/smdk5250.c
> >> +++ b/board/samsung/smdk5250/smdk5250.c
> >> @@ -24,12 +24,15 @@
> >>  #include <asm/io.h>
> >>  #include <i2c.h>
> >>  #include <netdev.h>
> >> +#include <lcd.h>
> >>  #include <spi.h>
> >>  #include <asm/arch/cpu.h>
> >>  #include <asm/arch/gpio.h>
> >>  #include <asm/arch/mmc.h>
> >> +#include <asm/arch/power.h>
> >>  #include <asm/arch/pinmux.h>
> >>  #include <asm/arch/sromc.h>
> >> +#include <asm/arch/dp_info.h>
> >>  #include <pmic.h>
> >>
> >>  DECLARE_GLOBAL_DATA_PTR;
> >> @@ -181,6 +184,100 @@ static int board_uart_init(void)
> >>         return 0;
> >>  }
> >>
> >> +void cfg_lcd_gpio(void)
> >> +{
> >> +       struct exynos5_gpio_part1 *gpio1 =
> >> +               (struct exynos5_gpio_part1 *)
> >> samsung_get_base_gpio_part1();
> >> +
> >> +       /* For Backlight */
> >> +       s5p_gpio_cfg_pin(&gpio1->b2, 0, GPIO_OUTPUT);
> >> +       s5p_gpio_set_value(&gpio1->b2, 0, 1);
> >> +
> >> +       /* LCD power on */
> >> +       s5p_gpio_cfg_pin(&gpio1->x1, 5, GPIO_OUTPUT);
> >> +       s5p_gpio_set_value(&gpio1->x1, 5, 1);
> >> +
> >> +       /* Set Hotplug detect for DP */
> >> +       s5p_gpio_cfg_pin(&gpio1->x0, 7, GPIO_FUNC(0x3));
> >> +}
> >>
> > Cant this GPIO changes go to pinmux  file?
> >
>
> No. It is a board specific feature.
> So, can't be located in pinmux file.
>
ok

>
> Thanks.
> Minkyu Kang.
>
Minkyu Kang Jan. 8, 2013, 2:40 a.m. UTC | #5
Dear Ajay,

On 21/12/12 19:35, Ajay Kumar wrote:
> Add panel_info structure required by LCD driver
> and DP panel platdata for SMDK5250.
> Add GPIO configuration for LCD.
> Enable FIMD and DP support on SMDK5250.
> DP Panel size: 2560x1600.
> We use 16BPP resolution to get LCD console.
> 
> Signed-off-by: Ajay Kumar <ajaykumar.rs@samsung.com>
> Acked-by: Simon Glass <sjg@chomium.org>
> ---

Need changelog here.

>  board/samsung/smdk5250/smdk5250.c |   97 +++++++++++++++++++++++++++++++++++++
>  include/configs/smdk5250.h        |    8 +++
>  2 files changed, 105 insertions(+), 0 deletions(-)
> 

Please rebase this patch.

---
Thanks.
Minkyu Kang.
Ajay kumar Jan. 8, 2013, 5:31 a.m. UTC | #6
On Tue, Jan 8, 2013 at 8:10 AM, Minkyu Kang <mk7.kang@samsung.com> wrote:
> Dear Ajay,
>
> On 21/12/12 19:35, Ajay Kumar wrote:
>> Add panel_info structure required by LCD driver
>> and DP panel platdata for SMDK5250.
>> Add GPIO configuration for LCD.
>> Enable FIMD and DP support on SMDK5250.
>> DP Panel size: 2560x1600.
>> We use 16BPP resolution to get LCD console.
>>
>> Signed-off-by: Ajay Kumar <ajaykumar.rs@samsung.com>
>> Acked-by: Simon Glass <sjg@chomium.org>
>> ---
>
> Need changelog here.
>
>>  board/samsung/smdk5250/smdk5250.c |   97 +++++++++++++++++++++++++++++++++++++
>>  include/configs/smdk5250.h        |    8 +++
>>  2 files changed, 105 insertions(+), 0 deletions(-)
>>
>
> Please rebase this patch.
Ok. I will send V5 soon.
> ---
> Thanks.
> Minkyu Kang.

Ajay
> _______________________________________________
> U-Boot mailing list
> U-Boot@lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot
diff mbox

Patch

diff --git a/board/samsung/smdk5250/smdk5250.c b/board/samsung/smdk5250/smdk5250.c
index 4c50342..46fd2a5 100644
--- a/board/samsung/smdk5250/smdk5250.c
+++ b/board/samsung/smdk5250/smdk5250.c
@@ -24,12 +24,15 @@ 
 #include <asm/io.h>
 #include <i2c.h>
 #include <netdev.h>
+#include <lcd.h>
 #include <spi.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/gpio.h>
 #include <asm/arch/mmc.h>
+#include <asm/arch/power.h>
 #include <asm/arch/pinmux.h>
 #include <asm/arch/sromc.h>
+#include <asm/arch/dp_info.h>
 #include <pmic.h>
 
 DECLARE_GLOBAL_DATA_PTR;
@@ -181,6 +184,100 @@  static int board_uart_init(void)
 	return 0;
 }
 
+void cfg_lcd_gpio(void)
+{
+	struct exynos5_gpio_part1 *gpio1 =
+		(struct exynos5_gpio_part1 *) samsung_get_base_gpio_part1();
+
+	/* For Backlight */
+	s5p_gpio_cfg_pin(&gpio1->b2, 0, GPIO_OUTPUT);
+	s5p_gpio_set_value(&gpio1->b2, 0, 1);
+
+	/* LCD power on */
+	s5p_gpio_cfg_pin(&gpio1->x1, 5, GPIO_OUTPUT);
+	s5p_gpio_set_value(&gpio1->x1, 5, 1);
+
+	/* Set Hotplug detect for DP */
+	s5p_gpio_cfg_pin(&gpio1->x0, 7, GPIO_FUNC(0x3));
+}
+
+vidinfo_t panel_info = {
+	.vl_freq	= 60,
+	.vl_col		= 2560,
+	.vl_row		= 1600,
+	.vl_width	= 2560,
+	.vl_height	= 1600,
+	.vl_clkp	= CONFIG_SYS_LOW,
+	.vl_hsp		= CONFIG_SYS_LOW,
+	.vl_vsp		= CONFIG_SYS_LOW,
+	.vl_dp		= CONFIG_SYS_LOW,
+	.vl_bpix	= 4,	/* LCD_BPP = 2^4, for output conosle on LCD */
+
+	/* wDP panel timing infomation */
+	.vl_hspw	= 32,
+	.vl_hbpd	= 80,
+	.vl_hfpd	= 48,
+
+	.vl_vspw	= 6,
+	.vl_vbpd	= 37,
+	.vl_vfpd	= 3,
+	.vl_cmd_allow_len = 0xf,
+
+	.win_id		= 3,
+	.cfg_gpio	= cfg_lcd_gpio,
+	.backlight_on	= NULL,
+	.lcd_power_on	= NULL,
+	.reset_lcd	= NULL,
+	.dual_lcd_enabled = 0,
+
+	.init_delay	= 0,
+	.power_on_delay = 0,
+	.reset_delay	= 0,
+	.interface_mode = FIMD_RGB_INTERFACE,
+	.dp_enabled	= 1,
+};
+
+static struct edp_device_info edp_info = {
+	.disp_info = {
+		.h_res = 2560,
+		.h_sync_width = 32,
+		.h_back_porch = 80,
+		.h_front_porch = 48,
+		.v_res = 1600,
+		.v_sync_width  = 6,
+		.v_back_porch = 37,
+		.v_front_porch = 3,
+		.v_sync_rate = 60,
+	},
+	.lt_info = {
+		.lt_status = DP_LT_NONE,
+	},
+	.video_info = {
+		.master_mode = 0,
+		.bist_mode = DP_DISABLE,
+		.bist_pattern = NO_PATTERN,
+		.h_sync_polarity = 0,
+		.v_sync_polarity = 0,
+		.interlaced = 0,
+		.color_space = COLOR_RGB,
+		.dynamic_range = VESA,
+		.ycbcr_coeff = COLOR_YCBCR601,
+		.color_depth = COLOR_8,
+	},
+};
+
+static struct exynos_dp_platform_data dp_platform_data = {
+	.phy_enable	= set_dp_phy_ctrl,
+	.edp_dev_info	= &edp_info,
+};
+
+void init_panel_info(vidinfo_t *vid)
+{
+	vid->rgb_mode   = MODE_RGB_P,
+
+	exynos_set_dp_platform_data(&dp_platform_data);
+}
+
 #ifdef CONFIG_SYS_I2C_INIT_BOARD
 static int board_i2c_init(void)
 {
diff --git a/include/configs/smdk5250.h b/include/configs/smdk5250.h
index e412da8..a9b3b8b 100644
--- a/include/configs/smdk5250.h
+++ b/include/configs/smdk5250.h
@@ -256,6 +256,14 @@ 
 #define CONFIG_SOUND_WM8994
 #endif
 
+/* Display */
+#define CONFIG_LCD
+#define CONFIG_EXYNOS_FB
+#define CONFIG_EXYNOS_DP
+#define LCD_XRES			2560
+#define LCD_YRES			1600
+#define LCD_BPP			LCD_COLOR16
+
 /* Enable devicetree support */
 #define CONFIG_OF_LIBFDT