I get the wrong re-mapping from windbg(I didn't
see it from driver's debug output before). Your patch resolves
this issue. With it, windows map card's MMIO begin at
0xC4000000 and I don't see the graphic issue that you
mentioned.
Good good study,day day up ! ^_^
-Wing(zhang xin)
OTC,Intel Corporation
>-----Original Message-----
>From: Alex Williamson [mailto:alex.williamson@xxxxxx]
>Sent: 2007?10?9? 6:22
>To: Zhang, Xing Z
>Cc: xen-ia64-devel
>Subject: RE: [Xen-ia64-devel] eepro100 HVM NIC
>
>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
|