如题,用某powerpc板作为RC,C6678作为EP,目前已经能用RC枚举到6678,且能通过PCIE映射到C6678的DDR3、L2等地址,并能正常读写。
现在我想用RC映射到6678的寄存器(比如0x02600000),但是发现往里面写值失败,请教各位专家如何解决?
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
如题,用某powerpc板作为RC,C6678作为EP,目前已经能用RC枚举到6678,且能通过PCIE映射到C6678的DDR3、L2等地址,并能正常读写。
现在我想用RC映射到6678的寄存器(比如0x02600000),但是发现往里面写值失败,请教各位专家如何解决?
从RC访问EP(DSP端)是inbound映射,不是outbound。
从RC端看BAR地址空间分配是否已经分配上了?
再试试别的寄存器的访问。比如0x02620020(DEVSTAT)
dennis wu 说:从RC访问EP(DSP端)是inbound映射,不是outbound。
从RC端看BAR地址空间分配是否已经分配上了?
再试试别的寄存器的访问。比如0x02620020(DEVSTAT)
你好:
按照你的回答,我是否可以这样理解inbound和outbound的区别!
1.
如果在RC-host端发起对EP-DSP读或写的操作,那么这种模式叫做inbound。
2.
如果在EP-DSP端发起对RC-HOST读或写的操作,那么这种模式叫做outbound。
3.
inbound 和 outbound的唯一区别是看谁发起读写操作。
谢谢!
dennis wu 说:steve_xiaop,你的理解是对的。
3ks!
dennis wu 说:从RC访问EP(DSP端)是inbound映射,不是outbound。
从RC端看BAR地址空间分配是否已经分配上了?
再试试别的寄存器的访问。比如0x02620020(DEVSTAT)
你好,你说的从RC访问EP 是inbound映射,而不是outbound,
我不是很认同啊, 我感觉既可以说是inbound,也可以说是outbound,
关键是从什么角度去说。
同样的一个过程,比如RC读写EP。 假设这里RC是host PC linux,
EP 是dsp6678. 从不同的角度看,就会有不同结果。
1.从host pc角度
pc自己发起的,读写ep寄存器或者DDR的操作,应该属于outbound。
但是从另外dsp的角度就不一样
2.从dsp角度
ep是local device,rc是extern devie。由extern deivce发起的
对于local device ep进行的读写操作,从dsp角度来讲应该属于
inbound。
我之所以,这样理解的参考依据是:
你认同我的看法么?欢迎继续讨论
Regards!