google/edgar: add new board as variant of cyan baseboard
Add support for google/edgar (Acer Chromebook 14 CB3-431) as a variant of the cyan Braswell basebaseboard. - Add board-specific code as the new edgar variant - Add common code to the baseboard which will apply to all variants other than cyan Sourced from Chromium branch firmware-edgar-7287.167.B, commit 2319742: Edgar: Add Micron MT52L256M32D1PF-107 SPD data Change-Id: I58548cbbc85828f37c0023e8aa9e09bdca612659 Signed-off-by: Matt DeVillier <matt.devillier@gmail.com> Reviewed-on: https://review.coreboot.org/21127 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Martin Roth <martinroth@google.com>
This commit is contained in:
committed by
Martin Roth
parent
7427abce07
commit
4f20a4ae47
@@ -16,6 +16,7 @@
|
||||
|
||||
#include <arch/io.h>
|
||||
#include <rules.h>
|
||||
#include <gpio.h>
|
||||
#include <soc/gpio.h>
|
||||
#include <string.h>
|
||||
#include <vendorcode/google/chromeos/chromeos.h>
|
||||
@@ -24,6 +25,8 @@
|
||||
#define WP_STATUS_PAD_CFG0 0x4838
|
||||
#define WP_STATUS_PAD_CFG1 0x483C
|
||||
|
||||
#define WP_GPIO GP_E_22
|
||||
|
||||
#if ENV_RAMSTAGE
|
||||
#include <boot/coreboot_tables.h>
|
||||
|
||||
@@ -52,15 +55,23 @@ int get_write_protect_state(void)
|
||||
* in the reading.
|
||||
*/
|
||||
#if ENV_ROMSTAGE
|
||||
write32((void *)(COMMUNITY_GPEAST_BASE + WP_STATUS_PAD_CFG0),
|
||||
(PAD_PULL_UP_20K | PAD_GPIO_ENABLE | PAD_CONFIG0_GPI_DEFAULT));
|
||||
write32((void *)(COMMUNITY_GPEAST_BASE + WP_STATUS_PAD_CFG1),
|
||||
PAD_CONFIG1_DEFAULT0);
|
||||
if (IS_ENABLED(CONFIG_BOARD_GOOGLE_CYAN)) {
|
||||
write32((void *)(COMMUNITY_GPEAST_BASE + WP_STATUS_PAD_CFG0),
|
||||
(PAD_PULL_UP_20K | PAD_GPIO_ENABLE | PAD_CONFIG0_GPI_DEFAULT));
|
||||
write32((void *)(COMMUNITY_GPEAST_BASE + WP_STATUS_PAD_CFG1),
|
||||
PAD_CONFIG1_DEFAULT0);
|
||||
} else {
|
||||
gpio_input_pullup(WP_GPIO);
|
||||
}
|
||||
#endif
|
||||
|
||||
/* WP is enabled when the pin is reading high. */
|
||||
return (read32((void *)(COMMUNITY_GPEAST_BASE + WP_STATUS_PAD_CFG0))
|
||||
& PAD_VAL_HIGH);
|
||||
if (IS_ENABLED(CONFIG_BOARD_GOOGLE_CYAN)) {
|
||||
return (read32((void *)(COMMUNITY_GPEAST_BASE + WP_STATUS_PAD_CFG0))
|
||||
& PAD_VAL_HIGH);
|
||||
} else {
|
||||
return !!gpio_get(WP_GPIO);
|
||||
}
|
||||
}
|
||||
|
||||
static const struct cros_gpio cros_gpios[] = {
|
||||
|
Reference in New Issue
Block a user