From owner-freebsd-acpi@FreeBSD.ORG Tue May 24 12:02:03 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 EBECF1065675; Tue, 24 May 2011 12:02:03 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from cyrus.watson.org (cyrus.watson.org [65.122.17.42]) by mx1.freebsd.org (Postfix) with ESMTP id C5C6D8FC0A; Tue, 24 May 2011 12:02:03 +0000 (UTC) Received: from bigwig.baldwin.cx (66.111.2.69.static.nyinternet.net [66.111.2.69]) by cyrus.watson.org (Postfix) with ESMTPSA id 7CDC246B37; Tue, 24 May 2011 08:02:03 -0400 (EDT) Received: from jhbbsd.localnet (unknown [209.249.190.124]) by bigwig.baldwin.cx (Postfix) with ESMTPSA id 1AF928A050; Tue, 24 May 2011 08:02:03 -0400 (EDT) From: John Baldwin To: Andriy Gapon Date: Tue, 24 May 2011 08:02:02 -0400 User-Agent: KMail/1.13.5 (FreeBSD/8.2-CBSD-20110325; KDE/4.5.5; amd64; ; ) References: <4DDA16FF.8080802@FreeBSD.org> In-Reply-To: <4DDA16FF.8080802@FreeBSD.org> MIME-Version: 1.0 Content-Type: Text/Plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Message-Id: <201105240802.02616.jhb@freebsd.org> X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.2.6 (bigwig.baldwin.cx); Tue, 24 May 2011 08:02:03 -0400 (EDT) Cc: freebsd-acpi@freebsd.org Subject: Re: acpi resources problem potentially because of new pcib code 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: Tue, 24 May 2011 12:02:04 -0000 On Monday, May 23, 2011 4:12:47 am Andriy Gapon wrote: > > John, > > it seems that possibly your recent changes for PCI bridges could have broken > something for my old 440BX/PIIX4/PIII type test machine. > Looks like now some I/O resources get assigned to a PCI bridge instead of ACPI. Actually, this is due to some older changes in 9 to make ACPI reserve all assigned resources via resource_list_reserve(). > Some highlights follow: > ... > acpi_timer0: couldn't allocate resource (port 0x4008) > ... > pcib0: port 0xcf8-0xcff,0x4000-0x4041,0x5000-0x500f on acpi0 > ... > device_attach: acpi_throttle0 attach returned 6 > > More data here: > http://people.freebsd.org/~avg/ms6163/ > > I see that _CRS of the Host-PCI bridge indeed claims that 0x4000 range, so I > realize that this is a BIOS bug, but I think that perhaps we could have some > quirk there to leave this range to ACPI. Well, it would be hard to know how to quirk this generically. acpi timer devices do not use a fixed address range. One thing I have run into is that we make our lives more difficulty by violating the ACPI namespace in our new-bus tree. Specifically, I think we should have an ACPI-aware ISA driver and that any ACPI-enumerated devices that are below the PCI-ISA bridge should be devices on that ISA bus, not on acpi0 directly. The resource producer ranges set up in Host-PCI bridge devices all assume that ACPI-enumerated ISA devices are behind the Host-PCI bridge rather than at the same level. People did not like this the last time I suggested it, but we may need to do it regardless. I might look at doing that in 10. For your BIOS I'd be tempted to just blacklist it. I suppose we could add a quirk to ignore all 'consumed' devices on Host-PCI bridges that are not for the '0xcf8-0xcff' range as an alternative perhaps. -- John Baldwin