Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1596528
| From | Doug Berger <opendmb@gmail.com> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | [PATCH net 3/8] net: bcmgenet: reserved phy revisions must be checked first |
| Date | 2017-03-10 02:00 +0100 |
| Message-ID | <tjh4u-4qP-33@gated-at.bofh.it> (permalink) |
| References | <tjh4t-4qP-7@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
From: Doug Berger <doug.berger@broadcom.com>
The reserved gphy_rev value of 0x01ff must be tested before the old
or new scheme for GPHY major versioning are tested, otherwise it will
be treated as 0xff00 according to the old scheme.
refs #SWLINUX-4311
Fixes: b04a2f5b9ff5 ("net: bcmgenet: add support for new GENET PHY revision scheme")
Signed-off-by: Doug Berger <doug.berger@broadcom.com>
---
drivers/net/ethernet/broadcom/genet/bcmgenet.c | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/drivers/net/ethernet/broadcom/genet/bcmgenet.c b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
index 01a172d95328..99f8d9024633 100644
--- a/drivers/net/ethernet/broadcom/genet/bcmgenet.c
+++ b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
@@ -3226,6 +3226,12 @@ static void bcmgenet_set_hw_params(struct bcmgenet_priv *priv)
*/
gphy_rev = reg & 0xffff;
+ /* This is reserved so should require special treatment */
+ if (gphy_rev == 0 || gphy_rev == 0x01ff) {
+ pr_warn("Invalid GPHY revision detected: 0x%04x\n", gphy_rev);
+ return;
+ }
+
/* This is the good old scheme, just GPHY major, no minor nor patch */
if ((gphy_rev & 0xf0) != 0)
priv->gphy_rev = gphy_rev << 8;
@@ -3234,12 +3240,6 @@ static void bcmgenet_set_hw_params(struct bcmgenet_priv *priv)
else if ((gphy_rev & 0xff00) != 0)
priv->gphy_rev = gphy_rev;
- /* This is reserved so should require special treatment */
- else if (gphy_rev == 0 || gphy_rev == 0x01ff) {
- pr_warn("Invalid GPHY revision detected: 0x%04x\n", gphy_rev);
- return;
- }
-
#ifdef CONFIG_PHYS_ADDR_T_64BIT
if (!(params->flags & GENET_HAS_40BITS))
pr_warn("GENET does not support 40-bits PA\n");
--
2.11.1
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
[PATCH net 0/8] net: bcmgenet: minor bug fixes Doug Berger <opendmb@gmail.com> - 2017-03-10 02:00 +0100 [PATCH net 5/8] net: bcmgenet: synchronize irq0 status between the isr and task Doug Berger <opendmb@gmail.com> - 2017-03-10 02:00 +0100 [PATCH net 8/8] net: bcmgenet: decouple flow control from bcmgenet_tx_reclaim Doug Berger <opendmb@gmail.com> - 2017-03-10 02:00 +0100 [PATCH net 6/8] net: bcmgenet: Power up the internal PHY before probing the MII Doug Berger <opendmb@gmail.com> - 2017-03-10 02:00 +0100 [PATCH net 7/8] net: bcmgenet: add begin/complete ethtool ops Doug Berger <opendmb@gmail.com> - 2017-03-10 02:00 +0100 [PATCH net 1/8] net: bcmgenet: correct the RBUF_OVFL_CNT and RBUF_ERR_CNT MIB values Doug Berger <opendmb@gmail.com> - 2017-03-10 02:00 +0100 [PATCH net 3/8] net: bcmgenet: reserved phy revisions must be checked first Doug Berger <opendmb@gmail.com> - 2017-03-10 02:00 +0100 [PATCH net 2/8] net: bcmgenet: correct MIB access of UniMAC RUNT counters Doug Berger <opendmb@gmail.com> - 2017-03-10 02:00 +0100
csiph-web