All of lore.kernel.org
 help / color / mirror / Atom feed
From: antoine.tenart@bootlin.com (Antoine Tenart)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH net-next 02/10] net: phy: phylink: allow 10GKR interface to use in-band negotiation
Date: Mon, 19 Mar 2018 13:52:27 +0100	[thread overview]
Message-ID: <20180319125227.GI4519@kwain> (raw)
In-Reply-To: <20180319111205.GB2743@n2100.armlinux.org.uk>

Hi Russell,

On Mon, Mar 19, 2018 at 11:12:05AM +0000, Russell King - ARM Linux wrote:
> On Mon, Mar 19, 2018 at 09:52:52AM +0100, Antoine Tenart wrote:
> > 
> > Anyway, the reason to use in-band negotiation was also to avoid using
> > fixed-link. It would work but always report the link is up, which for
> > the user isn't a great experience as we have a way to detect this.
> > 
> > What would you suggest to achieve this in a reasonable way?
> 
> The intention of this test in phylink_of_phy_connect() is to avoid
> failing when there is no requirement for a PHY to be present (such as
> a fixed link, or an 802.3z link.)  However, with 10G PHYs such as the
> 3310, we need the PHY so we can read the speed from it, and so know
> whether to downgrade the MAC to SGMII mode, or having downgraded the
> MAC, upgrade it back to 10G mode when the PHY switches to 10G.
> 
> I'm guessing that you're wanting this for the DB boards, but I don't
> see why.  Do they not have PHYs?

You guessed right, that's exactly my use case. The DB boards (7k and 8k)
have 10G interfaces without PHYs. I could describe them as fixed-link
(it works), but it would be better not to require a PHY in
phylink_of_phy_connect() for such interfaces.

That's why I used in-band AN, which is wrong, but we still probably
need to add a check to allow such setups. I'm all ears for suggestions
as I do not have the full picture of all the supported modes and their
requirements.

Thanks!
Antoine

-- 
Antoine T?nart, Bootlin (formerly Free Electrons)
Embedded Linux and Kernel engineering
https://bootlin.com

WARNING: multiple messages have this Message-ID (diff)
From: Antoine Tenart <antoine.tenart@bootlin.com>
To: Russell King - ARM Linux <linux@armlinux.org.uk>
Cc: Antoine Tenart <antoine.tenart@bootlin.com>,
	davem@davemloft.net, kishon@ti.com, gregory.clement@bootlin.com,
	andrew@lunn.ch, jason@lakedaemon.net,
	sebastian.hesselbarth@gmail.com, netdev@vger.kernel.org,
	linux-kernel@vger.kernel.org, thomas.petazzoni@bootlin.com,
	maxime.chevallier@bootlin.com, miquel.raynal@bootlin.com,
	nadavh@marvell.com, stefanc@marvell.com, ymarkman@marvell.com,
	mw@semihalf.com, linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH net-next 02/10] net: phy: phylink: allow 10GKR interface to use in-band negotiation
Date: Mon, 19 Mar 2018 13:52:27 +0100	[thread overview]
Message-ID: <20180319125227.GI4519@kwain> (raw)
In-Reply-To: <20180319111205.GB2743@n2100.armlinux.org.uk>

Hi Russell,

On Mon, Mar 19, 2018 at 11:12:05AM +0000, Russell King - ARM Linux wrote:
> On Mon, Mar 19, 2018 at 09:52:52AM +0100, Antoine Tenart wrote:
> > 
> > Anyway, the reason to use in-band negotiation was also to avoid using
> > fixed-link. It would work but always report the link is up, which for
> > the user isn't a great experience as we have a way to detect this.
> > 
> > What would you suggest to achieve this in a reasonable way?
> 
> The intention of this test in phylink_of_phy_connect() is to avoid
> failing when there is no requirement for a PHY to be present (such as
> a fixed link, or an 802.3z link.)  However, with 10G PHYs such as the
> 3310, we need the PHY so we can read the speed from it, and so know
> whether to downgrade the MAC to SGMII mode, or having downgraded the
> MAC, upgrade it back to 10G mode when the PHY switches to 10G.
> 
> I'm guessing that you're wanting this for the DB boards, but I don't
> see why.  Do they not have PHYs?

You guessed right, that's exactly my use case. The DB boards (7k and 8k)
have 10G interfaces without PHYs. I could describe them as fixed-link
(it works), but it would be better not to require a PHY in
phylink_of_phy_connect() for such interfaces.

That's why I used in-band AN, which is wrong, but we still probably
need to add a check to allow such setups. I'm all ears for suggestions
as I do not have the full picture of all the supported modes and their
requirements.

Thanks!
Antoine

-- 
Antoine Ténart, Bootlin (formerly Free Electrons)
Embedded Linux and Kernel engineering
https://bootlin.com

  reply	other threads:[~2018-03-19 12:52 UTC|newest]

Thread overview: 81+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-03-16 10:33 [PATCH net-next 00/10] net: mvpp2: phylink conversion Antoine Tenart
2018-03-16 10:33 ` Antoine Tenart
2018-03-16 10:33 ` Antoine Tenart
2018-03-16 10:33 ` [PATCH net-next 01/10] net: mvpp2: align the ethtool ops definition Antoine Tenart
2018-03-16 10:33   ` Antoine Tenart
2018-03-16 10:33 ` [PATCH net-next 02/10] net: phy: phylink: allow 10GKR interface to use in-band negotiation Antoine Tenart
2018-03-16 10:33   ` Antoine Tenart
2018-03-16 10:33   ` Antoine Tenart
2018-03-16 15:53   ` Russell King - ARM Linux
2018-03-16 15:53     ` Russell King - ARM Linux
2018-03-19  8:52     ` Antoine Tenart
2018-03-19  8:52       ` Antoine Tenart
2018-03-19 11:12       ` Russell King - ARM Linux
2018-03-19 11:12         ` Russell King - ARM Linux
2018-03-19 12:52         ` Antoine Tenart [this message]
2018-03-19 12:52           ` Antoine Tenart
2018-03-19 12:59           ` Andrew Lunn
2018-03-19 12:59             ` Andrew Lunn
2018-03-19 13:03             ` [EXT] " Stefan Chulski
2018-03-19 13:03               ` Stefan Chulski
2018-03-19 13:03               ` Stefan Chulski
2018-03-19 13:08               ` Andrew Lunn
2018-03-19 13:08                 ` Andrew Lunn
2018-03-19 13:08                 ` Andrew Lunn
2018-03-19 13:13                 ` Antoine Tenart
2018-03-19 13:13                   ` Antoine Tenart
2018-03-19 13:13                   ` Antoine Tenart
2018-03-19 13:24                   ` Andrew Lunn
2018-03-19 13:24                     ` Andrew Lunn
2018-03-19 13:24                     ` Andrew Lunn
2018-03-19 13:19                 ` Stefan Chulski
2018-03-19 13:19                   ` Stefan Chulski
2018-03-19 13:19                   ` Stefan Chulski
2018-03-19 13:23                   ` Andrew Lunn
2018-03-19 13:23                     ` Andrew Lunn
2018-03-19 13:23                     ` Andrew Lunn
2018-03-19 13:42                   ` Russell King - ARM Linux
2018-03-19 13:42                     ` Russell King - ARM Linux
2018-03-19 13:42                     ` Russell King - ARM Linux
2018-03-19 13:10             ` Antoine Tenart
2018-03-19 13:10               ` Antoine Tenart
2018-03-19 13:18               ` Russell King - ARM Linux
2018-03-19 13:18                 ` Russell King - ARM Linux
2018-03-19 13:26                 ` Antoine Tenart
2018-03-19 13:26                   ` Antoine Tenart
2018-03-19 12:58         ` [EXT] " Stefan Chulski
2018-03-19 12:58           ` Stefan Chulski
2018-03-19 13:01           ` Yan Markman
2018-03-19 13:01             ` Yan Markman
2018-03-19 13:01             ` Yan Markman
2018-03-19 13:05             ` Russell King - ARM Linux
2018-03-19 13:05               ` Russell King - ARM Linux
2018-03-19 13:05               ` Russell King - ARM Linux
2018-03-16 10:33 ` [PATCH net-next 03/10] net: mvpp2: phylink support Antoine Tenart
2018-03-16 10:33   ` Antoine Tenart
2018-03-16 16:03   ` Russell King - ARM Linux
2018-03-16 16:03     ` Russell King - ARM Linux
2018-03-19  8:45     ` Antoine Tenart
2018-03-19  8:45       ` Antoine Tenart
2018-03-16 10:33 ` [PATCH net-next 04/10] phy: add 2.5G SGMII mode to the phy_mode enum Antoine Tenart
2018-03-16 10:33   ` Antoine Tenart
2018-03-16 10:33   ` Antoine Tenart
2018-03-19  9:46   ` Kishon Vijay Abraham I
2018-03-19  9:46     ` Kishon Vijay Abraham I
2018-03-19  9:46     ` Kishon Vijay Abraham I
2018-03-16 10:33 ` [PATCH net-next 05/10] phy: cp110-comphy: 2.5G SGMII mode Antoine Tenart
2018-03-16 10:33   ` Antoine Tenart
2018-03-18  4:42   ` Baruch Siach
2018-03-18  4:42     ` Baruch Siach
2018-03-19  8:44     ` Antoine Tenart
2018-03-19  8:44       ` Antoine Tenart
2018-03-16 10:33 ` [PATCH net-next 06/10] net: mvpp2: 1000baseX support Antoine Tenart
2018-03-16 10:33   ` Antoine Tenart
2018-03-16 10:33 ` [PATCH net-next 07/10] net: mvpp2: 2500baseX support Antoine Tenart
2018-03-16 10:33   ` Antoine Tenart
2018-03-16 10:33 ` [PATCH net-next 08/10] arm64: dts: marvell: 7040-db: set the 10G interface management to in-band Antoine Tenart
2018-03-16 10:33   ` Antoine Tenart
2018-03-16 10:33 ` [PATCH net-next 09/10] arm64: dts: marvell: 8040-db: set the 10G interfaces " Antoine Tenart
2018-03-16 10:33   ` Antoine Tenart
2018-03-16 10:33 ` [PATCH net-next 10/10] arm64: dts: marvell: mcbin: enable the fourth network interface Antoine Tenart
2018-03-16 10:33   ` Antoine Tenart

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=20180319125227.GI4519@kwain \
    --to=antoine.tenart@bootlin.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    /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.