diff options
| author | Thomas Gleixner <tglx@linutronix.de> | 2013-04-24 20:33:46 +0200 | 
|---|---|---|
| committer | Thomas Gleixner <tglx@linutronix.de> | 2013-04-24 20:33:54 +0200 | 
| commit | 6402c7dc2a19c19bd8cdc7d80878b850da418942 (patch) | |
| tree | cda2ea2df40442e2aa016119f3548cc504127ea8 /drivers/net/ethernet/broadcom/tg3.c | |
| parent | 77c675ba18836802f6b73d2d773481d06ebc0f04 (diff) | |
| parent | 60d509fa6a9c4653a86ad830e4c4b30360b23f0e (diff) | |
| download | olio-linux-3.10-6402c7dc2a19c19bd8cdc7d80878b850da418942.tar.xz olio-linux-3.10-6402c7dc2a19c19bd8cdc7d80878b850da418942.zip  | |
Merge branch 'linus' into timers/core
Reason: Get upstream fixes before adding conflicting code.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'drivers/net/ethernet/broadcom/tg3.c')
| -rw-r--r-- | drivers/net/ethernet/broadcom/tg3.c | 15 | 
1 files changed, 13 insertions, 2 deletions
diff --git a/drivers/net/ethernet/broadcom/tg3.c b/drivers/net/ethernet/broadcom/tg3.c index 93729f94235..17a972734ba 100644 --- a/drivers/net/ethernet/broadcom/tg3.c +++ b/drivers/net/ethernet/broadcom/tg3.c @@ -4130,6 +4130,14 @@ static void tg3_phy_copper_begin(struct tg3 *tp)  		tp->link_config.active_speed = tp->link_config.speed;  		tp->link_config.active_duplex = tp->link_config.duplex; +		if (tg3_asic_rev(tp) == ASIC_REV_5714) { +			/* With autoneg disabled, 5715 only links up when the +			 * advertisement register has the configured speed +			 * enabled. +			 */ +			tg3_writephy(tp, MII_ADVERTISE, ADVERTISE_ALL); +		} +  		bmcr = 0;  		switch (tp->link_config.speed) {  		default: @@ -14596,8 +14604,11 @@ static void tg3_read_vpd(struct tg3 *tp)  		if (j + len > block_end)  			goto partno; -		memcpy(tp->fw_ver, &vpd_data[j], len); -		strncat(tp->fw_ver, " bc ", vpdlen - len - 1); +		if (len >= sizeof(tp->fw_ver)) +			len = sizeof(tp->fw_ver) - 1; +		memset(tp->fw_ver, 0, sizeof(tp->fw_ver)); +		snprintf(tp->fw_ver, sizeof(tp->fw_ver), "%.*s bc ", len, +			 &vpd_data[j]);  	}  partno:  |