From owner-freebsd-acpi@FreeBSD.ORG Fri Jan 2 17:06:57 2009 Return-Path: Delivered-To: freebsd-acpi@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 3389C1065670 for ; Fri, 2 Jan 2009 17:06:57 +0000 (UTC) (envelope-from cokane@FreeBSD.org) Received: from mail-out1.fuse.net (mail-out1.fuse.net [216.68.8.175]) by mx1.freebsd.org (Postfix) with ESMTP id E5A778FC21 for ; Fri, 2 Jan 2009 17:06:56 +0000 (UTC) (envelope-from cokane@FreeBSD.org) X-CNFS-Analysis: v=1.0 c=1 a=scPTdAk-8dwA:10 a=ITL-bk1Uq2MA:10 a=LkYvsgB9u1MH7Ao0BLhsLg==:17 a=2CI21kIDZ0sT2DbAtOgA:9 a=mydRwWTdTgv0aGc0MXoA:7 a=nguO5mvbI8eiTynQsNMSPP_Y_U0A:4 a=LY0hPdMaydYA:10 a=IbrloX19zc8ysH39tTsA:9 a=hnxAGN43zMUaNmcqUUSD13BEg70A:4 a=rPt6xJ-oxjAA:10 X-CM-Score: 0 X-Scanned-by: Cloudmark Authority Engine Received: from [74.215.227.9] ([74.215.227.9:50918] helo=discordia) by mail-out1.fuse.net (ecelerity 2.1.1.22 r(17669)) with ESMTP id 95/FC-28972-1A94E594 for ; Fri, 02 Jan 2009 12:06:56 -0500 Received: by discordia (Postfix, from userid 103) id 9C6EC1DB2FA; Fri, 2 Jan 2009 12:06:41 -0500 (EST) X-Spam-Checker-Version: SpamAssassin 3.1.8-gr1 (2007-02-13) on discordia X-Spam-Level: X-Spam-Status: No, score=-4.2 required=5.0 tests=ALL_TRUSTED,AWL,BAYES_00 autolearn=ham version=3.1.8-gr1 Received: from [172.31.1.6] (unknown [172.31.1.6]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by discordia (Postfix) with ESMTP id 314EA1DB2F9; Fri, 2 Jan 2009 12:06:30 -0500 (EST) From: Coleman Kane To: Nate Lawson In-Reply-To: <495A7309.2060400@root.org> References: <1230564886.2280.11.camel@localhost> <4958F887.2010203@root.org> <1230579699.2386.5.camel@localhost> <49593036.4030306@root.org> <1230662172.1702.2.camel@localhost> <495A7309.2060400@root.org> Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="=-smiwB2JwJOk/B1JP4nNe" Organization: FreeBSD Project Date: Fri, 02 Jan 2009 12:06:32 -0500 Message-Id: <1230915992.4841.4.camel@localhost> Mime-Version: 1.0 X-Mailer: Evolution 2.22.3.1 FreeBSD GNOME Team Port Cc: freebsd-acpi@FreeBSD.org Subject: Re: amd64 S3 patch on HP 6715b: NICs won't work after resume from S3 X-BeenThere: freebsd-acpi@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: ACPI and power management development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2009 17:06:57 -0000 --=-smiwB2JwJOk/B1JP4nNe Content-Type: text/plain Content-Transfer-Encoding: quoted-printable On Tue, 2008-12-30 at 11:14 -0800, Nate Lawson wrote: > Coleman Kane wrote: > > On Mon, 2008-12-29 at 12:16 -0800, Nate Lawson wrote: > >> Coleman Kane wrote: > >>> On Mon, 2008-12-29 at 08:19 -0800, Nate Lawson wrote: > >>>> Coleman Kane wrote: > >>>>> I've been testing Jung-uk Kim's recent amd64 suspend patch on my HP > >>>>> notebook, and it seems to be very close to working well. > >>>>> > >>>>> The notebook goes into S3 state properly, but when it comes back ou= t it > >>>>> seems that the hardware is left in a bad state. I cannot attach my > >>>>> if_bge and if_ndis network drivers after a resume. > >>>> Dump the pci config register states for those devices both before an= d > >>>> after the resume. Where the bits differ is probably where you'll fin= d > >>>> the problem. > >>>> > >>>> Example to read 256 bytes: > >>>> pciconf -r pci0:4:0 0:256 > >>>> > >>> Tried that, and I also tried to use pciconf -w to set the registers t= o > >>> the initial state of the hardware before if_bge is loaded. I still ge= t > >>> the following messages when I attempt to reload the kld after the > >>> resume, followed by a failed attach: > >>> > >>> bge0: mem 0xd0000000-0= xd000ffff irq 16 at device 0.0 on pci16 > >>> bge0: firmware handshake timed out, found 0x4b657654 > >>> bge0: firmware handshake timed out, found 0x4b657654 > >>> bge0: RX CPU self-diagnostics failed! > >>> bge0: chip initialization failed > >>> device_attach: bge0 attach returned 6 > >>> > >>> Anyone have success with S3 on amd64 or i386 with if_bge cards? > >> Did you post the register states before and after? > >> > > Attached are the before and after snapshots of the device's PCI registe= r > > space. I need to track down a good table to mate these with. In this > > case, I didn't unload the driver, as the if_bge driver is supposed to b= e > > able to properly handle suspend/resume now. > >=20 > > These are dumps of the whole 256-byte register space, using: > > pciconf -r -b pci0:16:0:0 0:0x100 >=20 > Great. So far in FreeBSD, anything after the first 64 bytes is the > driver's responsibility. According to your dump, that is where all the > differences are. >=20 So, my guess is that the bge_suspend and bge_resume methods in the bge driver need some tweaking to support my hardware (the BCM5754/5787) when it comes out of resume... Any pointers on who I might be able to work on this with? --=20 Coleman Kane --=-smiwB2JwJOk/B1JP4nNe Content-Type: application/pgp-signature; name=signature.asc Content-Description: This is a digitally signed message part -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (FreeBSD) iEYEABECAAYFAkleSZIACgkQcMSxQcXat5fotgCdGddLhKJYzUyLZ7nI0sdWRjZ1 1bYAn0S/4aoUBdb27ULORSKgn5A8A8rX =Gup7 -----END PGP SIGNATURE----- --=-smiwB2JwJOk/B1JP4nNe--