Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 09 Dec 2003 18:58:59 -0700 (MST)
From:      "M. Warner Losh" <imp@bsdimp.com>
To:        jhb@FreeBSD.org
Cc:        nate@root.org
Subject:   Re: PERFORCE change 43464 for review
Message-ID:  <20031209.185859.00003429.imp@bsdimp.com>
In-Reply-To: <XFMail.20031209134426.jhb@FreeBSD.org>
References:  <20031208.175500.36934037.imp@bsdimp.com> <XFMail.20031209134426.jhb@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
In message: <XFMail.20031209134426.jhb@FreeBSD.org>
            John Baldwin <jhb@FreeBSD.org> writes:
: 
: On 09-Dec-2003 M. Warner Losh wrote:
: > In message: <XFMail.20031208155247.jhb@FreeBSD.org>
: >             John Baldwin <jhb@freebsd.org> writes:
: >: 
: >: On 05-Dec-2003 Nate Lawson wrote:
: >: > On Fri, 5 Dec 2003, John Baldwin wrote:
: >: >> Change 43464 by jhb@jhb_blue on 2003/12/05 12:59:01
: >: >>
: >: >>      More updates.  Closer to working than I thought.  In theory
: >: >>      PCI devices should all just work now.
: >: > 
: >: > This handles PCI.  Are you ok with me adding the call to
: >: > acpi_pwr_switch_consumer() for non-PCI devices like the embedded
: >: > controller?  I think we need to do this at the top \\_SB level.  I'm a bit
: >: > confused as to the handoff between the general tree walk and the ACPI-PCI
: >: > driver though.
: >: 
: >: It won't hurt to switch a device on twice.  It should be ok to
: >: do a top-level tree walk of all device objects and turn them on
: >: before probing child devices I think.  ACPI shouldn't turn off
: >: devices that don't probe like PCI does though because ACPI has
: >: duplicate objects of things like the entire PCI device tree. :-/
: > 
: > Actually, there can be times when you don't want to turn on devices at
: > all.  Walking the whole tree turning them on might be the wrong to
: > do...
: > 
: > Sometimes I think that things in the newbus tree should have a pointer
: > to the acpi power methods that are used in coordination with the bus
: > code that is 'activating' the device before the 'probe' and 'attach'
: > happens.
: 
: I think having a 'bus_set_power_state()' method in the bus layer
: and having device_probe_and_attach() do 'bus_set_power_state(child, ON)'
: would be sufficient.  ACPI busses would then perform the correct hooks
: via their bus_set_power_state() methods.

That is very close to what I had in mind.  My only 'debate' was 0/1 or
0,1,2,3 or ????

Warner



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