Date: Mon, 20 Jul 2009 00:30:47 +0200 From: Gonzalo Nemmi <gnemmi@gmail.com> To: "Paul B. Mahol" <onemda@gmail.com> Cc: freebsd-current@freebsd.org, Adam K Kirchhoff <adamk@voicenet.com> Subject: Re: bge problems when resuming Message-ID: <19e9a5dc0907191530s679c0b37v49a836cc00bbf58a@mail.gmail.com> In-Reply-To: <3a142e750907171509o62c999c5o446bcd7cd576b9a5@mail.gmail.com> References: <4A5D27F2.50208@voicenet.com> <3a142e750907150020h712bfcecq89d5ccf3e00e302c@mail.gmail.com> <200907150713.47807.adamk@voicenet.com> <200907171743.11143.gnemmi@gmail.com> <3a142e750907171509o62c999c5o446bcd7cd576b9a5@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, Jul 18, 2009 at 12:09 AM, Paul B. Mahol <onemda@gmail.com> wrote: > On 7/17/09, Gonzalo Nemmi <gnemmi@gmail.com> wrote: > > On Wednesday 15 July 2009 8:13:47 am Adam K Kirchhoff wrote: > >> On Wednesday 15 July 2009 03:20:45 Paul B. Mahol wrote: > >> > On 7/15/09, Adam K Kirchhoff <adamk@voicenet.com> wrote: > >> > > Hello all, > >> > > > >> > > I have a Dell Latitude D610 laptop with 8.0-BETA1 installed. I > >> > > hadn't tried suspend/resume for a while and decided to give it a > >> > > shot. I was pleasantly surprised to see that I could suspend to > >> > > ram, resume, and have a (relatively) working system (previously > >> > > the display would never come back up and the serial console I had > >> > > hooked up remained dead). Great job to everyone who helped make > >> > > that possible. > >> > > > >> > > The only real issue that I seem to have now is that bge is > >> > > completely unusable after resume. Another individual seems to > >> > > have reported similar problems with bge and resume, but he also > >> > > had other issues that apparently trumped his networking issues: > >> > > > >> > > http://lists.freebsd.org/pipermail/freebsd-current/2009-July/0090 > >> > >23.html > >> > > > >> > > Like him, resuming from suspend gives me: > >> > > > >> > > Jul 14 12:35:53 scroll kernel: bge0: PHY write timed out (phy 1, > >> > > reg 0, val 32768) > >> > > Jul 14 12:35:53 scroll kernel: bge0: PHY read timed out (phy 1, > >> > > reg 0, val 0xffffffff) > >> > > Jul 14 12:35:53 scroll kernel: bge0: PHY write timed out (phy 1, > >> > > reg 24, val 3072) > >> > > Jul 14 12:35:53 scroll kernel: bge0: PHY write timed out (phy 1, > >> > > reg 23, val 10) > >> > > Jul 14 12:35:53 scroll kernel: bge0: PHY write timed out (phy 1, > >> > > reg 21, val 12555) > >> > > Jul 14 12:35:53 scroll kernel: bge0: PHY write timed out (phy 1, > >> > > reg 23, val 8223) > >> > > Jul 14 12:35:53 scroll kernel: bge0: PHY write timed out (phy 1, > >> > > reg 21, val 38150) > >> > > Jul 14 12:35:53 scroll kernel: bge0: PHY write timed out (phy 1, > >> > > reg 23, val 16415) > >> > > Jul 14 12:35:53 scroll kernel: bge0: PHY write timed out (phy 1, > >> > > reg 21, val 5346) > >> > > Jul 14 12:35:53 scroll kernel: bge0: PHY write timed out (phy 1, > >> > > reg 24, val 1024) > >> > > Jul 14 12:35:53 scroll kernel: bge0: PHY write timed out (phy 1, > >> > > reg 24, val 7) > >> > > > >> > > And so on and so forth. > >> > > > >> > > I thought that compiling if_bge as a module, unloading it before > >> > > suspend, and reloading it after resume, might get this working. > >> > > However, doing a "kldload if_bge" after the resume does nothing. > >> > > Well, the module gets loaded, but the device doesn't show up. No > >> > > errors from kldload, and there is nothing new in dmesg. > >> > > > >> > > Before the suspend, the device shows up as: > >> > > > >> > > bge0@pci0:2:0:0: class=0x020000 card=0x01821028 > >> > > chip=0x167714e4 rev=0x01 hdr=0x00 > >> > > vendor = 'Broadcom Corporation' > >> > > device = 'NetXtreme Gigabit Ethernet PCI Express > >> > > (BCM5750A1)' class = network > >> > > subclass = ethernet > >> > > > >> > > After resuming, and reloading the module, it's: > >> > > > >> > > none1@pci0:2:0:0: class=0x020000 card=0x01821028 > >> > > chip=0x167714e4 rev=0x01 hdr=0x00 > >> > > vendor = 'Broadcom Corporation' > >> > > device = 'NetXtreme Gigabit Ethernet PCI Express > >> > > (BCM5750A1)' class = network > >> > > subclass = ethernet > >> > > > >> > > If there are no ideas, I'll go ahead and open up a pr. I assume > >> > > this is just one bug, since both problems (the PHY issues and the > >> > > inability to reload the driver) are both related to the network > >> > > device. > >> > > >> > Put this lines into loader.conf and reboot. > >> > > >> > hw.pci.do_power_nodriver="3" > >> > hw.pci.do_power_resume="1" > >> > > >> > Now, before suspend, unload if_bge and some another driver (sound > >> > drivers are best candidate) and load sound driver again, suspend > >> > and resume. > >> > Now loading if_bge should make it succesfully attach. > >> > >> Unfortunately, after doing this, reloading the if_bge driver causes > >> the laptop to completely lock up... It gets as far as: > >> > >> bge0: <Broadcom NetXtreme Gigabit Ethernet Controller, unknown ASIC > >> rev. 0xffff> > >> mem 0xdfdf0000-0xdfdfffff irq 16 at device 0.0 on pci2 > >> > >> And then the entire machine hangs. I'm on ttyv0, so I'd see any > >> kernel panic, but nothing like that happens. The screen stays on, > >> but nothing else happens till I force a reboot. > >> > >> Adam > > > > Hi Adam, Paul ... > > I'm the "another individual" from you OP. > > I have the same problems you have regarding bge, but they weren't > > trumped .. I just had an order of priorities ;) > > > > Anyways, I tried the solution Paul posted and, just as in your case, I > > got a hard lock too ... > > > > I tried loading if_bge through /boot/loader.conf > > Then issued a: > > > > kldunload if_bge coretemp > > coretemp is wrong module, it must be one of modules that attach to pci. > Sorry Paul! I gave it a go with snd_hda and I got the same result except that this time I also got the following message: fwohci0: ... firewire0: ... fwohci0: ... pci0: < multimedia HDA > at device 27.0 ( no driver attached ) bge0 ... Then, the same hard lock :( Will install BETA2 today ! Best Regards Gonzalo > > acpiconf -s 3 > > > > machine suspended > > > > As soon as I woke it up I got the following message followed by a hard > > lock: > > > > fwohci0: Phy 1394a available S400, 1 ports. > > fwohci0: Link S400, max_rec 2048 bytes. > > fwohci0: Initiate bus reset > > fwohci0: fwohci_intr_core: BUS reset > > fwohci0: fwohci_intr_core: node_id=0x00000000, SelfID Count=1, > > CYCLEMASTER mode > > firewire0: 1 nodes, maxhop <= 0 cable IRM irm(0) (me) > > firewire0: bus manager 0 > > fwohci0: unrecoverable error > > bge0: <Broadmcom NetXtreme Ethernet Controller, unknown ASIC rev, > > 0xffff> mem 0xf69f0000-0xf69fffff irq 17 at device 0.0 on pci9 > > > > All this happens on a Dell 1318, FreeBSD 8.0-BETA1, i386, Intel(R) > > Celeron(R) CPU 560@2.13GHz. > > > > bge0@pci0:9:0:0: class=0x020000 card=0x02861028 chip=0x171314e4 > rev=0x02 > > hdr=0x00 > > vendor = 'Broadcom Corporation' > > device = 'Broadcom NetLink (TM) Fast Ethernet (BCM5906m)' > > class = network > > subclass = ethernet > > bar [10] = type Memory, range 64, base 0xf69f0000, size 65536, > > enabled > > cap 01[48] = powerspec 3 supports D0 D3 current D0 > > cap 03[50] = VPD > > cap 09[58] = vendor (length 120) > > cap 05[e8] = MSI supports 1 message, 64 bit enabled with 1 message > > cap 10[d0] = PCI-Express 1 endpoint max data 128(128) link x1(x1) > > > > If somebody needs more info, just ask me for it and I'll try to answer > > as soon as I can. > > > > Adam, if you do file a PR, please let me know so I can follow it. > > > > Best Regards > > -- > > Blessings > > Gonzalo Nemmi > > > > > -- > Paul >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19e9a5dc0907191530s679c0b37v49a836cc00bbf58a>