From owner-freebsd-acpi@FreeBSD.ORG Wed Apr 6 21:51:41 2011 Return-Path: Delivered-To: freebsd-acpi@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id BB5D1106564A for ; Wed, 6 Apr 2011 21:51:41 +0000 (UTC) (envelope-from nate@root.org) Received: from mail.rootlabs.com (rootlabs.com [208.72.84.106]) by mx1.freebsd.org (Postfix) with ESMTP id 979DC8FC13 for ; Wed, 6 Apr 2011 21:51:41 +0000 (UTC) Received: (Postfix invoked from local network); Wed, 6 Apr 2011 14:51:40 -0700 (PDT) Message-ID: <4D9CE06C.3070002@root.org> Date: Wed, 06 Apr 2011 14:51:40 -0700 From: Nate Lawson User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.15) Gecko/20110303 Thunderbird/3.1.9 MIME-Version: 1.0 To: freebsd-acpi@freebsd.org References: <201103281406.27334.jhb@freebsd.org> <201104061600.53572.jhb@freebsd.org> In-Reply-To: <201104061600.53572.jhb@freebsd.org> X-Enigmail-Version: 1.1.1 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Subject: Re: Atheros 9285 & Atheros AR8131 X-BeenThere: freebsd-acpi@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: ACPI and power management development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 06 Apr 2011 21:51:41 -0000 On 4/6/2011 1:00 PM, John Baldwin wrote: > On Monday, March 28, 2011 2:06:27 pm John Baldwin wrote: >> We've never figured out what is zeroing the registers in the PCI-PCI bridges. >> I suspect it is not something in the ASL, but is a side effect of some BIOS >> code that runs in SMM when ACPI is turned on. > > Ok, so I have a patch to rework how PCI-PCI bridges manage resources for > devices. This patch applies to HEAD, no idea if it applies to older branches > (likely not). You will need to add the option 'NEW_PCIB' to your kernel > config after applying this patch. > > http://www.FreeBSD.org/~jhb/patches/pcib_new.patch > > For my local testing I used a hack to wipe out the PCI-PCI bridges in my > test machine similar to what the BIOS does on these machines. The bridges > all grew windows to match their original BIOS-assigned windows based on the > BIOS-assigned resources in the BARs of the child devices. > > These patches should also let us allocate new resources from scratch for > devices behind PCI-PCI bridges once we have better support for determining what > are valid PCI address ranges in the Host-PCI bridge drivers. Wow, awesome work. This is really useful for fixing a common problem. Should bus_adjust_resource() be a DEVMETHOD or is this something that should be done automatically within rman_alloc_resource(), possibly based on a device flag? -- Nate