Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1515540
| 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 |
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 | Next — Previous in thread | Next in thread | Find similar | Unroll 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