Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 04 Jan 2010 14:40:51 -0800
From:      Dana Myers <dana.myers@gmail.com>
To:        Joerg Wunsch <joerg_wunsch@uriah.heep.sax.de>
Cc:        freebsd-acpi@freebsd.org
Subject:   Re: FreeBSD 8.0 hangs on boot with ACPI enabled
Message-ID:  <4B426E73.6050604@gmail.com>
In-Reply-To: <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> <20100104223738.GP1616@uriah.heep.sax.de>

next in thread | previous in thread | raw e-mail | index | archive | help
Joerg Wunsch wrote:
> 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.
>>     
>
>   
Ah.  This isn't like the evil thing I've seen where PCI config
space is trounced during the legacy->ACPI mode switch.

Cheers,
Dana
> It happens here:
>
>         res = resource_list_alloc(rl, bus, dev, type, &reg, 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?
>
>   




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4B426E73.6050604>