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.

[参考译文] XIO2001EVM:XIO2001未初始化

Guru**** 2553610 points
Other Parts Discussed in Thread: XIO2001EVM, XIO2001

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/1092967/xio2001evm-xio2001-not-initialized

部件号:XIO2001EVM
主题: XIO2001中讨论的其他部件

我们正在NXP T1042RDB评估板(在Yocto Linux下)上使用XIO2001EVM板来检查兼容性,然后再设计我们自己的硬件。

在XIO2001EVM板上,我们在PCI插槽上插入PCI板。  

lspci显示已正确发现XIO2001和PCI板。

0002:01:00.0 PCI桥接器:德州仪器(TI) XIO2001 PCI Express至PCI桥接器(prog-if 00 [正常d
    控制:I/O + MEMOR+ busmaster+ Spectrob- MemWINV- VGASnoop- ParErr - Stepping - SERR- FastB2
    状态:CAP+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=FAST > TABORT-<TABORT-<MAbort-> SERR-<P.
    延迟:0,高速缓存行大小:32字节
    总线:主要=01,次要=02,从属=02,sec-later=0
    网桥后面的I/O:0.1万-00001fff</s>0.0001万
    桥后内存:e0万-e04fffff
    桥接器后面的可预取内存:0万fff00000-000000000000000fff</s>0万 0万0万
    辅助状态:66MHz+ FastB2B+ ParErr- DEVSEL=medium > TABORT-<TABort+<SERR-
    BridgeCtl:奇偶校验- SERR- NoISA- VGA-中止->重置- FastB2B-
        PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn-
    功能:[40]子系统:设备0000:0000</s>0000
    功能:[48]电源管理版本3
        标志:PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME (D0-,D1-,D2-,D3hot-,D3cold -)
        状态:d0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME-
        桥:Pm-B3+
    功能:[50] MSI:启用-计数=1/16可屏蔽- 64位以上
        地址:0万00000000 数据0万数据:0000
    功能:[70] Express (v2) PCI-Express至PCI/PCI-X桥接器,MSI 00
        DevCap:MaxPayload 512字节,PhantFunc 0
            ExtTag- AttnBtn- AttnInd- PwrInd- RBE+
        DevCtl:报告错误:可纠正-非致命-致命-不支持-
            RlxdOrd- ExtTag- PhantFunc- AUXPWR- NoSnoop- BrConfrtr-
            MaxPayload 128字节,MaxReadReq 512字节
        DevSta:CorrErr+ UncorrErr- FatalErr- UnsuppReq- AUXPWR- TransPend-
        LnkCap:端口#0,速度2.5GT/s,宽度x1,ASPM L0s L1,退出延迟L0s <1us,L1 <
            ClockPM+ Surprise - LLActRep- BwNot- ASPMOptComp-
        LnkCtl:ASPM已禁用;RCB 64字节已禁用- CommClk-
            ExtSynch-时钟PM-自动宽度Dis - BWInt-自动BWInt-
        LnkSta:速度2.5GT/s,宽度x1,TrErr火车-插槽Clk- DLActiv- BWMgmt- ABWMgmt-
        DevCap2:完成超时:不支持,不支持TimeoutDis,LTR,OBFF
        Devtl2:完成超时:50US至50ms,超时Dis-,LTR,OBFF已禁用
        Lnktl2:目标链路速度:2.5GT/s,EnterCompliance-SpeedDis
             传输裕度:正常操作范围,EnterModifiedCompliance - Complia
             合规性取消强调:-6dB
        LnkSta2:当前去重级别:-6dB,均衡完成-,均衡阶段
             EqualizationPhase2-,EqualizationPhase3-,LinkEqualizationRequest-
    功能:[100 v1]高级错误报告
        UESta: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UN
        UEMsk: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UN
        UESvrt:DLP+ SDES+ TLP - FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP + ECRC - UN
        CESTA: RxErr - BadTLP - BadDLLP - Rollover -超时-非FatalErr +
        CEMsk: RxErr- BadTLP - BadDLLP- Rollover-超时-非FatalErr+
        AERCap:第一个错误指针:00,GenCap+ CGenEn- ChkCap+ ChkEn-

0002:02:06.0 通信控制器:ILC数据设备公司设备1e00 (版本BA)
    子系统:ILC数据设备公司设备1e00
    控制:I/O + MEMOR+ busmaster+ Spectrob- MemWINV- VGASnoop- ParErr - Stepping - SERR- FastB2
    状态:CAP+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium > TABORT-<TABort-<MAbort-> SERR-
    延迟:128,高速缓存行大小:32字节
    中断:将A引脚路由到IRQ 17
    区域0:c2000万处的内存(32位,非预取)[size=512]
    区域1:1000时的I/O端口[size=256]
    区域2:c2020万时的内存(32位,非预取)[size=2M]
    区域3:c2040万处的内存(32位,非预取)[size=16K]
    功能:[40]电源管理版本2
        标志:PMEClk- DSI- D1- D2- AuxCurrent=0mA PME (D0-,D1-,D2-,D3hot-,D3cold -)
        状态:d0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
    功能:[48] CompactPCI热插拔<?>
    功能:[4C]重要产品数据
        未知的大型资源类型5c,将不会解码更多资源。

 

当我们测试PCI板时,没有检测到中断(在驱动程序上分配了中断,但不发生中断)?

我们似乎必须修改Linux设备树 以链接/分配中断。

PCIe总线的定义如下:

 PCIe@ffe26万 {
 兼容="FSL,PCIe-t104x","FSL,PCIe-FS1-QorIQ";
 REG =<0xF 0xfe26万 0x0 0x1000>; /*寄存器*/
 law_trgt_if =<2>;
 #address-cells =<3>;
 #size-cells =<2>;
 device_type ="pci";
 总线范围=<0x0 0xff>;
 范围=<0x100万 0x0万 0x0万 0xF 0xf802万 0x0 0x1万 /*下游I/O */
   0x200万 0x0 0xe0万 0xc 0x2000万 0x0 0x1000万>;/*非预取内存*/
 };

我们应该如何添加以声明 带有中断的XIO2001。  

谢谢。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,Eric,

    Linux驱动程序或环境尚未通过XIO2001设备的验证,因此不受支持。 该部分是在一段时间前开发的,当时这不是一项要求。

    此致,Nasser

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,Nasser:

    我认为XIO2001设备像所有其他透明网桥一样是一个网桥... 无需为其提供特定的驱动程序:如您所见,PCI总线上的设备已成功枚举,我们可以毫无问题地访问这些设备。

    但是 ,当网桥在  PCI总线上收到中断时,由于没有定义中断,因此不执行任何操作。 我认为,我们 只需要在设备树中指定这些中断。

    我唯一的问题是如何在设备树中描述XIO2001以初始化此中断。

    此致,

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,Eric,

    未在此环境中测试设备。

    EEPROM设置定义了不同的配置设置。 我已经附上了这份文件的副本,希望这能有所帮助。

    此致,Nassere2e.ti.com/.../2553.8240104C.WR3  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,Nasser:

    这种配置对我们没有帮助。   

    在英特尔环境中,BIOS执行芯片初始化(作为标准PCI桥):中断分配给芯片。 如果没有BIOS,则应通过定义设备树来完成此初始化。

    我想,您可以在处理器平台上使用这些设备树,例如Linux操作系统。

    我的问题是如何在设备树中添加XIO2001。

    请告诉我在哪里可以得到答案?

    此致