WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-ia64-devel

[Xen-ia64-devel] [PATCH][GFW][RFC] tell xen pci device which memory to u

To: xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-ia64-devel] [PATCH][GFW][RFC] tell xen pci device which memory to use for vram
From: Isaku Yamahata <yamahata@xxxxxxxxxxxxx>
Date: Mon, 8 Sep 2008 19:38:46 +0900
Cc:
Delivery-date: Mon, 08 Sep 2008 03:38:51 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-ia64-devel-request@lists.xensource.com?subject=help>
List-id: Discussion of the ia64 port of Xen <xen-ia64-devel.lists.xensource.com>
List-post: <mailto:xen-ia64-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-ia64-devel>, <mailto:xen-ia64-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-ia64-devel>, <mailto:xen-ia64-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-ia64-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mutt/1.5.6i
Hi.

Ths c/s of 18394:dade7f0bdc8d caused ioemu to segv.
Although this patch is unfinished, I post it because 
someone familiar with GFW can help.

This patch is intended for GFW counter part of 18394:dade7f0bdc8d.
If it found xen pci device, allocates VRAM with Xen page alignment
(16KB) and tell the guest physical address by writing the address
(it suppots only 32bit...) at BAR 0 + 4 bytes offset.

At this moment it doesn't fails with auto pci detection because
gBS->OpenProtocol() fails.
However with "connect" command of EFI shell, it successes to work.
Any hints?

And one more thing. It should be before vga initialization.
But I don't know how to enforce that. Probably it can be
work arounded by the patch to ioemu I posted before.

thanks,

Tell qemu-dm which memory for VRAM to use.

Signed-off-by: Isaku Yamahata <yamahata@xxxxxxxxxxxxx>

diff -r 7ab86aba17c5 
edk2-sparse/EdkQemuPkg/Bus/Pci/XenPlatform/Dxe/ComponentName.c
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/edk2-sparse/EdkQemuPkg/Bus/Pci/XenPlatform/Dxe/ComponentName.c    Mon Sep 
08 19:29:24 2008 +0900
@@ -0,0 +1,165 @@
+/*++
+
+Copyright (c) 2008 Isaku Yamahata
+Based on VgaMiniPort driver
+
+Copyright (c) 2006 Intel Corporation. All rights reserved
+All rights reserved. This program and the accompanying materials               
           
+are licensed and made available under the terms and conditions of the BSD 
License         
+which accompanies this distribution.  The full text of the license may be 
found at        
+http://opensource.org/licenses/bsd-license.php                                 
           
+                                                                               
           
+THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,          
           
+WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.  
           
+
+
+Module Name:
+
+  ComponentName.c
+
+Abstract:
+
+--*/
+
+#include "XenPlatform.h"
+
+//
+// EFI Component Name Functions
+//
+EFI_STATUS
+EFIAPI
+PciXenPlatformComponentNameGetDriverName (
+  IN  EFI_COMPONENT_NAME_PROTOCOL  *This,
+  IN  CHAR8                        *Language,
+  OUT CHAR16                       **DriverName
+  );
+
+EFI_STATUS
+EFIAPI
+PciXenPlatformComponentNameGetControllerName (
+  IN  EFI_COMPONENT_NAME_PROTOCOL                     *This,
+  IN  EFI_HANDLE                                      ControllerHandle,
+  IN  EFI_HANDLE                                      ChildHandle        
OPTIONAL,
+  IN  CHAR8                                           *Language,
+  OUT CHAR16                                          **ControllerName
+  );
+
+//
+// EFI Component Name Protocol
+//
+EFI_COMPONENT_NAME_PROTOCOL     gPciXenPlatformComponentName = {
+  PciXenPlatformComponentNameGetDriverName,
+  PciXenPlatformComponentNameGetControllerName,
+  "eng"
+};
+
+static EFI_UNICODE_STRING_TABLE mPciXenPlatformDriverNameTable[] = {
+  {
+    "eng",
+    L"PCI Xen Platform Driver"
+  },
+  {
+    NULL,
+    NULL
+  }
+};
+
+EFI_STATUS
+EFIAPI
+PciXenPlatformComponentNameGetDriverName (
+  IN  EFI_COMPONENT_NAME_PROTOCOL  *This,
+  IN  CHAR8                        *Language,
+  OUT CHAR16                       **DriverName
+  )
+/*++
+
+  Routine Description:
+    Retrieves a Unicode string that is the user readable name of the EFI 
Driver.
+
+  Arguments:
+    This       - A pointer to the EFI_COMPONENT_NAME_PROTOCOL instance.
+    Language   - A pointer to a three character ISO 639-2 language identifier.
+                 This is the language of the driver name that that the caller 
+                 is requesting, and it must match one of the languages 
specified
+                 in SupportedLanguages.  The number of languages supported by 
a 
+                 driver is up to the driver writer.
+    DriverName - A pointer to the Unicode string to return.  This Unicode 
string
+                 is the name of the driver specified by This in the language 
+                 specified by Language.
+
+  Returns:
+    EFI_SUCCESS           - The Unicode string for the Driver specified by This
+                            and the language specified by Language was 
returned 
+                            in DriverName.
+    EFI_INVALID_PARAMETER - Language is NULL.
+    EFI_INVALID_PARAMETER - DriverName is NULL.
+    EFI_UNSUPPORTED       - The driver specified by This does not support the 
+                            language specified by Language.
+
+--*/
+{
+  return LookupUnicodeString (
+          Language,
+          gPciXenPlatformComponentName.SupportedLanguages,
+          mPciXenPlatformDriverNameTable,
+          DriverName
+          );
+}
+
+EFI_STATUS
+EFIAPI
+PciXenPlatformComponentNameGetControllerName (
+  IN  EFI_COMPONENT_NAME_PROTOCOL                     *This,
+  IN  EFI_HANDLE                                      ControllerHandle,
+  IN  EFI_HANDLE                                      ChildHandle        
OPTIONAL,
+  IN  CHAR8                                           *Language,
+  OUT CHAR16                                          **ControllerName
+  )
+/*++
+
+  Routine Description:
+    Retrieves a Unicode string that is the user readable name of the controller
+    that is being managed by an EFI Driver.
+
+  Arguments:
+    This             - A pointer to the EFI_COMPONENT_NAME_PROTOCOL instance.
+    ControllerHandle - The handle of a controller that the driver specified by 
+                       This is managing.  This handle specifies the controller 
+                       whose name is to be returned.
+    ChildHandle      - The handle of the child controller to retrieve the name 
+                       of.  This is an optional parameter that may be NULL.  
It 
+                       will be NULL for device drivers.  It will also be NULL 
+                       for a bus drivers that wish to retrieve the name of the 
+                       bus controller.  It will not be NULL for a bus driver 
+                       that wishes to retrieve the name of a child controller.
+    Language         - A pointer to a three character ISO 639-2 language 
+                       identifier.  This is the language of the controller 
name 
+                       that that the caller is requesting, and it must match 
one
+                       of the languages specified in SupportedLanguages.  The 
+                       number of languages supported by a driver is up to the 
+                       driver writer.
+    ControllerName   - A pointer to the Unicode string to return.  This Unicode
+                       string is the name of the controller specified by 
+                       ControllerHandle and ChildHandle in the language 
+                       specified by Language from the point of view of the 
+                       driver specified by This. 
+
+  Returns:
+    EFI_SUCCESS           - The Unicode string for the user readable name in 
the 
+                            language specified by Language for the driver 
+                            specified by This was returned in DriverName.
+    EFI_INVALID_PARAMETER - ControllerHandle is not a valid EFI_HANDLE.
+    EFI_INVALID_PARAMETER - ChildHandle is not NULL and it is not a valid 
+                            EFI_HANDLE.
+    EFI_INVALID_PARAMETER - Language is NULL.
+    EFI_INVALID_PARAMETER - ControllerName is NULL.
+    EFI_UNSUPPORTED       - The driver specified by This is not currently 
+                            managing the controller specified by 
+                            ControllerHandle and ChildHandle.
+    EFI_UNSUPPORTED       - The driver specified by This does not support the 
+                            language specified by Language.
+
+--*/
+{
+  return EFI_UNSUPPORTED;
+}
diff -r 7ab86aba17c5 
edk2-sparse/EdkQemuPkg/Bus/Pci/XenPlatform/Dxe/XenPlatform.c
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/edk2-sparse/EdkQemuPkg/Bus/Pci/XenPlatform/Dxe/XenPlatform.c      Mon Sep 
08 19:29:24 2008 +0900
@@ -0,0 +1,262 @@
+/*++
+
+Copyright (c) 2008 Isaku Yamahata
+Based on VgaMiniPort driver
+
+Copyright (c) 2006 Intel Corporation. All rights reserved
+All rights reserved. This program and the accompanying materials               
           
+are licensed and made available under the terms and conditions of the BSD 
License         
+which accompanies this distribution.  The full text of the license may be 
found at        
+http://opensource.org/licenses/bsd-license.php                                 
           
+                                                                               
           
+THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,          
           
+WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.  
           
+
+
+Module Name:
+
+  XenPlatform.c
+    
+Abstract: 
+    
+
+Revision History
+--*/
+
+#include <Library/MemoryAllocationLib.h>
+#include "XenPlatform.h"
+
+//
+// EFI Driver Binding Protocol Instance
+//
+EFI_DRIVER_BINDING_PROTOCOL gPciXenPlatformDriverBinding = {
+  PciXenPlatformDriverBindingSupported,
+  PciXenPlatformDriverBindingStart,
+  PciXenPlatformDriverBindingStop,
+  0x00000000,
+  NULL,
+  NULL
+};
+
+#if 0
+//
+// Driver Entry Point
+//
+EFI_STATUS
+EFIAPI
+PciXenPlatformDriverEntryPoint (
+  IN EFI_HANDLE         ImageHandle,
+  IN EFI_SYSTEM_TABLE   *SystemTable
+  )
+/*++
+  
+  Routine Description:
+    Driver Entry Point.
+        
+  Arguments:
+    (Standard EFI Image entry - EFI_IMAGE_ENTRY_POINT)
+  
+  Returns:
+    EFI_STATUS
+--*/
+{
+  return EfiLibInstallAllDriverProtocols (
+          ImageHandle,
+          SystemTable,
+          &gPciXenPlatformDriverBinding,
+          ImageHandle,
+          &gPciXenPlatformComponentName,
+          NULL,
+          NULL
+          );
+  return EFI_SUCCESS;
+}
+#endif
+
+EFI_STATUS
+EFIAPI
+PciXenPlatformDriverBindingSupported (
+  IN EFI_DRIVER_BINDING_PROTOCOL  *This,
+  IN EFI_HANDLE                   Controller,
+  IN EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath
+  )
+/*++
+  
+  Routine Description:
+    Supported.
+    
+  Arguments:
+    (Standard DriverBinding Protocol Supported() function)
+    
+  Returns:
+    EFI_STATUS
+  
+--*/
+{
+  EFI_STATUS          Status;
+  EFI_PCI_IO_PROTOCOL *PciIo;
+  PCI_TYPE00          Pci;
+
+  //
+  // Open the IO Abstraction(s) needed to perform the supported test
+  //
+  Status = gBS->OpenProtocol (
+                  Controller,
+                  &gEfiPciIoProtocolGuid,
+                  (VOID **) &PciIo,
+                  This->DriverBindingHandle,
+                  Controller,
+                  EFI_OPEN_PROTOCOL_BY_DRIVER
+                  );
+  if (EFI_ERROR (Status)) {
+    return Status;
+  }
+  //
+  // See if this is a PCI XEN Controller by looking at the Command register and
+  // Class Code Register
+  //
+  Status = PciIo->Pci.Read (
+                        PciIo,
+                        EfiPciIoWidthUint32,
+                        0,
+                        sizeof (Pci) / sizeof (UINT32),
+                        &Pci
+                        );
+  if (EFI_ERROR (Status)) {
+    goto Done;
+  }
+
+  Status = EFI_UNSUPPORTED;
+  //
+  // See if the device is an enabled XEN device.
+  //
+  if (Pci.Hdr.VendorId == XEN_PLATFORM_VENDOR_ID &&
+      Pci.Hdr.DeviceId == XEN_PLATFORM_DEVICE_ID) {
+    Status = EFI_SUCCESS;
+  }
+
+Done:
+  gBS->CloseProtocol (
+        Controller,
+        &gEfiPciIoProtocolGuid,
+        This->DriverBindingHandle,
+        Controller
+        );
+
+  return Status;
+}
+
+EFI_STATUS
+EFIAPI
+PciXenPlatformDriverBindingStart (
+  IN EFI_DRIVER_BINDING_PROTOCOL  *This,
+  IN EFI_HANDLE                   Controller,
+  IN EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath
+  )
+/*++
+  
+  Routine Description:
+    Install XEN Mini Port Protocol onto XEN device handles
+  
+  Arguments:
+    (Standard DriverBinding Protocol Start() function)
+    
+  Returns:
+    EFI_STATUS
+    
+--*/
+{
+  EFI_STATUS            Status;
+  EFI_PCI_IO_PROTOCOL   *PciIo;
+  VOID                  *VgaRam = NULL;
+  UINT32               Data;
+
+  PciIo                 = NULL;
+  //
+  // Open the IO Abstraction(s) needed
+  //
+  Status = gBS->OpenProtocol (
+                  Controller,
+                  &gEfiPciIoProtocolGuid,
+                  (VOID **) &PciIo,
+                  This->DriverBindingHandle,
+                  Controller,
+                  EFI_OPEN_PROTOCOL_BY_DRIVER
+                  );
+  if (EFI_ERROR (Status)) {
+    goto Done;
+  }
+
+  //
+  // XXX: exclusion. only once.
+  //
+  VgaRam = AllocateAlignedReservedPages (VGA_RAM_PAGES, XEN_PAGE_SIZE);
+  if (VgaRam == NULL) {
+    Status = EFI_OUT_OF_RESOURCES;
+    goto Done;
+  }
+  ZeroMem (VgaRam, VGA_RAM_PAGES * 4 * 1024);
+
+  Data = (UINT32)VgaRam;
+  Status = PciIo->Io.Write (
+                  PciIo,
+                  EfiPciIoWidthUint32,
+                  XEN_BAR_INDEX,
+                  XEN_VGA_OFFSET,
+                  1,
+                  &Data
+                  );
+
+Done:
+  if (EFI_ERROR (Status)) {
+    gBS->CloseProtocol (
+          Controller,
+          &gEfiPciIoProtocolGuid,
+          This->DriverBindingHandle,
+          Controller
+          );
+    if (VgaRam) {
+      FreeAlignedPages (VgaRam, VGA_RAM_PAGES);
+    }
+  }
+
+  return Status;
+}
+
+EFI_STATUS
+EFIAPI
+PciXenPlatformDriverBindingStop (
+  IN  EFI_DRIVER_BINDING_PROTOCOL     *This,
+  IN  EFI_HANDLE                      Controller,
+  IN  UINTN                           NumberOfChildren,
+  IN  EFI_HANDLE                      *ChildHandleBuffer
+  )
+/*++
+  
+  Routine Description:
+    Stop.
+  
+  Arguments:
+    (Standard DriverBinding Protocol Stop() function)
+  
+  Returns:
+    EFI_STATUS
+  
+--*/
+{
+  gBS->CloseProtocol (
+        Controller,
+        &gEfiPciIoProtocolGuid,
+        This->DriverBindingHandle,
+        Controller
+        );
+
+  // VGA will be used even after stopping this device...
+#if 0
+  if (VgaRam) {
+    FreeAlignedPages (VgaRam, VGA_RAM_PAGES);
+  }
+#endif
+
+  return EFI_SUCCESS;
+}
diff -r 7ab86aba17c5 
edk2-sparse/EdkQemuPkg/Bus/Pci/XenPlatform/Dxe/XenPlatform.h
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/edk2-sparse/EdkQemuPkg/Bus/Pci/XenPlatform/Dxe/XenPlatform.h      Mon Sep 
08 19:29:24 2008 +0900
@@ -0,0 +1,76 @@
+/*++
+
+Copyright (c) 2008 Isaku Yamahata
+Based on VgaMiniPort driver
+
+Copyright (c) 2006 Intel Corporation. All rights reserved
+All rights reserved. This program and the accompanying materials               
           
+are licensed and made available under the terms and conditions of the BSD 
License         
+which accompanies this distribution.  The full text of the license may be 
found at        
+http://opensource.org/licenses/bsd-license.php                                 
           
+                                                                               
           
+THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,          
           
+WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.  
           
+
+
+Module Name:
+
+    XenPlatform.h
+    
+Abstract: 
+    
+
+Revision History
+--*/
+
+#ifndef _XEN_PLATFORM_H
+#define _XEN_PLATFORM_H
+
+#include <IndustryStandard/pci22.h>
+
+#define XEN_PLATFORM_VENDOR_ID 0x5853
+#define XEN_PLATFORM_DEVICE_ID 0x0001
+
+#define VGA_RAM_SIZE           (8192 * 1024)
+#define VGA_RAM_PAGES          (VGA_RAM_SIZE / (4 * 1024))
+#define XEN_PAGE_SIZE          (16 * 1024)
+
+//
+// Use BAR 0
+// Offset 4 bytes
+//
+#define XEN_BAR_INDEX          0
+#define XEN_VGA_OFFSET         4
+
+//
+// Global Variables
+//
+extern EFI_DRIVER_BINDING_PROTOCOL gPciXenPlatformDriverBinding;
+extern EFI_COMPONENT_NAME_PROTOCOL gPciXenPlatformComponentName;
+
+//
+// Driver Binding Protocol functions
+//
+EFI_STATUS
+PciXenPlatformDriverBindingSupported (
+  IN EFI_DRIVER_BINDING_PROTOCOL  *This,
+  IN EFI_HANDLE                   Controller,
+  IN EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath
+  );
+
+EFI_STATUS
+PciXenPlatformDriverBindingStart (
+  IN EFI_DRIVER_BINDING_PROTOCOL  *This,
+  IN EFI_HANDLE                   Controller,
+  IN EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath
+  );
+
+EFI_STATUS
+PciXenPlatformDriverBindingStop (
+  IN  EFI_DRIVER_BINDING_PROTOCOL  *This,
+  IN  EFI_HANDLE                   Controller,
+  IN  UINTN                        NumberOfChildren,
+  IN  EFI_HANDLE                   *ChildHandleBuffer
+  );
+  
+#endif
diff -r 7ab86aba17c5 
edk2-sparse/EdkQemuPkg/Bus/Pci/XenPlatform/Dxe/XenPlatform.msa
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/edk2-sparse/EdkQemuPkg/Bus/Pci/XenPlatform/Dxe/XenPlatform.msa    Mon Sep 
08 19:29:24 2008 +0900
@@ -0,0 +1,68 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ModuleSurfaceArea xmlns="http://www.TianoCore.org/2006/Edk2.0"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";>
+  <MsaHeader>
+    <ModuleName>XenPlatform</ModuleName>
+    <ModuleType>DXE_DRIVER</ModuleType>
+    <GuidValue>5d98ac1c-7b37-11dd-81e6-39ed55d89593</GuidValue>
+    <Version>0.1</Version>
+    <Abstract>Xen Platform</Abstract>
+    <Description>Xen Platform</Description>
+    <Copyright>Copyright (c) 2006 Intel Corporation. Copyright (c) 2008 Isaku 
Yamahata.</Copyright>
+    <License>All rights reserved. This program and the accompanying materials  
                        
+are licensed and made available under the terms and conditions of the BSD 
License         
+which accompanies this distribution.  The full text of the license may be 
found at        
+http://opensource.org/licenses/bsd-license.php</License>
+    <Specification>FRAMEWORK_BUILD_PACKAGING_SPECIFICATION   
0x00000052</Specification>
+  </MsaHeader>
+  <ModuleDefinitions>
+    <SupportedArchitectures>EBC IA32 X64 IPF ARM PPC</SupportedArchitectures>
+    <BinaryModule>false</BinaryModule>
+    <OutputFileBasename>XenPlatform</OutputFileBasename>
+  </ModuleDefinitions>
+  <LibraryClassDefinitions>
+    <LibraryClass Usage="ALWAYS_CONSUMED">
+      <Keyword>BaseLib</Keyword>
+    </LibraryClass>
+    <LibraryClass Usage="ALWAYS_CONSUMED">
+      <Keyword>DebugLib</Keyword>
+    </LibraryClass>
+    <LibraryClass Usage="ALWAYS_CONSUMED">
+      <Keyword>UefiBootServicesTableLib</Keyword>
+    </LibraryClass>
+    <LibraryClass Usage="ALWAYS_CONSUMED">
+      <Keyword>UefiDriverEntryPoint</Keyword>
+    </LibraryClass>
+    <LibraryClass Usage="ALWAYS_CONSUMED">
+      <Keyword>UefiDriverModelLib</Keyword>
+    </LibraryClass>
+    <LibraryClass Usage="ALWAYS_CONSUMED">
+      <Keyword>UefiLib</Keyword>
+    </LibraryClass>
+    <LibraryClass Usage="ALWAYS_CONSUMED">
+      <Keyword>BaseMemoryLib</Keyword>
+    </LibraryClass>
+  </LibraryClassDefinitions>
+  <SourceFiles>
+    <Filename>ComponentName.c</Filename>
+    <Filename>XenPlatform.c</Filename>
+    <Filename>XenPlatform.h</Filename>
+  </SourceFiles>
+  <PackageDependencies>
+    <Package PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec"/>
+    <Package PackageGuid="68169ab0-d41b-4009-9060-292c253ac43d"/>
+    <Package PackageGuid="a538d0f5-0a85-4084-9776-9aca53f14c9b"/>
+  </PackageDependencies>
+  <Protocols>
+    <Protocol Usage="ALWAYS_CONSUMED">
+      <ProtocolCName>gEfiPciIoProtocolGuid</ProtocolCName>
+    </Protocol>
+  </Protocols>
+  <Externs>
+    <Specification>EFI_SPECIFICATION_VERSION 0x00020000</Specification>
+    <Specification>EDK_RELEASE_VERSION 0x00020000</Specification>
+    <Extern>
+      <DriverBinding>gPciXenPlatformDriverBinding</DriverBinding>
+      <ComponentName>gPciXenPlatformComponentName</ComponentName>
+    </Extern>
+  </Externs>
+</ModuleSurfaceArea>
diff -r 7ab86aba17c5 edk2-sparse/EdkQemuPkg/EdkQemuPkg.spd
--- a/edk2-sparse/EdkQemuPkg/EdkQemuPkg.spd     Wed May 14 11:22:58 2008 +0900
+++ b/edk2-sparse/EdkQemuPkg/EdkQemuPkg.spd     Mon Sep 08 19:29:24 2008 +0900
@@ -46,6 +46,7 @@
     <Filename>Chipset/PcCompatible/IsaAcpi/Dxe/IsaAcpi.msa</Filename>
     <Filename>Bus/Isa/IsaBus/Dxe/IsaBus.msa</Filename>
     <Filename>Bus/Isa/IsaSerial/Dxe/IsaSerial.msa</Filename>
+    <Filename>Bus/Pci/XenPlatform/Dxe/XenPlatform.msa</Filename>
     <Filename>Bus/Pci/CirrusLogic/Dxe/CirrusLogicGop.msa</Filename>
     <Filename>Bus/Isa/Ps2Keyboard/Dxe/Ps2Keyboard.msa</Filename>
     <Filename>Bus/Pci/IdeController/Dxe/IdeController.msa</Filename>
diff -r 7ab86aba17c5 edk2-sparse/EdkXenPkg/Xen-Ipf.fpd
--- a/edk2-sparse/EdkXenPkg/Xen-Ipf.fpd Wed May 14 11:22:58 2008 +0900
+++ b/edk2-sparse/EdkXenPkg/Xen-Ipf.fpd Mon Sep 08 19:29:24 2008 +0900
@@ -3677,6 +3677,91 @@
         <FfsFormatKey>BS_DRIVER</FfsFormatKey>
       </ModuleSaBuildOptions>
     </ModuleSA>
+    <!--Mod: XenPlatform Type: DXE_DRIVER Path: 
EdkQemuPkg/Bus/Pci/XenPlatform/Dxe/XenPlatform.msa-->
+    <ModuleSA ModuleGuid="5d98ac1c-7b37-11dd-81e6-39ed55d89593" 
ModuleVersion="0.1" PackageGuid="a538d0f5-0a85-4084-9776-9aca53f14c9b" 
PackageVersion="0.1" SupArchList="IPF">
+      <Libraries>
+        <!--Pkg: MdePkg Mod: UefiDriverEntryPoint Path: 
MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.msa-->
+        <Instance ModuleGuid="331deb15-454b-48d8-9b74-70d01f3f3556" 
ModuleVersion="1.0" PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec" 
PackageVersion="0.3"/>
+        <!--Pkg: MdePkg Mod: UefiRuntimeServicesTableLib Path: 
MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.msa-->
+        <Instance ModuleGuid="19cbbb97-ff61-45ff-8c3f-dfa66dd118c8" 
ModuleVersion="1.0" PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec" 
PackageVersion="0.3"/>
+        <!--Pkg: MdePkg Mod: UefiLib Path: 
MdePkg/Library/UefiLib/UefiLib.msa-->
+        <Instance ModuleGuid="3a004ba5-efe0-4a61-9f1a-267a46ae5ba9" 
ModuleVersion="1.0" PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec" 
PackageVersion="0.3"/>
+        <!--Pkg: MdePkg Mod: DxeMemoryAllocationLib Path: 
MdePkg/Library/DxeMemoryAllocationLib/DxeMemoryAllocationLib.msa-->
+        <Instance ModuleGuid="4674739d-3195-4fb2-8094-ac1d22d00194" 
ModuleVersion="1.0" PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec" 
PackageVersion="0.3"/>
+        <!--Pkg: MdePkg Mod: UefiBootServicesTableLib Path: 
MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.msa-->
+        <Instance ModuleGuid="ff5c7a2c-ab7a-4366-8616-11c6e53247b6" 
ModuleVersion="1.0" PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec" 
PackageVersion="0.3"/>
+        <!--Pkg: MdePkg Mod: BaseLib Path: 
MdePkg/Library/BaseLib/BaseLib.msa-->
+        <Instance ModuleGuid="27d67720-ea68-48ae-93da-a3a074c90e30" 
ModuleVersion="1.0" PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec" 
PackageVersion="0.3"/>
+        <!--Pkg: MdePkg Mod: UefiDriverModelLib Path: 
MdePkg/Library/UefiDriverModelLib/UefiDriverModelLib.msa-->
+        <Instance ModuleGuid="52af22ae-9901-4484-8cdc-622dd5838b09" 
ModuleVersion="1.0" PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec" 
PackageVersion="0.3"/>
+        <!--Pkg: MdePkg Mod: BaseDebugLibNull Path: 
MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.msa-->
+        <Instance ModuleGuid="9ba1d976-0624-41a3-8650-28165e8d9ae8" 
ModuleVersion="1.0" PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec" 
PackageVersion="0.3"/>
+        <!--Pkg: MdePkg Mod: DxeMemoryLib Path: 
MdePkg/Library/DxeMemoryLib/DxeMemoryLib.msa-->
+        <Instance ModuleGuid="f1bbe03d-2f28-4dee-bec7-d98d7a30c36a" 
ModuleVersion="1.0" PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec" 
PackageVersion="0.3"/>
+      </Libraries>
+      <PcdBuildDefinition>
+        <PcdData ItemType="FIXED_AT_BUILD">
+          <C_Name>PcdMaximumUnicodeStringLength</C_Name>
+          <Token>0x00000001</Token>
+          <TokenSpaceGuidCName>gEfiMdePkgTokenSpaceGuid</TokenSpaceGuidCName>
+          <DatumType>UINT32</DatumType>
+          <MaxDatumSize>4</MaxDatumSize>
+          <Value>1000000</Value>
+        </PcdData>
+        <PcdData ItemType="FIXED_AT_BUILD">
+          <C_Name>PcdMaximumAsciiStringLength</C_Name>
+          <Token>0x00000002</Token>
+          <TokenSpaceGuidCName>gEfiMdePkgTokenSpaceGuid</TokenSpaceGuidCName>
+          <DatumType>UINT32</DatumType>
+          <MaxDatumSize>4</MaxDatumSize>
+          <Value>1000000</Value>
+        </PcdData>
+        <PcdData ItemType="FIXED_AT_BUILD">
+          <C_Name>PcdMaximumLinkedListLength</C_Name>
+          <Token>0x00000003</Token>
+          <TokenSpaceGuidCName>gEfiMdePkgTokenSpaceGuid</TokenSpaceGuidCName>
+          <DatumType>UINT32</DatumType>
+          <MaxDatumSize>4</MaxDatumSize>
+          <Value>1000000</Value>
+        </PcdData>
+        <PcdData ItemType="FIXED_AT_BUILD">
+          <C_Name>PcdSpinLockTimeout</C_Name>
+          <Token>0x00000004</Token>
+          <TokenSpaceGuidCName>gEfiMdePkgTokenSpaceGuid</TokenSpaceGuidCName>
+          <DatumType>UINT32</DatumType>
+          <MaxDatumSize>4</MaxDatumSize>
+          <Value>10000000</Value>
+        </PcdData>
+        <PcdData ItemType="FEATURE_FLAG">
+          <C_Name>PcdComponentNameDisable</C_Name>
+          <Token>0x0000000d</Token>
+          <TokenSpaceGuidCName>gEfiMdePkgTokenSpaceGuid</TokenSpaceGuidCName>
+          <DatumType>BOOLEAN</DatumType>
+          <MaxDatumSize>1</MaxDatumSize>
+          <Value>FALSE</Value>
+        </PcdData>
+        <PcdData ItemType="FEATURE_FLAG">
+          <C_Name>PcdDriverDiagnosticsDisable</C_Name>
+          <Token>0x0000000e</Token>
+          <TokenSpaceGuidCName>gEfiMdePkgTokenSpaceGuid</TokenSpaceGuidCName>
+          <DatumType>BOOLEAN</DatumType>
+          <MaxDatumSize>1</MaxDatumSize>
+          <Value>FALSE</Value>
+        </PcdData>
+        <PcdData ItemType="FIXED_AT_BUILD">
+          <C_Name>PcdUefiLibMaxPrintBufferSize</C_Name>
+          <Token>0x101</Token>
+          <TokenSpaceGuidCName>gEfiMdePkgTokenSpaceGuid</TokenSpaceGuidCName>
+          <DatumType>UINT32</DatumType>
+          <MaxDatumSize>4</MaxDatumSize>
+          <Value>320</Value>
+        </PcdData>
+      </PcdBuildDefinition>
+      <ModuleSaBuildOptions>
+        <FvBinding>FV_RECOVERY</FvBinding>
+        <FfsFormatKey>BS_DRIVER</FfsFormatKey>
+      </ModuleSaBuildOptions>
+    </ModuleSA>
     <!--Mod: Bds Type: DXE_DRIVER Path: EdkXenPkg/Dxe/Bds/Bds.msa-->
     <ModuleSA ModuleGuid="e218bd95-ab3e-4e0a-b56f-a55ad562be6b" 
ModuleVersion="0.1" PackageGuid="35e704ab-48ea-456b-a93f-25516984446b" 
PackageVersion="0.1" SupArchList="IPF">
       <Libraries>
@@ -4085,6 +4170,7 @@
         <Module ModuleGuid="2c398cda-0f01-440d-b81d-7d8f557c91c7" 
ModuleVersion="0.1" PackageGuid="a538d0f5-0a85-4084-9776-9aca53f14c9b" 
PackageVersion="0.1" Arch="IPF"/>
         <Module ModuleGuid="7BB28B99-61BB-11D5-9A5D-0090273FC14D" 
ModuleVersion="1.0" PackageGuid="68169ab0-d41b-4009-9060-292c253ac43d" 
PackageVersion="0.3" Arch="IPF"/>
         <Module ModuleGuid="1BA0062E-C779-4582-8566-336AE8F78F09" 
ModuleVersion="0.1" PackageGuid="35e704ab-48ea-456b-a93f-25516984446b" 
PackageVersion="0.1" Arch="IPF"/>
+        <Module ModuleGuid="5d98ac1c-7b37-11dd-81e6-39ed55d89593" 
ModuleVersion="0.1" PackageGuid="a538d0f5-0a85-4084-9776-9aca53f14c9b" 
PackageVersion="0.1" Arch="IPF"/>
       </IncludeModules>
     </UserExtensions>
     <Ffs FfsKey="DXE_CORE">


-- 
yamahata

_______________________________________________
Xen-ia64-devel mailing list
Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-ia64-devel

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-ia64-devel] [PATCH][GFW][RFC] tell xen pci device which memory to use for vram, Isaku Yamahata <=