aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/lpc.h6
-rw-r--r--include/xscom.h5
2 files changed, 11 insertions, 0 deletions
diff --git a/include/lpc.h b/include/lpc.h
index 5611c54..a0990fd 100644
--- a/include/lpc.h
+++ b/include/lpc.h
@@ -27,6 +27,12 @@ extern void lpc_init(void);
/* Check for a default bus */
extern bool lpc_present(void);
+/* Return of LPC is currently usable. This can be false if the caller
+ * currently holds a lock that would make it unsafe, or the LPC bus
+ * is known to be in some error condition (TBI).
+ */
+extern bool lpc_ok(void);
+
/* Handle the interrupt from LPC source */
extern void __attrconst lpc_interrupt(uint32_t chip_id);
diff --git a/include/xscom.h b/include/xscom.h
index b1ecaf5..a841261 100644
--- a/include/xscom.h
+++ b/include/xscom.h
@@ -173,6 +173,11 @@ extern void xscom_init(void);
/* Mark XSCOM lock as being in console path */
extern void xscom_used_by_console(void);
+/* Returns true if XSCOM can be used. Typically this returns false if
+ * the current CPU holds the XSCOM lock (to avoid re-entrancy from error path).
+ */
+extern bool xscom_ok(void);
+
extern int64_t xscom_read_cfam_chipid(uint32_t partid, uint32_t *chip_id);
#endif /* __XSCOM_H */