龙芯开源社区

 找回密码
 注册新用户(newuser)
查看: 3494|回复: 4

请教:关于龙芯2F 的CP0 Status寄存器的中断设置 ?

  [复制链接]
发表于 2010-7-22 08:46:30 | 显示全部楼层 |阅读模式
PMON里对CP0的status寄存器的设置是在哪里进行的?
在哪里打开CP0的status寄存器的中断?
还是PMON里就没有打开status寄存器的中断使能
发表于 2010-7-22 18:13:14 | 显示全部楼层
没有打开。
 楼主| 发表于 2010-7-23 16:26:56 | 显示全部楼层
那PMON的中断查询是如何实现的?是查询北桥的中断状态寄存器吗?

不打开CP0 Status寄存器,也可以查询北桥的中断状态寄存器吗?

能否说一下?
发表于 2010-7-23 18:47:07 | 显示全部楼层
pmon没有用中断控制器,而只是在合适的时机查询中断状态而已。现在的UEFI的BIOS也是这样的。
pmon中,pci_intr_establish函数用于注册一个中断状态查询函数,pmon下所有能查询到的中断都是通过这个函数注册的。比如usb,网络等中断。这个函数会在一个查询链表中增加一项,tgt_poll函数会依次调用这个列表的函数,从而达到能轮询中断状态的功能,如此模拟实现了中断。
tgt_poll如何被调用呢?
tgt_pool函数一般是通过scandevs函数调用的,因为scandevs函数中有splx这样的可以调用tgt_poll的函数。
而scandevs是很容易被调用的,比如一个printf,udelay函数就必然会调用scandevs。
发表于 2011-7-26 04:41:25 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

本版积分规则

小黑屋|手机版|Archiver|Lemote Inc.  

GMT+8, 2019-5-27 14:24 , Processed in 0.175595 second(s), 18 queries .

快速回复 返回顶部 返回列表