diff mbox

e100: fix typo in MDI/MDI-X eeprom check in e100_phy_init

Message ID 1415980770-5467-1-git-send-email-linville@tuxdriver.com
State Awaiting Upstream, archived
Delegated to: David Miller
Headers show

Commit Message

John W. Linville Nov. 14, 2014, 3:59 p.m. UTC
Although it doesn't explicitly say so, commit 60ffa478759f39a2 ("e100:
Fix MDIO/MDIO-X") appears to be intended to revert the earlier commit
648951451e6d2d53 ("e100: fixed e100 MDI/MDI-X issues").  However,
careful examination reveals that the attempted revert actually
_inverted_ the test for eeprom_mdix_enabled.  That is bound to program
a few PHYs incorrectly...

https://bugzilla.redhat.com/show_bug.cgi?id=1156417

Signed-off-by: John W. Linville <linville@tuxdriver.com>
Cc: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Cc: Auke Kok <auke-jan.h.kok@intel.com>
Cc: Malli Chilakala <mallikarjuna.chilakala@intel.com>
---
Wow, an 8 year old bug in e100 -- woohoo!! :-)

This was causing some serious flakiness for a large cash register
deployment in Europe.  Testing with this one-line (really,
one-character) patch seems to have resolved the issue.

 drivers/net/ethernet/intel/e100.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Kirsher, Jeffrey T Nov. 14, 2014, 5:17 p.m. UTC | #1
On Fri, Nov 14, 2014 at 7:59 AM, John W. Linville
<linville@tuxdriver.com> wrote:
> Although it doesn't explicitly say so, commit 60ffa478759f39a2 ("e100:
> Fix MDIO/MDIO-X") appears to be intended to revert the earlier commit
> 648951451e6d2d53 ("e100: fixed e100 MDI/MDI-X issues").  However,
> careful examination reveals that the attempted revert actually
> _inverted_ the test for eeprom_mdix_enabled.  That is bound to program
> a few PHYs incorrectly...
>
> https://bugzilla.redhat.com/show_bug.cgi?id=1156417
>
> Signed-off-by: John W. Linville <linville@tuxdriver.com>
> Cc: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
> Cc: Auke Kok <auke-jan.h.kok@intel.com>
> Cc: Malli Chilakala <mallikarjuna.chilakala@intel.com>
> ---
> Wow, an 8 year old bug in e100 -- woohoo!! :-)
>
> This was causing some serious flakiness for a large cash register
> deployment in Europe.  Testing with this one-line (really,
> one-character) patch seems to have resolved the issue.
>
>  drivers/net/ethernet/intel/e100.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)

Weird, I did not get this mail.  Anyway, thanks John, I have added
your patch to my queue.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
John W. Linville Nov. 14, 2014, 5:58 p.m. UTC | #2
On Fri, Nov 14, 2014 at 09:17:39AM -0800, Jeff Kirsher wrote:
> On Fri, Nov 14, 2014 at 7:59 AM, John W. Linville
> <linville@tuxdriver.com> wrote:
> > Although it doesn't explicitly say so, commit 60ffa478759f39a2 ("e100:
> > Fix MDIO/MDIO-X") appears to be intended to revert the earlier commit
> > 648951451e6d2d53 ("e100: fixed e100 MDI/MDI-X issues").  However,
> > careful examination reveals that the attempted revert actually
> > _inverted_ the test for eeprom_mdix_enabled.  That is bound to program
> > a few PHYs incorrectly...
> >
> > https://bugzilla.redhat.com/show_bug.cgi?id=1156417
> >
> > Signed-off-by: John W. Linville <linville@tuxdriver.com>
> > Cc: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
> > Cc: Auke Kok <auke-jan.h.kok@intel.com>
> > Cc: Malli Chilakala <mallikarjuna.chilakala@intel.com>
> > ---
> > Wow, an 8 year old bug in e100 -- woohoo!! :-)
> >
> > This was causing some serious flakiness for a large cash register
> > deployment in Europe.  Testing with this one-line (really,
> > one-character) patch seems to have resolved the issue.
> >
> >  drivers/net/ethernet/intel/e100.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> Weird, I did not get this mail.  Anyway, thanks John, I have added
> your patch to my queue.

I got a "no such address" bounce on all the @intel.com addresses,
but they all seem OK to me -- not sure what the issue is...?

Anyway, glad you got it! :-)

John
diff mbox

Patch

diff --git a/drivers/net/ethernet/intel/e100.c b/drivers/net/ethernet/intel/e100.c
index 781065eb5431..e9c3a87e5b11 100644
--- a/drivers/net/ethernet/intel/e100.c
+++ b/drivers/net/ethernet/intel/e100.c
@@ -1543,7 +1543,7 @@  static int e100_phy_init(struct nic *nic)
 		mdio_write(netdev, nic->mii.phy_id, MII_BMCR, bmcr);
 	} else if ((nic->mac >= mac_82550_D102) || ((nic->flags & ich) &&
 	   (mdio_read(netdev, nic->mii.phy_id, MII_TPISTATUS) & 0x8000) &&
-		!(nic->eeprom[eeprom_cnfg_mdix] & eeprom_mdix_enabled))) {
+		(nic->eeprom[eeprom_cnfg_mdix] & eeprom_mdix_enabled))) {
 		/* enable/disable MDI/MDI-X auto-switching. */
 		mdio_write(netdev, nic->mii.phy_id, MII_NCONFIG,
 				nic->mii.force_media ? 0 : NCONFIG_AUTO_SWITCH);