[coreboot] [PATCH] k8 uma and high tables

Myles Watson mylesgw at gmail.com
Sat Oct 24 15:51:09 CEST 2009



> -----Original Message-----
> From: Stefan Reinauer [mailto:stepan at coresystems.de]
> Sent: Saturday, October 24, 2009 7:20 AM
> To: Myles Watson
> Cc: coreboot_mailing list
> Subject: Re: [coreboot] [PATCH] k8 uma and high tables
> 
> Myles Watson wrote:
> >
> >
> >     +#if CONFIG_GFXUMA == 1
> >     +               printk_debug("node %d :
> >     uma_memory_base/1024=0x%08x, mmio_basek=0x%08x, basek=0x%08x,
> >     limitk=0x%08x\n", i, uma_memory_base >> 10, mmio_basek, basek,
> >     limitk);
> >     +               if ((uma_memory_base >> 10) < mmio_basek)
> >     +                       printk_alert("node %d: UMA memory starts
> >     below mmio_basek\n", i);
> >
> > Isn't this always true?  It seems like if uma_memory_base >
> > (mmio_basek - uma_memory_size) it's an error.
> Can this happen? I have no idea,.. Carl-Daniel came up with the equation
> and it worked great for me on the KT690
So you don't see that message?  It seems like you'd have to have more than
4G of RAM and have UMA live above 4G for that to happen.

> 
> > As a side note, I think that calculation should be done here, and I
> > don't think it should depend on how much RAM is installed, but should
> > be user configurable.
> I think it depends on the installed RAM because there is a hole below 4G
> for PCI devices etc.
> 
> 
> > Then we can unify GFXUMA and VGA_MEM_MB -> UMA_MEM_MB.  Then
> > uma_memory_base can go away too, since it will be mmio_base -
> VGA_MEM_MB.
> unless uma memory can live above 4G on some chipsets...?
I don't think we have to worry about that with K8.

> >     +                                               high_tables_base =
> >     ((uma_memory_base >> 10) - HIGH_TABLES_SIZE) *
> >
> >     1024;
> >
> > high_tables_base = uma_memory_base - (HIGH_TABLES_SIZE * 1024);
> d'uh, yes. Can you commit?
Rev 4389.

Thanks,
Myles





More information about the coreboot mailing list