blob: 9feb5af008d08827db2cc4e344c1848672c60277 [file] [log] [blame]
Kyösti Mälkki5687fc92013-11-28 18:11:49 +02001/*
2 * This file is part of the coreboot project.
3 *
4 * Copyright (C) 2011 The ChromiumOS Authors. All rights reserved.
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; version 2 of the License.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
Kyösti Mälkki5687fc92013-11-28 18:11:49 +020014 */
15
16#ifndef __BOOTMODE_H__
17#define __BOOTMODE_H__
18
Kyösti Mälkkie3ddee02014-05-03 10:45:28 +030019/* functions implemented per mainboard: */
20void init_bootmode_straps(void);
Kyösti Mälkki16455892014-04-28 23:41:06 +030021int get_write_protect_state(void);
Paul Kocialkowskia4003272015-09-03 11:27:27 +020022int get_sw_write_protect_state(void);
Kyösti Mälkki5687fc92013-11-28 18:11:49 +020023int get_developer_mode_switch(void);
24int get_recovery_mode_switch(void);
Sheng-Liang Song1d6560f2014-04-30 15:46:45 -070025int clear_recovery_mode_switch(void);
Vadim Bendeburyfe4253c2015-03-12 19:22:51 -070026int get_wipeout_mode_switch(void);
Patrick Georgi08b87852015-05-28 11:59:33 +020027int get_lid_switch(void);
Sheng-Liang Song1d6560f2014-04-30 15:46:45 -070028
Kyösti Mälkki5687fc92013-11-28 18:11:49 +020029
Aaron Durbinbc98cc62015-09-02 09:21:36 -050030/* Return 1 if display initialization is required. 0 if not. */
31int display_init_required(void);
Kyösti Mälkkiab56b3b2013-11-28 16:44:51 +020032int gfx_get_init_done(void);
33void gfx_set_init_done(int done);
34
Kyösti Mälkki5687fc92013-11-28 18:11:49 +020035#if CONFIG_BOOTMODE_STRAPS
36int developer_mode_enabled(void);
37int recovery_mode_enabled(void);
38#else
39static inline int recovery_mode_enabled(void) { return 0; }
40static inline int developer_mode_enabled(void) { return 0; }
41#endif
42
43#endif /* __BOOTMODE_H__ */