Fix the resource end in amdk8/northbridge.c.

Without this bugfix, the resource for the PCI/ISA video memory at
0xa0000 - 0xbffff is too big, i.e. it goes up to 0xcffff instead of
just 0xbffff as it should.

Here's the diff from two runs of the tool from 
http://www.linuxbios.org/pipermail/linuxbios/2007-June/022449.html
on the MSI MS-7260 (K9N Neo), with and without the bugfix. After applying,
the resource size is correct again.

--- dumpres_lb_pci_vgacard_without_resfix.txt
+++ dumpres_lb_pci_vgacard_with_resfix.txt
@@ -11,7 +11,7 @@
 MMIO map: #2 0x0000000000 - 0x000000ffff Access: /     Dstnode:0 DstLink 0
 MMIO map: #3 0x0000000000 - 0x000000ffff Access: /     Dstnode:0 DstLink 0
 MMIO map: #4 0x0000000000 - 0x000000ffff Access: /     Dstnode:0 DstLink 0
-MMIO map: #5 0x00000a0000 - 0x00000cffff Access: R/W     Dstnode:0 DstLink 0
+MMIO map: #5 0x00000a0000 - 0x00000bffff Access: R/W     Dstnode:0 DstLink 0
 MMIO map: #6 0x00fc000000 - 0x00fd1fffff Access: R/W     Dstnode:0 DstLink 0
 MMIO map: #7 0x00fd200000 - 0x00fd1fffff Access: R/W     Dstnode:0 DstLink 0
 MMIO map: #0  0x000000 - 0x003fff Access: R/W  ISA VGA Dstnode:0 DstLink 0

Signed-off-by: Rudolf Marek <r.marek@assembler.cz>
Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@2853 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
This commit is contained in:
Rudolf Marek 2007-10-14 00:29:25 +00:00 committed by Uwe Hermann
parent 39a5bf74ef
commit 572268eaa7
1 changed files with 1 additions and 1 deletions

View File

@ -562,7 +562,7 @@ static void amdk8_create_vga_resource(device_t dev, unsigned nodeid)
base |= (resource->base >> 8) & 0xffffff00; base |= (resource->base >> 8) & 0xffffff00;
base |= 3; base |= 3;
limit &= 0x00000048; limit &= 0x00000048;
limit |= ((resource->base + resource->size) >> 8) & 0xffffff00; limit |= (resource_end(resource) >> 8) & 0xffffff00;
limit |= (resource->index & 3) << 4; limit |= (resource->index & 3) << 4;
limit |= (nodeid & 7); limit |= (nodeid & 7);
f1_write_config32(reg + 0x4, limit); f1_write_config32(reg + 0x4, limit);