Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 17 Nov 2009 11:32:08 -0800
From:      Pyun YongHyeon <pyunyh@gmail.com>
To:        Gonzalo Nemmi <gnemmi@gmail.com>
Cc:        freebsd-apci@freebsd.org, freebsd-current@freebsd.org
Subject:   Re: Call for bge(4) testers
Message-ID:  <20091117193208.GI1262@michelle.cdnetworks.com>
In-Reply-To: <200911171650.06834.gnemmi@gmail.com>
References:  <20091111223751.GE15449@michelle.cdnetworks.com> <200911161534.34028.gnemmi@gmail.com> <20091116175450.GB1262@michelle.cdnetworks.com> <200911171650.06834.gnemmi@gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help

--XF85m9dhOBO43t/C
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

On Tue, Nov 17, 2009 at 04:50:06PM -0200, Gonzalo Nemmi wrote:

[...]

> Well, I proceeded as I told you I would, applied your patch and even if 
> it didn't solve the problem (bge still doesn't resume) at least it 
> improved the previous situation given that now it doesn't loop timing 
> out once and again as before.
> 
> You can find a tail from /var/log/messages in here:
> http://pastebin.com/f643555f7
> 
> As you can see, the first 3 lines corresponds to "kldload if_bge"
> Line number 4 is "acpiconf -s3"
> 
> At line number 17 bge0 finally fails and let's the machine wake up at 
> line 18.
> 
> Then, as soon as I could I issued a "ifconfig bge0" to see what I could 
> get .. that's what you can see from line 20 to line 41. (as you can see 

Ok, would you try this one? I guess bge(4) register access method
could be in uninitialized state after resume.

> in there, I found there are problems resuming umass devices as 
> well ... )
> 

Probably Hans can help you on USB issues.

> Line 42 to 53 correspond to "kldnuload if_bge" .. which, by the way, 
> once unloaded, I could load it again but bge0 never showed 
> on "ifconfig".
> 
> Line 54 till the end correspond to "umount_msdos /dev/ad0s1" ... which 
> ended with pulling the pendrive out as the system coldn't umount it ...
> 
> I also found I get wpi0 messages on resume .. it spouts:
> wpi0 could not lock memory
> wpi0 could not lock memory
> wpi0 could not lock memory
> wpi0 could not lock memory
> wpi0 could not lock memory
> wpi0 could not lock memory
> wpi0 could not lock memory
> and then it let's the system resume.
> 

Don't know what it really means. You'd be better to ask wpi(4)
author Benjamin Close(benjsc@).

> All in all  .. there's _a_lot_of_problems_on_resume_ 
> 
> 
> Pyun, if you'd like me to try a new patch or to do some tests or 
> whatever, just let me know. I'm here awaiting orders :)
> 
> Best Regards
> Gonzalo Nemmi

--XF85m9dhOBO43t/C
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename="bge.5906.diff2"

Index: sys/dev/bge/if_bge.c
===================================================================
--- sys/dev/bge/if_bge.c	(revision 199411)
+++ sys/dev/bge/if_bge.c	(working copy)
@@ -2995,6 +2995,15 @@
 		}
 	}
 
+	if (sc->bge_asicrev == BGE_ASICREV_BCM5906) {
+		val = CSR_READ_4(sc, BGE_VCPU_STATUS);
+		CSR_WRITE_4(sc, BGE_VCPU_STATUS,
+		    val | BGE_VCPU_STATUS_DRV_RESET);
+		val = CSR_READ_4(sc, BGE_VCPU_EXT_CTRL);
+		CSR_WRITE_4(sc, BGE_VCPU_EXT_CTRL,
+		    val & ~BGE_VCPU_EXT_CTRL_HALT_CPU);
+	}
+
 	/* 
 	 * Set GPHY Power Down Override to leave GPHY
 	 * powered up in D0 uninitialized.
@@ -3005,15 +3014,6 @@
 	/* Issue global reset */
 	write_op(sc, BGE_MISC_CFG, reset);
 
-	if (sc->bge_asicrev == BGE_ASICREV_BCM5906) {
-		val = CSR_READ_4(sc, BGE_VCPU_STATUS);
-		CSR_WRITE_4(sc, BGE_VCPU_STATUS,
-		    val | BGE_VCPU_STATUS_DRV_RESET);
-		val = CSR_READ_4(sc, BGE_VCPU_EXT_CTRL);
-		CSR_WRITE_4(sc, BGE_VCPU_EXT_CTRL,
-		    val & ~BGE_VCPU_EXT_CTRL_HALT_CPU);
-	}
-
 	DELAY(1000);
 
 	/* XXX: Broadcom Linux driver. */
@@ -4455,6 +4455,7 @@
 
 	sc = device_get_softc(dev);
 	BGE_LOCK(sc);
+	bge_reset(sc);
 	ifp = sc->bge_ifp;
 	if (ifp->if_flags & IFF_UP) {
 		bge_init_locked(sc);

--XF85m9dhOBO43t/C--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20091117193208.GI1262>