devicemaps_init:
1.设置向量表映射:向boot_mem申请1page得到vectors=c0c3e000,映射的虚拟地址ffff0000,映射一个page,
映射过程是先向boot_mem申请1page用于存储pte,这里一共1024个项512用于mmu(可映射2MB)另外512Linux维护
2.调用mdesc->map_io() (soc层操作操作函数)将物理IO映射到虚拟地址,设置了时钟,gpio等
smdkc110_map_io: arch/arm/mach-s5pv210/mach-x210
s5p_init_io: 位于arch/arm/plat-s5p/cpu.c,(s5p系列层)IO初始化函数
iotable_init(s5p_iodesc, ARRAY_SIZE(s5p_iodesc)):(s5p系列层)
映射s5p系列7块IO
https://www.cnblogs.com/genshu123/p/11330479.html
idcode = __raw_readl(cpuid_addr);获取CHIPID:0x43110220
s3c_init_cpu(idcode, cpu_ids, ARRAY_SIZE(cpu_ids)):(s5p系列层)
获取s5p系列层到子层的接口cpu并调用cpu->map_io()(子层操作函数)
https://www.cnblogs.com/genshu123/p/11330575.html
s3c24xx_init_clocks(24000000);(samsung层)
调用子层的接口cpu(cpu->init_clocks)(24000000)初始化时钟
https://www.cnblogs.com/genshu123/p/11331689.html
s5pv210_gpiolib_init:gpio初始化
s3c24xx_init_uarts:初始化串口
s5p_reserve_bootmem
media_devs = smdkc110_media_devs;
nr_media_devs = ARRAY_SIZE(smdkc110_media_devs)=10;
为传进来的元素从boot_mem分配一定的内存
s3c_device_nand.name = 's5pv210-nand';
s5p_device_rtc.name = 'smdkc110-rtc'
上一篇:5.4.10.linux内核的gpiolib学习2
下一篇:ARM启动顺序
推荐阅读最新更新时间:2026-03-21 11:00
- LM2904DMR2G 函数发生器运算放大器的典型应用
- DEMO9RS08KA2: DEMO9RS08KA2 Demonstration Board
- MCP73871EV,MCP73871 锂离子电池充电器评估板
- STEVAL-IHM039V1,采用 STM32F415 微控制器的双电机控制演示板
- LTC1606CG 演示板、16 位、250ksps ADC
- RT8086B 3.5A、1.2MHz、同步降压转换器的典型应用
- TS4999EIJT 典型应用 免滤波器立体声 2.8 W D 类音频功率放大器,可选择 3D 音效
- LTM4615,采用 15mm-15mm 封装的完整双路和三路输出负载点模块稳压器
- LTC2415-1IGN 24 位 ADC 的典型应用电路使用电阻器阵列在励磁放大器中提供精确匹配
- 使用 Analog Devices 的 LTC1450LIN 的参考设计

S5PV210_iROM_ApplicationNote_Preliminary_20091126
现代雷达系统的信号设计
BFR340T






京公网安备 11010802033920号