Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1515540

Re: [PATCH v3 2/2] net: ethernet: nb8800: handle all RGMII definitions

From Måns Rullgård <mans@mansr.com>
Newsgroups linux.kernel
Subject Re: [PATCH v3 2/2] net: ethernet: nb8800: handle all RGMII definitions
Date 2016-11-05 14:00 +0100
Message-ID <sA8JN-80o-19@gated-at.bofh.it> (permalink)
References <szRpv-5mx-5@gated-at.bofh.it> <szRpv-5mx-31@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


Sebastian Frias <sf84@laposte.net> writes:

> Commit a999589ccaae ("phylib: add RGMII-ID interface mode definition")
> and commit 7d400a4c5897 ("phylib: add PHY interface modes for internal
> delay for tx and rx only") added several RGMII definitions:
> PHY_INTERFACE_MODE_RGMII_ID, PHY_INTERFACE_MODE_RGMII_RXID and
> PHY_INTERFACE_MODE_RGMII_TXID to deal with internal delays.
>
> Those are all RGMII modes (1Gbit) and must be considered that way when
> setting the MAC mode or the pad mode for the HW to work properly.
>
> Signed-off-by: Sebastian Frias <sf84@laposte.net>
> ---
>  drivers/net/ethernet/aurora/nb8800.c | 8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/net/ethernet/aurora/nb8800.c b/drivers/net/ethernet/aurora/nb8800.c
> index d2855c9..fba2699 100644
> --- a/drivers/net/ethernet/aurora/nb8800.c
> +++ b/drivers/net/ethernet/aurora/nb8800.c
> @@ -598,6 +598,7 @@ static irqreturn_t nb8800_irq(int irq, void *dev_id)
>  static void nb8800_mac_config(struct net_device *dev)
>  {
>  	struct nb8800_priv *priv = netdev_priv(dev);
> +	struct phy_device *phydev = dev->phydev;
>  	bool gigabit = priv->speed == SPEED_1000;
>  	u32 mac_mode_mask = RGMII_MODE | HALF_DUPLEX | GMAC_MODE;
>  	u32 mac_mode = 0;
> @@ -609,7 +610,7 @@ static void nb8800_mac_config(struct net_device *dev)
>  		mac_mode |= HALF_DUPLEX;
>
>  	if (gigabit) {
> -		if (priv->phy_mode == PHY_INTERFACE_MODE_RGMII)
> +		if (phy_interface_is_rgmii(phydev))
>  			mac_mode |= RGMII_MODE;
>
>  		mac_mode |= GMAC_MODE;

As I said before, this part can/should be applied separately, although
personally I probably wouldn't have bothered adding a single-use variable.

> @@ -1278,9 +1279,8 @@ static int nb8800_tangox_init(struct net_device *dev)
>  		break;
>
>  	case PHY_INTERFACE_MODE_RGMII:
> -		pad_mode = PAD_MODE_RGMII;
> -		break;
> -
> +	case PHY_INTERFACE_MODE_RGMII_ID:
> +	case PHY_INTERFACE_MODE_RGMII_RXID:
>  	case PHY_INTERFACE_MODE_RGMII_TXID:
>  		pad_mode = PAD_MODE_RGMII;
>  		break;
> -- 
> 1.7.11.2
>

-- 
Måns Rullgård

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH v3 0/2] net: ethernet: nb8800: Do not apply TX delay at MAC  level Sebastian Frias <sf84@laposte.net> - 2016-11-04 19:30 +0100
  [PATCH v3 1/2] net: ethernet: nb8800: Do not apply TX delay at MAC  level Sebastian Frias <sf84@laposte.net> - 2016-11-04 19:30 +0100
  [PATCH v3 2/2] net: ethernet: nb8800: handle all RGMII definitions Sebastian Frias <sf84@laposte.net> - 2016-11-04 19:30 +0100
    Re: [PATCH v3 2/2] net: ethernet: nb8800: handle all RGMII definitions Måns Rullgård <mans@mansr.com> - 2016-11-05 14:00 +0100
      Re: [PATCH v3 2/2] net: ethernet: nb8800: handle all RGMII  definitions Sebastian Frias <sf84@laposte.net> - 2016-11-07 11:10 +0100
        Re: [PATCH v3 2/2] net: ethernet: nb8800: handle all RGMII definitions Måns Rullgård <mans@mansr.com> - 2016-11-07 13:00 +0100

csiph-web