[coreboot] [PATCH] k8 uma and high tables
Myles Watson
mylesgw at gmail.com
Sat Oct 24 15:07:42 CEST 2009
>
> +#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.
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.
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.
> +#else
> // printk_debug("node %d : mmio_basek=%08x, basek=%08x,
> limitk=%08x\n", i, mmio_basek, basek, limitk); //yhlu
> +#endif
>
> /* See if I need to split the region to accomodate pci
> memory space */
> if ( (basek < 4*1024*1024 ) && (limitk > mmio_basek) ) {
> @@ -1015,7 +1024,11 @@
> #if CONFIG_WRITE_HIGH_TABLES==1
> if (i==0 && high_tables_base==0) {
> /* Leave some space for ACPI, PIRQ
> and MP tables */
> +#if CONFIG_GFXUMA == 1
> + high_tables_base =
> ((uma_memory_base >> 10) - HIGH_TABLES_SIZE) *
1024;
>
high_tables_base = uma_memory_base - (HIGH_TABLES_SIZE * 1024);
> +#else
> high_tables_base =
> (mmio_basek - HIGH_TABLES_SIZE) * 1024;
>
> @@ -1051,7 +1064,11 @@
> i, mmio_basek, basek, limitk);
> if (i==0 && high_tables_base==0)
> /* Leave some space for ACPI, PIRQ and MP tables */
> +#if CONFIG_GFXUMA == 1
> + high_tables_base = ((uma_memory_base >> 10) -
> HIGH_TABLES_SIZE) * 1024;
>
same thing.
Thanks,
Myles
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.coreboot.org/pipermail/coreboot/attachments/20091024/59cd559f/attachment.html>
More information about the coreboot
mailing list