[U-Boot] TFTP pause and timeout on MX28 platforms

Hello,
When doing large TFTP downloads (files bigger than 10MiB) on my MX28 platform I'm sometimes experiencing pauses and timeouts. U-Boot will eventually restart the transmission and sometimes may successfully complete the download, but other times it won't. On my platform it was somewhat mitigated (but not resolved) by reverting this patch from Marek:
commit 67449098a86be18cbdb27345bebe8da57e5d8899 Author: Marek Vasut marex@denx.de Date: Wed Aug 29 03:49:50 2012 +0000
FEC: Rework the TX wait mechanism
The problem is reproducible in Freescale's MX28EVK. The larger the file, the more chances to see the problem. Please try with 50MiB files or larger. Has anybody else seen it?
On an old U-Boot v2009 TFTP transmission was twice slower than with v2013, but didn't suffer from this.

Dear Hector Palacios,
Hello,
When doing large TFTP downloads (files bigger than 10MiB) on my MX28 platform I'm sometimes experiencing pauses and timeouts. U-Boot will eventually restart the transmission and sometimes may successfully complete the download, but other times it won't. On my platform it was somewhat mitigated (but not resolved) by reverting this patch from Marek:
commit 67449098a86be18cbdb27345bebe8da57e5d8899 Author: Marek Vasut marex@denx.de Date: Wed Aug 29 03:49:50 2012 +0000
FEC: Rework the TX wait mechanism
The problem is reproducible in Freescale's MX28EVK. The larger the file, the more chances to see the problem. Please try with 50MiB files or larger. Has anybody else seen it?
On an old U-Boot v2009 TFTP transmission was twice slower than with v2013, but didn't suffer from this.
What version of u-boot do you use ? It was resolved in recent versions.
Best regards, Marek Vasut

Dear Marek Vasut,
On 03/13/2013 11:58 AM, Marek Vasut wrote:
Dear Hector Palacios,
Hello,
When doing large TFTP downloads (files bigger than 10MiB) on my MX28 platform I'm sometimes experiencing pauses and timeouts. U-Boot will eventually restart the transmission and sometimes may successfully complete the download, but other times it won't. On my platform it was somewhat mitigated (but not resolved) by reverting this patch from Marek:
commit 67449098a86be18cbdb27345bebe8da57e5d8899 Author: Marek Vasut marex@denx.de Date: Wed Aug 29 03:49:50 2012 +0000
FEC: Rework the TX wait mechanism
The problem is reproducible in Freescale's MX28EVK. The larger the file, the more chances to see the problem. Please try with 50MiB files or larger. Has anybody else seen it?
On an old U-Boot v2009 TFTP transmission was twice slower than with v2013, but didn't suffer from this.
What version of u-boot do you use ? It was resolved in recent versions.
I'm using v2013.01. Could you please point me to the commit(s) that solve it? The commits I see on drivers/net/fec_mxc.c after v2013.01 are from Troy Kisky and don't seem to address this. Thank you,

Dear Hector Palacios,
Dear Marek Vasut,
On 03/13/2013 11:58 AM, Marek Vasut wrote:
Dear Hector Palacios,
Hello,
When doing large TFTP downloads (files bigger than 10MiB) on my MX28 platform I'm sometimes experiencing pauses and timeouts. U-Boot will eventually restart the transmission and sometimes may successfully complete the download, but other times it won't. On my platform it was somewhat mitigated (but not resolved) by reverting this patch from Marek:
commit 67449098a86be18cbdb27345bebe8da57e5d8899 Author: Marek Vasut marex@denx.de Date: Wed Aug 29 03:49:50 2012 +0000
FEC: Rework the TX wait mechanism
The problem is reproducible in Freescale's MX28EVK. The larger the file, the more chances to see the problem. Please try with 50MiB files or larger. Has anybody else seen it?
On an old U-Boot v2009 TFTP transmission was twice slower than with v2013, but didn't suffer from this.
What version of u-boot do you use ? It was resolved in recent versions.
I'm using v2013.01. Could you please point me to the commit(s) that solve it? The commits I see on drivers/net/fec_mxc.c after v2013.01 are from Troy Kisky and don't seem to address this.
commit c0b5a3bbb0cd40a6b23b7b07e2182a5bcdc8c31c Author: Marek Vasut marex@denx.de Date: Wed Aug 29 03:49:51 2012 +0000
FEC: Replace magic contants
and the three before this one. Is your PHY operating correctly? This fixed the hangs on multiple MX28 platforms for me.
Thank you,
Best regards, Marek Vasut

Dear Marek Vasut,
On 03/13/2013 05:19 PM, Marek Vasut wrote:
Dear Hector Palacios,
Dear Marek Vasut,
On 03/13/2013 11:58 AM, Marek Vasut wrote:
Dear Hector Palacios,
Hello,
When doing large TFTP downloads (files bigger than 10MiB) on my MX28 platform I'm sometimes experiencing pauses and timeouts. U-Boot will eventually restart the transmission and sometimes may successfully complete the download, but other times it won't. On my platform it was somewhat mitigated (but not resolved) by reverting this patch from Marek:
commit 67449098a86be18cbdb27345bebe8da57e5d8899 Author: Marek Vasut marex@denx.de Date: Wed Aug 29 03:49:50 2012 +0000
FEC: Rework the TX wait mechanism
The problem is reproducible in Freescale's MX28EVK. The larger the file, the more chances to see the problem. Please try with 50MiB files or larger. Has anybody else seen it?
On an old U-Boot v2009 TFTP transmission was twice slower than with v2013, but didn't suffer from this.
What version of u-boot do you use ? It was resolved in recent versions.
I'm using v2013.01. Could you please point me to the commit(s) that solve it? The commits I see on drivers/net/fec_mxc.c after v2013.01 are from Troy Kisky and don't seem to address this.
commit c0b5a3bbb0cd40a6b23b7b07e2182a5bcdc8c31c Author: Marek Vasut marex@denx.de Date: Wed Aug 29 03:49:51 2012 +0000
FEC: Replace magic contants
and the three before this one. Is your PHY operating correctly? This fixed the hangs on multiple MX28 platforms for me.
v2013.01 contains all these patches but I was able to reproduce this both on my platform and on the mx28evk. My problem is not a hang, but TFTP pauses (1 to 3 seconds) and timeouts: ################################################################# #####################################################T T T T T T
At first I thought it was my platform's PHY (Micrel KSZ8031) but I also see it on mx28evk.

Dear Hector Palacios,
Dear Marek Vasut,
On 03/13/2013 05:19 PM, Marek Vasut wrote:
Dear Hector Palacios,
Dear Marek Vasut,
On 03/13/2013 11:58 AM, Marek Vasut wrote:
Dear Hector Palacios,
Hello,
When doing large TFTP downloads (files bigger than 10MiB) on my MX28 platform I'm sometimes experiencing pauses and timeouts. U-Boot will eventually restart the transmission and sometimes may successfully complete the download, but other times it won't. On my platform it was somewhat mitigated (but not resolved) by reverting this patch from Marek:
commit 67449098a86be18cbdb27345bebe8da57e5d8899 Author: Marek Vasut marex@denx.de Date: Wed Aug 29 03:49:50 2012 +0000
FEC: Rework the TX wait mechanism
The problem is reproducible in Freescale's MX28EVK. The larger the file, the more chances to see the problem. Please try with 50MiB files or larger. Has anybody else seen it?
On an old U-Boot v2009 TFTP transmission was twice slower than with v2013, but didn't suffer from this.
What version of u-boot do you use ? It was resolved in recent versions.
I'm using v2013.01. Could you please point me to the commit(s) that solve it? The commits I see on drivers/net/fec_mxc.c after v2013.01 are from Troy Kisky and don't seem to address this.
commit c0b5a3bbb0cd40a6b23b7b07e2182a5bcdc8c31c Author: Marek Vasut marex@denx.de Date: Wed Aug 29 03:49:51 2012 +0000
FEC: Replace magic contants
and the three before this one. Is your PHY operating correctly? This fixed the hangs on multiple MX28 platforms for me.
v2013.01 contains all these patches but I was able to reproduce this both on my platform and on the mx28evk. My problem is not a hang, but TFTP pauses (1 to 3 seconds) and timeouts: ################################################################# #####################################################T T T T T T
At first I thought it was my platform's PHY (Micrel KSZ8031) but I also see it on mx28evk.
Do you use PHYLIB (see configs/sc_sps_1.h for example)? Also check if your transceiver mode is not misconfigured. Moreover, see board/denx/m28evk/spl_boot.c fecmxc_mii_postcall(), maybe you also need to program some registers of the PHY (V11 and V10 prototypes used KSZ8051)?
Best regards, Marek Vasut

Dear Marek Vasut,
On 03/13/2013 05:52 PM, Marek Vasut wrote:
Dear Hector Palacios,
Dear Marek Vasut,
On 03/13/2013 05:19 PM, Marek Vasut wrote:
Dear Hector Palacios,
Dear Marek Vasut,
On 03/13/2013 11:58 AM, Marek Vasut wrote:
Dear Hector Palacios,
Hello,
When doing large TFTP downloads (files bigger than 10MiB) on my MX28 platform I'm sometimes experiencing pauses and timeouts. U-Boot will eventually restart the transmission and sometimes may successfully complete the download, but other times it won't. On my platform it was somewhat mitigated (but not resolved) by reverting this patch from Marek:
commit 67449098a86be18cbdb27345bebe8da57e5d8899 Author: Marek Vasut marex@denx.de Date: Wed Aug 29 03:49:50 2012 +0000
FEC: Rework the TX wait mechanism
The problem is reproducible in Freescale's MX28EVK. The larger the file, the more chances to see the problem. Please try with 50MiB files or larger. Has anybody else seen it?
On an old U-Boot v2009 TFTP transmission was twice slower than with v2013, but didn't suffer from this.
What version of u-boot do you use ? It was resolved in recent versions.
I'm using v2013.01. Could you please point me to the commit(s) that solve it? The commits I see on drivers/net/fec_mxc.c after v2013.01 are from Troy Kisky and don't seem to address this.
commit c0b5a3bbb0cd40a6b23b7b07e2182a5bcdc8c31c Author: Marek Vasut marex@denx.de Date: Wed Aug 29 03:49:51 2012 +0000
FEC: Replace magic contants
and the three before this one. Is your PHY operating correctly? This fixed the hangs on multiple MX28 platforms for me.
v2013.01 contains all these patches but I was able to reproduce this both on my platform and on the mx28evk. My problem is not a hang, but TFTP pauses (1 to 3 seconds) and timeouts: ################################################################# #####################################################T T T T T T
At first I thought it was my platform's PHY (Micrel KSZ8031) but I also see it on mx28evk.
Do you use PHYLIB (see configs/sc_sps_1.h for example)? Also check if your transceiver mode is not misconfigured. Moreover, see board/denx/m28evk/spl_boot.c fecmxc_mii_postcall(), maybe you also need to program some registers of the PHY (V11 and V10 prototypes used KSZ8051)?
No I don't use PHYLIB. My platform is based on Freescale's mx28evk (not DENX's m28evk). I saw fecmxc_mii_postcall() and I do a similar thing because of my phy model KSZ8031, but as I said the pauses and timeouts occur in both platforms (mx28evk uses a different PHY: SMSC LAN8720a).
Are you able to download a 50MiB file via TFTP several times without any problem on m28evk?
Best regards,

Dear Hector Palacios,
Dear Marek Vasut,
On 03/13/2013 05:52 PM, Marek Vasut wrote:
Dear Hector Palacios,
Dear Marek Vasut,
On 03/13/2013 05:19 PM, Marek Vasut wrote:
Dear Hector Palacios,
Dear Marek Vasut,
On 03/13/2013 11:58 AM, Marek Vasut wrote:
Dear Hector Palacios,
> Hello, > > When doing large TFTP downloads (files bigger than 10MiB) on my MX28 > platform I'm sometimes experiencing pauses and timeouts. U-Boot will > eventually restart the transmission and sometimes may successfully > complete the download, but other times it won't. > On my platform it was somewhat mitigated (but not resolved) by > reverting this patch from Marek: > > commit 67449098a86be18cbdb27345bebe8da57e5d8899 > Author: Marek Vasut marex@denx.de > Date: Wed Aug 29 03:49:50 2012 +0000 > > FEC: Rework the TX wait mechanism > > The problem is reproducible in Freescale's MX28EVK. > The larger the file, the more chances to see the problem. Please try > with 50MiB files or larger. Has anybody else seen it? > > On an old U-Boot v2009 TFTP transmission was twice slower than with > v2013, but didn't suffer from this.
What version of u-boot do you use ? It was resolved in recent versions.
I'm using v2013.01. Could you please point me to the commit(s) that solve it? The commits I see on drivers/net/fec_mxc.c after v2013.01 are from Troy Kisky and don't seem to address this.
commit c0b5a3bbb0cd40a6b23b7b07e2182a5bcdc8c31c Author: Marek Vasut marex@denx.de Date: Wed Aug 29 03:49:51 2012 +0000
FEC: Replace magic contants
and the three before this one. Is your PHY operating correctly? This fixed the hangs on multiple MX28 platforms for me.
v2013.01 contains all these patches but I was able to reproduce this both on my platform and on the mx28evk.
My problem is not a hang, but TFTP pauses (1 to 3 seconds) and timeouts: ################################################################# #####################################################T T T T T T
At first I thought it was my platform's PHY (Micrel KSZ8031) but I also see it on mx28evk.
Do you use PHYLIB (see configs/sc_sps_1.h for example)? Also check if your transceiver mode is not misconfigured. Moreover, see board/denx/m28evk/spl_boot.c fecmxc_mii_postcall(), maybe you also need to program some registers of the PHY (V11 and V10 prototypes used KSZ8051)?
No I don't use PHYLIB. My platform is based on Freescale's mx28evk (not DENX's m28evk). I saw fecmxc_mii_postcall() and I do a similar thing because of my phy model KSZ8031, but as I said the pauses and timeouts occur in both platforms (mx28evk uses a different PHY: SMSC LAN8720a).
Are you able to download a 50MiB file via TFTP several times without any problem on m28evk?
Yes.
btw. the original TFTP had size limit of 32MB, aren't you hitting this?
Best regards, Marek Vasut

Dear Marek Vasut,
On 03/13/2013 07:10 PM, Marek Vasut wrote:
Dear Hector Palacios,
Dear Marek Vasut,
On 03/13/2013 05:52 PM, Marek Vasut wrote:
Dear Hector Palacios,
Dear Marek Vasut,
On 03/13/2013 05:19 PM, Marek Vasut wrote:
Dear Hector Palacios,
Dear Marek Vasut,
On 03/13/2013 11:58 AM, Marek Vasut wrote: > Dear Hector Palacios, > >> Hello, >> >> When doing large TFTP downloads (files bigger than 10MiB) on my MX28 >> platform I'm sometimes experiencing pauses and timeouts. U-Boot will >> eventually restart the transmission and sometimes may successfully >> complete the download, but other times it won't. >> On my platform it was somewhat mitigated (but not resolved) by >> reverting this patch from Marek: >> >> commit 67449098a86be18cbdb27345bebe8da57e5d8899 >> Author: Marek Vasut marex@denx.de >> Date: Wed Aug 29 03:49:50 2012 +0000 >> >> FEC: Rework the TX wait mechanism >> >> The problem is reproducible in Freescale's MX28EVK. >> The larger the file, the more chances to see the problem. Please try >> with 50MiB files or larger. Has anybody else seen it? >> >> On an old U-Boot v2009 TFTP transmission was twice slower than with >> v2013, but didn't suffer from this. > > What version of u-boot do you use ? It was resolved in recent > versions.
I'm using v2013.01. Could you please point me to the commit(s) that solve it? The commits I see on drivers/net/fec_mxc.c after v2013.01 are from Troy Kisky and don't seem to address this.
commit c0b5a3bbb0cd40a6b23b7b07e2182a5bcdc8c31c Author: Marek Vasut marex@denx.de Date: Wed Aug 29 03:49:51 2012 +0000
FEC: Replace magic contants
and the three before this one. Is your PHY operating correctly? This fixed the hangs on multiple MX28 platforms for me.
v2013.01 contains all these patches but I was able to reproduce this both on my platform and on the mx28evk.
My problem is not a hang, but TFTP pauses (1 to 3 seconds) and timeouts: ################################################################# #####################################################T T T T T T
At first I thought it was my platform's PHY (Micrel KSZ8031) but I also see it on mx28evk.
Do you use PHYLIB (see configs/sc_sps_1.h for example)? Also check if your transceiver mode is not misconfigured. Moreover, see board/denx/m28evk/spl_boot.c fecmxc_mii_postcall(), maybe you also need to program some registers of the PHY (V11 and V10 prototypes used KSZ8051)?
No I don't use PHYLIB. My platform is based on Freescale's mx28evk (not DENX's m28evk). I saw fecmxc_mii_postcall() and I do a similar thing because of my phy model KSZ8031, but as I said the pauses and timeouts occur in both platforms (mx28evk uses a different PHY: SMSC LAN8720a).
Are you able to download a 50MiB file via TFTP several times without any problem on m28evk?
Yes.
Interesting. What PHY does m28evk platform have? I was thinking on a problem of the fec driver given that it can be reproduced in the mx28evk and in my platform, with different PHYs, but if it is not reproducible in m28evk I'll need to recheck the platform code.
btw. the original TFTP had size limit of 32MB, aren't you hitting this?
No it's not a server problem. I can sometimes transfer bigger files without problems. Other times it just pauses and/or timeouts after 3 or 4MiB.
Thank you

Dear Hector Palacios,
Dear Marek Vasut,
On 03/13/2013 07:10 PM, Marek Vasut wrote:
Dear Hector Palacios,
Dear Marek Vasut,
On 03/13/2013 05:52 PM, Marek Vasut wrote:
Dear Hector Palacios,
Dear Marek Vasut,
On 03/13/2013 05:19 PM, Marek Vasut wrote:
Dear Hector Palacios,
> Dear Marek Vasut, > > On 03/13/2013 11:58 AM, Marek Vasut wrote: >> Dear Hector Palacios, >> >>> Hello, >>> >>> When doing large TFTP downloads (files bigger than 10MiB) on my >>> MX28 platform I'm sometimes experiencing pauses and timeouts. >>> U-Boot will eventually restart the transmission and sometimes may >>> successfully complete the download, but other times it won't. >>> On my platform it was somewhat mitigated (but not resolved) by >>> reverting this patch from Marek: >>> >>> commit 67449098a86be18cbdb27345bebe8da57e5d8899 >>> Author: Marek Vasut marex@denx.de >>> Date: Wed Aug 29 03:49:50 2012 +0000 >>> >>> FEC: Rework the TX wait mechanism >>> >>> The problem is reproducible in Freescale's MX28EVK. >>> The larger the file, the more chances to see the problem. Please >>> try with 50MiB files or larger. Has anybody else seen it? >>> >>> On an old U-Boot v2009 TFTP transmission was twice slower than >>> with v2013, but didn't suffer from this. >> >> What version of u-boot do you use ? It was resolved in recent >> versions. > > I'm using v2013.01. > Could you please point me to the commit(s) that solve it? > The commits I see on drivers/net/fec_mxc.c after v2013.01 are from > Troy Kisky and don't seem to address this.
commit c0b5a3bbb0cd40a6b23b7b07e2182a5bcdc8c31c Author: Marek Vasut marex@denx.de Date: Wed Aug 29 03:49:51 2012 +0000
FEC: Replace magic contants
and the three before this one. Is your PHY operating correctly? This fixed the hangs on multiple MX28 platforms for me.
v2013.01 contains all these patches but I was able to reproduce this both on my platform and on the mx28evk.
My problem is not a hang, but TFTP pauses (1 to 3 seconds) and timeouts: ############################################################## ### #####################################################T T T T T T
At first I thought it was my platform's PHY (Micrel KSZ8031) but I also see it on mx28evk.
Do you use PHYLIB (see configs/sc_sps_1.h for example)? Also check if your transceiver mode is not misconfigured. Moreover, see board/denx/m28evk/spl_boot.c fecmxc_mii_postcall(), maybe you also need to program some registers of the PHY (V11 and V10 prototypes used KSZ8051)?
No I don't use PHYLIB. My platform is based on Freescale's mx28evk (not DENX's m28evk). I saw fecmxc_mii_postcall() and I do a similar thing because of my phy model KSZ8031, but as I said the pauses and timeouts occur in both platforms (mx28evk uses a different PHY: SMSC LAN8720a).
Are you able to download a 50MiB file via TFTP several times without any problem on m28evk?
Yes.
Interesting. What PHY does m28evk platform have? I was thinking on a problem of the fec driver given that it can be reproduced in the mx28evk and in my platform, with different PHYs, but if it is not reproducible in m28evk I'll need to recheck the platform code.
KSZ8021 I think. Did Fabio not verify the code works on his MX28EVK ?
btw. the original TFTP had size limit of 32MB, aren't you hitting this?
No it's not a server problem. I can sometimes transfer bigger files without problems. Other times it just pauses and/or timeouts after 3 or 4MiB.
Thank you
Best regards, Marek Vasut

On Thu, Mar 14, 2013 at 9:31 AM, Marek Vasut marex@denx.de wrote:
Interesting. What PHY does m28evk platform have? I was thinking on a problem of the fec driver given that it can be reproduced in the mx28evk and in my platform, with different PHYs, but if it is not reproducible in m28evk I'll need to recheck the platform code.
KSZ8021 I think. Did Fabio not verify the code works on his MX28EVK ?
After reading this thread, I tested yesterday a 50MB tftp transfer on mx28evk and I do see around two or three pauses/timeouts during the transfer.

On Wed, Mar 13, 2013 at 2:14 PM, Hector Palacios hector.palacios@digi.com wrote:
No I don't use PHYLIB. My platform is based on Freescale's mx28evk (not DENX's m28evk). I saw fecmxc_mii_postcall() and I do a similar thing because of my phy model KSZ8031, but as I said the pauses and timeouts occur in both platforms (mx28evk uses a different PHY: SMSC LAN8720a).
Just tried adding:
#define CONFIG_PHYLIB #define CONFIG_PHY_SMSC
but LAN8270 is not getting detected.
CPU: Freescale i.MX28 rev1.2 at 454 MHz BOOT: SSP SD/MMC #0, 3V3 I2C: ready DRAM: 128 MiB MMC: MXS MMC: 0 In: serial Out: serial Err: serial Net: Phy not found FEC0 [PRIME], FEC1 Hit any key to stop autoboot: 0 MX28EVK U-Boot >
I tried a 50MB tftp transfer here on mx28evk and I do see like 2 or 3 pauses during the transfer.
participants (3)
-
Fabio Estevam
-
Hector Palacios
-
Marek Vasut