mirror of
https://github.com/Ysurac/openmptcprouter.git
synced 2025-03-09 15:40:20 +00:00
Add bcm27xx 6.12 test support
This commit is contained in:
parent
4e8ade59cd
commit
bdb9b0046f
696 changed files with 297068 additions and 0 deletions
|
|
@ -0,0 +1,46 @@
|
|||
From d977697a78cd1c3c718cbf686321a26d3b71a7d4 Mon Sep 17 00:00:00 2001
|
||||
From: Phil Elwell <phil@raspberrypi.com>
|
||||
Date: Wed, 14 Dec 2022 15:00:51 +0000
|
||||
Subject: [PATCH 298/697] net: bcmgenet: Add 'eee' module parameter
|
||||
|
||||
On some switches, having EEE enabled causes the link to become
|
||||
unstable. With this patch, adding 'genet.eee=N' to the kernel command
|
||||
line will cause EEE to be disabled on the link.
|
||||
|
||||
See: https://github.com/raspberrypi/linux/issues/4289
|
||||
|
||||
Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
---
|
||||
drivers/net/ethernet/broadcom/genet/bcmgenet.c | 14 ++++++++++++++
|
||||
1 file changed, 14 insertions(+)
|
||||
|
||||
--- a/drivers/net/ethernet/broadcom/genet/bcmgenet.c
|
||||
+++ b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
|
||||
@@ -70,6 +70,9 @@ static void bcmgenet_set_rx_mode(struct
|
||||
static bool skip_umac_reset = false;
|
||||
module_param(skip_umac_reset, bool, 0444);
|
||||
MODULE_PARM_DESC(skip_umac_reset, "Skip UMAC reset step");
|
||||
+static bool eee = true;
|
||||
+module_param(eee, bool, 0444);
|
||||
+MODULE_PARM_DESC(eee, "Enable EEE (default Y)");
|
||||
|
||||
static inline void bcmgenet_writel(u32 value, void __iomem *offset)
|
||||
{
|
||||
@@ -3430,6 +3433,17 @@ static int bcmgenet_open(struct net_devi
|
||||
|
||||
bcmgenet_phy_pause_set(dev, priv->rx_pause, priv->tx_pause);
|
||||
|
||||
+ if (!eee) {
|
||||
+ struct ethtool_keee eee_data;
|
||||
+
|
||||
+ ret = bcmgenet_get_eee(dev, &eee_data);
|
||||
+ if (ret == 0) {
|
||||
+ eee_data.eee_enabled = 0;
|
||||
+ bcmgenet_set_eee(dev, &eee_data);
|
||||
+ netdev_warn(dev, "EEE disabled\n");
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
bcmgenet_netif_start(dev);
|
||||
|
||||
netif_tx_start_all_queues(dev);
|
||||
Loading…
Add table
Add a link
Reference in a new issue