(1 << 7)
> +#define CMD_RX_PAUSE_IGNORE (1 << 8)
> +#define CMD_TX_ADDR_INS (1 << 9)
> +#define CMD_HD_EN (1 << 10)
> +#define CMD_SW_RESET_OLD(1 << 11)
> +#define CMD_SW_RESET(1 << 13)
> +#define CMD_LCL_LOOP_EN (1 << 15)
> +#define CMD_AUTO_CONFIG (1 << 22)
> +#define CMD_CNTL_FRM_EN (1 << 23)
> +#define CMD_NO_LEN_CHK (1 << 24)
> +#define CMD_RMT_LOOP_EN (1 << 25)
> +#define CMD_RX_ERR_DISC (1 << 26)
> +#define CMD_PRBL_EN (1 << 27)
> +#define CMD_TX_PAUSE_IGNORE (1 << 28)
> +#define CMD_TX_RX_EN(1 << 29)
> +#define CMD_RUNT_FILTER_DIS (1 << 30)
> +#define UMAC_MAC00x00c
> +#define UMAC_MAC10x010
> +#define UMAC_MAX_FRAME_LEN 0x014
> +#define UMAC_PAUSE_QUANTA0x018
> +#define UMAC_MODE0x044
> +#define MODE_LINK_STATUS(1 << 5)
> +#define UMAC_FRM_TAG00x048 /* outer tag */
> +#define UMAC_FRM_TAG10x04c /* inner tag */
> +#define UMAC_TX_IPG_LEN 0x05c
> +#define UMAC_EEE_CTRL0x064
> +#define EN_LPI_RX_PAUSE (1 << 0)
> +#define EN_LPI_TX_PFC (1 << 1)
> +#define EN_LPI_TX_PAUSE (1 << 2)
> +#define EEE_EN (1 << 3)
> +#define RX_FIFO_CHECK (1 << 4)
> +#define EEE_TX_CLK_DIS (1 << 5)
> +#define DIS_EEE_10M (1 << 6)
> +#define LP_IDLE_PREDICTION_MODE (1 << 7)
> +#define UMAC_EEE_LPI_TIMER 0x068
> +#define UMAC_EEE_WAKE_TIMER 0x06C
> +#define UMAC_EEE_REF_COUNT 0x070
> +#define EEE_REFERENCE_COUNT_MASK0x
> +#define UMAC_RX_IPG_INV 0x078
> +#define UMAC_MACSEC_PROG_TX_CRC 0x310
> +#define UMAC_MACSEC_CTRL 0x314
> +#define UMAC_PAUSE_CTRL 0x330
> +#define UMAC_TX_FLUSH0x334
> +#define UMAC_RX_FIFO_STATUS 0x338
> +#define UMAC_TX_FIFO_STATUS 0x33c
> +
> +#endif
>
Acked-by: Doug Berger
Thanks!
Doug
;h_source) ||
> + if (VALIDATE_MASK(eth_mask->h_dest) ||
> VALIDATE_MASK(eth_mask->h_source) ||
> VALIDATE_MASK(eth_mask->h_proto)) {
> netdev_err(dev, "rxnfc: Unsupported mask\n");
>
Well spotted. Thanks!
Acked-by: Doug Berger
On 7/28/2020 9:28 AM, Ioana Ciornei wrote:
>> Subject: Re: [PATCH RFC net-next 0/3] Restructure drivers/net/phy
>>
>>> I think that the MAINTAINERS file should also be updated to mention
>>> the new path to the drivers. Just did a quick grep after 'drivers/net/phy':
>>> F: drivers/net/phy/adin
t;
> priv->clk_eee = devm_clk_get_optional(&priv->pdev->dev, "enet-eee");
> if (IS_ERR(priv->clk_eee)) {
> dev_dbg(&priv->pdev->dev, "failed to get enet-eee clock\n");
> err = PTR_ERR(priv->clk_eee);
> - goto err;
> + goto err_clk_disable;
> }
>
> /* If this is an internal GPHY, power it on now, before UniMAC is
>
Acked-by: Doug Berger
Thanks!
err = dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(32));
> if (err)
> - goto err;
> + goto err_clk_disable;
>
> /* Mii wait queue */
> init_waitqueue_head(&priv->wq);
>
Acked-by: Doug Berger
Thanks!
hanges into a pull-request with fixes tag:
Fixes: c80d36ff63a5 ("net: bcmgenet: Use devm_clk_get_optional() to get
the clocks")
Resubmit the pull-requests with [PATCH net].
That will make them easier to apply to stable branches.
Otherwise:
Acked-by: Doug Berger
Thanks!
that the GENET
hardware must have been reset so the remainder of the
hardware programming is bypassed.
Fixes: f50932cca632 ("net: bcmgenet: add WAKE_FILTER support")
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broadcom/genet/bcmgenet_wol.c | 10 +++---
1 file changed, 7 insert
the bcmgenet_hfb_create_rxnfc_filter() function is modified
to access the register space directly so that it can't fail due
to memory allocation issues.
Fixes: f50932cca632 ("net: bcmgenet: add WAKE_FILTER support")
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broadcom/g
testing
suspend and resume from these deep sleep states.
Doug Berger (3):
net: bcmgenet: test MPD_EN when resuming
net: bcmgenet: test RBUF_ACPI_EN when resuming
net: bcmgenet: restore HFB filters on resume
drivers/net/ethernet/broadcom/genet/bcmgenet.c | 138 +
drivers
that the
GENET hardware must have been reset so the remainder of the
hardware programming is bypassed.
Fixes: 1a1d5106c1e3 ("net: bcmgenet: move clk_wol management to bcmgenet_wol")
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broadcom/genet/bcmgenet_wol.c | 12
1 file
n
is still unused and the kbuild test robot dutifully reported the
warning.
This commit once again removes the remaining unused hfb functions.
Fixes: 14da1510fedc ("Revert "net: bcmgenet: remove unused function in
bcmgenet.c"")
Reported-by: kbuild test robot
Signed-off-by:
t;net: bcmgenet: fix skb_len in
bcmgenet_xmit_single()") we can remove the software padding all
together and make use of hardware padding of short frames as
long as the hardware also always appends the FCS value to the
frame.
Fixes: 474ea9cafc45 ("net: bcmgenet: correctly pad short pack
The 16-bit value that holds a short in network byte order should
be declared as a restricted big endian type to allow type checks
to succeed during assignment.
Fixes: 3e370952287c ("net: bcmgenet: add support for ethtool rxnfc flows")
Reported-by: kbuild test robot
Signed-off-by: D
hardware to add the pad bytes if necessary.
The first two commits resolve warnings observed by the kbuild test
robot and are included here for simplicity of application.
Doug Berger (3):
net: bcmgenet: re-remove bcmgenet_hfb_add_filter
net: bcmgenet: use __be16 for htons(ETH_P_IP)
net: bcmgenet
needs its second argument.
Signed-off-by: Doug Berger
---
drivers/net/phy/phy.c| 12 ++--
drivers/net/phy/phy_device.c | 12 +---
drivers/net/phy/phylink.c| 3 +--
include/linux/phy.h | 2 +-
4 files changed, 13 insertions(+), 16 deletions(-)
diff --git a
On 5/13/2020 6:49 AM, Andrew Lunn wrote:
>> So, I think consistency of implementation is more important than fixing
>> this; the current behaviour has been established for many years now.
>
> Hi Russell, Doug
>
> With netlink ethtool we have the possibility of adding a new API to
> control this.
On 5/13/2020 2:52 AM, Russell King - ARM Linux admin wrote:
> On Mon, May 11, 2020 at 05:24:10PM -0700, Doug Berger wrote:
>> diff --git a/drivers/net/ethernet/broadcom/genet/bcmmii.c
>> b/drivers/net/ethernet/broadcom/genet/bcmmii.c
>> index 511d553a4d11..788da1ecea0c 100644
On 5/13/2020 2:42 AM, Russell King - ARM Linux admin wrote:
> On Mon, May 11, 2020 at 05:24:09PM -0700, Doug Berger wrote:
>> This commit introduces the phy_set_pause function to the phylib as
>> a helper to support the set_pauseparam ethtool method.
>>
>> It is
On 5/13/2020 2:20 AM, Russell King - ARM Linux admin wrote:
> On Wed, May 13, 2020 at 06:34:05AM +0100, Russell King - ARM Linux admin
> wrote:
>> On Tue, May 12, 2020 at 08:48:22PM -0700, Doug Berger wrote:
>>> On 5/12/2020 11:55 AM, Russell King - ARM Linux admin wrote
On 5/12/2020 10:34 PM, Russell King - ARM Linux admin wrote:
> On Tue, May 12, 2020 at 08:48:22PM -0700, Doug Berger wrote:
>> On 5/12/2020 11:55 AM, Russell King - ARM Linux admin wrote:
>>> On Tue, May 12, 2020 at 11:31:39AM -0700, Doug Berger wrote:
>>>> Thi
On 5/12/2020 11:55 AM, Russell King - ARM Linux admin wrote:
> On Tue, May 12, 2020 at 11:31:39AM -0700, Doug Berger wrote:
>> This was intended as a fix, but I thought it would be better to keep it
>> as part of this set for context and since net-next is currently open.
>&
On 5/12/2020 12:08 PM, Michal Kubecek wrote:
> On Tue, May 12, 2020 at 11:31:39AM -0700, Doug Berger wrote:
>> On 5/11/2020 5:47 PM, Andrew Lunn wrote:
>>> On Mon, May 11, 2020 at 05:24:07PM -0700, Doug Berger wrote:
>>>> A comment in uapi/linux/ethtool.h states &qu
On 5/11/2020 5:51 PM, Andrew Lunn wrote:
> On Mon, May 11, 2020 at 05:24:09PM -0700, Doug Berger wrote:
>> This commit introduces the phy_set_pause function to the phylib as
>> a helper to support the set_pauseparam ethtool method.
>>
>> It is hoped that the new
On 5/11/2020 5:47 PM, Andrew Lunn wrote:
> On Mon, May 11, 2020 at 05:24:07PM -0700, Doug Berger wrote:
>> A comment in uapi/linux/ethtool.h states "Drivers should reject a
>> non-zero setting of @autoneg when autoneogotiation is disabled (or
>> not supported) for t
: ethernet: Add helper to determine if pause
configuration is supported")
Signed-off-by: Doug Berger
---
drivers/net/phy/phy_device.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/net/phy/phy_device.c b/drivers/net/phy/phy_device.c
index c3a107cf578e..5a9618ba232e 100644
-
ement")
Signed-off-by: Doug Berger
---
drivers/net/phy/linkmode.c | 104 +--
drivers/net/phy/phy_device.c | 3 +-
drivers/net/phy/phylink.c| 6 +--
include/linux/linkmode.h | 3 +-
4 files changed, 88 insertions(+), 28 deletions(-)
di
functions are retained for all
existing users and for any desenting opinions on my interpretation
of the functionality.
Signed-off-by: Doug Berger
---
drivers/net/phy/phy_device.c | 31 +++
include/linux/phy.h | 1 +
2 files changed, 32 insertions(+)
diff --git a
.
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broadcom/genet/bcmgenet.c | 54 ++
drivers/net/ethernet/broadcom/genet/bcmgenet.h | 4 ++
drivers/net/ethernet/broadcom/genet/bcmmii.c | 38 ++
3 files changed, 89 insertions(+), 7 deletions(-)
diff
nd the changes
to the phylib will make it easier for them to support.
Many thanks to Russell King and Andrew Lunn for their efforts to clean
up and centralize support for pause and to document its shortcommings.
Doug Berger (4):
net: ethernet: validate pause autoneg setting
net: add autone
the clocks have been disabled.
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broadcom/genet/bcmgenet.c | 72 ++
drivers/net/ethernet/broadcom/genet/bcmgenet.h | 2 +
drivers/net/ethernet/broadcom/genet/bcmgenet_wol.c | 6 ++
3 files changed, 67 insertions(+), 13
On 4/29/20 3:07 PM, Doug Berger wrote:
> On 4/29/20 1:01 PM, Doug Berger wrote:
>> Changes in v2:
>> Corrected Signed-off-by for commit 3/7.
>>
>> This commit set adds support for waking from 'standby' using a
>> Rx Network Flow Classification fil
On 4/29/20 1:01 PM, Doug Berger wrote:
> Changes in v2:
> Corrected Signed-off-by for commit 3/7.
>
> This commit set adds support for waking from 'standby' using a
> Rx Network Flow Classification filter specified with ethtool.
>
> The first two commi
sleep.
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broadcom/genet/bcmgenet.c | 19 +++
drivers/net/ethernet/broadcom/genet/bcmgenet.h | 3 ++-
drivers/net/ethernet/broadcom/genet/bcmgenet_wol.c | 14 +++---
3 files changed, 20 insertions(+), 16 deletions(-)
the RX_CLS_FLOW_WAKE action (i.e. -2) can
wake the system from the 'standby' power state when the WAKE_FILTER
WoL method is enabled.
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broadcom/genet/bcmgenet.c | 5 ++-
drivers/net/ethernet/broadcom/genet/bcmgenet_wol.c | 43 +
implementation action 0 behaves no
differently from not specifying a rule.
The rules can be seen with ethtool commands of this form:
ethtool -n|-u|--show-nfc|--show-ntuple devname [rule N]
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broadcom/genet/bcmgenet.c | 483
ior to the 4.9 kernel release.
The following commit relocates the functions in the file to prevent
the need for additional forward declarations.
Next, support for the Rx Network Flow Classification interface of
ethtool is added.
Finally, support for the WAKE_FILTER wol method is added.
Doug
The Hardware Filter Block code will be used by ethtool functions
when defining flow types so this commit moves the functions in the
file to prevent the need for prototype declarations.
This is broken out to facilitate review.
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broadcom/genet
by keeping a software copy of the password and program it
during suspend.
Fixes: c51de7f3976b ("net: bcmgenet: add Wake-on-LAN support code")
Suggested-by: Florian Fainelli
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broadcom/genet/bcmgenet.h | 2 ++
drivers/net/etherne
promiscuous mode are
properly restored by the driver after the MAC may have been reset.
Fixes: b6e978e50444 ("net: bcmgenet: add suspend/resume callbacks")
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broadcom/genet/bcmgenet.c | 4
1 file changed, 4 insertions(+)
diff --git a/d
This reverts commit e2072600a24161b7ddcfb26814f69f5fbc8ef85a.
This commit restores the previous implementation of Hardware Filter
Block functions to the file for use in subsequent commits.
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broadcom/genet/bcmgenet.c | 122
From: Doug Berger
The GENET_POWER_WOL_MAGIC power up and power down code configures
the device for WoL when suspending and disables the WoL logic when
resuming. It makes sense that this code should also manage the WoL
clocking.
This commit consolidates the logic and moves it earlier in the
promiscuous mode are
properly restored by the driver after the MAC may have been reset.
Fixes: b6e978e50444 ("net: bcmgenet: add suspend/resume callbacks")
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broadcom/genet/bcmgenet.c | 4
1 file changed, 4 insertions(+)
diff --git a/d
by keeping a software copy of the password and program it
during suspend.
Fixes: c51de7f3976b ("net: bcmgenet: add Wake-on-LAN support code")
Suggested-by: Florian Fainelli
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broadcom/genet/bcmgenet.h | 2 ++
drivers/net/etherne
This reverts commit e2072600a24161b7ddcfb26814f69f5fbc8ef85a.
This commit restores the previous implementation of Hardware Filter
Block functions to the file for use in subsequent commits.
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broadcom/genet/bcmgenet.c | 122
The Hardware Filter Block code will be used by ethtool functions
when defining flow types so this commit moves the functions in the
file to prevent the need for prototype declarations.
This is broken out to facilitate review.
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broadcom/genet
implementation action 0 behaves no
differently from not specifying a rule.
The rules can be seen with ethtool commands of this form:
ethtool -n|-u|--show-nfc|--show-ntuple devname [rule N]
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broadcom/genet/bcmgenet.c | 483
functions in the file to prevent
the need for additional forward declarations.
Next, support for the Rx Network Flow Classification interface of
ethtool is added.
Finally, support for the WAKE_FILTER wol method is added.
Doug Berger (7):
net: bcmgenet: set Rx mode before starting netif
net
the RX_CLS_FLOW_WAKE action (i.e. -2) can
wake the system from the 'standby' power state when the WAKE_FILTER
WoL method is enabled.
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broadcom/genet/bcmgenet.c | 5 ++-
drivers/net/ethernet/broadcom/genet/bcmgenet_wol.c | 43 +
On 03/29/2018 10:51 AM, Doug Berger wrote:
> On 03/27/2018 12:47 PM, Florian Fainelli wrote:
>> There were a number of issues with setting the RX coalescing parameters:
>>
>> - we would not be preserving values that would have been configured
>> across close/open cal
On 03/27/2018 12:47 PM, Florian Fainelli wrote:
> There were a number of issues with setting the RX coalescing parameters:
>
> - we would not be preserving values that would have been configured
> across close/open calls, instead we would always reset to no timeout
> and 1 interrupt per packet
On 12/02/2017 11:26 AM, Arvind Yadav wrote:
> The change is to call free_netdev(), If of_match_node() will fail.
>
> Signed-off-by: Arvind Yadav
> ---
> drivers/net/ethernet/broadcom/genet/bcmgenet.c | 6 --
> 1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/net/ethe
On 12/04/2017 09:48 AM, Arvind Yadav wrote:
> The platform_get_irq() function returns negative number if an error occurs,
> Zero if No irq is found and positive number if irq gets successful.
> platform_get_irq() error checking only for zero is not correct.
>
> Signed-off-by: Arvind Yadav
> ---
>
ut(priv->phy_dn);
> platform_device_unregister(priv->mii_pdev);
> - platform_device_put(priv->mii_pdev);
> }
>
Acked-by: Doug Berger
correct that.
[1] https://lkml.org/lkml/2017/3/13/1145
[2] https://lkml.org/lkml/2017/3/9/890
Fixes: 101c431492d2 ("Merge
git://git.kernel.org/pub/scm/linux/kernel/git/davem/net")
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broadcom/genet/bcmgenet.c | 18 +-
1 fi
is called before bcmgenet_fini_dma in all paths
of execution.
Fixes: 4a0c081eff43 ("net: bcmgenet: call bcmgenet_dma_teardown in
bcmgenet_fini_dma")
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broadcom/genet/bcmgenet.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
er in bcmgenet_netif_stop().
The interrupts can still be enabled in the functions
bcmgenet_enable_tx_napi() and bcmgenet_enable_rx_napi(), but use
the ring context int_enable() method to keep the functionality
consistent and the code cleaner.
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broadcom/
associated bug) are removed so reset_umac
no longer needs to return a result, and that means init_umac
that calls reset_umac does not need to as well.
Fixes: 1c1008c793fa ("net: bcmgenet: add main driver file")
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broadcom/genet/bcmge
This commit consolidates more common functionality from
bcmgenet_close and bcmgenet_suspend into bcmgenet_netif_stop and
modifies the start and stop sequences to better suit the design
of the GENET hardware.
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broadcom/genet/bcmgenet.c | 49
Since each ring has its own NAPI instance it might as well be
initialized along with the other ring context.
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broadcom/genet/bcmgenet.c | 42 +-
1 file changed, 8 insertions(+), 34 deletions(-)
diff --git a/drivers/net
a PHY component, an explicit check
is made to prevent accessing an invalid phydev pointer when one
is not attached (e.g. interface is down).
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broadcom/genet/bcmgenet.c | 47 +-
drivers/net/ethernet/broadcom/genet/bcmge
Since the ring locks are not used in a hard IRQ context it is often
not necessary to disable global IRQs while waiting on a lock.
Using less restrictive lock and unlock calls improves the real-time
responsiveness of the system.
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broadcom/genet
ware reset EPHY after power on").
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broadcom/genet/bcmgenet.c | 1 -
drivers/net/ethernet/broadcom/genet/bcmgenet.h | 1 -
drivers/net/ethernet/broadcom/genet/bcmmii.c | 16
3 files changed, 18 deletions(-)
diff --git a/
on top of the fixes.
The first fix is provided as justification for why the set isn't
split between a net submission and a net-next submission.
Doug Berger (9):
net: bcmgenet: correct bad merge
net: bcmgenet: prevent duplicate calls of bcmgenet_dma_teardown
net: bcmgenet: enable loo
s\n", phy_name);
>
> return 0;
> }
> @@ -375,7 +376,7 @@ int bcmgenet_mii_probe(struct net_device *dev)
>* PHY speed which is needed for bcmgenet_mii_config() to configure
> * things appropriately.
>*/
> - ret = bcmgenet_mii_config(dev);
> + ret = bcmgenet_mii_config(dev, true);
> if (ret) {
> phy_disconnect(priv->phydev);
> return ret;
>
Looks good to me.
Reviewed-by: Doug Berger
bcmgenet_xmit_single()
and bcmgenet_xmit_frag() into the bcmgenet_xmit() function to
make the unmapping of control blocks cleaner.
Fixes: 1c1008c793fa ("net: bcmgenet: add main driver file")
Suggested-by: Florian Fainelli
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broa
to reuse of memory that is still in use by hardware.
Doug Berger (2):
net: bcmgenet: Fix unmapping of fragments in bcmgenet_xmit()
net: bcmgenet: Free skb after last Tx frag
drivers/net/ethernet/broadcom/genet/bcmgenet.c | 299 +
drivers/net/ethernet/broadcom/genet
the unmapping of dma mapped memory and cleaning up
the corresponding control block structure so that the skb is only
freed after the last associated transmit control block is reclaimed.
Fixes: 1c1008c793fa ("net: bcmgenet: add main driver file")
Signed-off-by: Doug Berger
---
drivers/ne
6ac3ce8295e6 ("net: bcmgenet: Remove excessive PHY reset")
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broadcom/genet/bcmmii.c | 15 ---
1 file changed, 15 deletions(-)
diff --git a/drivers/net/ethernet/broadcom/genet/bcmmii.c
b/drivers/net/ethernet/broadcom/genet/
On 03/14/2017 04:04 AM, David Laight wrote:
> From: Doug Berger
>> Sent: 14 March 2017 00:42
>> This commit changes the ioctl handling behavior to return the
>> EOPNOTSUPP error code instead of the EINVAL error code when an
>> unknown ioctl command value is detected.
On 03/13/2017 07:43 PM, Andrew Lunn wrote:
> On Mon, Mar 13, 2017 at 07:06:25PM -0700, Doug Berger wrote:
>> On 03/13/2017 06:06 PM, Andrew Lunn wrote:
>>> On Mon, Mar 13, 2017 at 05:41:32PM -0700, Doug Berger wrote:
>>>> +static int bcm7xxx_28nm_ephy_01_afe_config_
On 03/13/2017 06:06 PM, Andrew Lunn wrote:
> On Mon, Mar 13, 2017 at 05:41:32PM -0700, Doug Berger wrote:
>> +static int bcm7xxx_28nm_ephy_01_afe_config_init(struct phy_device *phydev)
>> +{
>> +int ret;
>> +
>> +/* set shadow mode 2 */
>
This commit adds support for the internal fast ethernet 10/100 PHY
found in the BCM7260, BCM7268, and BCM7271 devices.
Signed-off-by: Doug Berger
---
drivers/net/phy/bcm7xxx.c | 215 +-
include/linux/brcmphy.h | 3 +
2 files changed, 216
: decouple flow control from bcmgenet_tx_reclaim
Doug Berger (12):
net: phy: bcm-phylib: replace obsolete EEE macro references
net: phy: bcm7xxx: add support for 28nm EPHY
net: bcmgenet: simplify circular pointer arithmetic
net: bcmgenet: remove meaningless lines
net: bcmgenet: manage dma
A 2's complement subtraction will always do a borrow, so masking
off the sign bits is the same as conditionally adding (mask+1).
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broadcom/genet/bcmgenet.c | 19 +--
1 file changed, 5 insertions(+), 14 deletions(-)
diff --
The macros MDIO_AN_EEE_ADV_100TX and MDIO_AN_EEE_ADV_1000T are now
considered obsolete and are replaced in the kernel with the generic
macros MDIO_EEE_100TX and MDIO_EEE_1000T respectively.
Signed-off-by: Doug Berger
---
drivers/net/phy/bcm-phy-lib.c | 6 +++---
1 file changed, 3 insertions
is removed by this commit.
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broadcom/genet/bcmgenet.c | 10 +-
drivers/net/ethernet/broadcom/genet/bcmgenet_wol.c | 15 +--
2 files changed, 2 insertions(+), 23 deletions(-)
diff --git a/drivers/net/ethernet/broadcom
An assortment of non-functional lines are removed to reduce confusion
and some typos in comments are corrected.
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broadcom/genet/bcmgenet.c | 13 +++--
1 file changed, 3 insertions(+), 10 deletions(-)
diff --git a/drivers/net/ethernet
The device tree documentation must be updated to reflect the new compatible
strings "brcm,genet-v5" and "brcm,genet-mdio-v5" used by the GENETv5 driver.
Signed-off-by: Doug Berger
---
Documentation/devicetree/bindings/net/brcm,bcmgenet.txt| 10 +-
Documentation
This commit moves DMA interrupt enabling out of init_umac() and adds
the masking of these interrupts to the napi enable and disable code.
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broadcom/genet/bcmgenet.c | 39 +++---
1 file changed, 22 insertions(+), 17 deletions
A third interrupt cell can be provided to optionally specify
the interrupt used for handling Wake on LAN events.
Typically the wake up handling uses a separate interrupt
controller, so the interrupts-extended property is used to
accommodate this.
Signed-off-by: Doug Berger
---
Documentation
GENET_VER_FMT is expected for GENETv5.
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broadcom/genet/bcmgenet.c | 91 --
drivers/net/ethernet/broadcom/genet/bcmgenet.h | 12 +++-
drivers/net/ethernet/broadcom/genet/bcmmii.c | 62 ++
drivers/net/phy/mdio-bcm
unmasked at a later time.
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broadcom/genet/bcmgenet.c | 21 -
1 file changed, 20 insertions(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/broadcom/genet/bcmgenet.c
b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
index
: Doug Berger
---
drivers/net/ethernet/broadcom/genet/bcmgenet.c | 19 +++
1 file changed, 3 insertions(+), 16 deletions(-)
diff --git a/drivers/net/ethernet/broadcom/genet/bcmgenet.c
b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
index d90d366b286f..3b49c14128e2 100644
--- a
transmit stream.
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broadcom/genet/bcmgenet.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/net/ethernet/broadcom/genet/bcmgenet.c
b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
index 1f94ba1773dd..d90d366b286f
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
The location of the RBUF overflow and error counters has moved between
different version of the GENET MAC. This commit corrects the driver to
read from the correct locations depending on the version of the GENET
MAC.
Fixes: 1c1008c793fa ("net: bcmgenet: add main driver file")
Signed-of
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.
Fixes: b04a2f5b9ff5 ("net: bcmgenet: add support for new GENET PHY revision
scheme")
Signed-of
The gap between the Tx status counters and the Rx RUNT counters is now
being added to allow correct reporting of the registers.
Fixes: 1c1008c793fa ("net: bcmgenet: add main driver file")
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broadcom/genet/bcmgenet.c | 11 +++--
be detected and the Ethernet link will not be established.
This commit explicitly powers up the internal PHY when the GENET driver
is probed to correct this behavior.
Fixes: 1c1008c793fa ("net: bcmgenet: add main driver file")
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broa
From: Edwin Chan
Make sure clock is enabled for ethtool ops.
Fixes: 1c1008c793fa ("net: bcmgenet: add main driver file")
Signed-off-by: Edwin Chan
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broadcom/genet/bcmgenet.c | 18 ++
1 file changed, 18 insertion
it is more
appropriate.
Fixes: 1c1008c793fa ("net: bcmgenet: add main driver file")
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broadcom/genet/bcmgenet.c | 20 +++-
1 file changed, 11 insertions(+), 9 deletions(-)
diff --git a/drivers/net/ethernet/broa
Since the internal PHY is powered up during the open and resume
functions it should be powered back down if the functions fail.
Fixes: 1c1008c793fa ("net: bcmgenet: add main driver file")
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broadcom/genet/bcmgenet.c | 4
1 file
ned-off-by: Doug Berger
---
drivers/net/ethernet/broadcom/genet/bcmgenet.c | 73 ++
drivers/net/ethernet/broadcom/genet/bcmgenet.h | 6 ++-
2 files changed, 44 insertions(+), 35 deletions(-)
diff --git a/drivers/net/ethernet/broadcom/genet/bcmgenet.c
b/drivers/net/etherne
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
From: Doug Berger
The location of the RBUF overflow and error counters has moved between
different version of the GENET MAC. This commit corrects the driver to
read from the correct locations depending on the version of the GENET
MAC.
refs #SWLINUX-4311
Fixes: 1c1008c793fa ("net: bcm
From: Doug Berger
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 GENE
From: Doug Berger
Since the internal PHY is powered up during the open and resume
functions it should be powered back down if the functions fail.
refs #SWLINUX-4311
Fixes: 1c1008c793fa ("net: bcmgenet: add main driver file")
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broa
From: Doug Berger
When using the internal PHY it must be powered up when the MII is probed
or the PHY will not be detected. Since the PHY is powered up at reset
this has not been a problem. However, when the kernel is restarted with
kexec the PHY will likely be powered down when the kernel
From: Doug Berger
The gap between the Tx status counters and the Rx RUNT counters is now
being added to allow correct reporting of the registers.
refs #SWLINUX-4311
Fixes: 1c1008c793fa ("net: bcmgenet: add main driver file")
Signed-off-by: Doug Berger
---
drivers/net/ethernet/broa
From: Doug Berger
The bcmgenet_tx_reclaim() function is used to reclaim transmit
resources in different places within the driver. Most of them
should not affect the state of the transmit flow control.
This commit relocates the logic for waking tx queues based on
freed resources to the napi
1 - 100 of 102 matches
Mail list logo