Problem about two ethernet phys

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Problem about two ethernet phys

999 Views
cyndent
Contributor I

 Hi

   i'm working on  imx6ull board and have some problem on ethernet phy. The second phy do not work at the first power on. And now i find that i can not enter uboot command line at the first power on. i have already check about the setting about autoboot and set delay to 10s.

   The first phy can work well in uboot but the second can not even if it can work well in kernel. When i use 'dhcp' command it will run out time. I check about phy reg and it's all right.And it can change 100baseT to 10baseT when i draw cable out.

   I'm a beginner about uboot and linux kernel. i'm not sure which step is wrong while initial phy. And if i reload fec.ko driver in linux, the two phys will work well. But i'm using Ubuntu core, when i reload fec.ko , it will report 

[  175.260999] fec_init 20b4000.ethernet (unnamed net_device) (uninitialized): Invalid MAC address: 00:00:00:00:00:00                                                                       
[  175.554252] kobject_add_internal failed for 2188000.ethernet-2 with -EEXIST, don't try to register things with the same name in the same directory.                                      
[  175.567868] libphy: mii_bus 2188000.ethernet-2 failed to register

So i want to do a full initialization twice while initial in uboot or in kernel. But i do not know how to do it...

Can anyone give me some suggestion about that? Thanks!

0 Kudos
Reply
3 Replies

758 Views
jimmychan
NXP TechSupport
NXP TechSupport

which bsp are you using?

0 Kudos
Reply

758 Views
cyndent
Contributor I

4.1.15 and 4.9 from linux-imx.git - i.MX Linux Kernel 

 4.15-kernel from ubuntu core 

both have this problem

0 Kudos
Reply

758 Views
jimmychan
NXP TechSupport
NXP TechSupport

In u-boot, you can add the function to configure your PHY in the <your_board>.c file.

For your reference: mx6sabresd.c\mx6sabresd\freescale\board - uboot-imx - i.MX U-Boot 

There is a fec_phy_reset. Use the gpio to reset the PHY.

In kernel, you can modify the fec_fixup.c. It is the Linux driver for SoC and PHY special implement. For details, please refer to the BSP document i.MX_Reference_Manual.pdf Chapter 4.5.

You can download the document from here : i.MX Software|NXP 

e.g. Linux 4.9.88_2.0.0 BSP & Multimedia Codecs Documentation

0 Kudos
Reply