summaryrefslogtreecommitdiffstats
path: root/src/soc/intel/common
diff options
context:
space:
mode:
authorSubrata Banik <subratabanik@google.com>2022-12-08 16:05:40 +0530
committerSubrata Banik <subratabanik@google.com>2022-12-10 08:02:42 +0000
commitff433b71765d91673aac6cc25b16a41bdb564645 (patch)
tree9a64857ba234ab129897ce5aae4ee714e05bd11b /src/soc/intel/common
parent49204e30f390737724ee8fc3f57dfb4dc4a5bcbc (diff)
downloadcoreboot-ff433b71765d91673aac6cc25b16a41bdb564645.tar.gz
coreboot-ff433b71765d91673aac6cc25b16a41bdb564645.tar.bz2
coreboot-ff433b71765d91673aac6cc25b16a41bdb564645.zip
soc/intel: Move TCSS FW latency macros to IA common tcss.h
This patch moves TCSS firmware latency related macros from SoC specific tcss.h to IA common tcss.h Additionally, ensure other structure definitions belonging to the IA common code tcss.h are not causing compilation issues for ASL files (due to including FW latency macros) hence, guarded against `!defined(__ACPI__)`. TEST=Able to build and boot Google/Rex and Google/Kano. Change-Id: Id51545ef714979c6ba09a2b468231b1f4bab0be7 Signed-off-by: Subrata Banik <subratabanik@google.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/70487 Reviewed-by: Eric Lai <eric_lai@quanta.corp-partner.google.com> Reviewed-by: Ivy Jian <ivy.jian@quanta.corp-partner.google.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'src/soc/intel/common')
-rw-r--r--src/soc/intel/common/block/include/intelblocks/tcss.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/src/soc/intel/common/block/include/intelblocks/tcss.h b/src/soc/intel/common/block/include/intelblocks/tcss.h
index 12400d8c5a40..a3fec18086a7 100644
--- a/src/soc/intel/common/block/include/intelblocks/tcss.h
+++ b/src/soc/intel/common/block/include/intelblocks/tcss.h
@@ -4,6 +4,7 @@
#define _TCSS_H_
#include <intelblocks/gpio.h>
+#if !defined(__ACPI__)
#include <device/usbc_mux.h>
/* PMC IPC related offsets and commands */
@@ -165,5 +166,26 @@ const struct tcss_port_map *tcss_get_port_info(size_t *num_ports);
/* Method to validate the Thunderbolt authentication */
bool tcss_valid_tbt_auth(void);
bool ioe_tcss_valid_tbt_auth(void);
+#endif /* !defined(__ACPI__) */
+
+/*
+ * The PCI-SIG engineering change requirement provides the ACPI additions for firmware latency
+ * optimization. Both of FW_RESET_TIME and FW_D3HOT_TO_D0_TIME are applicable to the upstream
+ * port of the USB4/TBT topology.
+ */
+/* Number of microseconds to wait after a conventional reset */
+#define FW_RESET_TIME 50000
+
+/* Number of microseconds to wait after data link layer active report */
+#define FW_DL_UP_TIME 1
+
+/* Number of microseconds to wait after a function level reset */
+#define FW_FLR_RESET_TIME 1
+
+/* Number of microseconds to wait from D3 hot to D0 transition */
+#define FW_D3HOT_TO_D0_TIME 50000
+
+/* Number of microseconds to wait after setting the VF enable bit */
+#define FW_VF_ENABLE_TIME 1
#endif /* _TCSS_H_ */