80886a6 OvmfPkg/PlatformDebugLibIoPort: write messages with IoWriteFifo8()

Authored and Committed by lersek 6 years ago
    OvmfPkg/PlatformDebugLibIoPort: write messages with IoWriteFifo8()
    
    Since commit 19c6d9feaaf8 ("MdePkg: Expand BaseIoLibIntrinsic (IoLib
    class) library", 2017-01-14), IoWriteFifo8() has been widely available to
    modules. Use it to print debug messages and assertion failures to the QEMU
    debug port, rather than open-coded loops.
    
    In the general case this speeds up logging, because debug messages will
    now trap to QEMU once per message (as opposed to once per character), due
    to "REP OUTSB" in "MdePkg/Library/BaseIoLibIntrinsic/*/IoFifoSev.nasm".
    
    In SEV guests, there is no speedup (SEV doesn't support the REP prefix).
    SEV is detected internally to BaseIoLibIntrinsic.
    
    Cc: Brijesh Singh <brijesh.singh@amd.com>
    Cc: Jordan Justen <jordan.l.justen@intel.com>
    Contributed-under: TianoCore Contribution Agreement 1.1
    Signed-off-by: Laszlo Ersek <lersek@redhat.com>
    Acked-by: Brijesh Singh <brijesh.singh@amd.com>