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>
