On Thu, Jan 8, 2009 at 11:00 AM, Ward Vandewege <[email protected]> wrote:
> On Thu, Jan 08, 2009 at 08:52:44AM -0700, Myles Watson wrote:
>> On Thu, Jan 8, 2009 at 6:58 AM, Ward Vandewege <[email protected]> wrote:
>> > On Wed, Jan 07, 2009 at 09:39:39PM -0700, Myles Watson wrote:
>> >> > The rev that broke the boot was 1089 or 1090. 1089 does not build, so I 
>> >> > can't
>> >> > tell for sure. 1088 boots fine. 1090 is broken.
>> >>
>> >> They might have well been the same commit because they were
>> >> interdependent.  It was just an easier way of looking at the changes
>> >> for me.
>> >>
>> >> Thanks for tracking it down.  Could you send me a log from 1088?
>> >> Hopefully we can track it down quickly.
>> >
>> > Sure, see attached.
>>
>> The biggest difference that I see is that there is no graphics device
>> (PCI 1.1) in the broken one.  In 1088 it was found dynamically (not in
>> the tree), but now it isn't found at all.
>>
>> Since it was supposed to be disabled by:
>>       /* this board does not really have vga; disable it (pci device 
>> 00:01.1)  */
>>                       unwanted_vpci = < 80000900 0 >;
>> in the dts, I'm not sure why it disappeared now.
>>
>> Possible solution:
>> - Try it again without the unwanted_vpci line in the dts.
>>
>> I guess I don't understand why the device is gone now.  I didn't think
>> the changes I've made would make the device disappear.
>
> I have not tried that yet, but here's a boot log from v1108, which still does
> not boot but it stops in a different place now, it seems.

Thanks for your patience.  One problem is that there is no area
reserved for the APIC and the ROM.  I think we should add a reserved
resource in the domain that goes from 0xfc000000-0xffffffff.  That
will stop allocations from going there.

I copied the reserved areas from i440bx_emulation.  Like the comments
say, I know these need to be reserved areas, but I'm not exactly sure
where they belong.

Compile tested.

Signed-off-by: Myles Watson <[email protected]>

Thanks,
Myles
Index: svn/northbridge/amd/geodelx/geodelx.c
===================================================================
--- svn.orig/northbridge/amd/geodelx/geodelx.c
+++ svn/northbridge/amd/geodelx/geodelx.c
@@ -149,8 +149,28 @@ static void geodelx_northbridge_set_reso
  */
 static void geodelx_pci_domain_read_resources(struct device *dev)
 {
+	struct resource *res;
+
 	/* If the domain has any specific resources, read them here. */
 	pci_domain_read_resources(dev);
+
+	/* Reserve space for the IOAPIC.  This should be in the Southbridge,
+	 * but I couldn't tell which device to put it in. */
+	res = new_resource(dev, 2);
+	res->base = 0xfec00000UL;
+	res->size = 0x100000UL;
+	res->limit = 0xffffffffUL;
+	res->flags = IORESOURCE_MEM | IORESOURCE_FIXED | IORESOURCE_STORED |
+		     IORESOURCE_ASSIGNED;
+
+	/* Reserve space for the LAPIC.  There's one in every processor, but
+	 * the space only needs to be reserved once, so we do it here. */
+	res = new_resource(dev, 3);
+	res->base = 0xfee00000UL;
+	res->size = 0x10000UL;
+	res->limit = 0xffffffffUL;
+	res->flags = IORESOURCE_MEM | IORESOURCE_FIXED | IORESOURCE_STORED |
+		     IORESOURCE_ASSIGNED;
 }
 
 /**
--
coreboot mailing list: [email protected]
http://www.coreboot.org/mailman/listinfo/coreboot

Reply via email to