81726663bc
Serves two purposes: (1) On some platforms, FSP initialization may cause a reboot. Push clearing the recovery mode switch until after FSP code runs, so that a manual recovery request (three-finger salute) will function correctly under this condition. (2) The recovery mode switch value is needed at BS_WRITE_TABLES for adding an event to elog. (Previously this was done by stashing the value in CBMEM_ID_EC_HOSTEVENT.) BUG=b:124141368, b:35576380 TEST=make clean && make test-abuild BRANCH=none Change-Id: I30c02787c620b937e5a50a5ed94ac906e3112dad Signed-off-by: Joel Kitching <kitching@google.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/38779 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Julius Werner <jwerner@chromium.org>
33 lines
1.1 KiB
C
33 lines
1.1 KiB
C
/*
|
|
* This file is part of the coreboot project.
|
|
*
|
|
* Copyright (C) 2011 The ChromiumOS Authors. All rights reserved.
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License as published by
|
|
* the Free Software Foundation; version 2 of the License.
|
|
*
|
|
* This program is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU General Public License for more details.
|
|
*/
|
|
|
|
#ifndef __BOOTMODE_H__
|
|
#define __BOOTMODE_H__
|
|
|
|
/* functions implemented per mainboard: */
|
|
void init_bootmode_straps(void);
|
|
int get_write_protect_state(void);
|
|
int get_recovery_mode_switch(void);
|
|
int get_recovery_mode_retrain_switch(void);
|
|
int clear_recovery_mode_switch(void);
|
|
int get_wipeout_mode_switch(void);
|
|
int get_lid_switch(void);
|
|
|
|
/* Return 1 if display initialization is required. 0 if not. */
|
|
int display_init_required(void);
|
|
int gfx_get_init_done(void);
|
|
void gfx_set_init_done(int done);
|
|
|
|
#endif /* __BOOTMODE_H__ */
|