From: "Gao, Zhichao" <zhichao.gao@intel.com>
To: Sean Brogan <sean.brogan@microsoft.com>,
"devel@edk2.groups.io" <devel@edk2.groups.io>,
"Gao, Liming" <liming.gao@intel.com>
Subject: Re: [edk2-devel] [PATCH V2 2/2] MdeModulePkg/GraphicsConsoleDxe: Do not clean the screen
Date: Sun, 28 Apr 2019 00:27:09 +0000 [thread overview]
Message-ID: <3CE959C139B4C44DBEA1810E3AA6F9000B7C4861@SHSMSX101.ccr.corp.intel.com> (raw)
In-Reply-To: <MWHPR21MB028783EDB67FCE959FBC472BE13E0@MWHPR21MB0287.namprd21.prod.outlook.com>
[-- Attachment #1: Type: text/plain, Size: 5380 bytes --]
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<https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbugzilla.tianocore.org%2Fshow_bug.cgi%3Fid%3D1412&data=01%7C01%7Csean.brogan%40microsoft.com%7Cbc7432dac0774fb5d44808d6c9f05101%7C72f988bf86f141af91ab2d7cd011db47%7C1&sdata=SF4ieluLBvC0PcWzY2vvwiTSsDK%2FlGUaSNwd69Aa9Z0%3D&reserved=0>.
The 1412<https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbugzilla.tianocore.org%2Fshow_bug.cgi%3Fid%3D1412&data=01%7C01%7Csean.brogan%40microsoft.com%7Cbc7432dac0774fb5d44808d6c9f05101%7C72f988bf86f141af91ab2d7cd011db47%7C1&sdata=SF4ieluLBvC0PcWzY2vvwiTSsDK%2FlGUaSNwd69Aa9Z0%3D&reserved=0> 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 <zhichao.gao@intel.com>; devel@edk2.groups.io; Gao, Liming <liming.gao@intel.com>
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 <zhichao.gao@intel.com<mailto:zhichao.gao@intel.com>>
Sent: Thursday, April 25, 2019 7:39 PM
To: devel@edk2.groups.io<mailto:devel@edk2.groups.io>; Sean Brogan <sean.brogan@microsoft.com<mailto:sean.brogan@microsoft.com>>; Gao, Liming <liming.gao@intel.com<mailto:liming.gao@intel.com>>
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<https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbugzilla.tianocore.org%2Fshow_bug.cgi%3Fid%3D1412&data=01%7C01%7Csean.brogan%40microsoft.com%7Cbc7432dac0774fb5d44808d6c9f05101%7C72f988bf86f141af91ab2d7cd011db47%7C1&sdata=SF4ieluLBvC0PcWzY2vvwiTSsDK%2FlGUaSNwd69Aa9Z0%3D&reserved=0>: “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<https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FZhichaoGao%2Fedk2%2Fcommit%2F72d5198cb131c456eb250b88a8bd7e6cf2d18b3b&data=01%7C01%7Csean.brogan%40microsoft.com%7Cbc7432dac0774fb5d44808d6c9f05101%7C72f988bf86f141af91ab2d7cd011db47%7C1&sdata=7evSbqLIJ5qRAwu3fQRYTtsM0dwVHtM%2BvYbiIFITmYo%3D&reserved=0>
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<https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FZhichaoGao%2Fedk2%2Fcommit%2F8ed0248c74564e2d8be0babca1ef0b49e4147478&data=01%7C01%7Csean.brogan%40microsoft.com%7Cbc7432dac0774fb5d44808d6c9f05101%7C72f988bf86f141af91ab2d7cd011db47%7C1&sdata=5eL1ceaPzm5%2FsoEWx4nvVBTpgySEROC2vnj1P0zSlWE%3D&reserved=0>
If I have any mistakes, please correct them.
Thanks,
Zhichao
From: devel@edk2.groups.io<mailto: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 <zhichao.gao@intel.com<mailto:zhichao.gao@intel.com>>; devel@edk2.groups.io<mailto: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<https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FMicrosoft%2Fmu_basecore%2Fpull%2F13%2Ffiles&data=01%7C01%7Csean.brogan%40microsoft.com%7Cbc7432dac0774fb5d44808d6c9f05101%7C72f988bf86f141af91ab2d7cd011db47%7C1&sdata=vWV9wNrRBglVT1T0l1oGv%2BdVLJ0mpbBf9Nlo%2FX6pnWg%3D&reserved=0>
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.
[-- Attachment #2: Type: text/html, Size: 16251 bytes --]
next prev parent reply other threads:[~2019-04-28 0:27 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-04-23 7:04 [PATCH V2 0/2] MdeModulePkg: Make the screen seamless Gao, Zhichao
2019-04-23 7:04 ` [PATCH V2 1/2] MdeModulePkg/ConSplitterDxe: Optimize the ConSplitterTextOutSetMode Gao, Zhichao
2019-04-23 7:04 ` [PATCH V2 2/2] MdeModulePkg/GraphicsConsoleDxe: Do not clean the screen Gao, Zhichao
2019-04-23 13:50 ` Laszlo Ersek
2019-04-24 2:37 ` [edk2-devel] " Gao, Zhichao
2019-04-24 10:24 ` Laszlo Ersek
2019-04-24 10:48 ` Laszlo Ersek
2019-04-25 15:21 ` Gao, Zhichao
2019-04-26 1:12 ` Sean
2019-04-26 2:38 ` Gao, Zhichao
2019-04-26 19:25 ` Sean
2019-04-28 0:27 ` Gao, Zhichao [this message]
2019-04-30 1:07 ` Sean
2019-04-30 8:58 ` Gao, Zhichao
2019-04-26 18:07 ` Laszlo Ersek
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3CE959C139B4C44DBEA1810E3AA6F9000B7C4861@SHSMSX101.ccr.corp.intel.com \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox