From: Ron Mercer Date: Wed, 7 Nov 2007 21:59:07 +0000 (-0800) Subject: qla3xxx: bugfix: Fix bad logical operation in link state machine. X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=ad4c9a09c7bf6aaa418679f0fb48484eab53a285;p=GitHub%2Fmoto-9609%2Fandroid_kernel_motorola_exynos9610.git qla3xxx: bugfix: Fix bad logical operation in link state machine. Luckily, this wasn't reported or reproduced. The logical operation for setting duplex had wrong grouping. Signed-off-by: Ron Mercer Signed-off-by: Jeff Garzik --- diff --git a/drivers/net/qla3xxx.c b/drivers/net/qla3xxx.c index 4f0fd41dce19..a5791114b7bd 100644 --- a/drivers/net/qla3xxx.c +++ b/drivers/net/qla3xxx.c @@ -1456,16 +1456,11 @@ static void ql_phy_start_neg_ex(struct ql3_adapter *qdev) PHYAddr[qdev->mac_index]); reg &= ~PHY_GIG_ALL_PARAMS; - if(portConfiguration & - PORT_CONFIG_FULL_DUPLEX_ENABLED & - PORT_CONFIG_1000MB_SPEED) { - reg |= PHY_GIG_ADV_1000F; - } - - if(portConfiguration & - PORT_CONFIG_HALF_DUPLEX_ENABLED & - PORT_CONFIG_1000MB_SPEED) { - reg |= PHY_GIG_ADV_1000H; + if(portConfiguration & PORT_CONFIG_1000MB_SPEED) { + if(portConfiguration & PORT_CONFIG_FULL_DUPLEX_ENABLED) + reg |= PHY_GIG_ADV_1000F; + else + reg |= PHY_GIG_ADV_1000H; } ql_mii_write_reg_ex(qdev, PHY_GIG_CONTROL, reg,