-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
ARM: EXYNOS4: Add platform device and helper functions for FIMD
This patch adds platform device s5p_device_fimd0 for EXYNOS4 FIMD0. EXYNOS4 has two FIMDs(FIMD0, FIMD1). FIMD1 will be added later. Some definitions used to enable EXYNOS4 FIMD0 are added. Signed-off-by: Jonghun Han <jonghun.han@samsung.com> Signed-off-by: Jingoo Han <jg1.han@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
- Loading branch information
Jonghun Han
authored and
Kukjin Kim
committed
Jul 21, 2011
1 parent
1aee2ad
commit e61b170
Showing
10 changed files
with
160 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,43 @@ | ||
/* linux/arch/arm/mach-exynos4/setup-fimd0.c | ||
* | ||
* Copyright (c) 2009-2011 Samsung Electronics Co., Ltd. | ||
* http://www.samsung.com | ||
* | ||
* Base Exynos4 FIMD 0 configuration | ||
* | ||
* This program is free software; you can redistribute it and/or modify | ||
* it under the terms of the GNU General Public License version 2 as | ||
* published by the Free Software Foundation. | ||
*/ | ||
|
||
#include <linux/fb.h> | ||
#include <linux/gpio.h> | ||
|
||
#include <plat/gpio-cfg.h> | ||
#include <plat/regs-fb-v4.h> | ||
|
||
#include <mach/map.h> | ||
|
||
void exynos4_fimd0_gpio_setup_24bpp(void) | ||
{ | ||
unsigned int reg; | ||
|
||
s3c_gpio_cfgrange_nopull(EXYNOS4_GPF0(0), 8, S3C_GPIO_SFN(2)); | ||
s3c_gpio_cfgrange_nopull(EXYNOS4_GPF1(0), 8, S3C_GPIO_SFN(2)); | ||
s3c_gpio_cfgrange_nopull(EXYNOS4_GPF2(0), 8, S3C_GPIO_SFN(2)); | ||
s3c_gpio_cfgrange_nopull(EXYNOS4_GPF3(0), 4, S3C_GPIO_SFN(2)); | ||
|
||
/* | ||
* Set DISPLAY_CONTROL register for Display path selection. | ||
* | ||
* DISPLAY_CONTROL[1:0] | ||
* --------------------- | ||
* 00 | MIE | ||
* 01 | MDINE | ||
* 10 | FIMD : selected | ||
* 11 | FIMD | ||
*/ | ||
reg = __raw_readl(S3C_VA_SYS + 0x0210); | ||
reg |= (1 << 1); | ||
__raw_writel(reg, S3C_VA_SYS + 0x0210); | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,67 @@ | ||
/* linux/arch/arm/plat-s5p/dev-fimd0.c | ||
* | ||
* Copyright (c) 2009-2011 Samsung Electronics Co., Ltd. | ||
* http://www.samsung.com | ||
* | ||
* Core file for Samsung Display Controller (FIMD) driver | ||
* | ||
* This program is free software; you can redistribute it and/or modify | ||
* it under the terms of the GNU General Public License version 2 as | ||
* published by the Free Software Foundation. | ||
*/ | ||
|
||
#include <linux/kernel.h> | ||
#include <linux/string.h> | ||
#include <linux/platform_device.h> | ||
#include <linux/fb.h> | ||
#include <linux/gfp.h> | ||
#include <linux/dma-mapping.h> | ||
|
||
#include <mach/irqs.h> | ||
#include <mach/map.h> | ||
|
||
#include <plat/fb.h> | ||
#include <plat/devs.h> | ||
#include <plat/cpu.h> | ||
|
||
static struct resource s5p_fimd0_resource[] = { | ||
[0] = { | ||
.start = S5P_PA_FIMD0, | ||
.end = S5P_PA_FIMD0 + SZ_32K - 1, | ||
.flags = IORESOURCE_MEM, | ||
}, | ||
[1] = { | ||
.start = IRQ_FIMD0_VSYNC, | ||
.end = IRQ_FIMD0_VSYNC, | ||
.flags = IORESOURCE_IRQ, | ||
}, | ||
[2] = { | ||
.start = IRQ_FIMD0_FIFO, | ||
.end = IRQ_FIMD0_FIFO, | ||
.flags = IORESOURCE_IRQ, | ||
}, | ||
[3] = { | ||
.start = IRQ_FIMD0_SYSTEM, | ||
.end = IRQ_FIMD0_SYSTEM, | ||
.flags = IORESOURCE_IRQ, | ||
}, | ||
}; | ||
|
||
static u64 fimd0_dmamask = DMA_BIT_MASK(32); | ||
|
||
struct platform_device s5p_device_fimd0 = { | ||
.name = "s5p-fb", | ||
.id = 0, | ||
.num_resources = ARRAY_SIZE(s5p_fimd0_resource), | ||
.resource = s5p_fimd0_resource, | ||
.dev = { | ||
.dma_mask = &fimd0_dmamask, | ||
.coherent_dma_mask = DMA_BIT_MASK(32), | ||
}, | ||
}; | ||
|
||
void __init s5p_fimd0_set_platdata(struct s3c_fb_platdata *pd) | ||
{ | ||
s3c_set_platdata(pd, sizeof(struct s3c_fb_platdata), | ||
&s5p_device_fimd0); | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters