Date: Thu, 15 Jul 2004 12:18:09 -0700 From: Nate Lawson <nate@root.org> To: John Baldwin <jhb@FreeBSD.org> Cc: cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/dev/acpica acpi_pci.c Message-ID: <40F6D871.1090207@root.org> In-Reply-To: <200407151418.01839.jhb@FreeBSD.org> References: <200406231508.i5NF8egh052377@repoman.freebsd.org> <200406231122.04154.jhb@FreeBSD.org> <20040715161403.GA741@laptop.6bone.nl> <200407151418.01839.jhb@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
[Followups to the acpi list]
John Baldwin wrote:
> On Thursday 15 July 2004 12:14 pm, Mark Santcroos wrote:
>>You forgot to mention that this commit breaks acpi_video ;-)
>>
>>The fact that "\_SB_.PCI0.AGP_.VID_" now no longer is "unknown", means that
>>it is not probed anymore.
>>
>>The result of that is that acpi_video can't attach anymore of course.
>
> That's because acpi_video is really a PCI driver. :) The device it is
> attaching too is a PCI device, not an ACPI device, hence the confusion. I
> have some early work started on a vga_pci driver that would have child
> devices like acpi_video0, drm0, agp0 (for Intel onboard graphics), and dpms0.
I ran into this fundamental mismatch in building the infrastructure for
the floppy attachment. You might have an ACPI handle namespace like this:
_SB
PCI0
LPC
FDC0
FDD0
FOOBAR
USB0
With a FreeBSD device hierarchy of:
acpi0
fdc0
fd0
foobar
pcib0
pci0
uhci0
Currently, we start with a flat device space when probing children:
acpi0
pci0
isa0
fdc0
fd0
foobar
uhci0
And then let each bus driver rework its children. PCI updates its child
handles (USB0), deleting the initial device and adding a new one. FDC
does the same thing.
John is right in that acpi_video needs to attach to video_pci and not
acpi directly. The new acpi_scan_children method should help do this
without creating binary dependencies between drivers.
--
-Nate
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?40F6D871.1090207>
