I agree with your point completely. And I regard that as an optimization of the ConSpliterDxe. But what I want talk is that this optimization do not fix the issue in 1412. The 1412 want to fix the issue that the system would clear the logo showed in PEI phase. Did I make a misunderstanding? The mode ‘-1’ is the initial mode of the graphics console devices. So the SetMode would be called at least once in BDS phase and it would clear the screen. That means the screen would always be cleared during boot. That is why I add the second patch. Thanks, Zhichao From: Sean Brogan [mailto:sean.brogan@microsoft.com] Sent: Saturday, April 27, 2019 3:25 AM To: Gao, Zhichao ; devel@edk2.groups.io; Gao, Liming Subject: RE: [edk2-devel] [PATCH V2 2/2] MdeModulePkg/GraphicsConsoleDxe: Do not clean the screen There is no reason the devices have to start in mode -1. A device when started should report an accurate list of modes and if it is already in one of those modes it should report the correct mode. This way higher level software can choose not to call setmode because it identifies that the device is already set. This avoids the spec compliance issue in that the SetMode function is still always spec compliant. Did I miss something for your second patch? Thanks Sean From: Gao, Zhichao > Sent: Thursday, April 25, 2019 7:39 PM To: devel@edk2.groups.io; Sean Brogan >; Gao, Liming > Subject: RE: [edk2-devel] [PATCH V2 2/2] MdeModulePkg/GraphicsConsoleDxe: Do not clean the screen The change you provided is covered in patch #1. But that can only save one problem: not to repeat clearing the screen which is already set a console mode while adding console devices. This is not match the info in 1412: “This is not a desired behavior when booting a consumer device as it clears the boot logo.” For the first time, the screens are always cleared because its initial mode is ‘-1’ which is regarding as an invalid mode. Here is the code covered your change: https://github.com/ZhichaoGao/edk2/commit/72d5198cb131c456eb250b88a8bd7e6cf2d18b3b And the blow is the change which can solve the clear screen issue, and this is incorrect based on the discussion in the community: https://github.com/ZhichaoGao/edk2/commit/8ed0248c74564e2d8be0babca1ef0b49e4147478 If I have any mistakes, please correct them. Thanks, Zhichao From: devel@edk2.groups.io [mailto:devel@edk2.groups.io] On Behalf Of Sean via Groups.Io Sent: Friday, April 26, 2019 9:12 AM To: Gao; Gao, Zhichao >; devel@edk2.groups.io Subject: Re: [edk2-devel] [PATCH V2 2/2] MdeModulePkg/GraphicsConsoleDxe: Do not clean the screen Is there a branch where this code change can be reviewed? The intent of bug 1412 was not to break spec alignment on the uefi defined protocol and SetMode() function. We had a proposed change that can be seen here. https://github.com/Microsoft/mu_basecore/pull/13/files The idea was for new devices published, only clear the screen if the mode needs to change. Our reading of the UEFI spec didn't define how new devices needed to be added and didn't require the screen be cleared.