[U-Boot] AR8031 Ethernet on mx6

Hi Jason,
I don't have a mx6qarm2 and would like to ask you if you could please confirm that Ethernet is functional on mx6qarm2 running the latest U-boot.
I am trying to get Ethernet working on mx6qsabresd, which also uses the same AR8031 PHY, but it is not working yet.
AR8031 is supposed to output a 125MHz clock to mx6q, but I see a 25MHz clock instead.
I do the same PHY init as in mx6qarm2.
Any ideas/suggestions are appreciated.
Thanks,
Fabio Estevam

On 15.09.2012 05:06, Fabio Estevam wrote:
Hi Jason,
I don't have a mx6qarm2 and would like to ask you if you could please confirm that Ethernet is functional on mx6qarm2 running the latest U-boot.
I am trying to get Ethernet working on mx6qsabresd, which also uses the same AR8031 PHY, but it is not working yet.
AR8031 is supposed to output a 125MHz clock to mx6q, but I see a 25MHz clock instead.
I do the same PHY init as in mx6qarm2.
Any ideas/suggestions are appreciated.
I think a coworker has an ARM2, so I'll try to ask him on Monday.
But while talking about ethernet on MX6: There seems to be a lot of issues with 1GB ethernet. Or is it just confusion? As I'm no expert on this, I'm really confused. That means that I don't know if we still really have some issues with it or not :(
The initial SabreLite boards (revision from September/Octorber last year?) had a hardware issue with 1GB ethernet. I was told that this hardware issue is fixed in the latest SabreLite boards with hardware revision D. But a coworker reports that it looks like GB ethernet even doesn't work with the U-Boot the SabreLite revision D ships with (?). Nor a more recent (patched?) U-Boot. I'm not sure if the recent (unpatched) mainline was tested, though. So this might be an issue of an U-Boot version which has SW patches for the old, broken ethernet applied, which now breaks the fixed hardware? Or is there still an hardware issue? I don't know.
In parallel, there is some rumor that on a Freescale board (SabreAuto? Have to check on Monday) 1GB doesn't work, too.
As mentioned, this are all reports I got, I haven't done any testing myself. If anybody could clarify on this, this would be nice.
Many thanks and best regards
Dirk

Hi Dirk,
On Sat, Sep 15, 2012 at 2:32 AM, Dirk Behme dirk.behme@gmail.com wrote:
I think a coworker has an ARM2, so I'll try to ask him on Monday.
Thanks for your help.
But while talking about ethernet on MX6: There seems to be a lot of issues with 1GB ethernet. Or is it just confusion? As I'm no expert on this, I'm really confused. That means that I don't know if we still really have some issues with it or not :(
The initial SabreLite boards (revision from September/Octorber last year?) had a hardware issue with 1GB ethernet. I was told that this hardware issue is fixed in the latest SabreLite boards with hardware revision D. But a coworker reports that it looks like GB ethernet even doesn't work with the U-Boot the SabreLite revision D ships with (?). Nor a more recent (patched?) U-Boot. I'm not sure if the recent (unpatched) mainline was tested, though. So this might be an issue of an U-Boot version which has SW patches for the old, broken ethernet applied, which now breaks the fixed hardware? Or is there still an hardware issue? I don't know.
I haven't worked with Gigabit Ethernet on mx6qsabrelite, but my understanding is that it has been functional now in U-boot.
Ccing Troy and Eric as they probably know all the details.
Regards,
Fabio Estevam

Dear Fabio Estevam,
Hi Dirk,
On Sat, Sep 15, 2012 at 2:32 AM, Dirk Behme dirk.behme@gmail.com wrote:
I think a coworker has an ARM2, so I'll try to ask him on Monday.
Thanks for your help.
But while talking about ethernet on MX6: There seems to be a lot of issues with 1GB ethernet. Or is it just confusion? As I'm no expert on this, I'm really confused. That means that I don't know if we still really have some issues with it or not :(
The initial SabreLite boards (revision from September/Octorber last year?) had a hardware issue with 1GB ethernet. I was told that this hardware issue is fixed in the latest SabreLite boards with hardware revision D. But a coworker reports that it looks like GB ethernet even doesn't work with the U-Boot the SabreLite revision D ships with (?). Nor a more recent (patched?) U-Boot. I'm not sure if the recent (unpatched) mainline was tested, though. So this might be an issue of an U-Boot version which has SW patches for the old, broken ethernet applied, which now breaks the fixed hardware? Or is there still an hardware issue? I don't know.
I haven't worked with Gigabit Ethernet on mx6qsabrelite, but my understanding is that it has been functional now in U-boot.
Ccing Troy and Eric as they probably know all the details.
It works for me, but I don't think it runs on "gigabit" speed.
Regards,
Fabio Estevam
Best regards, Marek Vasut

Hi all,
On 09/15/2012 12:26 PM, Marek Vasut wrote:
Dear Fabio Estevam,
Hi Dirk,
On Sat, Sep 15, 2012 at 2:32 AM, Dirk Behmedirk.behme@gmail.com wrote:
I think a coworker has an ARM2, so I'll try to ask him on Monday.
Thanks for your help.
But while talking about ethernet on MX6: There seems to be a lot of issues with 1GB ethernet. Or is it just confusion? As I'm no expert on this, I'm really confused. That means that I don't know if we still really have some issues with it or not :(
The initial SabreLite boards (revision from September/Octorber last year?) had a hardware issue with 1GB ethernet. I was told that this hardware issue is fixed in the latest SabreLite boards with hardware revision D. But a coworker reports that it looks like GB ethernet even doesn't work with the U-Boot the SabreLite revision D ships with (?). Nor a more recent (patched?) U-Boot. I'm not sure if the recent (unpatched) mainline was tested, though. So this might be an issue of an U-Boot version which has SW patches for the old, broken ethernet applied, which now breaks the fixed hardware? Or is there still an hardware issue? I don't know.
I haven't worked with Gigabit Ethernet on mx6qsabrelite, but my understanding is that it has been functional now in U-boot.
Ccing Troy and Eric as they probably know all the details.
It works for me, but I don't think it runs on "gigabit" speed.
The first shipments of Rev C (~10% of those shipped) and handful of prototype boards that preceded it) had an issue with pin 9 on the combination ethernet/USB jack. This pin was connected and should have been left floating.
This caused some issues properly negotiating Gb speeds, and Gb rarely worked.
The only patches circulated for this simply disabled Gb speeds entirely
Later (most) Rev C and all Rev D boards have been tested to function at Gb speeds, at least nominally (against the Gb switches we have in house) using u-boot-2009.08.
That said, we have seen quite a few reports of instability or inability to negotiate Gb speeds at customer sites. The majority of these have been addressed by replacing cables though there are some reports of packet loss as well.
In particular, using the 'tcp' option for NFS is sometimes helpful.
I suspect that some additional tweaking of the KSZ9021 PHY is needed.
In the 2009-08 Freescale and Boundary are distributing, there appears to be an occasional issue with negotiation.
In the normal, successful case, you get a message about the link status like this, with a
U-Boot > dhcp 12000000 192.168.0.162:uImage-imx6 Found phy at 6 FEC: Link is Up 796d BOOTP broadcast 1 DHCP client bound to address 192.168.0.119
... goes on to transfer file
But on occasion, I see negotiation fail: Found phy at 6 FEC: Link is down 7949
Note that the 7949 corresponds to register 1 (PHY status) and that bits 5 (A/N complete) and 2 (link status) are both clear.
Main-line U-Boot master seems to just work and sync up at Gb.
MX6QSABRELITE U-Boot > version U-Boot 2012.07-00490-ga6f0c4f (Sep 15 2012 - 13:17:31) arm-none-linux-gnueabi-gcc (4.4.4_09.06.2010) 4.4.4 GNU ld (GNU Binutils) 2.20.1.20100303
MX6QSABRELITE U-Boot > dhcp 12000000 192.168.0.162:uImage-imx6 BOOTP broadcast 1 DHCP client bound to address 192.168.0.119 Using FEC device TFTP from server 192.168.0.162; our IP address is 192.168.0.119 Filename 'uImage-imx6'. Load address: 0x12000000 Loading: ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ########### done Bytes transferred = 4379516 (42d37c hex) MX6QSABRELITE U-Boot > mii dump 6 0. (1140) -- PHY control register -- (8000:0000) 0.15 = 0 reset (4000:0000) 0.14 = 0 loopback (2040:0040) 0. 6,13 = b10 speed selection = 1000 Mbps (1000:1000) 0.12 = 1 A/N enable (0800:0000) 0.11 = 0 power-down (0400:0000) 0.10 = 0 isolate (0200:0000) 0. 9 = 0 restart A/N (0100:0100) 0. 8 = 1 duplex = full (0080:0000) 0. 7 = 0 collision test enable (003f:0000) 0. 5- 0 = 0 (reserved)
Note that we do have a flag 'disable_giga' to force 10/100: http://git.denx.de/?p=u-boot.git;a=blob;f=drivers/net/phy/micrel.c;h=30f3264...
Regards,
Eric

On 15.09.2012 05:06, Fabio Estevam wrote:
Hi Jason,
I don't have a mx6qarm2 and would like to ask you if you could please confirm that Ethernet is functional on mx6qarm2 running the latest U-boot.
I am trying to get Ethernet working on mx6qsabresd, which also uses the same AR8031 PHY, but it is not working yet.
AR8031 is supposed to output a 125MHz clock to mx6q, but I see a 25MHz clock instead.
I do the same PHY init as in mx6qarm2.
Any ideas/suggestions are appreciated.
Trying the recent mainline U-Boot (a6f0c4faa4c65a7b7048b) on an ARM2 board we get [1] after manually setting an ethaddr and the IP addresses.
Sometimes U-Boot seems to hang after 'MMC: FSL_SDHC: 0, FSL_SDHC: 1' but this might be an other issue.
Best regards
Dirk
[1]
U-Boot 2012.07-00490-ga6f0c4f (Sep 17 2012 - 10:01:46)
CPU: Freescale i.MX6Q rev1.0 at 792 MHz Reset cause: POR Board: MX6Q-Armadillo2 DRAM: 2 GiB WARNING: Caches not enabled MMC: FSL_SDHC: 0, FSL_SDHC: 1 In: serial Out: serial Err: serial Net: FEC Hit any key to stop autoboot: 0 MX6QARM2 U-Boot > printenv baudrate=115200 bootargs=console=ttymxc3,115200 root=/dev/nfs ip=dhcp nfsroot=:,v3,tcp bootcmd=mmc dev ${mmcdev};if mmc rescan ${mmcdev}; then if run loadbootscript; then run bootscript; else if run loi bootdelay=3 bootscript=echo Running bootscript from mmc ...; source console=ttymxc3 ethact=FEC ethaddr=00:19:B8:00:E5:4E fdt_high=0xffffffff initrd_high=0xffffffff ipaddr=172.17.0.1 loadaddr=0x10800000 loadbootscript=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script}; loaduimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${uimage} mmcargs=setenv bootargs console=${console},${baudrate} root=${mmcroot} mmcboot=echo Booting from mmc ...; run mmcargs; bootm mmcdev=1 mmcpart=2 mmcroot=/dev/mmcblk0p3 rootwait rw netargs=setenv bootargs console=${console},${baudrate} root=/dev/nfs ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp netboot=echo Booting from net ...; run netargs; dhcp ${uimage}; bootm script=boot.scr serverip=172.17.0.6 stderr=serial stdin=serial stdout=serial uimage=uImage Environment size: 1125/8188 bytes MX6QARM2 U-Boot > tftpboot ${loadaddr} uImage Using FEC device TFTP from server 172.17.0.6; our IP address is 172.17.0.1 Filename 'uImage'. Load address: 0x10800000 Loading: ################################################################# ################################################################# ################################################################# ############################################################# done Bytes transferred = 3756664 (395278 hex) MX6QARM2 U-Boot >

Hi Dirk,
On Mon, Sep 17, 2012 at 5:44 AM, Dirk Behme dirk.behme@de.bosch.com wrote:
Trying the recent mainline U-Boot (a6f0c4faa4c65a7b7048b) on an ARM2 board we get [1] after manually setting an ethaddr and the IP addresses.
Thanks for confirming that Ethernet works on mx6qarm2.
I will debug more on mx6qsabresd then.
Thanks,
Fabio Estevam
participants (5)
-
Dirk Behme
-
Dirk Behme
-
Eric Nelson
-
Fabio Estevam
-
Marek Vasut