From 384b10491363481fc93a37ca447fae5934b4941c Mon Sep 17 00:00:00 2001 From: Tushar Behera Date: Sat, 21 Apr 2012 08:25:57 -0700 Subject: ARM: EXYNOS: Increase framebuffer virtual size for origen To support display panning, framebuffer virtual size needs to be increased. Signed-off-by: Tushar Behera Signed-off-by: Kukjin Kim --- arch/arm/mach-exynos/mach-origen.c | 2 ++ 1 file changed, 2 insertions(+) (limited to 'arch/arm/mach-exynos/mach-origen.c') diff --git a/arch/arm/mach-exynos/mach-origen.c b/arch/arm/mach-exynos/mach-origen.c index 878d4c99142..4d802129dad 100644 --- a/arch/arm/mach-exynos/mach-origen.c +++ b/arch/arm/mach-exynos/mach-origen.c @@ -596,6 +596,8 @@ static struct s3c_fb_pd_win origen_fb_win0 = { }, .max_bpp = 32, .default_bpp = 24, + .virtual_x = 1024, + .virtual_y = 2 * 600, }; static struct s3c_fb_platdata origen_lcd_pdata __initdata = { -- cgit v1.2.3-70-g09d2 From 023c9ff6b4afdaf280d3fc9f128d7396bd99f3de Mon Sep 17 00:00:00 2001 From: Sachin Kamat Date: Sat, 12 May 2012 16:30:45 +0900 Subject: ARM: EXYNOS: Make BT platform data structure static in mach-origen.c file Adds missing storage class static to origen_bt_pdata structure. Signed-off-by: Sachin Kamat Signed-off-by: Kukjin Kim --- arch/arm/mach-exynos/mach-origen.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'arch/arm/mach-exynos/mach-origen.c') diff --git a/arch/arm/mach-exynos/mach-origen.c b/arch/arm/mach-exynos/mach-origen.c index 4d802129dad..e3d59492515 100644 --- a/arch/arm/mach-exynos/mach-origen.c +++ b/arch/arm/mach-exynos/mach-origen.c @@ -609,7 +609,7 @@ static struct s3c_fb_platdata origen_lcd_pdata __initdata = { }; /* Bluetooth rfkill gpio platform data */ -struct rfkill_gpio_platform_data origen_bt_pdata = { +static struct rfkill_gpio_platform_data origen_bt_pdata = { .reset_gpio = EXYNOS4_GPX2(2), .shutdown_gpio = -1, .type = RFKILL_TYPE_BLUETOOTH, -- cgit v1.2.3-70-g09d2 From 84e6aef0cff9e22563a2e3d29ed9a57838659da6 Mon Sep 17 00:00:00 2001 From: Sachin Kamat Date: Sat, 12 May 2012 16:33:46 +0900 Subject: ARM: EXYNOS: Add DRM device to Origen DRM core device and FIMD DRM platform device support is added to Origen board. Signed-off-by: Sachin Kamat Signed-off-by: Kukjin Kim --- arch/arm/mach-exynos/Kconfig | 1 + arch/arm/mach-exynos/mach-origen.c | 31 +++++++++++++++++++++++++++++++ 2 files changed, 32 insertions(+) (limited to 'arch/arm/mach-exynos/mach-origen.c') diff --git a/arch/arm/mach-exynos/Kconfig b/arch/arm/mach-exynos/Kconfig index 85fc9ea7870..fc497b7c6d6 100644 --- a/arch/arm/mach-exynos/Kconfig +++ b/arch/arm/mach-exynos/Kconfig @@ -324,6 +324,7 @@ config MACH_ORIGEN select S5P_DEV_USB_EHCI select SAMSUNG_DEV_BACKLIGHT select SAMSUNG_DEV_PWM + select EXYNOS_DEV_DRM select EXYNOS4_DEV_DMA select EXYNOS4_DEV_USB_OHCI select EXYNOS4_SETUP_FIMD0 diff --git a/arch/arm/mach-exynos/mach-origen.c b/arch/arm/mach-exynos/mach-origen.c index e3d59492515..fe962792584 100644 --- a/arch/arm/mach-exynos/mach-origen.c +++ b/arch/arm/mach-exynos/mach-origen.c @@ -45,6 +45,7 @@ #include #include +#include #include "common.h" /* Following are default values for UCON, ULCON and UFCON UART registers */ @@ -583,6 +584,27 @@ static struct platform_device origen_lcd_hv070wsa = { .dev.platform_data = &origen_lcd_hv070wsa_data, }; +#ifdef CONFIG_DRM_EXYNOS +static struct exynos_drm_fimd_pdata drm_fimd_pdata = { + .panel = { + .timing = { + .left_margin = 64, + .right_margin = 16, + .upper_margin = 64, + .lower_margin = 16, + .hsync_len = 48, + .vsync_len = 3, + .xres = 1024, + .yres = 600, + }, + }, + .vidcon0 = VIDCON0_VIDOUT_RGB | VIDCON0_PNRMODE_RGB, + .vidcon1 = VIDCON1_INV_HSYNC | VIDCON1_INV_VSYNC | + VIDCON1_INV_VCLK, + .default_win = 0, + .bpp = 32, +}; +#else static struct s3c_fb_pd_win origen_fb_win0 = { .win_mode = { .left_margin = 64, @@ -607,6 +629,7 @@ static struct s3c_fb_platdata origen_lcd_pdata __initdata = { VIDCON1_INV_VCLK, .setup_gpio = exynos4_fimd0_gpio_setup_24bpp, }; +#endif /* Bluetooth rfkill gpio platform data */ static struct rfkill_gpio_platform_data origen_bt_pdata = { @@ -646,6 +669,9 @@ static struct platform_device *origen_devices[] __initdata = { &s5p_device_mfc_l, &s5p_device_mfc_r, &s5p_device_mixer, +#ifdef CONFIG_DRM_EXYNOS + &exynos_device_drm, +#endif &exynos4_device_ohci, &origen_device_gpiokeys, &origen_lcd_hv070wsa, @@ -721,7 +747,12 @@ static void __init origen_machine_init(void) s5p_tv_setup(); s5p_i2c_hdmiphy_set_platdata(NULL); +#ifdef CONFIG_DRM_EXYNOS + s5p_device_fimd0.dev.platform_data = &drm_fimd_pdata; + exynos4_fimd0_gpio_setup_24bpp(); +#else s5p_fimd0_set_platdata(&origen_lcd_pdata); +#endif platform_add_devices(origen_devices, ARRAY_SIZE(origen_devices)); -- cgit v1.2.3-70-g09d2