diff options
author | Julius Werner <jwerner@chromium.org> | 2017-03-17 13:04:12 -0700 |
---|---|---|
committer | Julius Werner <jwerner@chromium.org> | 2017-03-28 22:15:46 +0200 |
commit | 320edbe2ba01a1b5d9de25bc217b8dae936b8b17 (patch) | |
tree | c89406965dfc086ea449b25c545e061938bc183f /src/mainboard/google/parrot/chromeos.c | |
parent | fa8fa7dd540db7c6f363f75c12b2063c3cdc3908 (diff) |
vboot: Assume EC_SOFTWARE_SYNC and VIRTUAL_DEV_SWITCH by default
The virtualized developer switch was invented five years ago and has
been used on every vboot system ever since. We shouldn't need to specify
it again and again for every new board. This patch flips the Kconfig
logic around and replaces CONFIG_VIRTUAL_DEV_SWITCH with
CONFIG_PHYSICAL_DEV_SWITCH, so that only a few ancient boards need to
set it and it fits better with CONFIG_PHYSICAL_REC_SWITCH. (Also set the
latter for Lumpy which seems to have been omitted incorrectly, and hide
it from menuconfig since it's a hardware parameter that shouldn't be
configurable.)
Since almost all our developer switches are virtual, it doesn't make
sense for every board to pass a non-existent or non-functional developer
mode switch in the coreboot tables, so let's get rid of that. It's also
dangerously confusing for many boards to define a get_developer_mode()
function that reads an actual pin (often from a debug header) which will
not be honored by coreboot because CONFIG_PHYSICAL_DEV_SWITCH isn't set.
Therefore, this patch removes all those non-functional instances of that
function. In the future, either the board has a physical dev switch and
must define it, or it doesn't and must not.
In a similar sense (and since I'm touching so many board configs
anyway), it's annoying that we have to keep selecting EC_SOFTWARE_SYNC.
Instead, it should just be assumed by default whenever a Chrome EC is
present in the system. This way, it can also still be overridden by
menuconfig.
CQ-DEPEND=CL:459701
Change-Id: If9cbaa7df530580a97f00ef238e3d9a8a86a4a7f
Signed-off-by: Julius Werner <jwerner@chromium.org>
Reviewed-on: https://review.coreboot.org/18980
Tested-by: build bot (Jenkins)
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Diffstat (limited to 'src/mainboard/google/parrot/chromeos.c')
-rw-r--r-- | src/mainboard/google/parrot/chromeos.c | 22 |
1 files changed, 0 insertions, 22 deletions
diff --git a/src/mainboard/google/parrot/chromeos.c b/src/mainboard/google/parrot/chromeos.c index 4dcbfa5f40..d2448eb253 100644 --- a/src/mainboard/google/parrot/chromeos.c +++ b/src/mainboard/google/parrot/chromeos.c @@ -56,12 +56,6 @@ void fill_lb_gpios(struct lb_gpios *gpios) gpios->gpios[1].value = get_recovery_mode_switch(); strncpy((char *)gpios->gpios[1].name,"recovery", GPIO_MAX_NAME_LENGTH); - /* Developer: Virtual GPIO in the EC ( Servo GPIO17 active low) */ - gpios->gpios[2].port = -1; - gpios->gpios[2].polarity = ACTIVE_HIGH; - gpios->gpios[2].value = get_developer_mode_switch(); - strncpy((char *)gpios->gpios[2].name,"developer", GPIO_MAX_NAME_LENGTH); - /* Lid switch GPIO active high (open). */ gpios->gpios[3].port = 15; gpios->gpios[3].polarity = ACTIVE_HIGH; @@ -88,22 +82,6 @@ int get_lid_switch(void) return get_gpio(15); } -int get_developer_mode_switch(void) -{ - u8 gpio = !get_gpio(17); - /* - * Dev mode is controlled by EC and uboot stores a flag in TPM. - * This GPIO is only for the debug header. - * It is AND'd to the EC request. - */ - - printk(BIOS_DEBUG, "DEV MODE GPIO 17: %x\n", gpio); - - /* GPIO17, active low -- return active high reading and let - * it be inverted by the caller if needed. */ - return gpio; -} - int get_write_protect_state(void) { return !get_gpio(70); |