From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: intel.com, ip: 134.134.136.65, mailfrom: zhiguang.liu@intel.com) Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by groups.io with SMTP; Sun, 28 Apr 2019 23:13:32 -0700 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by orsmga103.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 28 Apr 2019 23:13:31 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.60,408,1549958400"; d="scan'208";a="341664199" Received: from fieedk002.ccr.corp.intel.com ([10.239.157.133]) by fmsmga005.fm.intel.com with ESMTP; 28 Apr 2019 23:13:30 -0700 From: "Zhiguang Liu" To: devel@edk2.groups.io Cc: Jordan Justen , Andrew Fish , Ray Ni Subject: [Patch V3] EmulatorPkg: Support a second GOP window Date: Mon, 29 Apr 2019 14:12:35 +0800 Message-Id: <20190429061235.10896-1-zhiguang.liu@intel.com> X-Mailer: git-send-email 2.21.0.windows.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit REF:https://bugzilla.tianocore.org/show_bug.cgi?id=1687 Signed-off-by: Zhiguang Liu IN V3: change the title IN V2: change the indentation Two GOP screens will be created if PcdEmuGop is set in EmulatorPkg.dsc: gEmulatorPkgTokenSpaceGuid.PcdEmuGop|L"GOP Window 1!GOP Window 2" Cc: Jordan Justen Cc: Andrew Fish Cc: Ray Ni --- EmulatorPkg/Library/PlatformBmLib/PlatformBmData.c | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/EmulatorPkg/Library/PlatformBmLib/PlatformBmData.c b/EmulatorPkg/Library/PlatformBmLib/PlatformBmData.c index 633a97d14a..1151021606 100644 --- a/EmulatorPkg/Library/PlatformBmLib/PlatformBmData.c +++ b/EmulatorPkg/Library/PlatformBmLib/PlatformBmData.c @@ -42,6 +42,38 @@ EMU_PLATFORM_UGA_DEVICE_PATH gGopDevicePath = { gEndEntire }; +EMU_PLATFORM_UGA_DEVICE_PATH gGopDevicePath2 = { + { + { + { + HARDWARE_DEVICE_PATH, + HW_VENDOR_DP, + { + (UINT8) (sizeof (EMU_VENDOR_DEVICE_PATH_NODE)), + (UINT8) ((sizeof (EMU_VENDOR_DEVICE_PATH_NODE)) >> 8) + } + }, + EMU_THUNK_PROTOCOL_GUID + }, + 0 + }, + { + { + { + HARDWARE_DEVICE_PATH, + HW_VENDOR_DP, + { + (UINT8) (sizeof (EMU_VENDOR_DEVICE_PATH_NODE)), + (UINT8) ((sizeof (EMU_VENDOR_DEVICE_PATH_NODE)) >> 8) + }, + }, + EMU_GRAPHICS_WINDOW_PROTOCOL_GUID, + }, + 1 + }, + gEndEntire +}; + // // Predefined platform default console device path // @@ -50,6 +82,10 @@ BDS_CONSOLE_CONNECT_ENTRY gPlatformConsole[] = { (EFI_DEVICE_PATH_PROTOCOL *) &gGopDevicePath, (CONSOLE_OUT | CONSOLE_IN) }, + { + (EFI_DEVICE_PATH_PROTOCOL *) &gGopDevicePath2, + (CONSOLE_OUT | CONSOLE_IN) + }, { NULL, 0 -- 2.21.0.windows.1