linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Baruch Siach <baruch@tkos.co.il>
To: Russell King - ARM Linux <linux@armlinux.org.uk>
Cc: Antoine Tenart <antoine.tenart@bootlin.com>,
	davem@davemloft.net, netdev@vger.kernel.org,
	linux-kernel@vger.kernel.org, thomas.petazzoni@bootlin.com,
	maxime.chevallier@bootlin.com, gregory.clement@bootlin.com,
	miquel.raynal@bootlin.com, nadavh@marvell.com,
	stefanc@marvell.com, ymarkman@marvell.com, mw@semihalf.com
Subject: Re: [PATCH net] net: mvpp2: 10G modes aren't supported on all ports
Date: Tue, 11 Dec 2018 19:53:42 +0200	[thread overview]
Message-ID: <877egg6jbt.fsf@tkos.co.il> (raw)
In-Reply-To: <20181211163635.GG30658@n2100.armlinux.org.uk>

Hi Russell, Antoine,

Russell King - ARM Linux writes:
> On Tue, Dec 11, 2018 at 05:32:28PM +0100, Antoine Tenart wrote:
>> The mvpp2_phylink_validate() function sets all modes that are
>> supported by a given PPv2 port. A recent change made all ports to
>> advertise they support 10G modes in certain cases. This is not true,
>> as only the port #0 can do so. This patch fixes it.
>> 
>> Fixes: 01b3fd5ac97c ("net: mvpp2: fix detection of 10G SFP modules")
>> Cc: Baruch Siach <baruch@tkos.co.il>
>> Signed-off-by: Antoine Tenart <antoine.tenart@bootlin.com>
>> ---
>>  drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c | 14 ++++++++------
>>  1 file changed, 8 insertions(+), 6 deletions(-)
>> 
>> diff --git a/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c b/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c
>> index 125ea99418df..88aa488054a8 100644
>> --- a/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c
>> +++ b/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c
>> @@ -4405,12 +4405,14 @@ static void mvpp2_phylink_validate(struct net_device *dev,
>>  	case PHY_INTERFACE_MODE_10GKR:
>>  	case PHY_INTERFACE_MODE_XAUI:
>
> Are these modes supported on anything except port 0?  If not, you
> should be rejecting these, rather than just treating them as RGMII.

That is, something like this, right?

diff --git a/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c b/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c
index 125ea99418df..04cb0241ca2b 100644
--- a/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c
+++ b/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c
@@ -4404,13 +4404,18 @@ static void mvpp2_phylink_validate(struct net_device *dev,
 	switch (state->interface) {
 	case PHY_INTERFACE_MODE_10GKR:
 	case PHY_INTERFACE_MODE_XAUI:
+		if (port->gop_id != 0)
+			goto empty_set;
+		/* Fall-through */
 	case PHY_INTERFACE_MODE_NA:
-		phylink_set(mask, 10000baseCR_Full);
-		phylink_set(mask, 10000baseSR_Full);
-		phylink_set(mask, 10000baseLR_Full);
-		phylink_set(mask, 10000baseLRM_Full);
-		phylink_set(mask, 10000baseER_Full);
-		phylink_set(mask, 10000baseKR_Full);
+		if (port->gop_id == 0) {
+			phylink_set(mask, 10000baseCR_Full);
+			phylink_set(mask, 10000baseSR_Full);
+			phylink_set(mask, 10000baseLR_Full);
+			phylink_set(mask, 10000baseLRM_Full);
+			phylink_set(mask, 10000baseER_Full);
+			phylink_set(mask, 10000baseKR_Full);
+		}
 		/* Fall-through */
 	case PHY_INTERFACE_MODE_RGMII:
 	case PHY_INTERFACE_MODE_RGMII_ID:

baruch

-- 
     http://baruch.siach.name/blog/                  ~. .~   Tk Open Systems
=}------------------------------------------------ooO--U--Ooo------------{=
   - baruch@tkos.co.il - tel: +972.52.368.4656, http://www.tkos.co.il -

  reply	other threads:[~2018-12-11 17:53 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-12-11 16:32 [PATCH net] net: mvpp2: 10G modes aren't supported on all ports Antoine Tenart
2018-12-11 16:36 ` Russell King - ARM Linux
2018-12-11 17:53   ` Baruch Siach [this message]
2018-12-11 18:51     ` Russell King - ARM Linux
2018-12-12  9:30       ` Antoine Tenart
2018-12-12 14:14         ` Antoine Tenart
2018-12-12 14:36           ` Baruch Siach
2018-12-11 21:11   ` Stefan Chulski
2018-12-12  9:32     ` Antoine Tenart
2018-12-18 22:49 ` David Miller

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=877egg6jbt.fsf@tkos.co.il \
    --to=baruch@tkos.co.il \
    --cc=antoine.tenart@bootlin.com \
    --cc=davem@davemloft.net \
    --cc=gregory.clement@bootlin.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@armlinux.org.uk \
    --cc=maxime.chevallier@bootlin.com \
    --cc=miquel.raynal@bootlin.com \
    --cc=mw@semihalf.com \
    --cc=nadavh@marvell.com \
    --cc=netdev@vger.kernel.org \
    --cc=stefanc@marvell.com \
    --cc=thomas.petazzoni@bootlin.com \
    --cc=ymarkman@marvell.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).