summaryrefslogtreecommitdiff
path: root/baseboard
diff options
context:
space:
mode:
authorAseda Aboagye <aaboagye@google.com>2021-04-12 11:13:41 -0700
committerCommit Bot <commit-bot@chromium.org>2021-04-13 20:40:29 +0000
commit08c5b95b6f924783b4383ece03ddb12879a9b19a (patch)
tree2c9a48cb49d0f718efb51bc3831427e284bea92f /baseboard
parentaa6e346e6a9268bdcdebb90127c91b4b9097a42d (diff)
downloadchrome-ec-08c5b95b6f924783b4383ece03ddb12879a9b19a.tar.gz
dedede: Add USB SS MUX to SSFC
This commit adds a new 3-bit field to the SSFC to accommodate multiple USB SuperSpeed muxes. The first of these variants is the Parade PS8743B. BUG=b:184706456 BRANCH=dedede TEST=`make -j BOARD=sasuke` Signed-off-by: Aseda Aboagye <aaboagye@google.com> Change-Id: Ie9bc0b6665efd8dc493bb4a7c0bce787fbfdeb21 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2821600 Reviewed-by: YongBeum.Ha <ybha@samsung.corp-partner.google.com> Reviewed-by: Diana Z <dzigterman@chromium.org> Tested-by: YongBeum.Ha <ybha@samsung.corp-partner.google.com> Commit-Queue: Aseda Aboagye <aaboagye@chromium.org> Auto-Submit: Aseda Aboagye <aaboagye@chromium.org>
Diffstat (limited to 'baseboard')
-rw-r--r--baseboard/dedede/cbi_ssfc.c4
-rw-r--r--baseboard/dedede/cbi_ssfc.h20
2 files changed, 23 insertions, 1 deletions
diff --git a/baseboard/dedede/cbi_ssfc.c b/baseboard/dedede/cbi_ssfc.c
index d49e1b0843..346da842d5 100644
--- a/baseboard/dedede/cbi_ssfc.c
+++ b/baseboard/dedede/cbi_ssfc.c
@@ -35,3 +35,7 @@ enum ec_ssfc_lid_sensor get_cbi_ssfc_lid_sensor(void)
return cached_ssfc.lid_sensor;
}
+enum ec_ssfc_usb_ss_mux get_cbi_ssfc_usb_ss_mux(void)
+{
+ return cached_ssfc.usb_ss_mux;
+}
diff --git a/baseboard/dedede/cbi_ssfc.h b/baseboard/dedede/cbi_ssfc.h
index b3803d0b18..92ab06c646 100644
--- a/baseboard/dedede/cbi_ssfc.h
+++ b/baseboard/dedede/cbi_ssfc.h
@@ -31,11 +31,21 @@ enum ec_ssfc_lid_sensor {
SSFC_SENSOR_KX022 = 2
};
+/*
+ * USB SuperSpeed Mux (Bits 6-8)
+ */
+enum ec_ssfc_usb_ss_mux {
+ SSFC_USB_SS_MUX_DEFAULT = 0,
+ SSFC_USB_SS_MUX_PS8743 = 1,
+ SSFC_USB_SS_MUX_PI3USBX532 = 2,
+};
+
union dedede_cbi_ssfc {
struct {
enum ec_ssfc_base_sensor base_sensor : 3;
enum ec_ssfc_lid_sensor lid_sensor : 3;
- uint32_t reserved_2 : 26;
+ enum ec_ssfc_usb_ss_mux usb_ss_mux : 3;
+ uint32_t reserved_2 : 20;
};
uint32_t raw_value;
};
@@ -54,4 +64,12 @@ enum ec_ssfc_base_sensor get_cbi_ssfc_base_sensor(void);
*/
enum ec_ssfc_lid_sensor get_cbi_ssfc_lid_sensor(void);
+/**
+ * Get the USB SuperSpeed Mux type from SSFC_CONFIG
+ *
+ * @return the USB SuperSpeed Mux type
+ */
+enum ec_ssfc_usb_ss_mux get_cbi_ssfc_usb_ss_mux(void);
+
+
#endif /* _DEDEDE_CBI_SSFC__H_ */