devs.c:
 
static struct resource s3cfb_resource[] = {
[0] = {
.start= S5P_PA_LCD,
.end= S5P_PA_LCD + S5P_SZ_LCD - 1,
.flags= IORESOURCE_MEM,
},
[1] = {
.start= IRQ_LCD1,
.end= IRQ_LCD1,
.flags= IORESOURCE_IRQ,
},
[2] = {
.start= IRQ_LCD0,
.end= IRQ_LCD0,
.flags= IORESOURCE_IRQ,
},
};
 
static u64 fb_dma_mask = 0xffffffffUL;
 
struct platform_device s3c_device_fb = {
.name= "s3cfb",
.id= -1,
.num_resources= ARRAY_SIZE(s3cfb_resource),
.resource= s3cfb_resource,
.dev= {
.dma_mask= &fb_dma_mask,
.coherent_dma_mask= 0xffffffffUL
}
};
 
static struct s3c_platform_fb default_fb_data __initdata = {//总的
#if defined(CONFIG_CPU_S5PV210_EVT0)
.hw_ver= 0x60,
#else
.hw_ver= 0x62,
#endif
 
.nr_wins= 5,
 
#if defined(CONFIG_FB_S3C_DEFAULT_WINDOW)
.default_win= CONFIG_FB_S3C_DEFAULT_WINDOW,
#else
.default_win= 0,
#endif
.swap= FB_SWAP_WORD | FB_SWAP_HWORD,
};
 
void __init s3cfb_set_platdata(struct s3c_platform_fb *pd)
{
struct s3c_platform_fb *npd;
int i;
 
if (!pd)
pd = &default_fb_data;
 
npd = kmemdup(pd, sizeof(struct s3c_platform_fb), GFP_KERNEL);
if (!npd)
printk(KERN_ERR "%s: no memory for platform data\n", __func__);
else {
for (i = 0; i < npd->nr_wins; i++)//每个fb拥有的缓冲区个数
npd->nr_buffers[i] = 1;
 
#if defined(CONFIG_FB_S3C_NR_BUFFERS)
npd->nr_buffers[npd->default_win] = CONFIG_FB_S3C_NR_BUFFERS;
#else
npd->nr_buffers[npd->default_win] = 1;
#endif
 
s3cfb_get_clk_name(npd->clk_name);
npd->cfg_gpio = s3cfb_cfg_gpio;
npd->backlight_on = s3cfb_backlight_on;
npd->backlight_off = s3cfb_backlight_off;
npd->lcd_on = s3cfb_lcd_on;
npd->lcd_off = s3cfb_lcd_off;
npd->clk_on = s3cfb_clk_on;
npd->clk_off = s3cfb_clk_off;
 
s3c_device_fb.dev.platform_data = npd;//放到平台数据中
}
}

LCD platform_device(s5pv210)的更多相关文章

  1. Lcd(一)显示原理

    一.LCD控制原理 S5PV210处理器中自带LCD控制器,控制LCD的显示,把 LCD 图像数据从一个位于系统内存的 video buffer 传送到一个外部的 LCD 驱动器接口. 类型: STN ...

  2. linux驱动开发:用户空间操作LCD显示简单的图片【转】

    转自:http://blog.csdn.net/changliang7731/article/details/53074616 上一章我们简单介绍了LCD的一些基本原理.当然更深奥的还有,比如gamm ...

  3. S5PV210的LCD控制器详解

    1.FIMD结构框图 (1)Samsung的s5pv210的LCD控制器叫做FIMD(也叫显示控制器).Display controller(显示控制器)包括用于将图像数据从相机接口控制器的本 地总线 ...

  4. S5PV210 LCD显示

    第一节 S5PV210 LCD控制器要使一块LCD正常显示文字或图像,不仅需要LCD驱动器,还需要相应的LCD控制器.LCD控制器的主要作用是将在系统存储器中的显示缓冲区中的LCD图像数据传送到外部L ...

  5. Smart210学习-----lcd驱动

    帧缓冲设备 1.1帧缓冲设备:帧缓冲(framebuffer)是 Linux 系统为显示设备提供的一个接口,它将显示缓冲区抽象,屏蔽图像硬件的底层差异,允许上层应用程序在图形模式下直接对显示缓冲区进行 ...

  6. android系统平台显示驱动开发简要:Samsung LCD接口篇『三』

    平台信息: 内核:linux3.4.39系统:android4.4 平台:S5P4418(cortex a9) 作者:瘋耔(欢迎转载,请注明作者) 欢迎指正错误,共同学习.共同进步!! 关注博主新浪博 ...

  7. 【转】Android LCD(三):Samsung LCD接口篇

    关键词:android LCD控制器 Framebuffer PWM  平台信息:内核:linux2.6/linux3.0系统:android/android4.0 平台:samsung exynos ...

  8. Android LCD(三):Samsung LCD接口篇

    关键词:android LCD控制器 Framebuffer PWM  平台信息: 内核:linux2.6/linux3.0 系统:android/android4.0  平台:samsung exy ...

  9. Linux驱动:LCD驱动框架分析

    一直想花时间来整理一下Linux内核LCD驱动,却一直都忙着做其他事情去了,这些天特意抽出时间来整理之前落下的笔记,故事就这样开始了.LCD驱动也是字符设备驱动的一种,框架上相对于字符设备驱动稍微复杂 ...

随机推荐

  1. 如何使用命令提示符进入mysql

    如果mysql安装时的路径不是在C盘,应进入mysql的bin目录中,然后在命令提示符中输入“mysql -u USERNAME -pPASSWORD ” 如果如果mysql安装时的路径是在C盘,直接 ...

  2. 企业生产环境下不同业务的linux分区建议

    常规分区方案: /boot:  100M swap:内存的1至1.5倍 / : 剩余硬盘大小 DB及存储:有大量重要的数据 /boot : 100M swap: 内存的1至1.5倍,如果内存大于等于1 ...

  3. 走进WCF一 (异常如此多娇,引无数码农竞折煞)

    对于WCF一直都是只知其然,公司框架的架构者也只是对我们授之以鱼,而不授之以渔. 带着初学者的态度进入了大神Artech的博客,逐步慢慢上手. 我的解决方案(和大神的一模一样,只是过程中一波三折的) ...

  4. 【BZOJ】1016: [JSOI2008]最小生成树计数 深搜+并查集

    最小生成树计数 Description 现在给出了一个简单无向加权图.你不满足于求出这个图的最小生成树,而希望知道这个图中有多少个不同的最小生成树.(如果两颗最小生成树中至少有一条边不同,则这两个最小 ...

  5. hdu 1251 统计难题 trie入门

    统计难题 Problem Description Ignatius最近遇到一个难题,老师交给他很多单词(只有小写字母组成,不会有重复的单词出现),现在老师要他统计出以某个字符串为前缀的单词数量(单词本 ...

  6. vs运行代码版本不一致删除缓存

    C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files

  7. ORACLE VS MYSQL

    ORACLE VS MYSQL 一.历史 1.  Oracle: 中文译作甲骨文,这是一家传奇的公司,有一个传奇的大老板Larry Ellision. Ellision 32岁还一事无成,读了三个大学 ...

  8. 对于数组使用sizeof(a)和使用sizeof(a[0])

    #include "stdafx.h" #include <iostream> using namespace std; int main() { ]={}; cout ...

  9. Spring中argNames的含义

    最近学习Spring,一直不太明白Srping的切面编程中的的argNames的含义,经过学习研究后,终于明白,分享一下 先看一个例子: 需要监控的类: package bean; public cl ...

  10. 自适应网页设计(Responsive Web Design)(转)

    随着3G的普及,越来越多的人使用手机上网. 移动设备正超过桌面设备,成为访问互联网的最常见终端.于是,网页设计师不得不面对一个难题:如何才能在不同大小的设备上呈现同样的网页? 手机的屏幕比较小,宽度通 ...