lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20060819061507.GB8571@ojjektum.uhulinux.hu>
Date:	Sat, 19 Aug 2006 08:15:08 +0200
From:	Pozsar Balazs <pozsy@...linux.hu>
To:	Valerie Henson <val_henson@...ux.intel.com>
Cc:	Prakash Punnoor <prakash@...noor.de>, Jiri Benc <jbenc@...e.cz>,
	LKML <linux-kernel@...r.kernel.org>, jgarzik@...ox.com
Subject: Re: [RFC/PATCH] Fixes for ULi5261 (tulip driver)

On Fri, Aug 18, 2006 at 05:16:41PM -0700, Valerie Henson wrote:
> On Wed, Aug 16, 2006 at 09:53:45PM +0200, Pozsar Balazs wrote:
> > On Wed, Aug 16, 2006 at 08:02:02PM +0200, Prakash Punnoor wrote:
> > > Am Mittwoch 16 August 2006 19:43 schrieb Pozsar Balazs:
> > > 
> > > > So, just to make it clear: if you boot without cable plugged in, let
> > > > the driver load, and then plug the cable in, do you have link?
> > > > For me, it does not have link until I rmmod the module.
> > > 
> > > Same here.
> > 
> > The most weird thing is that, when I _rmmod_ the module, the link leds 
> > will show a link, _before_ I even re-modprobe it! So somehow the removal 
> > (or even an unbind via the sysfs interface) "resets" it.
> 
> Hey folks,
> 
> Added to my to-do list.  Let me know if you figure out anything else.

Actually, I managed to fix it, here's the patch:

Signed-off-by: Pozsar Balazs <pozsy@...linux.hu>

--- a/drivers/net/tulip/uli526x.c	2006-07-15 21:00:43.000000000 +0200
+++ a/drivers/net/tulip/uli526x.c	2006-08-18 15:41:00.000000000 +0200
@@ -515,7 +515,8 @@
 	phy_reg_reset = phy_read(db->ioaddr, db->phy_addr, 0, db->chip_id);
 	phy_reg_reset = (phy_reg_reset | 0x8000);
 	phy_write(db->ioaddr, db->phy_addr, 0, phy_reg_reset, db->chip_id);
-	udelay(500);
+	while (phy_read(db->ioaddr, db->phy_addr, 0, db->chip_id) & 0x8000)
+		udelay(500);
 
 	/* Process Phyxcer Media Mode */
 	uli526x_set_phyxcer(db);


-- 
pozsy
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ