
Hi Bin,
On 13 April 2017 at 04:00, Bin Meng bmeng.cn@gmail.com wrote:
Hi Simon,
On Wed, Mar 22, 2017 at 4:07 AM, Simon Glass sjg@chromium.org wrote:
Hi,
On 16 March 2017 at 08:26, Bin Meng bmeng.cn@gmail.com wrote:
Introduce a new CONFIG_S3_VGA_ROM_RUN option so that U-Boot can bypass executing VGA roms in S3.
Signed-off-by: Bin Meng bmeng.cn@gmail.com
arch/x86/Kconfig | 12 ++++++++++++ drivers/pci/pci_rom.c | 14 ++++++++++++++ 2 files changed, 26 insertions(+)
Can this be handled at run-time, based on whether we have already run the ROM?
I am not sure if this is what you want:
1). If on previous cold boot, VGA ROM has been run. Then on next S3 boot, VGA ROM should also be run. 2). If on previous cold boot, VGA ROM has not been run. Then on next S3 boot, VGA ROM should not be run.
So this is actually controlled by the CONFIG_VIDEO_VESA driver. But this new Kconfig option aims to solve: even CONFIG_VIDEO_VESA driver is used in a normal boot, U-Boot can still bypass the driver probe (ROM execution) in an S3 boot to save some resume time.
At present, at least on ivybridge (non-FSP), the ROM execution happens when the device comes up. So do we actually need to run the ROM in S3 Or can we do it later by re-probing the driver?
With ivybridge the ROM runs when the video driver starts up. If there is no 'vidconsole' in stdout then this won't happen until someone does:
setenv stdout vidconsole,serial
or similar. I am not sure if this is possible with FSP machines.
However in practice we are generally returning from sleep to Linux, not U-Boot.
Do we have a way to know whether the ROM needs to be run (i.e. it was run before)?
Regards, Simon