From mboxrd@z Thu Jan 1 00:00:00 1970 From: Wei Liu Subject: Re: Passing Xen memory map and resource map to OVMF Date: Wed, 13 Nov 2013 11:59:15 +0000 Message-ID: <20131113115915.GD4948__29962.6939734027$1384344074$gmane$org@zion.uk.xensource.com> References: <20131112183321.GN13369@zion.uk.xensource.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Content-Disposition: inline In-Reply-To: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Jordan Justen Cc: "edk2-devel@lists.sourceforge.net" , Wei Liu , xen-devel List-Id: xen-devel@lists.xenproject.org On Tue, Nov 12, 2013 at 11:51:10AM -0800, Jordan Justen wrote: > On Tue, Nov 12, 2013 at 10:33 AM, Wei Liu wrote: > > Hi all > > > > Currently OVMF determines memory size by consulting CMOS, then it makes > > up memory map of its own. > > > > Consulting memory size by reading CMOS limits the RAM size to 1TB as > > there's only 3 bytes from 0x5b-0x5d in CMOS, where the upper memory size > > is stored. > > > > And from Xen's point of view, OVMF should use the memory mapped passed > > by hypervisor (from hvmloader) instead of making up its own. > > > > To solve the above two problems all in one go, I plan to pass necessary > > information (io resource, mmio resource) to OVMF from Xen. I will > > construct the table / structure in hvmloader then hook up platform pei > > code when OVMF is running on Xen. > > > > The first thing that comes in mind is to reuse E820 table for memory map > > plus some extra fields for io / mmio resources. But I guess UEFI is the > > new world so stuffs like E820 from old world will be less popular. Any > > suggestion on existing table / data structure I can use? > > Is OvmfPkg/Include/Guid/XenInfo.h helpful on the OVMF side? > It needs to be extended to hold more information. > Regarding E820 structures, I guess I'd suggest copying the E820 > structures from > IntelFrameworkModulePkg/Csm/LegacyBiosDxe/LegacyBiosInterface.h into a > new OvmfPkg/Include/IndustryStandard/E820.h file. > Thanks for the pointer. Wei. > -Jordan