PMON基础知识.ppt

  1. 1、本文档共19页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PMON基础知识.ppt

PMON 基础知识培训 主要内容安排 编译系统介绍 PMON执行流程讲解 调试手段 获取使用帮助 编译环境 配置文件: conf/files conf/GENERIC_ALL Targets/Bonito/conf files.Bonito Bonito Makefile.Bonito 选择模块 修改files.* 增加新文件 修改Bonito 选择需要编译的内容 编译环境(续) $(TOPDIR)/tools/pmoncfg 根据配置文件生成Makefile 配置与编译 cd Targes/Bonito/conf pmoncfg Bonito cd Targets/Bonito/compile/Bonito make 或者 cd zloader make tgt=rom 有时候需要在make 的时候执行make clean 编译系统(续) 配置文件Bonito option DEFINE,增加宏定义,如option BONITOEL 将在生成的Makefile中定义BONITOEL select module, 选择需要编译的模块,如select mod_framebuffer 模块定义文件(files.*) 设备相关,如files.pci, files.ata 通用模块,conf/files 模块定义文件 define modname增加一个模块定义 define usbus { } define ether device 增加设备定义 usb: disk attach dev at bus 设备挂载在何种总线之上 attach usb at usbbus 模块定义文件(续) file path to file [modname] 定义文件属于何种模块,选择模块时将编译该文件 如file sys/dev/pci/if_fxp.c fxp 定义了Intel eppro100 网卡驱动模块 模块的依赖 例如rtl8139属于PCI设备,依赖于PCI模块;作为网络设备,又依赖于网络协议模块 device rtl: ether, ifnet attach rtl at pci 添加USB模块举例 Conf/files define usbbus {} device usb: disk attach usb at usbbus file sys/dev/usb/usb.c mod_usb ……… files.pci device uhci:usbbus attach uhci at pci device ohci: usbbus attach ohci at pci 添加USB模块举例(续) 选择USB 模块(配置文件Bonito) ohci0 at pci? dev ? function ? usb0 at usbbus ? usb0 at usbbus ? select mod_usb select mod_usb_storage select mod_usb_ohci select mod_usb_kbd select mod_usb_uhci 龙芯启动过程 和其他mips处理器一样 上电复位后,执行的第一条指令地址为0xbfc00000, 这是我们BIOS eprom的地址 两个执行阶段 Rom 执行 执行必要初始化:内存控制器设置,代码数据拷贝到内存,建立堆栈等等,准备内存执行阶段的条件 需要注意:所有变量不可写 内存执行 最初始的代码Start.S 北桥初始设置 南桥初始化 SMB 控制器(读取内存SPD信息需要) SuperIO初始化 串口地址设置,使能 RTC,键盘控制器使能 串口初始化 调试打印PRINTSTR (….) Start.S(续) 内存控制器设置 通过I2C或者SMB读取内存参数:大小,tcol,trow等时序参数 由config寄存器计算cache参数 Cacheline,cache size,godson_init_cache清除cache中随机数据 拷贝数据,代码段到内存,准备进入内存执行 C 代码执行 Targets/Bonito/Bonito/tgt_machdep.c 入口函数 initmips ConfigEntry ConfigTable 配置打印输出:串口ns16550,vgacon,fbcon 计算CPU频率: 根据RTC和CPU count寄存器 利用RTC可以设定一段时间,看count在这段时间内增加了多少(count的频率是总线频率一半) tgt_devinit _pci_businit: 北桥寄存器设置,总线扫描

文档评论(0)

170****0532 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8015033021000003

1亿VIP精品文档

相关文档