Date: Mon, 4 Jan 2010 17:53:27 -0500 From: John Baldwin <jhb@freebsd.org> To: Dana Myers <dana.myers@gmail.com> Cc: Joerg Wunsch <joerg_wunsch@uriah.heep.sax.de>, freebsd-acpi@freebsd.org Subject: Re: FreeBSD 8.0 hangs on boot with ACPI enabled Message-ID: <201001041753.27070.jhb@freebsd.org> In-Reply-To: <4B426E73.6050604@gmail.com> References: <20091230082556.GD1637@uriah.heep.sax.de> <20100104223738.GP1616@uriah.heep.sax.de> <4B426E73.6050604@gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Monday 04 January 2010 5:40:51 pm Dana Myers wrote:
> 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 might be because ACPI is also known to trash the IO decoding windows in
PCI-PCI bridges as well.
> > 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?
> >
> >
>
>
--
John Baldwin
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201001041753.27070.jhb>
