mb/google/fizz: Wait until display is ready
Fizz fails to show pictures on a type-c monitor because VBIOS runs before DisplayPort link is ready. With this patch, when firmware needs to display something, Fizz calls google_chromeec_wait_for_display to make sure display is ready. The penalty is up to 2 sec per boot in dev and rec boot. Normal boot won't affected unless there is EC update. BUG=b:72387533 BRANCH=none TEST=Verify screens are displayed on Fizz as follows: 1. Put DUT in normal mode 2. Flash EC image to trigger EC sync (critical update) 3. Trigger manual recovery (insert) 4. Hit ctrl+d to switch to dev mode (to-dev) 5. Confirm to reboot (dev warning) 6. Warm reboot (dev warning) 7. Cold reboot (dev warning) 8. Flash EC image to trigger EC sync (critical update) 9. Trigger manual recovery (insert) Change-Id: I90befe94f93e13904987acda50b2598d034b0031 Signed-off-by: Daisuke Nojiri <dnojiri@chromium.org> Reviewed-on: https://review.coreboot.org/23746 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Furquan Shaikh <furquan@google.com>
This commit is contained in:
parent
ebb86be9fc
commit
c205ae0c6e
|
@ -13,11 +13,16 @@
|
||||||
* GNU General Public License for more details.
|
* GNU General Public License for more details.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#include <bootmode.h>
|
||||||
|
#include <ec/google/chromeec/ec.h>
|
||||||
#include <soc/ramstage.h>
|
#include <soc/ramstage.h>
|
||||||
|
|
||||||
#include "gpio.h"
|
#include "gpio.h"
|
||||||
|
|
||||||
void mainboard_silicon_init_params(FSP_SIL_UPD *params)
|
void mainboard_silicon_init_params(FSP_SIL_UPD *params)
|
||||||
{
|
{
|
||||||
|
if (display_init_required())
|
||||||
|
/* This has to be done before FSP-S runs. */
|
||||||
|
google_chromeec_wait_for_display();
|
||||||
gpio_configure_pads(gpio_table, ARRAY_SIZE(gpio_table));
|
gpio_configure_pads(gpio_table, ARRAY_SIZE(gpio_table));
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue