From 320edbe2ba01a1b5d9de25bc217b8dae936b8b17 Mon Sep 17 00:00:00 2001 From: Julius Werner Date: Fri, 17 Mar 2017 13:04:12 -0700 Subject: 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 Reviewed-on: https://review.coreboot.org/18980 Tested-by: build bot (Jenkins) Reviewed-by: Aaron Durbin --- src/mainboard/intel/baskingridge/chromeos.c | 16 ---------------- src/mainboard/intel/emeraldlake2/chromeos.c | 12 ------------ src/mainboard/intel/galileo/vboot.c | 5 ----- src/mainboard/intel/kblrvp/chromeos.c | 7 ------- src/mainboard/intel/kunimitsu/chromeos.c | 1 - src/mainboard/intel/strago/Kconfig | 2 -- src/mainboard/intel/strago/chromeos.c | 1 - src/mainboard/intel/wtm2/chromeos.c | 9 +-------- 8 files changed, 1 insertion(+), 52 deletions(-) (limited to 'src/mainboard/intel') diff --git a/src/mainboard/intel/baskingridge/chromeos.c b/src/mainboard/intel/baskingridge/chromeos.c index 1666fc5528..5ed9e3681c 100644 --- a/src/mainboard/intel/baskingridge/chromeos.c +++ b/src/mainboard/intel/baskingridge/chromeos.c @@ -36,7 +36,6 @@ void fill_lb_gpios(struct lb_gpios *gpios) return; u32 gp_lvl = inl(gpio_base + GP_LVL); - u32 gp_lvl2 = inl(gpio_base + GP_LVL2); u32 gp_lvl3 = inl(gpio_base + GP_LVL3); gpios->size = sizeof(*gpios) + (GPIO_COUNT * sizeof(struct lb_gpio)); @@ -55,12 +54,6 @@ void fill_lb_gpios(struct lb_gpios *gpios) gpios->gpios[1].value = (gp_lvl3 >> (69-64)) & 1; strncpy((char *)gpios->gpios[1].name,"recovery", GPIO_MAX_NAME_LENGTH); - /* Developer: GPIO48 - BIOS_RESP - J8E4 (silkscreen: J8E3) */ - gpios->gpios[2].port = 48; - gpios->gpios[2].polarity = ACTIVE_LOW; - gpios->gpios[2].value = (gp_lvl2 >> (48-32)) & 1; - strncpy((char *)gpios->gpios[2].name,"developer", GPIO_MAX_NAME_LENGTH); - /* Hard code the lid switch GPIO to open. */ gpios->gpios[3].port = -1; gpios->gpios[3].polarity = ACTIVE_HIGH; @@ -81,15 +74,6 @@ void fill_lb_gpios(struct lb_gpios *gpios) } #endif -int get_developer_mode_switch(void) -{ - /* - * Developer: GPIO48, Connected to J8E4, however the silkscreen says - * J8E3. The jumper is active low. - */ - return !get_gpio(48); -} - int get_recovery_mode_switch(void) { /* diff --git a/src/mainboard/intel/emeraldlake2/chromeos.c b/src/mainboard/intel/emeraldlake2/chromeos.c index 896f8767f8..eac995a839 100644 --- a/src/mainboard/intel/emeraldlake2/chromeos.c +++ b/src/mainboard/intel/emeraldlake2/chromeos.c @@ -55,12 +55,6 @@ void fill_lb_gpios(struct lb_gpios *gpios) gpios->gpios[1].value = (gp_lvl >> 22) & 1; strncpy((char *)gpios->gpios[1].name,"recovery", GPIO_MAX_NAME_LENGTH); - /* Developer: GPIO57 */ - gpios->gpios[2].port = 57; - gpios->gpios[2].polarity = ACTIVE_LOW; - gpios->gpios[2].value = (gp_lvl2 >> (57-32)) & 1; - strncpy((char *)gpios->gpios[2].name,"developer", GPIO_MAX_NAME_LENGTH); - /* Hard code the lid switch GPIO to open. */ gpios->gpios[3].port = -1; gpios->gpios[3].polarity = ACTIVE_HIGH; @@ -81,12 +75,6 @@ void fill_lb_gpios(struct lb_gpios *gpios) } #endif -int get_developer_mode_switch(void) -{ - /* Developer: GPIO57, active high */ - return get_gpio(57); -} - int get_recovery_mode_switch(void) { /* Recovery: GPIO22, active low */ diff --git a/src/mainboard/intel/galileo/vboot.c b/src/mainboard/intel/galileo/vboot.c index cc8831eaeb..70fe11338c 100644 --- a/src/mainboard/intel/galileo/vboot.c +++ b/src/mainboard/intel/galileo/vboot.c @@ -32,11 +32,6 @@ int clear_recovery_mode_switch(void) return 0; } -int get_developer_mode_switch(void) -{ - return 0; -} - int get_recovery_mode_switch(void) { return 0; diff --git a/src/mainboard/intel/kblrvp/chromeos.c b/src/mainboard/intel/kblrvp/chromeos.c index fc1bcd2b9d..4bd802a65a 100644 --- a/src/mainboard/intel/kblrvp/chromeos.c +++ b/src/mainboard/intel/kblrvp/chromeos.c @@ -36,7 +36,6 @@ void fill_lb_gpios(struct lb_gpios *gpios) struct lb_gpio chromeos_gpios[] = { {-1, ACTIVE_HIGH, get_write_protect_state(), "write protect"}, {-1, ACTIVE_HIGH, get_recovery_mode_switch(), "recovery"}, - {-1, ACTIVE_HIGH, get_developer_mode_switch(), "developer"}, {-1, ACTIVE_HIGH, get_lid_switch(), "lid"}, {-1, ACTIVE_HIGH, 0, "power"}, {-1, ACTIVE_HIGH, gfx_get_init_done(), "oprom"}, @@ -55,12 +54,6 @@ int get_lid_switch(void) return 1; } -int get_developer_mode_switch(void) -{ - /* No physical developer mode switch. */ - return 0; -} - int get_recovery_mode_switch(void) { if (IS_ENABLED(CONFIG_EC_GOOGLE_CHROMEEC)) { diff --git a/src/mainboard/intel/kunimitsu/chromeos.c b/src/mainboard/intel/kunimitsu/chromeos.c index 42763a7d34..54f9bbedcc 100644 --- a/src/mainboard/intel/kunimitsu/chromeos.c +++ b/src/mainboard/intel/kunimitsu/chromeos.c @@ -30,7 +30,6 @@ void fill_lb_gpios(struct lb_gpios *gpios) struct lb_gpio chromeos_gpios[] = { {-1, ACTIVE_HIGH, get_write_protect_state(), "write protect"}, {-1, ACTIVE_HIGH, get_recovery_mode_switch(), "recovery"}, - {-1, ACTIVE_HIGH, get_developer_mode_switch(), "developer"}, {-1, ACTIVE_HIGH, get_lid_switch(), "lid"}, {-1, ACTIVE_HIGH, 0, "power"}, {-1, ACTIVE_HIGH, gfx_get_init_done(), "oprom"}, diff --git a/src/mainboard/intel/strago/Kconfig b/src/mainboard/intel/strago/Kconfig index 8915323a06..c7221e915d 100644 --- a/src/mainboard/intel/strago/Kconfig +++ b/src/mainboard/intel/strago/Kconfig @@ -17,10 +17,8 @@ config BOARD_SPECIFIC_OPTIONS config CHROMEOS select EC_GOOGLE_CHROMEEC_SWITCHES - select EC_SOFTWARE_SYNC select LID_SWITCH select VBOOT_VBNV_CMOS - select VIRTUAL_DEV_SWITCH config DYNAMIC_VNN_SUPPORT bool "Enables support for Dynamic VNN" diff --git a/src/mainboard/intel/strago/chromeos.c b/src/mainboard/intel/strago/chromeos.c index 6d00d72dee..fbcbcf7757 100644 --- a/src/mainboard/intel/strago/chromeos.c +++ b/src/mainboard/intel/strago/chromeos.c @@ -32,7 +32,6 @@ void fill_lb_gpios(struct lb_gpios *gpios) struct lb_gpio chromeos_gpios[] = { {-1, ACTIVE_HIGH, get_write_protect_state(), "write protect"}, {-1, ACTIVE_HIGH, vboot_recovery_mode_enabled(), "recovery"}, - {-1, ACTIVE_HIGH, get_developer_mode_switch(), "developer"}, {-1, ACTIVE_HIGH, get_lid_switch(), "lid"}, {-1, ACTIVE_HIGH, 0, "power"}, {-1, ACTIVE_HIGH, gfx_get_init_done(), "oprom"}, diff --git a/src/mainboard/intel/wtm2/chromeos.c b/src/mainboard/intel/wtm2/chromeos.c index 862f4a411c..fe98fd85ec 100644 --- a/src/mainboard/intel/wtm2/chromeos.c +++ b/src/mainboard/intel/wtm2/chromeos.c @@ -21,8 +21,7 @@ #include #include -/* Compile-time settings for developer and recovery mode. */ -#define DEV_MODE_SETTING 1 +/* Compile-time settings for recovery mode. */ #define REC_MODE_SETTING 0 #ifndef __PRE_RAM__ @@ -33,7 +32,6 @@ void fill_lb_gpios(struct lb_gpios *gpios) struct lb_gpio chromeos_gpios[] = { {-1, ACTIVE_HIGH, 0, "write protect"}, {-1, ACTIVE_HIGH, REC_MODE_SETTING, "recovery"}, - {-1, ACTIVE_HIGH, DEV_MODE_SETTING, "developer"}, {-1, ACTIVE_HIGH, 1, "lid"}, // force open {-1, ACTIVE_HIGH, 0, "power"}, {-1, ACTIVE_HIGH, gfx_get_init_done(), "oprom"}, @@ -42,11 +40,6 @@ void fill_lb_gpios(struct lb_gpios *gpios) } #endif -int get_developer_mode_switch(void) -{ - return DEV_MODE_SETTING; -} - int get_recovery_mode_switch(void) { return REC_MODE_SETTING; -- cgit v1.2.3