Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 15 Jun 2011 09:48:09 -0700
From:      Nate Lawson <nate@root.org>
To:        John Baldwin <jhb@freebsd.org>
Cc:        acpi@freebsd.org
Subject:   Re: Only attach device_t objects to ACPI devices with a _HID
Message-ID:  <DB0F2A34-C457-4372-8A20-1F32EE3A66BD@root.org>
In-Reply-To: <201106150957.58049.jhb@freebsd.org>

index | next in thread | previous in thread | raw e-mail

On Jun 15, 2011, at 6:57 AM, John Baldwin wrote:
> What I am proposing to do is to change the ACPI bus driver to only add 
> device_t objects for Device() nodes that have a _HID or _CID.  This should not 
> break any devices that have a current driver, but it will avoid having ACPI 
> attach to PCI devices.  This does mean that _CRS is currently ignored for PCI 
> devices.  My feeling on that is that if we do feel that is important to 
> reserve those resources, we should handle that in the ACPI PCI bus driver 
> itself instead (it can examine _CRS for those devices and allocate resources
> if we so choose).

While this should be fine for legacy devices, I do worry about other synthetic devices, such as CPUs, NUMA zones, etc. Would it be better just not to attach acpi device_t's to any nodes under PCI busses?

Also, it's still possible some PCI devices would have a CID, so you'd still have to handle this case, right?

> It does strike me as odd that BIOSes are assigning resources to PCI devices 
> via _CRS and I wonder if it is truly valid or it it should just be ignored.

I think I remember some BIOSes hooking _CRS to do some late allocations. It's bad behavior, of course, and closely ties their allocation scheme to the order that WIndows traversed the acpi device tree.

-Nate



home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?DB0F2A34-C457-4372-8A20-1F32EE3A66BD>