各位大神好,
目前我们公司做了一个机箱,有两块板子,上面各一块C6678,通过背板走PCIE与HOST通信,我已经调通了一块板子的C6678的PCIE作为EP与HOST进行通信(驱动也已经写好),现在的问题是我两个6678烧相同的程序,随便选择某一块板单个插入都枚举到并与HOST通信,但是如果同时插上的话HOST一个设备都枚举不到(两个板子的插在不同的PCI总线上)。
目前我做了以下工作:
1.修改其中一片6678的PCIE的vendor和device,两片还是都枚举不到
2.修改其中一片6678的BAR,两片还是都枚举不到
3.查看两片是否都Link up,发现上电时等待Link up那一步确实过了,能Link up,说明debug0寄存器的状态位当时读取时值是0x11,但是等windows起来后,枚举不到俩设备,我再通过仿真器去看debug0的值发现状态位是0x00,也就是说Link在之后被down掉了,这应该是枚举不到的原因。
请问各位大神为什么Link up 起来后会被down掉?down的情况我只有在HOST关机时才碰到过,现在是不是因为两个6678的程序都一样,多片的话需要哪个寄存器做修改?