Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 02 Jan 2009 12:06:32 -0500
From:      Coleman Kane <cokane@FreeBSD.org>
To:        Nate Lawson <nate@root.org>
Cc:        freebsd-acpi@FreeBSD.org
Subject:   Re: amd64 S3 patch on HP 6715b: NICs won't work after resume from S3
Message-ID:  <1230915992.4841.4.camel@localhost>
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>

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

--=-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: <Broadcom BCM5754/5787 A2, ASIC rev. 0xb002> 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--




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