How to configure IMX6 As a PCIe Endpoint?

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

How to configure IMX6 As a PCIe Endpoint?

ソリューションへジャンプ
2,541件の閲覧回数
elijahbrown
Contributor III

Hi, I'm trying to configure the IMX6Q as a PCIe endpoint.  It's hooked up to another board which is the root complex.  I'm using the Freescale bare metal SDK PCIe test as a starting point.  I'm calling pcie_init() with the parameter PCIE_DM_MODE_EP instead of PCIE_DM_MODE_RC.  At this point the link will not come up.  I have a JTAG debugger hooked up and it seems like the CPU get stuck in the wait_link_up() function - it gets inside there and then the debugger is no longer able to halt the core.  If I set breakpoints and single step through wait_link_up(), it goes through OK but the link never succeeds.  Any ideas?  Is there code anywhere for the bare metal SDK to configure the PCIe as an endpoint instead of a root complex? 

ラベル(2)
0 件の賞賛
返信
1 解決策
2,047件の閲覧回数
elijahbrown
Contributor III

Thanks, Norbel suggested we enable the 100MHz SATA clock in the ethernet PLL and that seems to have fixed the issue.  Now I need to figure out how to configure registers via DBI, I will post another thread about that. 

元の投稿で解決策を見る

0 件の賞賛
返信
2 返答(返信)
2,047件の閲覧回数
igorpadykov
NXP Employee
NXP Employee

HI Elijah

please look at

i.MX6Q PCIe EP/RC Validation System

Best regards

igor

-----------------------------------------------------------------------------------------------------------------------

Note: If this post answers your question, please click the Correct Answer button. Thank you!

-----------------------------------------------------------------------------------------------------------------------

0 件の賞賛
返信
2,048件の閲覧回数
elijahbrown
Contributor III

Thanks, Norbel suggested we enable the 100MHz SATA clock in the ethernet PLL and that seems to have fixed the issue.  Now I need to figure out how to configure registers via DBI, I will post another thread about that. 

0 件の賞賛
返信