From: Daniel Walker <danielwa@cisco.com>
To: Claudiu Manoil <claudiu.manoil@nxp.com>
Cc: "David S . Miller" <davem@davemloft.net>,
netdev@vger.kernel.org, sjarugum@cisco.com, hramdasi@cisco.com
Subject: Re: [PATCH net] gianfar: Don't force RGMII mode after reset, use defaults
Date: Tue, 12 Nov 2019 08:47:07 -0800 [thread overview]
Message-ID: <20191112164707.GQ18744@zorba> (raw)
In-Reply-To: <1573570511-32651-1-git-send-email-claudiu.manoil@nxp.com>
Just adding HEMANT who was involved in the original debug.
Also Sathish did the current debug.
On Tue, Nov 12, 2019 at 04:55:11PM +0200, Claudiu Manoil wrote:
> We received reports that forcing the MAC into RGMII (1 Gbps)
> interface mode after MAC reset occasionally disrupts operation
> of PHYs capable only of 100Mbps, even after adjust_link kicks
> in and re-adjusts the interface mode in MACCFG2 accordingly.
> Instead of forcing MACCFG2 into RGMII mode, let's use the default
> reset value of MACCFG2 (that leaves the IF_Mode field unset) and
> let adjust_link configure the correct mode from the beginning.
> MACCFG2_INIT_SETTINGS is dropped, only the PAD_CRC bit is preserved,
> the remaining fields (IF_Mode and Duplex) are left for adjust_link.
> Tested on boards with gigabit PHYs.
>
> MACCFG2_INIT_SETTINGS is there since day one, but the issue
> got visible after introducing the MAC reset and reconfig support,
> which added MAC reset at runtime, at interface open.
>
> Fixes: a328ac92d314 ("gianfar: Implement MAC reset and reconfig procedure")
>
> Reported-by: Daniel Walker <danielwa@cisco.com>
> Signed-off-by: Claudiu Manoil <claudiu.manoil@nxp.com>
> ---
> drivers/net/ethernet/freescale/gianfar.c | 3 ++-
> drivers/net/ethernet/freescale/gianfar.h | 2 +-
> 2 files changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/net/ethernet/freescale/gianfar.c b/drivers/net/ethernet/freescale/gianfar.c
> index 51ad864..0f4d13d 100644
> --- a/drivers/net/ethernet/freescale/gianfar.c
> +++ b/drivers/net/ethernet/freescale/gianfar.c
> @@ -3173,7 +3173,8 @@ void gfar_mac_reset(struct gfar_private *priv)
> gfar_write(®s->minflr, MINFLR_INIT_SETTINGS);
>
> /* Initialize MACCFG2. */
> - tempval = MACCFG2_INIT_SETTINGS;
> + tempval = gfar_read(®s->maccfg2);
> + tempval |= MACCFG2_PAD_CRC;
>
> /* eTSEC74 erratum: Rx frames of length MAXFRM or MAXFRM-1
> * are marked as truncated. Avoid this by MACCFG2[Huge Frame]=1,
> diff --git a/drivers/net/ethernet/freescale/gianfar.h b/drivers/net/ethernet/freescale/gianfar.h
> index f472a6d..cc70e03 100644
> --- a/drivers/net/ethernet/freescale/gianfar.h
> +++ b/drivers/net/ethernet/freescale/gianfar.h
> @@ -150,8 +150,8 @@ extern const char gfar_driver_version[];
> #define MACCFG1_SYNCD_TX_EN 0x00000002
> #define MACCFG1_TX_EN 0x00000001
>
> -#define MACCFG2_INIT_SETTINGS 0x00007205
> #define MACCFG2_FULL_DUPLEX 0x00000001
> +#define MACCFG2_PAD_CRC 0x00000004
> #define MACCFG2_IF 0x00000300
> #define MACCFG2_MII 0x00000100
> #define MACCFG2_GMII 0x00000200
> --
> 2.7.4
>
next prev parent reply other threads:[~2019-11-12 16:54 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-11-12 14:55 [PATCH net] gianfar: Don't force RGMII mode after reset, use defaults Claudiu Manoil
2019-11-12 16:47 ` Daniel Walker [this message]
2019-11-12 16:55 ` HEMANT RAMDASI (hramdasi)
2019-11-12 17:09 ` Claudiu Manoil
2019-11-12 17:28 ` HEMANT RAMDASI (hramdasi)
2019-11-13 14:00 ` Claudiu Manoil
2019-11-13 14:21 ` HEMANT RAMDASI (hramdasi)
2019-11-13 16:01 ` Claudiu Manoil
2020-02-19 18:57 ` Daniel Walker (danielwa)
2020-02-20 11:42 ` Claudiu Manoil
2019-11-21 15:58 ` Daniel Walker (danielwa)
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20191112164707.GQ18744@zorba \
--to=danielwa@cisco.com \
--cc=claudiu.manoil@nxp.com \
--cc=davem@davemloft.net \
--cc=hramdasi@cisco.com \
--cc=netdev@vger.kernel.org \
--cc=sjarugum@cisco.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.