summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorŁukasz Hajec <hajec@google.com>2022-01-10 20:59:36 +0100
committerCommit Bot <commit-bot@chromium.org>2022-01-24 21:06:21 +0000
commiteee583791e3abedb3a0ae45927b83ccd203f2094 (patch)
tree602c9c2207beb5aa2c971be0748d313f478a7b20
parent294e26a203fb74d2a3a3218279b6e18ca22780be (diff)
downloadchrome-ec-eee583791e3abedb3a0ae45927b83ccd203f2094.tar.gz
pd: Fix wrong PD accessors handling in default case
This CL fixes implementation added in commit 06d89b033065. Default return value from get_usb_pd_vbus_detect is USB_PD_VBUS_DETECT_NONE, which leads to executing parts of code, that earlier (before mentioned commit) were executed only when CONFIG_USB_PD_VBUS_DETECT_NONE was directly defined. Add additional enum value and return it for a default case when none of configs "CONFIG_USB_PD_VBUS_DETECT_*" is defined. BRANCH=None BUG=b:212683593 TEST=make BOARD=servo_v4p1 flash servo with new firmware plug servo into DUT (without charger) do not observe any problems, e.g hard reset loop Signed-off-by: Łukasz Hajec <lha@semihalf.com> Change-Id: Icf7028b8ba8a3e039a0c1e89de14ee0a4708df74 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3378345 Reviewed-by: Parth Malkan <parthmalkan@google.com> Reviewed-by: Patrick Georgi <pgeorgi@chromium.org> Reviewed-by: Aseda Aboagye <aaboagye@chromium.org> Tested-by: Łukasz Hajec <hajec@google.com> Commit-Queue: Łukasz Hajec <hajec@google.com>
-rw-r--r--common/usb_pd_flags.c4
-rw-r--r--include/usb_pd_flags.h11
2 files changed, 9 insertions, 6 deletions
diff --git a/common/usb_pd_flags.c b/common/usb_pd_flags.c
index 9328c03346..073637e05b 100644
--- a/common/usb_pd_flags.c
+++ b/common/usb_pd_flags.c
@@ -26,8 +26,10 @@ enum usb_pd_vbus_detect get_usb_pd_vbus_detect(void)
return (enum usb_pd_vbus_detect)USB_PD_VBUS_DETECT_PPC;
else if (IS_ENABLED(CONFIG_USB_PD_VBUS_DETECT_CHARGER))
return (enum usb_pd_vbus_detect)USB_PD_VBUS_DETECT_CHARGER;
- else
+ else if (IS_ENABLED(CONFIG_USB_PD_VBUS_DETECT_NONE))
return (enum usb_pd_vbus_detect)USB_PD_VBUS_DETECT_NONE;
+ else
+ return (enum usb_pd_vbus_detect)USB_PD_VBUS_DETECT_UNKNOWN;
}
enum usb_pd_discharge get_usb_pd_discharge(void)
diff --git a/include/usb_pd_flags.h b/include/usb_pd_flags.h
index 71932de885..8e029bcb35 100644
--- a/include/usb_pd_flags.h
+++ b/include/usb_pd_flags.h
@@ -15,11 +15,12 @@
* USB PD VBUS detect (0-2)
*/
enum usb_pd_vbus_detect {
- USB_PD_VBUS_DETECT_NONE = 0,
- USB_PD_VBUS_DETECT_TCPC = 1,
- USB_PD_VBUS_DETECT_GPIO = 2,
- USB_PD_VBUS_DETECT_PPC = 3,
- USB_PD_VBUS_DETECT_CHARGER = 4
+ USB_PD_VBUS_DETECT_UNKNOWN = 0,
+ USB_PD_VBUS_DETECT_NONE = 1,
+ USB_PD_VBUS_DETECT_TCPC = 2,
+ USB_PD_VBUS_DETECT_GPIO = 3,
+ USB_PD_VBUS_DETECT_PPC = 4,
+ USB_PD_VBUS_DETECT_CHARGER = 5
};
/*