学习《Linux设备模型浅析之设备篇》笔记(深挖一)
来源:互联网 发布:虚拟手机号码软件 编辑:程序博客网 时间:2024/06/03 16:01
这篇文章既然说了是浅析,那就是跳过了一些东西,我们把这些跳过的东西给它尽可能的补回来
今天登陆 lxr.free-electrons.com 发现内核版本已经升级到3.15了,那以后都使用3.15的源码
文件/arch/arm/mach-s3c64xx/mach-smdk6410.c
static void __init smdk6410_machine_init(void)
{
u32 cs1;
s3c_i2c0_set_platdata(NULL);
s3c_i2c1_set_platdata(NULL);
s3c_fb_set_platdata(&smdk6410_lcd_pdata);
s3c_hsotg_set_platdata(&smdk6410_hsotg_pdata);
samsung_keypad_set_platdata(&smdk6410_keypad_data);
s3c24xx_ts_set_platdata(NULL);
/* configure nCS1 width to 16 bits */
cs1 = __raw_readl(S3C64XX_SROM_BW) & ~(S3C64XX_SROM_BW__CS_MASK << S3C64XX_SROM_BW__NCS1__SHIFT);
cs1 |= ((1 << S3C64XX_SROM_BW__DATAWIDTH__SHIFT) |(1 << S3C64XX_SROM_BW__WAITENABLE__SHIFT) |(1 << S3C64XX_SROM_BW__BYTEENABLE__SHIFT)) << S3C64XX_SROM_BW__NCS1__SHIFT;
__raw_writel(cs1, S3C64XX_SROM_BW);
/* set timing for nCS1 suitable for ethernet chip */
__raw_writel((0 << S3C64XX_SROM_BCX__PMC__SHIFT) | (6 << S3C64XX_SROM_BCX__TACP__SHIFT) | (4 << S3C64XX_SROM_BCX__TCAH__SHIFT) | (1 << S3C64XX_SROM_BCX__TCOH__SHIFT) | (0xe << S3C64XX_SROM_BCX__TACC__SHIFT) | (4 << S3C64XX_SROM_BCX__TCOS__SHIFT) | (0 << S3C64XX_SROM_BCX__TACS__SHIFT), S3C64XX_SROM_BC1);
gpio_request(S3C64XX_GPN(5), "LCD power");
gpio_request(S3C64XX_GPF(13), "LCD power");
i2c_register_board_info(0, i2c_devs0, ARRAY_SIZE(i2c_devs0));
i2c_register_board_info(1, i2c_devs1, ARRAY_SIZE(i2c_devs1));
s3c_ide_set_platdata(&smdk6410_ide_pdata);
platform_add_devices(smdk6410_devices, ARRAY_SIZE(smdk6410_devices));
samsung_bl_set(&smdk6410_bl_gpio_info, &smdk6410_bl_data);
}
MACHINE_START(SMDK6410, "SMDK6410")
/* Maintainer: Ben Dooks <ben-linux@fluff.org> */
.atag_offset=0x100,
.init_irq=s3c6410_init_irq,
.map_io=smdk6410_map_io,
.init_machine=smdk6410_machine_init,
.init_late=s3c64xx_init_late,
.init_time=samsung_timer_init,
.restart=s3c64xx_restart,
MACHINE_END
#defineMACHINE_START(_type,_name)\
static const struct machine_desc __mach_desc_##_type\
__used\
__attribute__((__section__(".arch.info.init"))) = {\
.nr= MACH_TYPE_##_type,\
.name= _name,
#define MACHINE_END\
};
- 学习《Linux设备模型浅析之设备篇》笔记(深挖一)
- 学习《Linux设备模型浅析之设备篇》笔记(深挖二)
- 学习《Linux设备模型浅析之设备篇》笔记(一)
- 学习《Linux设备模型浅析之驱动篇》笔记(一)
- 学习《Linux设备模型浅析之设备篇》笔记(二)
- 学习《Linux设备模型浅析之设备篇》笔记(三)
- Linux设备模型浅析之设备
- Linux设备模型浅析之驱动篇
- Linux 设备模型浅析之 uevent 篇
- Linux设备模型浅析之uevent篇
- Linux 设备模型浅析之 uevent 篇
- Linux设备模型浅析之uevent篇
- Linux设备驱动程序学习之设备模型一
- linux设备模型浅析
- linux设备模型浅析
- linux 设备模型浅析
- Linux设备模型浅析之固件篇
- Linux设备模型浅析之uevent篇图片版
- matlab BP神经网络介绍
- NetworkOnMainThreadException异常处理
- B2B2C是一种电子商务类型的网络购物商业模式,B是BUSINESS的简称,C是CUSTOMER的简称,第一个B指的是商品或服务的供应商,第二个B指的是从事电子商务的企业,C则是表示消费者。
- POJ 1094 Sorting It All Out(拓扑排序)
- 解决ListView嵌套ListView遇到的问题
- 学习《Linux设备模型浅析之设备篇》笔记(深挖一)
- the compact org-mode guide 第一章
- 开启cocos2dx 3.0的Console功能
- 递归遍历二叉树
- ubuntu mount hfsplus partiton
- 关于c++创建单例类
- 单调递增子序列(二)(n*logn)
- OpenCV:Mat元素访问方法、性能、代码复杂度以及安全性分析
- ubuntu 下eclipse启动卡死问题