Commit b3b8812e authored by David S. Miller's avatar David S. Miller

Merge branch 'bcmgenet-minor-bug-fixes'

Doug Berger says:

====================
net: bcmgenet: minor bug fixes

v2: Accidentally sent the wrong set after rebasing.

This collection contains a number of fixes for minor issues with the
bcmgenet driver most of which were present in the initial submission
of the driver.

Some bugs were uncovered by inspection prior to the upcoming update for
GENETv5 support:
  net: bcmgenet: correct the RBUF_OVFL_CNT and RBUF_ERR_CNT MIB values
  net: bcmgenet: correct MIB access of UniMAC RUNT counters
  net: bcmgenet: reserved phy revisions must be checked first
  net: bcmgenet: synchronize irq0 status between the isr and task

Others bugs were found in power management testing:
  net: bcmgenet: power down internal phy if open or resume fails
  net: bcmgenet: Power up the internal PHY before probing the MII
  net: bcmgenet: decouple flow control from bcmgenet_tx_reclaim
  net: bcmgenet: add begin/complete ethtool ops

Doug Berger (7):
  net: bcmgenet: correct the RBUF_OVFL_CNT and RBUF_ERR_CNT MIB values
  net: bcmgenet: correct MIB access of UniMAC RUNT counters
  net: bcmgenet: reserved phy revisions must be checked first
  net: bcmgenet: power down internal phy if open or resume fails
  net: bcmgenet: synchronize irq0 status between the isr and task
  net: bcmgenet: Power up the internal PHY before probing the MII
  net: bcmgenet: decouple flow control from bcmgenet_tx_reclaim

Edwin Chan (1):
  net: bcmgenet: add begin/complete ethtool ops
====================
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parents d7aba644 6d22fe14
/* /*
* Copyright (c) 2014 Broadcom Corporation * Copyright (c) 2014-2017 Broadcom
* *
* This program is free software; you can redistribute it and/or modify * This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as * it under the terms of the GNU General Public License version 2 as
...@@ -214,7 +214,9 @@ struct bcmgenet_mib_counters { ...@@ -214,7 +214,9 @@ struct bcmgenet_mib_counters {
#define MDIO_REG_SHIFT 16 #define MDIO_REG_SHIFT 16
#define MDIO_REG_MASK 0x1F #define MDIO_REG_MASK 0x1F
#define UMAC_RBUF_OVFL_CNT 0x61C #define UMAC_RBUF_OVFL_CNT_V1 0x61C
#define RBUF_OVFL_CNT_V2 0x80
#define RBUF_OVFL_CNT_V3PLUS 0x94
#define UMAC_MPD_CTRL 0x620 #define UMAC_MPD_CTRL 0x620
#define MPD_EN (1 << 0) #define MPD_EN (1 << 0)
...@@ -224,7 +226,9 @@ struct bcmgenet_mib_counters { ...@@ -224,7 +226,9 @@ struct bcmgenet_mib_counters {
#define UMAC_MPD_PW_MS 0x624 #define UMAC_MPD_PW_MS 0x624
#define UMAC_MPD_PW_LS 0x628 #define UMAC_MPD_PW_LS 0x628
#define UMAC_RBUF_ERR_CNT 0x634 #define UMAC_RBUF_ERR_CNT_V1 0x634
#define RBUF_ERR_CNT_V2 0x84
#define RBUF_ERR_CNT_V3PLUS 0x98
#define UMAC_MDF_ERR_CNT 0x638 #define UMAC_MDF_ERR_CNT 0x638
#define UMAC_MDF_CTRL 0x650 #define UMAC_MDF_CTRL 0x650
#define UMAC_MDF_ADDR 0x654 #define UMAC_MDF_ADDR 0x654
...@@ -619,11 +623,13 @@ struct bcmgenet_priv { ...@@ -619,11 +623,13 @@ struct bcmgenet_priv {
struct work_struct bcmgenet_irq_work; struct work_struct bcmgenet_irq_work;
int irq0; int irq0;
int irq1; int irq1;
unsigned int irq0_stat;
unsigned int irq1_stat;
int wol_irq; int wol_irq;
bool wol_irq_disabled; bool wol_irq_disabled;
/* shared status */
spinlock_t lock;
unsigned int irq0_stat;
/* HW descriptors/checksum variables */ /* HW descriptors/checksum variables */
bool desc_64b_en; bool desc_64b_en;
bool desc_rxchk_en; bool desc_rxchk_en;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment