Embedded 什么会导致LBC管理的区域访问挂起?

Embedded 什么会导致LBC管理的区域访问挂起?,embedded,powerpc,Embedded,Powerpc,我正试图为Routboard 800、FreeBSD编写一个小型闪存驱动程序,但遇到了一些问题。CF插槽由CPU(MPC8544E)的本地总线控制器(LBC)使用用户可编程机器(UPM)模块进行管理,对CF所在内存区域的任何访问都会挂起线程(CPU仍然可以中断,但线程永远不会继续)。即使是虚拟访问,在编程或读取UPM时也会挂起。现在的问题是,在访问UPM管理的区域时,什么会导致线程挂起,即使它是一个虚拟访问,实际上不应该断言总线 我知道CF卡和插槽本身可以工作,因为内核本身是从卡引导的,由Rou

我正试图为Routboard 800、FreeBSD编写一个小型闪存驱动程序,但遇到了一些问题。CF插槽由CPU(MPC8544E)的本地总线控制器(LBC)使用用户可编程机器(UPM)模块进行管理,对CF所在内存区域的任何访问都会挂起线程(CPU仍然可以中断,但线程永远不会继续)。即使是虚拟访问,在编程或读取UPM时也会挂起。现在的问题是,在访问UPM管理的区域时,什么会导致线程挂起,即使它是一个虚拟访问,实际上不应该断言总线


我知道CF卡和插槽本身可以工作,因为内核本身是从卡引导的,由Routboard引导加载程序加载。

对于后人来说,mpc8544E(可能是mpc85xx系列的大多数)具有本地访问窗口的概念(法律)。如果创建的10个窗口中的任何一个都不存在地址,则会将其放在地板上,不会抛出异常,也不会返回垃圾数据。这适用于所有地址区域,包括外部RAM