Experiences with new PCI code

Nate Lawson nate at root.org
Tue Apr 13 21:23:37 PDT 2004

On Tue, 13 Apr 2004, M. Warner Losh wrote:
> In message: <20040413220142.5F50E5D08 at ptavv.es.net>
>             "Kevin Oberman" <oberman at es.net> writes:
> : System: IBM T30 (ICH3, 1.8G P4-M, 512 MB RAM, Intel/Xircom Pro/100 VE
> : Ethernet, TI1520 CardBus bridge, Prism 2.5 wireless, Analog Devices
> : AD1881A AC97 codec)
> :
> : After the integration of the new PCI code the suspend/resume behavior is
> : very different than before. Unfortunately, it's worse, but moving in the
> : right direction.
> :
> : Suspend:
> : - Display backlight still turns on and remains on upon suspend. Video
> :   does not blank, but loses power so display "rots" over a period of at
> :   least minutes. (This is unchanged.) hw.acpi.video show correct values,
> :   but fails to change them. DPMS blanking does blank the display but
> :   does not turn off back-light.
> :
> : - hw.acpi.sleep_delay is now ignored, but the disk no longer does an
> :   instant shutdown without flushing cache, so this is OK.
> :
> : - Suspend LED turns on. (Unchanged.)
> :
> : Resume:
> : - I stop receiving interrupts on irq11 which handles much of my
> :   system. This includes sound, CardBus, USB and network. This is the
> :   big issue as the machine is now pretty useless.
> :
> : Unfortunately, this loss of irq11 makes further testing almost
> : impossible. To further confuse things, interrupts continue for a
> : seemingly random time of up to several minutes after the restore and
> : then stop. This last part has me totally baffled, but maybe someone has
> : some idea why this is happening. Non-irq11 devices (mouse, keyboard,
> : clocks, ata controllers) continue to work.
> :
> : Anything you would like me to try?
> While my patches will make it better, more extensive changes to the
> power code will be necessary to make it work perfectly.  Nate has been
> taking the lead in this area.
> Why don't you try
> 	hw.pci.do_powerstates=1
> to see if that helps any.  This will turn on more power managmenet
> code.

That's a good thing to do.  In the suspend/resume path, I'm working on a
plan for supporting _SxD and various methods to set the 'right' power
state going into suspend and coming out of resume.  It's not easy.

The other major issue that I can't ever solve is drivers not correctly
resuming themselves.  That is up to the driver authors and a lot are


More information about the freebsd-current mailing list