Colibri iMX6ULL: PHY not detected

Hi,

We are using the Colibri iMX6ULL with a custom carrier board we have designed. This carrier is based on the Iris and follows the reference schematics quite closely. We have mostly removed the interfaces we don’t require and used a form-factor to suit our product.

Everything seems to work well except on two units where we have found that the Colibri is unable to detect the on-module (i.e. built in Colibri) Ethernet PHY.

This seems to be the case in both uboot and Linux.

In Linux we get kernel messages:

[    1.273706] libphy: fec_enet_mii_bus: probed
[    1.286811] fec 20b4000.ethernet eth0: registered PHC device 0
[   17.273533] fec 20b4000.ethernet eth0: Unable to connect to phy

The output of “ethtool eth0” is:

Settings for eth0:
Cannot get device settings: No such device
        Supports Wake-on: g
        Wake-on: d
        Link detected: no

The odd thing is that when we connect the Colibri module to an Iris, the Ethernet works fine. However we have seen the case where everything has worked fine in our custom carrier board and then suddenly after a reboot we see this issue.

Trying different Colibri modules (all iMX6ULL) in the same custom carrier board shows that they work OK. So it would appear as if the issue is specific to that exact carrier board and module.

Also somewhat odd is that the Ethernet switch to which the carrier board is connected shows a link. So it is as if the line-side of the PHY is working but that there is some problem with the MAC - PHY connection (which is on the module).

Are you able to offer any insight into what could be causing this?

Thanks

  • Could you please specify version of OS image you are using?

  • Is it possible to share schematic snippets of your carrier board related to Ethernet?

Ther kernel is 4.14.170 based off of BSP3.0.4

I have included two snapshots of the schematics. The one shows the connections to the Colibri module through the SODIMM connector. The second snapshot shows the connections through some TVS diodes and the magnetics.

Due to our form factor constraints, the TVS diodes and magnetics have to be on a separate PCB connected by a 100 Ohm differential FFC. To help protect the module from ESD during production we have added some TCS units to the first PCB which contains the Colibri module.

[upload|rfHf7P/f6EW4IF2vs3ChVneIaoU=]

[upload|fBnw+XBMSZIYkljeP69QBp0MV0I=]

Could you please try BSP 5.1?

OK. We can give that a go and see if it helps.

Is there something specific which you think may have changed between 3.0.4 and 5.1 which may solve this issue?

Hello madone,

i can find any schematic snippets? Did you forget to attach them?

Best Regards,

Matthias

Hi Matthias,

I am able to see them in my post. I added them as inline images instead of attaching them.link text

I have attached them to this comment as well.

Sorry but I can’t see them as well.

Hello,
We seem to have exactly the same issue as the one described above.

We have a custom carrier board that we have used for a number of years with Colibri VF50 modules. We have a large number of products in the field with no Ethernet issues whatsoever.

We have recently investigated replacing the VF50 module with a IMX6ULL module. However, we cannot get the IMX6ULL Ethernet to work with our carrier board. The carrier board Ethernet circuit appears exactly the same as described in the “Colibri Carrier Board Design Guide”.

I have installed both IMX6ULL Linux LTS 3.0.4 and 5.6.0+build.18, both exhibit the same behavior.

On boot I see:

[ 1.730287] libphy: fec_enet_mii_bus: probed
[ 1.748658] fec 20b4000.ethernet eth0: registered PHC device 0
[ 18.370966] fec 20b4000.ethernet eth0: Unable to connect to phy

The carrier board Ethernet connector Link and Link Activity LED’s flash on and off repeatedly.

The IMX6ULL module Ethernet port appears to work fine in the Iris Rev 1.1 carrier board.

Any help will be most appreciated.

Dear @ashinton

Please create a separate thread and provide a schematic snippets of your carrier board Ethernet circuitry.