打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
PowerPC
userphoto

2013.09.25

关注
这个对基于PowerPC的Linux内核源码剖析的文章已经写了三篇了(见前三篇博文),由于可以找到的关于PowerPC E300处理器的Linux文章基本没有,这些都是一点点摸索的,可能存在不少的错误,特别是第3篇,自我感觉很差,开始计划写这个系列的时候,自以为已经很了解PowerPC的内部体系了,现在回首,还是有很大的提升空间啊。这个系列到这里也算是一个中节点了,我打算先放一放,处理好工作上的琐...
2011-11-03 21:25 阅读(1863) 评论(2)
上篇中介绍了基于PowerPC的Linux第二阶段启动过程的一部分,由于MMU的初始化涉及的内容较多,而且代码量很大,所以这部分分为上下两部。本部分继续阐述MMU硬件的初始化和最终真正使能MMU的过程。    在开始之前,先指出前面文章出现的一个错误,在对mmu_off函数中的RFI指令的介绍时,我简单的认为是中断返回,但后来想想,CPU初始化时,中断还没有使能,所以中断返回的说法是不正确的,...
2011-11-03 21:07 阅读(1543) 评论(2)
前面一篇的early_init执行完成后,CPU启动早期的基本初始化工作算是做完了,这时内核会开始重定向并复制运行,代码如下:bl reloc_offset mr r26,r3 addis r4,r3,KERNELBASE@h /* current address of _start */ lis r5,PHYSICAL_START@h cmplw 0,r4,r5 /* a...
2011-10-31 21:22 阅读(1534) 评论(3)
很早之前就有写基于PowerPC架构的Linux源代码分析的文章的想法,但无奈于Linux源码量太大,逻辑也很复杂,再加上本身对PowerPC汇编了解不多,闲暇时间也没有太多,一直都没有什么机会。上个月,工作上的事情因为硬件的耽误稍微少了些,再加上自己之前分析U-Boot的源码时学了不少PowerPC汇编的知识,又移植了Linux中的SPI和Nand Flash的驱动源码到vxWorks,感觉时机...
2011-10-26 22:16 阅读(1912) 评论(0)
之前用过两个版本u-boot,分析过它的Start.S文件(PowerPC、ARM)源代码,也移植过内部的各部分硬件驱动及组件(串口、I2C、SPI、Flash文件系统、USB、DMA等)源码,自我感觉比较熟悉了。但最近逛CSDN论坛发现有不少人在问U-Boot中的Makefil...
2011-10-15 15:26 阅读(1380) 评论(0)
最近做的spi flash,本打算弄个文件系统,由于之前用过了JFFS、YAFFS和TrueFFS,代码量都相当的大,这次想找款代码量不那么吓人的,学习一下,听说配置会相对复杂一些。选来选去,最终选定了FatFS,代码量足够的小,最新的R0.09版本只有1个.c文件(当然,还有一...
2011-10-12 21:05 阅读(6036) 评论(3)
最近在弄PowerPC平台上的spi flash的驱动程序,总体比较简单,在借鉴了U-Boot中的相关源码后,花了两周左右的时间搞定了,对于spi总线之前一直都有了解,但未能实际接触,这次在vxWorks上尝试了一下,确实有不小的收获。由于网上关于vxWorks平台的资料稀少,就...
2011-10-12 20:23 阅读(1752) 评论(5)
3.BSP FAQ3.1 不同BSP3.2 处理器3.2.1 Power PC3.2.1.1 问题关于MPC860BSP(新手上路):在读前辈程序的时候遇到这样一些语句: lis r3, 0x0090 ori r3, r3, 0x0000 #plp=9,...
2011-09-25 23:06 阅读(1337) 评论(0)
这是从别处转载的,可以将它复制下来,查找自己碰到的问题,可能有解答额,呵呵。前言(Surface):随着国内使用VxWorks的用户越来越多,为了方便VxWorkers少走一些弯路,特别推出了中文FAQ,其中很多的FAQ来自comp.os.vxworks和原创。(很多FAQ都...
2011-09-25 22:59 阅读(1216) 评论(0)
本篇文章主要描述了Powerpc的寻址模式,让自己对内存映射、寻址的概念理解深入些。其中大量借鉴了http://www.yuanma.org/data/2007/0312/article_2406.htm处的文章,还望谅解。    在开始讨论寻址模式之前,让我们首先来回顾一下...
2011-09-25 16:13 阅读(855) 评论(0)
在了解PowerPC汇编指令前,需要先看下编程所用的寄存器模型,PowerPC系统结构为大多数运算指令都定义了Register-Register的操作,这些操作的源操作数从寄存器取得,或作为嵌入指令操作码中的立即数提供。这里的e300核可分为用户编程模型和管理员编程模型,该模型有...
2011-09-25 14:33 阅读(1695) 评论(0)
接上篇文章 介绍完了Host,再来看下Peripheral驱动栈,下图为Peripheral驱动栈的结构图:    风河USB Peripheral驱动栈中,位于底层的是目标控制器TC,它是Peripheral栈中用于连接USB的硬件部分。对于每种类型的TC,都会有对应的...
2011-09-13 22:36 阅读(786) 评论(0)
USB模块可以分为多端口主机(MPH)模块和双角色(DR)模块,它们都能够连接一个或者二个外部端口,这些模块和外部端口总称为USB接口。Mpc8379的USB模块采用的是DR,它的寄存器和数据结构均基于Intel的EHCI(Enhanced Host Controller Int...
2011-09-11 09:44 阅读(1122) 评论(0)
在接触PowerPC开发时,难免会碰到大小端转换的问题,PowerPC系统核心是大端的,而像DMA、DSP、PCIE、FPGA都是小端的,所以有必要把它们详细记录一下。我们常常看到“alignment", "endian"之类的字眼, 但很少有C语言教材提到这些概念。实际上它们是...
2011-09-06 20:16 阅读(1317) 评论(0)
在调试PCI-E的MSI中断前,需要先保证将传统中断调通,然后再调试这个。MSI中断究其本质,就是一个存储器读写事件。将MSI Address设置为内存中的某个地址(可以为64位),产生MSI中断时,中断源会在MSI Address所在的地址写入MSI Data。也就是说,如果有...
2011-09-03 20:52 阅读(3905) 评论(5)
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
linux内核启动过程学习总结
Linux 内存寻址之分段机制
嵌入式Linux的引导加载程序——Bootloader
嵌入式知识Linux驱动开发基础
汇编总结 - Kevin Wan‘s Doodle - 博客园
相对跳转指令和绝对跳转指令的特殊用法
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服