On Mon, 2007-10-08 at 14:36 -0600, Alex Williamson wrote:
> The BARs get mapped by some level of firmware/qemu:
> EE100 pci_mmio_map region 0, addr=0xc4000000, size=0x00001000,
> type=8
> EE100 pci_map region 1, addr=0x0000c200, size=0x00000040,
> type=1
> EE100 pci_mmio_map region 2, addr=0xc4020000, size=0x00020000,
> type=0
>
> When Win2k3 boots, I see this:
> EE100 pci_mmio_map region 0, addr=0xf4fdf000, size=0x00001000,
> type=8
> EE100 pci_map region 1, addr=0x0000c200, size=0x00000040,
> type=1
> EE100 pci_mmio_map region 2, addr=0xf4fe0000, size=0x00020000,
> type=0
>
It looks like the remapping is a GFW issue. The _CRS data for the
PCI root bridge is indicating an MMIO range of 0xF0000000-0xF4FFFFFF, so
the Windows eepro driver is simply trying to move the card to what it
thinks is a valid range. Its pretty easy to fix, except doing so
somehow garbles the VGA display, and the NIC still doesn't work in
win2k3. My GFW patch below, in case anyone understands how it breaks
VGA. Thanks,
Alex
--
Alex Williamson HP Open Source & Linux Org.
diff -r 7988fb818c3b edk2-sparse/EdkXenPkg/Dxe/XenAcpi/dsdt.asl
--- a/edk2-sparse/EdkXenPkg/Dxe/XenAcpi/dsdt.asl Wed Aug 29 04:11:05
2007 +0200
+++ b/edk2-sparse/EdkXenPkg/Dxe/XenAcpi/dsdt.asl Mon Oct 08 15:20:53
2007 -0600
@@ -122,10 +122,10 @@ DefinitionBlock ("DSDT.aml", "DSDT", 2,
ResourceConsumer, PosDecode, MinFixed, MaxFixed,
Cacheable, ReadWrite,
0x00000000,
- 0xF0000000,
- 0xF4FFFFFF,
+ 0xC0000000,
+ 0xDFFFFFFF,
0x00000000,
- 0x05000000)
+ 0x20000000)
})
Return (PRT0)
}
diff -r 7988fb818c3b edk2-sparse/EdkXenPkg/Dxe/XenAcpi/dsdt.c
--- a/edk2-sparse/EdkXenPkg/Dxe/XenAcpi/dsdt.c Wed Aug 29 04:11:05 2007 +0200
+++ b/edk2-sparse/EdkXenPkg/Dxe/XenAcpi/dsdt.c Mon Oct 08 15:59:23 2007 -0600
@@ -1,11 +1,11 @@
/*
*
* Intel ACPI Component Architecture
- * ASL Optimizing Compiler version 20061109 [Jun 1 2007]
+ * ASL Optimizing Compiler version 20061109 [May 16 2007]
* Copyright (C) 2000 - 2006 Intel Corporation
* Supports ACPI Specification Revision 3.0a
*
- * Compilation of "dsdt.asl" - Thu Aug 23 15:21:39 2007
+ * Compilation of "dsdt.asl" - Mon Oct 8 15:58:14 2007
*
* C source code output
*
@@ -13,7 +13,7 @@ unsigned char AmlCode[] =
unsigned char AmlCode[] =
{
0x44,0x53,0x44,0x54,0x4D,0x0E,0x00,0x00, /* 00000000 "DSDTM..." */
- 0x02,0xC3,0x58,0x65,0x6E,0x00,0x00,0x00, /* 00000008 "..Xen..." */
+ 0x02,0xED,0x58,0x65,0x6E,0x00,0x00,0x00, /* 00000008 "..Xen..." */
0x48,0x56,0x4D,0x00,0x00,0x00,0x00,0x00, /* 00000010 "HVM....." */
0x00,0x00,0x00,0x00,0x49,0x4E,0x54,0x4C, /* 00000018 "....INTL" */
0x09,0x11,0x06,0x20,0x08,0x50,0x4D,0x42, /* 00000020 "... .PMB" */
@@ -49,38 +49,38 @@ unsigned char AmlCode[] =
0x48,0x49,0x44,0x0C,0x41,0xD0,0x0A,0x03, /* 00000110 "HID.A..." */
0x08,0x5F,0x55,0x49,0x44,0x00,0x08,0x5F, /* 00000118 "._UID.._" */
0x41,0x44,0x52,0x00,0x08,0x5F,0x42,0x42, /* 00000120 "ADR.._BB" */
- 0x4E,0x00,0x5B,0x80,0x4E,0x48,0x49,0x4F, /* 00000128 "N.[.NHIO" */
- 0x01,0x0A,0xB2,0x01,0x5B,0x81,0x0B,0x4E, /* 00000130 "....[..N" */
- 0x48,0x49,0x4F,0x01,0x4E,0x48,0x5F,0x5F, /* 00000138 "HIO.NH__" */
- 0x08,0x08,0x4F,0x53,0x54,0x5F,0x00,0x14, /* 00000140 "..OST_.." */
- 0x46,0x05,0x5F,0x49,0x4E,0x49,0x00,0xA0, /* 00000148 "F._INI.." */
- 0x4E,0x04,0x5B,0x12,0x5F,0x4F,0x53,0x49, /* 00000150 "N.[._OSI" */
- 0x60,0xA0,0x13,0x5F,0x4F,0x53,0x49,0x0D, /* 00000158 "`.._OSI." */
- 0x4C,0x69,0x6E,0x75,0x78,0x00,0x70,0x0A, /* 00000160 "Linux.p." */
- 0xB2,0x4F,0x53,0x54,0x5F,0xA1,0x27,0xA0, /* 00000168 ".OST_.'." */
- 0x1C,0x5F,0x4F,0x53,0x49,0x0D,0x57,0x69, /* 00000170 "._OSI.Wi" */
- 0x6E,0x64,0x6F,0x77,0x73,0x20,0x32,0x30, /* 00000178 "ndows 20" */
- 0x30,0x31,0x2E,0x31,0x00,0x70,0x0A,0xB1, /* 00000180 "01.1.p.." */
- 0x4F,0x53,0x54,0x5F,0xA1,0x08,0x70,0x0A, /* 00000188 "OST_..p." */
- 0xB0,0x4F,0x53,0x54,0x5F,0x70,0x4F,0x53, /* 00000190 ".OST_pOS" */
- 0x54,0x5F,0x4E,0x48,0x5F,0x5F,0x14,0x44, /* 00000198 "T_NH__.D" */
- 0x08,0x5F,0x43,0x52,0x53,0x00,0x08,0x50, /* 000001A0 "._CRS..P" */
- 0x52,0x54,0x30,0x11,0x42,0x07,0x0A,0x6E, /* 000001A8 "RT0.B..n" */
- 0x88,0x0D,0x00,0x02,0x0F,0x00,0x00,0x00, /* 000001B0 "........" */
- 0x00,0x00,0xFF,0x00,0x00,0x00,0x00,0x01, /* 000001B8 "........" */
- 0x47,0x01,0xF8,0x0C,0xF8,0x0C,0x01,0x08, /* 000001C0 "G......." */
- 0x88,0x0D,0x00,0x01,0x0C,0x03,0x00,0x00, /* 000001C8 "........" */
- 0x00,0x00,0xF7,0x0C,0x00,0x00,0xF8,0x0C, /* 000001D0 "........" */
- 0x88,0x0D,0x00,0x01,0x0C,0x03,0x00,0x00, /* 000001D8 "........" */
- 0x00,0x0D,0xFF,0xFF,0x00,0x00,0x00,0xF3, /* 000001E0 "........" */
- 0x87,0x17,0x00,0x00,0x0C,0x03,0x00,0x00, /* 000001E8 "........" */
- 0x00,0x00,0x00,0x00,0x0A,0x00,0xFF,0xFF, /* 000001F0 "........" */
- 0x0B,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 000001F8 "........" */
- 0x02,0x00,0x87,0x17,0x00,0x00,0x0D,0x03, /* 00000200 "........" */
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF0, /* 00000208 "........" */
- 0xFF,0xFF,0xFF,0xF4,0x00,0x00,0x00,0x00, /* 00000210 "........" */
- 0x00,0x00,0x00,0x05,0x79,0x00,0xA4,0x50, /* 00000218 "....y..P" */
- 0x52,0x54,0x30,0x08,0x42,0x55,0x46,0x41, /* 00000220 "RT0.BUFA" */
+ 0x4E,0x00,0x14,0x44,0x08,0x5F,0x43,0x52, /* 00000128 "N..D._CR" */
+ 0x53,0x00,0x08,0x50,0x52,0x54,0x30,0x11, /* 00000130 "S..PRT0." */
+ 0x42,0x07,0x0A,0x6E,0x88,0x0D,0x00,0x02, /* 00000138 "B..n...." */
+ 0x0F,0x00,0x00,0x00,0x00,0x00,0xFF,0x00, /* 00000140 "........" */
+ 0x00,0x00,0x00,0x01,0x47,0x01,0xF8,0x0C, /* 00000148 "....G..." */
+ 0xF8,0x0C,0x01,0x08,0x88,0x0D,0x00,0x01, /* 00000150 "........" */
+ 0x0C,0x03,0x00,0x00,0x00,0x00,0xF7,0x0C, /* 00000158 "........" */
+ 0x00,0x00,0xF8,0x0C,0x88,0x0D,0x00,0x01, /* 00000160 "........" */
+ 0x0C,0x03,0x00,0x00,0x00,0x0D,0xFF,0xFF, /* 00000168 "........" */
+ 0x00,0x00,0x00,0xF3,0x87,0x17,0x00,0x00, /* 00000170 "........" */
+ 0x0C,0x03,0x00,0x00,0x00,0x00,0x00,0x00, /* 00000178 "........" */
+ 0x0A,0x00,0xFF,0xFF,0x0B,0x00,0x00,0x00, /* 00000180 "........" */
+ 0x00,0x00,0x00,0x00,0x02,0x00,0x87,0x17, /* 00000188 "........" */
+ 0x00,0x00,0x0D,0x03,0x00,0x00,0x00,0x00, /* 00000190 "........" */
+ 0x00,0x00,0x00,0xC0,0xFF,0xFF,0xFF,0xDF, /* 00000198 "........" */
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20, /* 000001A0 "....... " */
+ 0x79,0x00,0xA4,0x50,0x52,0x54,0x30,0x5B, /* 000001A8 "y..PRT0[" */
+ 0x80,0x4E,0x48,0x49,0x4F,0x01,0x0A,0xB2, /* 000001B0 ".NHIO..." */
+ 0x01,0x5B,0x81,0x0B,0x4E,0x48,0x49,0x4F, /* 000001B8 ".[..NHIO" */
+ 0x01,0x4E,0x48,0x5F,0x5F,0x08,0x08,0x4F, /* 000001C0 ".NH__..O" */
+ 0x53,0x54,0x5F,0x00,0x14,0x46,0x05,0x5F, /* 000001C8 "ST_..F._" */
+ 0x49,0x4E,0x49,0x00,0xA0,0x4E,0x04,0x5B, /* 000001D0 "INI..N.[" */
+ 0x12,0x5F,0x4F,0x53,0x49,0x60,0xA0,0x13, /* 000001D8 "._OSI`.." */
+ 0x5F,0x4F,0x53,0x49,0x0D,0x4C,0x69,0x6E, /* 000001E0 "_OSI.Lin" */
+ 0x75,0x78,0x00,0x70,0x0A,0xB2,0x4F,0x53, /* 000001E8 "ux.p..OS" */
+ 0x54,0x5F,0xA1,0x27,0xA0,0x1C,0x5F,0x4F, /* 000001F0 "T_.'.._O" */
+ 0x53,0x49,0x0D,0x57,0x69,0x6E,0x64,0x6F, /* 000001F8 "SI.Windo" */
+ 0x77,0x73,0x20,0x32,0x30,0x30,0x31,0x2E, /* 00000200 "ws 2001." */
+ 0x31,0x00,0x70,0x0A,0xB1,0x4F,0x53,0x54, /* 00000208 "1.p..OST" */
+ 0x5F,0xA1,0x08,0x70,0x0A,0xB0,0x4F,0x53, /* 00000210 "_..p..OS" */
+ 0x54,0x5F,0x70,0x4F,0x53,0x54,0x5F,0x4E, /* 00000218 "T_pOST_N" */
+ 0x48,0x5F,0x5F,0x08,0x42,0x55,0x46,0x41, /* 00000220 "H__.BUFA" */
0x11,0x09,0x0A,0x06,0x23,0x60,0x0C,0x18, /* 00000228 "....#`.." */
0x79,0x00,0x08,0x42,0x55,0x46,0x42,0x11, /* 00000230 "y..BUFB." */
0x09,0x0A,0x06,0x23,0x00,0x00,0x18,0x79, /* 00000238 "...#...y" */
_______________________________________________
Xen-ia64-devel mailing list
Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-ia64-devel
|