[edk2] [PATCH v2 0/7] OVMF: Adding support for Qemu Q35 machine type

2014-10-23 Thread Gabriel L. Somlo
This patch removes hard-coded assumptions about the presence of a PIIX4 chipset, and dynamically probes for the presence of either PIIX4 or Q35. Patches 1-6 are candidates for upstream right now (modulo any feedback, of course). Patch 7, however, is just an RFC at this point, and I'm hoping there'

[edk2] [PATCH v2 2/7] OvmfPkg: PlatformPei: Platform specific ACPI power management setup

2014-10-23 Thread Gabriel L. Somlo
Set up ACPI power management using registers determined based on the underlying (PIIX4 or Q35/MCH) platform type. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Gabriel Somlo --- OvmfPkg/PlatformPei/Platform.c | 42 +++--- 1 file change

[edk2] [PATCH v2 3/7] OvmfPkg: Add PCD for Host Bridge dev. ID (PcdOvmfHostBridgePciDevId)

2014-10-23 Thread Gabriel L. Somlo
Set from PEI, this PCD allows subsequent stages (specifically DXE_DRIVER and DXE_RUNTIME_DRIVER) to infer the underlying platform type (e.g. PIIX4 or Q35/MCH) without the need to further query the Host Bridge for its Device ID. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by:

[edk2] [PATCH v2 6/7] OvmfPkg: PlatformBdsLib: Platform specific PCI IRQ routing initialization

2014-10-23 Thread Gabriel L. Somlo
Merge PciInitialization() and AcpiInitialization() into a single function, PciAcpiInitialization(), and use a PCD set from PEI to use and initialize registers consistent with the underlying platform type (PIIX4 or Q35/MCH). Add LNK[A-H] routing target initialization for the Q35 platform. For the

[edk2] [PATCH v2 5/7] OvmfPkg: CsmSupportLib: Set/use platform specific legacy interrupt device

2014-10-23 Thread Gabriel L. Somlo
Use a PCD set from PEI to determine the legacy interrupt device number appropriate for the underlying platform type during protocol initialization. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Gabriel Somlo --- OvmfPkg/Csm/CsmSupportLib/CsmSupportLib.inf | 3 +++ OvmfP

[edk2] [PATCH v2 4/7] OvmfPkg: AcpiTimerLib: Split into multiple phase-specific instances

2014-10-23 Thread Gabriel L. Somlo
Remove local power management register access macros in favor of factored-out ones in OvmfPkg/Include/OvmfPlatforms.h Next, AcpiTimerLib is split out into three instances, for use during various stages: - BaseRom: used during SEC, PEI_CORE, and PEIM; - Dxe: used during DXE_DRIVER and DXE_

[edk2] [RFC PATCH v2 7/7] OvmfPkg: Initialize interrupt line register for default Q35 pci device set

2014-10-23 Thread Gabriel L. Somlo
Hardcoded way to accomplish the equivalent of SeaBIOS's pci_bios_init_devices(). Basically we initialize PCI_INTERRUPT_LINE for every PCI device in the default q35 configuration based on the final computed value SeaBIOS would have used. This gets UHCI to work properly in OS X, so it's obviously th

[edk2] [PATCH v2 1/7] OvmfPkg: Factor out platform detection (q35 vs. piix4)

2014-10-23 Thread Gabriel L. Somlo
Introduce macros to detect the underlying platform and access its ACPI power management registers, based on querying the host bridge device ID. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Gabriel Somlo --- OvmfPkg/Include/OvmfPlatforms.h | 49 ++

Re: [edk2] EDK2 Developer Tools for Windows

2014-10-23 Thread Jordan Justen
On Thu, Oct 23, 2014 at 6:46 AM, Gao, Liming wrote: > Scott: > Yes. GenMake.py change is also required. But, this change will impact > CYGGCC tool chain. So, CYGGCC Make path should be changed to > DEF(CYGWIN_BIN)\make.exe instead of DEF(MS_VS_BIN)\nmake.exe. Can we change CYGGCC like this?

Re: [edk2] MemoryFence function: no-op for MSFT?

2014-10-23 Thread Andrew Fish
> On Oct 23, 2014, at 3:53 PM, Bruce Cran wrote: > > I've been looking through BaseLib and found the MemoryFence function. > I can see the implementations in Ia32/GccInline.c and X64/GccInline.c, > but I don't see anything for VC++ except the empty function in > X86MemoryFence.c . There's _Rea

[edk2] MemoryFence function: no-op for MSFT?

2014-10-23 Thread Bruce Cran
I've been looking through BaseLib and found the MemoryFence function. I can see the implementations in Ia32/GccInline.c and X64/GccInline.c, but I don't see anything for VC++ except the empty function in X86MemoryFence.c . There's _ReadWriteBarrier in BaseIoLibIntrinsic (the comment in IoLibMsc.c

Re: [edk2] EDK2: Add #ifndef/#endif and remove trailing white space

2014-10-23 Thread Bjorge, Erik C
Reviewed-by: Erik Bjorge From: Leahy, Leroy P Sent: Thursday, October 23, 2014 12:00 PM To: Bjorge, Erik C; Carsey, Jaben; Kinney, Michael D; Mudusuru, Giri P; Hale, Robert P; Gao, Liming; Tian, Hot Cc: edk2-devel@lists.sourceforge.net Subject: RE: EDK2: Add #ifndef/#endif and remove trailing wh

Re: [edk2] EDK2 Developer Tools for Windows

2014-10-23 Thread Scott Duplichan
Hello Liming, OK, here is the patch: BaseTools: Modify gcc 4.9 tool chain definition to support building from Windows. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Scott Duplichan -- Index: BaseTools/Conf/build_rule.template ==

Re: [edk2] [PATCH v3 4/5] MdeModulePkg: AhciMode calls GetChannelInfo when enumerating

2014-10-23 Thread Reza Jelveh
On 23/10/14 22:20, Laszlo Ersek wrote: > Okay -- I wasn't aware that the explanation requested by Feng had > already been provided. It didn't. I thought the new patch explains it, but I guess not... --

Re: [edk2] [PATCH 01/14] OvmfPkg: initialize Q35 platform

2014-10-23 Thread Jordan Justen
On 2014-10-23 11:53:28, Andrew Fish wrote: > > On Oct 23, 2014, at 11:20 AM, Laszlo Ersek wrote: > > > The only UEFI_DRIVER under OvmfPkg/ that directly depends on TimerLib is > QemuVideoDxe (based on the [LibraryClasses] sections in the respective > INF files). I grepped the Qe

Re: [edk2] [PATCH v3 4/5] MdeModulePkg: AhciMode calls GetChannelInfo when enumerating

2014-10-23 Thread Laszlo Ersek
On 10/23/14 22:01, Reza Jelveh wrote: > On 23/10/14 12:36, Laszlo Ersek wrote: >> I thought this patch was rejected by the maintainer already: >> >> http://thread.gmane.org/gmane.comp.bios.tianocore.devel/8706/focus=10290 > > The way I understood it, was that if there is no good explanation it wil

Re: [edk2] [PATCH v3 3/5] OvmfPkg: read host capabilities on ChannelInfo

2014-10-23 Thread Reza Jelveh
On 23/10/14 14:25, Laszlo Ersek wrote: > I don't know the first thing about SATA, but the patch stays within the > boundaries of that module. When the ideinitprotocol is registered ahcimode is not initialized yet. The ahci capability register won't be initialized at that point the channel count wil

Re: [edk2] [PATCH v3 4/5] MdeModulePkg: AhciMode calls GetChannelInfo when enumerating

2014-10-23 Thread Reza Jelveh
On 23/10/14 12:36, Laszlo Ersek wrote: > I thought this patch was rejected by the maintainer already: > > http://thread.gmane.org/gmane.comp.bios.tianocore.devel/8706/focus=10290 The way I understood it, was that if there is no good explanation it will be rejected. I don't know if satacontroller

Re: [edk2] EDK2: Add #ifndef/#endif and remove trailing white space

2014-10-23 Thread Leahy, Leroy P
Attached is an updated patch without the comments. Attestation: I have made the following change to support Google. Submission: Code clean-up: Remove trailing spaces and add #ifndef/#endif around NULL, MAX and MIN. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Lee L

Re: [edk2] [PATCH 01/14] OvmfPkg: initialize Q35 platform

2014-10-23 Thread Andrew Fish
> On Oct 23, 2014, at 11:20 AM, Laszlo Ersek wrote: > > > The only UEFI_DRIVER under OvmfPkg/ that directly depends on TimerLib is > QemuVideoDxe (based on the [LibraryClasses] sections in the respective > INF files). I grepped the QemuVideoDxe subdir for the five functions > that the TimerLib

Re: [edk2] [PATCH 01/14] OvmfPkg: initialize Q35 platform

2014-10-23 Thread Laszlo Ersek
On 10/23/14 19:49, Andrew Fish wrote: > >> On Oct 23, 2014, at 10:31 AM, Laszlo Ersek > > wrote: >> >> On 10/23/14 19:02, Gabriel Somlo wrote: >>> Jordan, Laszlo: >>> >>> On Mon, Oct 06, 2014 at 11:42:53AM -0400, Gabriel L. Somlo wrote: So, to decide how I feel about

Re: [edk2] [PATCH 01/14] OvmfPkg: initialize Q35 platform

2014-10-23 Thread Gabriel Somlo
On Thu, Oct 23, 2014 at 07:31:27PM +0200, Laszlo Ersek wrote: > But, referring to > > http://thread.gmane.org/gmane.comp.bios.tianocore.devel/10156/focus=10197 > > On 09/30/14 00:17, Jordan Justen wrote: > > In OvmfPkg*.dsc: > > * [...] > > * Replace BasePcdLibNull.inf with DxePcdLib.inf as neede

[edk2] [PATCH v4 13/19] OvmfPkg/XenBusDxe: Add an helper AsciiStrDup.

2014-10-23 Thread Anthony PERARD
.. because we need it in the patch titled: "OvmfPkg/XenBusDxe: Indroduce XenBus support itself." Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Anthony PERARD Reviewed-by: Konrad Rzeszutek Wilk --- OvmfPkg/XenBusDxe/Helpers.c | 9 + OvmfPkg/XenBusDxe/XenBusDxe.

[edk2] [PATCH v4 17/19] OvmfPkg/XenPvBlkDxe: Xen PV Block device, initial skeleton

2014-10-23 Thread Anthony PERARD
A ParaVirtualize block driver. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Anthony PERARD --- Change in V4: - Replace the license by the commonly used file header text. - Add brief description for the driver. Change in V3: - enable compilation for Ia32 and Ia32X64 - f

[edk2] [PATCH v4 11/19] OvmfPkg/XenBusDxe: Add TestAndClearBit.

2014-10-23 Thread Anthony PERARD
This atomically test's and clear's a bit. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Anthony PERARD Reviewed-by: Konrad Rzeszutek Wilk --- Change in V3: - adding IA32 support. (not yet reviewed) both XenBusDxe/Ia32/TestAndClearBit.{S,asm} are new Change in V2: - A

[edk2] [PATCH v4 15/19] OvmfPkg/XenBusDxe: Indroduce XenBus support itself.

2014-10-23 Thread Anthony PERARD
This is a bus-like on top of XenStore. It will look for advertised ParaVirtualized devices and initialize them by producing XenBus protocol. Origin: FreeBSD 10.0 License: This patch adds XenBus.c which is under the MIT licence. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-b

[edk2] [PATCH v4 14/19] OvmfPkg/XenBusDxe: Add XenStore function into the XenBus protocol

2014-10-23 Thread Anthony PERARD
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Anthony PERARD Reviewed-by: Konrad Rzeszutek Wilk --- Change in V3: - Have XenStoreWaitWatch/XenBusWaitForWatch return a XENSTORE_STATUS instead of VOID. - Add description of the introducted member of the protocol. --- Ovm

[edk2] [PATCH v4 02/19] OvmfPkg: Add public headers from Xen Project.

2014-10-23 Thread Anthony PERARD
This patch imports publics headers in order to use features from Xen like XenStore, PV Block... There is only the necessary header files and there are only a few modifications in order to facilitate future merge of more recent header (that would be necessary to access new features). There is littl

[edk2] [PATCH v4 12/19] OvmfPkg/XenBusDxe: Add XenStore client implementation

2014-10-23 Thread Anthony PERARD
XenStore is a key/value database, which is running on another virtual machine. It can be accessed through shared memory. This is a client implementation. Origin: FreeBSD 10.0 License: This patch adds several files under the MIT licence. Contributed-under: TianoCore Contribution Agreement 1.0 Sig

[edk2] [PATCH v4 18/19] OvmfPkg/XenPvBlkDxe: Add BlockFront client.

2014-10-23 Thread Anthony PERARD
This is the code that will do the actual communication between OVMF and a PV block backend, where the block device lives. The protocol used is describe in the blkif.h header. This implementation originally comes from Mini-OS, a part of the Xen Project. License: This patch adds some files which ar

[edk2] [PATCH v4 19/19] OvmfPkg/XenPvBlkDxe: Add BlockIo.

2014-10-23 Thread Anthony PERARD
Implement the BlockIo protocol. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Anthony PERARD --- Change in V4: - Replace the license by the commonly used file header text. Change in V3: - assert(Media->BlockSize % 512 == 0) - Use Sector instead of Offset to issue IOs.

[edk2] [PATCH v4 05/19] OvmfPkg/XenBusDxe: Add support to make Xen Hypercalls.

2014-10-23 Thread Anthony PERARD
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Anthony PERARD Reviewed-by: Konrad Rzeszutek Wilk --- Change in V4: - Replace the license by the commonly used file header text. - add file header to XenHypercall.h (license, copyright, brief desc) Change in V3: - adding IA3

[edk2] [PATCH v4 06/19] OvmfPkg/XenBusDxe: Open PciIo protocol.

2014-10-23 Thread Anthony PERARD
The PciIo interface will be used in "OvmfPkg/XenBusDxe: Add Grant Table functions" to get the memory address of the BAR 1 and use the space to map shared memory. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Anthony PERARD --- Change in V3: - add a commit description. C

[edk2] [PATCH v4 09/19] OvmfPkg/XenBusDxe: Add Grant Table functions.

2014-10-23 Thread Anthony PERARD
There are used to grant access of pages to other Xen domains. This code originaly comes from the Xen Project, and more precisely from MiniOS. Signed-off-by: Steven Smith Signed-off-by: Grzegorz Milos Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Anthony PERARD Reviewed

[edk2] [PATCH v4 00/19] Introducing Xen PV block driver to OVMF

2014-10-23 Thread Anthony PERARD
Hi all, This patch series is implementing the necessary in order to access a PV block device. For that, one need a XenStore client, a XenBus client, and the PV block driver. There are two new drivers, XenbusDxe and XenPvBlkDxe. The first one implement a bus drivers, and the second is a block driv

[edk2] [PATCH v4 10/19] OvmfPkg/XenBusDxe: Add Event Channel Notify.

2014-10-23 Thread Anthony PERARD
This first function is used to notify the other side that there is something to do. The other side is another Xen domain. License: This patch adds event_channel.h which is under MIT licence. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Anthony PERARD --- Change in V4:

[edk2] [PATCH v4 04/19] OvmfPkg/XenBusDxe: Add device state struct and create an ExitBoot services event.

2014-10-23 Thread Anthony PERARD
The ExitBoot event is used to disconnect from the device before the next operating system start using them. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Anthony PERARD --- Change in V3: - use the variable mMyDevice to prevent the driver from starting twice (if there i

[edk2] [PATCH v4 03/19] OvmfPkg: Add basic skeleton for the XenBus bus driver.

2014-10-23 Thread Anthony PERARD
This includes Component Name and Driver Binding. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Anthony PERARD Reviewed-by: Konrad Rzeszutek Wilk --- Change in V4: - Replace the license by the commonly used file header text. - Add brief description for the driver. Chang

[edk2] [PATCH v4 01/19] OvmfPkg: Add the MIT license to License.txt.

2014-10-23 Thread Anthony PERARD
The MIT license will be used for several source files that are necessary for the Xen PV drivers. So this patch makes it explicit by adding the license with a note about which directory will have source files under this license. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by:

[edk2] [PATCH v4 16/19] OvmfPkg/XenBusDxe: Add Event Channel into XenBus protocol.

2014-10-23 Thread Anthony PERARD
This patch adds three event channel related functions: - EventChannelAllocate: Allocate an event channel port that can be bind from a specified domain. - EventChannelNotify: Send an event to the remote end of a channel. - EventChannelClose: Close a local event channel port. Contributed-under: Ti

[edk2] [PATCH v4 07/19] OvmfPkg: Introduce XenBus Protocol.

2014-10-23 Thread Anthony PERARD
This protocol will be used for communication between a PV driver (like a PV block driver) and the XenBus/XenStore. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Anthony PERARD -- Change in V3: - Add disclaimer about the volatile nature of the protocol. - Add a descriptio

[edk2] [PATCH v4 08/19] OvmfPkg/XenBusDxe: Add InterlockedCompareExchange16.

2014-10-23 Thread Anthony PERARD
This patch is inspired by InterlockedCompareExchange32 from the BaseSynchronizationLib. The function will be used in the "OvmfPkg/XenBusDxe: Add Grant Table functions" patch. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Anthony PERARD --- Change in V3: - Implement both

Re: [edk2] EDK2: Add #ifndef/#endif and remove trailing white space

2014-10-23 Thread Bjorge, Erik C
You should not reference specific source files in comments from other projects. These values could be defined in a number of different locations by any number of projects. Thanks, -Erik From: Leahy, Leroy P Sent: Thursday, October 23, 2014 10:51 AM To: Bjorge, Erik C; Carsey, Jaben; Kinney, Mi

Re: [edk2] EDK2: Add #ifndef/#endif and remove trailing white space

2014-10-23 Thread Carsey, Jaben
Reviewed-by: Jaben Carsey From: Leahy, Leroy P Sent: Thursday, October 23, 2014 10:51 AM To: Bjorge, Erik C; Carsey, Jaben; Kinney, Michael D; Mudusuru, Giri P; Hale, Robert P; Gao, Liming; Tian, Hot Cc: edk2-devel@lists.sourceforge.net Subject: EDK2: Add #ifndef/#endif and remove trailing white

[edk2] EDK2: Add #ifndef/#endif and remove trailing white space

2014-10-23 Thread Leahy, Leroy P
Attestation: I have made the following change to support Google. Submission: Code clean-up: Remove trailing spaces and add #ifndef/#endif around NULL, MAX and MIN. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Lee Leahy mailto:leroy.p.le...@intel.com>> Google-MdeP

Re: [edk2] [PATCH 01/14] OvmfPkg: initialize Q35 platform

2014-10-23 Thread Andrew Fish
> On Oct 23, 2014, at 10:31 AM, Laszlo Ersek wrote: > > On 10/23/14 19:02, Gabriel Somlo wrote: >> Jordan, Laszlo: >> >> On Mon, Oct 06, 2014 at 11:42:53AM -0400, Gabriel L. Somlo wrote: >>> So, to decide how I feel about further splitting out DxeAcpiTimerLib >>> into a version which does use P

Re: [edk2] EFI PXE booting with OVMF

2014-10-23 Thread Laszlo Ersek
On 10/23/14 18:29, cinap_len...@thefront.felloff.net wrote: > Hello, > > i'm writing a efi bootloader for the plan9 opetang system > and have some general questions about EFI and OVMF. > > right now, my pxe loader locates a handle that implements the > pxe base code protocol and checks if the pro

Re: [edk2] [PATCH 01/14] OvmfPkg: initialize Q35 platform

2014-10-23 Thread Laszlo Ersek
On 10/23/14 19:02, Gabriel Somlo wrote: > Jordan, Laszlo: > > On Mon, Oct 06, 2014 at 11:42:53AM -0400, Gabriel L. Somlo wrote: >> So, to decide how I feel about further splitting out DxeAcpiTimerLib >> into a version which does use PCDs and another version which does not, >> I added some DEBUG st

Re: [edk2] [PATCH 01/14] OvmfPkg: initialize Q35 platform

2014-10-23 Thread Gabriel Somlo
Jordan, Laszlo: On Mon, Oct 06, 2014 at 11:42:53AM -0400, Gabriel L. Somlo wrote: > So, to decide how I feel about further splitting out DxeAcpiTimerLib > into a version which does use PCDs and another version which does not, > I added some DEBUG statements to track every time the host bridge > ge

[edk2] EFI PXE booting with OVMF

2014-10-23 Thread cinap_lenrek
Hello, i'm writing a efi bootloader for the plan9 opetang system and have some general questions about EFI and OVMF. right now, my pxe loader locates a handle that implements the pxe base code protocol and checks if the protocol is already started and if pxe or dhcp reply is available. If not, th

Re: [edk2] Please Help: `_PCD_GET_MODE_16_PcdOvmfHostBridgePciDevId' undeclared

2014-10-23 Thread Gabriel Somlo
Liming, Laszlo: On Thu, Oct 23, 2014 at 01:07:22PM +0200, Laszlo Ersek wrote: > On 10/23/14 08:05, Gao, Liming wrote: > > Somlo: > > > > Your patch shows four AcpiTimerLib instances: AcpiTimerLib.inf, > > BaseAcpiTimerLib.inf, BaseRomAcpiTimerLib.inf and DxeAcpiTimerLib.inf. > > > > I find Ba

Re: [edk2] EDK2 Developer Tools for Windows

2014-10-23 Thread Gao, Liming
Scott: Yes. GenMake.py change is also required. But, this change will impact CYGGCC tool chain. So, CYGGCC Make path should be changed to DEF(CYGWIN_BIN)\make.exe instead of DEF(MS_VS_BIN)\nmake.exe. Next, could you create the full patch and send it for review? Thanks Liming -Original

Re: [edk2] [PATCH 7/7] OvmfPkg QemuFwCfgLib: Convert X64/IoLibExAsm.asm to NASM

2014-10-23 Thread Laszlo Ersek
On 10/18/14 20:25, Jordan Justen wrote: > The BaseTools/Scripts/ConvertMasmToNasm.py script was used to convert > X64/IoLibExAsm.asm to X64/IoLibExAsm.nasm > > Contributed-under: TianoCore Contribution Agreement 1.0 > Signed-off-by: Jordan Justen > --- > OvmfPkg/Library/QemuFwCfgLib/QemuFwCfgLib

Re: [edk2] [PATCH 6/7] OvmfPkg QemuFwCfgLib: Convert Ia32/IoLibExAsm.asm to NASM

2014-10-23 Thread Laszlo Ersek
On 10/18/14 20:25, Jordan Justen wrote: > The BaseTools/Scripts/ConvertMasmToNasm.py script was used to convert > Ia32/IoLibExAsm.asm to Ia32/IoLibExAsm.nasm > > Contributed-under: TianoCore Contribution Agreement 1.0 > Signed-off-by: Jordan Justen > --- > OvmfPkg/Library/QemuFwCfgLib/Ia32/IoLib

Re: [edk2] [PATCH v3 3/5] OvmfPkg: read host capabilities on ChannelInfo

2014-10-23 Thread Laszlo Ersek
On 10/23/14 01:01, reza.jel...@tuhh.de wrote: > From: Reza Jelveh > > SataController reads host capabalities when the module is first loaded. > > SataControllerStart is called before AhciMode.c resets the bus and > enables AE. If SataControllerStart would do this itself, it would break > AhciMod

Re: [edk2] [PATCH v3 2/5] OvmfPkg: enable SATA controller

2014-10-23 Thread Laszlo Ersek
On 10/23/14 01:01, reza.jel...@tuhh.de wrote: > From: Reza Jelveh > > Removed: > - IntelFrameworkModulePkg/Bus/Pci/IdeBusDxe/IdeBusDxe.inf > (provides gEfiDiskInfoProtocolGuid, gEfiBlockIoProtocolGuid) > - PcAtChipsetPkg/Bus/Pci/IdeControllerDxe/IdeControllerDxe.inf > (provides gEfiIdeControllerI

Re: [edk2] [PATCH v3 1/5] OvmfPkg: copy SataControllerDxe to OvmfPkg

2014-10-23 Thread Laszlo Ersek
On 10/23/14 01:01, reza.jel...@tuhh.de wrote: > + FILE_GUID = 8F4CD826-A5A0-4e93-9522-CFB0AB72926C You forgot to generate a new GUID with uuidgen for the copy. If you fix that, you can add my Acked-by: Laszlo Ersek to this patch. Thanks Laszlo

Re: [edk2] [PATCH 0/7] OvmfPkg: PlatformBdsLib cleanups and improvements

2014-10-23 Thread Paolo Bonzini
>> Yes, the default is zero. However, you would get to a shell on an >> otherwise unconfigured system, and you could enter the boot menu via >> OsIndications. It's what SeaBIOS does, and it is not very much >> different from what you'd do for machines you don't have physical access to. > > If I

[edk2] [PATCH v2 4/9] OvmfPkg: BDS: drop useless return statement

2014-10-23 Thread Laszlo Ersek
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek --- OvmfPkg/Library/PlatformBdsLib/BdsPlatform.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/OvmfPkg/Library/PlatformBdsLib/BdsPlatform.c b/OvmfPkg/Library/PlatformBdsLib/BdsPlatform.c index b1f5b7f..9a0

[edk2] [PATCH v2 0/9] OvmfPkg: PlatformBdsLib cleanups and improvements

2014-10-23 Thread Laszlo Ersek
This is v2 of . Changes in v2: - Patches #1 and #2 are new, for IntelFrameworkModulePkg / BdsDxe. They enable the front page code to look at the keyboard briefly even with a zero timeout. - The rest of the patches are preserved f

[edk2] [PATCH v2 3/9] OvmfPkg: BDS: remove dead call to PlatformBdsEnterFrontPage()

2014-10-23 Thread Laszlo Ersek
This call has been dead since the conception of OvmfPkg (git commit 49ba9447 / SVN r8398), and only confuses readers -- let's remove it. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek --- OvmfPkg/Library/PlatformBdsLib/BdsPlatform.c | 8 1 file chang

[edk2] [PATCH v2 7/9] OvmfPkg: BDS: drop superfluous "connect first boot option" logic

2014-10-23 Thread Laszlo Ersek
This is again obviated by our earlier BdsLibConnectAll() call. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek --- OvmfPkg/Library/PlatformBdsLib/BdsPlatform.c | 23 --- 1 file changed, 23 deletions(-) diff --git a/OvmfPkg/Library/Platform

[edk2] [PATCH v2 6/9] OvmfPkg: BDS: optimize second argument in PlatformBdsEnterFrontPage() call

2014-10-23 Thread Laszlo Ersek
The second parameter of said function is "ConnectAllHappened", and if set to TRUE, the function sets "gConnectAllHappened" to TRUE. This global variable in turn controls whether Intel BDS code *itself* calls BdsLibConnectAllDriversToAllControllers() in various places -- if the indicator is TRUE, t

[edk2] [PATCH v2 5/9] OvmfPkg: BDS: don't overwrite the BDS Front Page timeout

2014-10-23 Thread Laszlo Ersek
The PlatformBdsEnterFrontPage() function's first parameter, "TimeoutDefault", determines the behavior of the setup utility: - If (TimeoutDefault == 0), then the usual boot order is to be acted upon immediately. - If (TimeoutDefault == 0x), then the setup utility is entered unconditionally

[edk2] [PATCH v2 1/9] IntelFrameworkModulePkg: BdsDxe: factor HandleKeyPress() out of ShowProgress()

2014-10-23 Thread Laszlo Ersek
In the next patch we'll reuse this chunk of code. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek --- Notes: v2: - new in v2 .../Universal/BdsDxe/FrontPage.c | 57 -- 1 file changed, 41 insertions(+), 16 deletion

[edk2] [PATCH v2 9/9] OvmfPkg: set video resolution of text setup to 640x480

2014-10-23 Thread Laszlo Ersek
On a physical screen such a low graphics resolution would lead to huge glyphs (the text resolution is 80x25, centered, with 8x19 pixel glyphs). But in a virtual machine it just saves screen real estate on the client, by removing the black bands. Contributed-under: TianoCore Contribution Agreement

[edk2] [PATCH v2 8/9] OvmfPkg: BDS: drop custom boot timeout, revert to IntelFrameworkModulePkg's

2014-10-23 Thread Laszlo Ersek
PlatformBdsEnterFrontPage() already implements a keypress wait (for entering the setup utility at boot) with a nice progress bar, only OVMF has not been using it. Removing our custom code and utilizing PlatformBdsEnterFrontPage()'s builtin wait has the following benefits: - It simplifies OVMF's B

Re: [edk2] [PATCH 0/7] OvmfPkg: PlatformBdsLib cleanups and improvements

2014-10-23 Thread Laszlo Ersek
On 10/23/14 12:15, Paolo Bonzini wrote: > > > On 10/23/2014 11:30 AM, Laszlo Ersek wrote: >> On 10/22/14 22:39, Paolo Bonzini wrote: >>> >>> >>> On 10/22/2014 09:17 PM, Laszlo Ersek wrote: Sigh. If I set PcdPlatformBootTimeOut to 0, then the progress bar is not shown, but a user keypres

[edk2] [PATCH v2 2/9] IntelFrameworkModulePkg: BdsDxe: poll keyboard at front page with zero timeout

2014-10-23 Thread Laszlo Ersek
When PlatformBdsEnterFrontPage() is called with a zero TimeoutDefault value, PlatformBdsEnterFrontPage() --> ShowProgress() returns EFI_TIMEOUT immediately, without looking at the keyboard at all. This is slightly incorrect, because a keypress might already be pending at that time. Change ShowProg

Re: [edk2] Please Help: `_PCD_GET_MODE_16_PcdOvmfHostBridgePciDevId' undeclared

2014-10-23 Thread Laszlo Ersek
On 10/23/14 08:05, Gao, Liming wrote: > Somlo: > > Your patch shows four AcpiTimerLib instances: AcpiTimerLib.inf, > BaseAcpiTimerLib.inf, BaseRomAcpiTimerLib.inf and DxeAcpiTimerLib.inf. > > I find BaseAcpiTimerLib.inf includes DxeAcpiTimerLib.c [...] Well that's the error right there (I hav

Re: [edk2] [PATCH v3 0/5] enable SataController in OVMF

2014-10-23 Thread Laszlo Ersek
On 10/23/14 01:40, Jordan Justen wrote: > On 2014-10-22 16:01:29, wrote: >> From: Reza Jelveh >> >> The SataController is copied to OvmfPkg where the IdeController >> resides and enabled for OvmfPkg > > In http://permalink.gmane.org/gmane.comp.bios.tianocore.devel/10187 > you wrote: "The PcAtChi

Re: [edk2] [PATCH v3 4/5] MdeModulePkg: AhciMode calls GetChannelInfo when enumerating

2014-10-23 Thread Laszlo Ersek
On 10/23/14 01:01, reza.jel...@tuhh.de wrote: > From: Reza Jelveh > > Calling GetChannelInfo allows the Controller to initialize things that depend > on previous Ahci mode initialization. > > Outside of DuetPkg AE needs to be enabled before accessing AHCI registers. > AhciModeInitialization is c

Re: [edk2] [PATCH 0/7] OvmfPkg: PlatformBdsLib cleanups and improvements

2014-10-23 Thread Laszlo Ersek
On 10/23/14 07:38, Dong, Eric wrote: > This timeout value is used to wait for user input, if we set this > value to 0, it means we will not wait for the user input and directly > boot the first boot option. > > Actually I don't clear what's the request now? Boot as fast as > possible and also need

Re: [edk2] [PATCH 0/7] OvmfPkg: PlatformBdsLib cleanups and improvements

2014-10-23 Thread Paolo Bonzini
On 10/23/2014 11:30 AM, Laszlo Ersek wrote: > On 10/22/14 22:39, Paolo Bonzini wrote: >> >> >> On 10/22/2014 09:17 PM, Laszlo Ersek wrote: >>> Sigh. If I set PcdPlatformBootTimeOut to 0, then the progress bar is not >>> shown, but a user keypress is also not picked up. >>> >>> Therefore the minim

Re: [edk2] question about setuping IDT in UEFI boot procedure

2014-10-23 Thread TigerLiu
Hi, Jeff: MdeModulePkg\Universal\Acpi\BootScriptExecutorDxe\X64\SetIdtEntry.c will hook page fault handler. So, is there any story about adding this hook function? I want to understand why adding this code. Thanks a lot! Best wishes, --

Re: [edk2] [PATCH 0/7] OvmfPkg: PlatformBdsLib cleanups and improvements

2014-10-23 Thread Laszlo Ersek
On 10/22/14 22:39, Paolo Bonzini wrote: > > > On 10/22/2014 09:17 PM, Laszlo Ersek wrote: >> Sigh. If I set PcdPlatformBootTimeOut to 0, then the progress bar is not >> shown, but a user keypress is also not picked up. >> >> Therefore the minimum I could set is 1 second, which would increase the

Re: [edk2] question about setuping IDT in UEFI boot procedure

2014-10-23 Thread Fan, Jeff
Please search AsmWriteIdtr () in EDKII code base, including modules and libraries. -Original Message- From: tiger...@via-alliance.com [mailto:tiger...@via-alliance.com] Sent: Thursday, October 23, 2014 4:41 PM To: edk2-devel@lists.sourceforge.net Subject: [edk2] question about setuping I

Re: [edk2] [RFC PATCH v5 00/22] Introduce Mp Service protocol to UefiCpuPkg

2014-10-23 Thread Chen, Fan
On Thu, 2014-10-23 at 08:32 +, Fan, Jeff wrote: > I may try it on my local machine. But I have no time this week. > > Could you take a try by moving SetTimer () out of StartupAllAPs() and > StartupThisAp() functions into InitMpSystemData() and don't disable timer > more? To check if it is

[edk2] question about setuping IDT in UEFI boot procedure

2014-10-23 Thread TigerLiu
Hi, experts: I am studying EDKII source code. I found IDT would be setup even in SEC phase. I usually know that CPU dxe driver will setup IDT because UEFI needs a timer interrupt handler. So, I want to know how many places to setup IDT in UEFI boot procedure. So, I listed my current study results:

Re: [edk2] [RFC PATCH v5 00/22] Introduce Mp Service protocol to UefiCpuPkg

2014-10-23 Thread Fan, Jeff
I may try it on my local machine. But I have no time this week. Could you take a try by moving SetTimer () out of StartupAllAPs() and StartupThisAp() functions into InitMpSystemData() and don't disable timer more? To check if it is helpful. Jeff -Original Message- From: Chen, Fan [ma

Re: [edk2] [RFC PATCH v5 00/22] Introduce Mp Service protocol to UefiCpuPkg

2014-10-23 Thread Chen, Fan
On Thu, 2014-10-23 at 07:28 +, Fan, Jeff wrote: > Chen, > > Does CheckThisAPStatus() work now? Yes, CheckThisAPStatus() seems to work ok. but I found gBS->SetTimer() seems not accurate. when I ran StartCore.efi, I found sometimes I needed a long time to wait for that case finished. I will i

Re: [edk2] [RFC PATCH v5 00/22] Introduce Mp Service protocol to UefiCpuPkg

2014-10-23 Thread Fan, Jeff
Chen, Does CheckThisAPStatus() work now? -Original Message- From: Chen, Fan [mailto:chen.fan.f...@cn.fujitsu.com] Sent: Wednesday, October 22, 2014 6:45 PM To: edk2-devel@lists.sourceforge.net Cc: Fan, Jeff; Jordan Justen Subject: Re: [edk2] [RFC PATCH v5 00/22] Introduce Mp Service pro