AnsweredAssumed Answered

i.MX6 PCIe read hang

Question asked by jbd64 on Mar 14, 2017
Latest reply on Mar 17, 2017 by jbd64

Hi,

We designed a custom board based on imx6Dual, where it connects Intel i210 ethernet controller through PCIexpress.

We are using linux kernel 4.1.15_1.0.0 retrieved from Yocto BSP.

Intel IGB driver correctly identifies i210 component through PCIexpress, but linux hangs randomly (and quickly : ~ 1 to 10secs after the beginning of i210 initialization).

I added printk in every beginning and ending of pcie-imx6.c functions and igb functions, and it appears that it hangs at a read on a register : "value = readl(&hw_addr[reg]);" in "igb_rd32(struct e1000_hw *hw, u32 reg)" in "igb_main.c".

We searched for similar issue on imx6 pcie and it seems that imx6 pcie has some dysfunctions.

 

I found that PCIe PHY Tx values can be adjusted by IOMUXC_GPR8 register, depending on the hardware, but there is no clue for this. Are these values criticals and can they produce read hang ?

Is there any documentation on PHY Tx adjustements and explanations ?

 

In advance thank you for your support.

Any suggestions will be appreciated !

 

JBD.

Outcomes