Chinaunix首页 | 论坛 | 博客
  • 博客访问: 693403
  • 博文数量: 192
  • 博客积分: 1875
  • 博客等级: 上尉
  • 技术积分: 2177
  • 用 户 组: 普通用户
  • 注册时间: 2010-10-23 23:21
个人简介

有时候,就是想窥视一下不知道的东东,因为好奇!

文章分类

全部博文(192)

文章存档

2024年(8)

2023年(3)

2020年(1)

2019年(1)

2018年(1)

2017年(2)

2016年(69)

2015年(53)

2014年(14)

2013年(1)

2012年(5)

2011年(25)

2010年(9)

分类: LINUX

2010-11-15 18:15:34

移植linux-2.6.36内核及修改touchscreen及lcd都可以工作了,作个记号。


延续上篇的步骤:

1.在arch/arm/mach-s3c2440/mach-mini2440.c文件中加一项:


/* ts driver info */
  static struct s3c2410_ts_mach_info zl2440_ts_cfg __initdata = {
          .delay = 10000,
          .presc = 49,
          .oversampling_shift = 2,
  };


2.在函数mini2440_machine_init(void)中加入相关代码:

static void __init mini2440_machine_init(void)
  {
      s3c24xx_ts_set_platdata(&zl2440_ts_cfg);
  
      s3c24xx_fb_set_platdata(&mini2440_fb_info);
      //s3c_i2c0_set_platdata(NULL);
  
      platform_add_devices(zl2440_devices, ARRAY_SIZE(zl2440_devices));
      //smdk_machine_init();
  }


3.在数组static struct platform_device *zl2440_devices[]中加入两项:

static struct platform_device *zl2440_devices[] __initdata = {
      &s3c_device_ohci,
      &s3c_device_lcd,
      &s3c_device_adc,
      &s3c_device_ts,
      //&s3c_device_wdt,
      //&s3c_device_i2c0,
      &s3c_device_iis,
  };

其中有一个很有意思的地方"s3c_device_adc"必须在"s3c_device_ts"的前面。否则touchscreen初始化时会出错。

make之后。新的zImage起来,从文件/dev/input/event0可以读取touchscreen的状态及坐标。

下面继续lcd的修改:
系统起来后LCD上已经有企鹅的图片了,但图片
只占有整个LCD面积的上半部分,并且图片扭曲。
static struct s3c2410fb_mach_info mini2440_fb_info中的lpcsel修改
((0xCE6) & ~7) | 1<<1
即可。

static struct s3c2410fb_mach_info mini2440_fb_info __initdata = {
      .displays   = &mini2440_lcd_cfg,
      .num_displays   = 1,
      .default_display = 0,
 
  #if 0
      .gpccon =   0xaa955699,
      .gpccon_mask =  0xffc003cc,
      .gpcup =    0x0000ffff,
      .gpcup_mask =   0xffffffff,
      .gpdcon =   0xaa95aaa1,
      .gpdcon_mask =  0xffc0fff0,
      .gpdup =    0x0000faff,
      .gpdup_mask =   0xffffffff,
 
  #endif
 
      //.lpcsel       = ((0xCE6) & ~7) | 1<<4,
      .lpcsel     = ((0xCE6) & ~7) | 1<<1,
      //.lpcsel       = 0xf82,    //2.6.13/2.6.36(ok)
  };


make之,新的zImage起来后。企鹅图片正常了。
阅读(1536) | 评论(3) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2011-02-07 12:40:59

还需要添加头文件,否则无法编译通过 #include

chinaunix网友2011-02-07 12:40:54

还需要添加头文件,否则无法编译通过 #include

chinaunix网友2010-11-17 16:39:58

很好的, 收藏了 推荐一个博客,提供很多免费软件编程电子书下载: http://free-ebooks.appspot.com