Skip to content

Commit

Permalink
[igb]: support broadcom 54616 phy for Intel igb driver (sonic-net#3)
Browse files Browse the repository at this point in the history
  • Loading branch information
lguohan authored Dec 5, 2017
1 parent e7e230f commit 080b1ac
Show file tree
Hide file tree
Showing 2 changed files with 62 additions and 0 deletions.
61 changes: 61 additions & 0 deletions patch/0011-support-Broadcom-54616-Phy-for-Intel-igb-driver.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
From 6d396497162d143ff7476bdcdffa29923ff7a49e Mon Sep 17 00:00:00 2001
From: Guohan Lu <gulv@microsoft.com>
Date: Tue, 5 Dec 2017 13:41:45 +0000
Subject: [PATCH] Support Broadcom 54616 Phy for Intel igb driver

---
drivers/net/ethernet/intel/igb/e1000_82575.c | 5 +++++
drivers/net/ethernet/intel/igb/e1000_defines.h | 1 +
drivers/net/ethernet/intel/igb/e1000_hw.h | 1 +
3 files changed, 7 insertions(+)

diff --git a/drivers/net/ethernet/intel/igb/e1000_82575.c b/drivers/net/ethernet/intel/igb/e1000_82575.c
index a61447f..394ecd8 100644
--- a/drivers/net/ethernet/intel/igb/e1000_82575.c
+++ b/drivers/net/ethernet/intel/igb/e1000_82575.c
@@ -328,6 +328,9 @@ static s32 igb_init_phy_params_82575(struct e1000_hw *hw)
phy->ops.set_d3_lplu_state = igb_set_d3_lplu_state_82580;
phy->ops.force_speed_duplex = igb_phy_force_speed_duplex_m88;
break;
+ case BCM54616_E_PHY_ID:
+ phy->type = e1000_phy_bcm54616;
+ break;
default:
ret_val = -E1000_ERR_PHY;
goto out;
@@ -1647,6 +1650,8 @@ static s32 igb_setup_copper_link_82575(struct e1000_hw *hw)
case e1000_phy_82580:
ret_val = igb_copper_link_setup_82580(hw);
break;
+ case e1000_phy_bcm54616:
+ break;
default:
ret_val = -E1000_ERR_PHY;
break;
diff --git a/drivers/net/ethernet/intel/igb/e1000_defines.h b/drivers/net/ethernet/intel/igb/e1000_defines.h
index 2688180..ce95b7e 100644
--- a/drivers/net/ethernet/intel/igb/e1000_defines.h
+++ b/drivers/net/ethernet/intel/igb/e1000_defines.h
@@ -867,6 +867,7 @@
#define I210_I_PHY_ID 0x01410C00
#define M88E1543_E_PHY_ID 0x01410EA0
#define M88E1512_E_PHY_ID 0x01410DD0
+#define BCM54616_E_PHY_ID 0x03625D10

/* M88E1000 Specific Registers */
#define M88E1000_PHY_SPEC_CTRL 0x10 /* PHY Specific Control Register */
diff --git a/drivers/net/ethernet/intel/igb/e1000_hw.h b/drivers/net/ethernet/intel/igb/e1000_hw.h
index 2fb2213..644d8f5 100644
--- a/drivers/net/ethernet/intel/igb/e1000_hw.h
+++ b/drivers/net/ethernet/intel/igb/e1000_hw.h
@@ -128,6 +128,7 @@ enum e1000_phy_type {
e1000_phy_ife,
e1000_phy_82580,
e1000_phy_i210,
+ e1000_phy_bcm54616,
};

enum e1000_bus_type {
--
2.7.4

1 change: 1 addition & 0 deletions patch/series
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
0008-hwmon-pmbus-Add-support-for-Texas-Instruments-tps536.patch
0009-platform-mellonox-introduce-mlxreg-io-driver-and-add.patch
0010-config-mellanox-configuration.patch
0011-support-Broadcom-54616-Phy-for-Intel-igb-driver.patch
#
# This series applies on GIT commit 1451b36b2b0d62178e42f648d8a18131af18f7d8
# Tkernel-sched-core-fix-cgroup-fork-race.patch
Expand Down

0 comments on commit 080b1ac

Please sign in to comment.