From owner-freebsd-acpi@FreeBSD.ORG Mon Jan 4 22:37:41 2010 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 085A01065696; Mon, 4 Jan 2010 22:37:41 +0000 (UTC) (envelope-from j@uriah.heep.sax.de) Received: from uriah.heep.sax.de (uriah.heep.sax.de [213.240.137.9]) by mx1.freebsd.org (Postfix) with ESMTP id A48238FC21; Mon, 4 Jan 2010 22:37:40 +0000 (UTC) Received: by uriah.heep.sax.de (Postfix, from userid 107) id EAD8445; Mon, 4 Jan 2010 23:37:38 +0100 (MET) Date: Mon, 4 Jan 2010 23:37:38 +0100 From: Joerg Wunsch To: John Baldwin Message-ID: <20100104223738.GP1616@uriah.heep.sax.de> References: <20091230082556.GD1637@uriah.heep.sax.de> <200912300839.47463.jhb@freebsd.org> <20091230143943.GA1616@uriah.heep.sax.de> <200912301122.28030.jhb@freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <200912301122.28030.jhb@freebsd.org> X-Phone: +49-351-2012 669 X-PGP-Fingerprint: DC 47 E6 E4 FF A6 E9 8F 93 21 E0 7D F9 12 D6 4E X-GPG-Fingerprint: 5E84 F980 C3CA FD4B B584 1070 F48C A81B 69A8 5873 User-Agent: Mutt/1.5.20 (2009-06-14) Cc: freebsd-acpi@freebsd.org Subject: Re: FreeBSD 8.0 hangs on boot with ACPI enabled X-BeenThere: freebsd-acpi@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Joerg Wunsch List-Id: ACPI and power management development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 04 Jan 2010 22:37:41 -0000 As John Baldwin wrote: > OTOH, I'm not sure why initializing ACPI is trashing the BAR. If > you want, you can try to narrow down at what point the BAR gets > reset to 0. It happens here: res = resource_list_alloc(rl, bus, dev, type, ®, start, end, count, prefetch ? RF_PREFETCHABLE : 0); if (res == NULL) { /* * If the allocation fails, clear the BAR and delete * the resource list entry to force * pci_alloc_resource() to allocate resources from the * parent. */ resource_list_delete(rl, type, reg); printf("resource_list_alloc() failed\n"); start = 0; The printf() I added there triggers, and this resets "start" to 0. Where to proceed now? -- cheers, J"org .-.-. --... ...-- -.. . DL8DTL http://www.sax.de/~joerg/ NIC: JW11-RIPE Never trust an operating system you don't have sources for. ;-)