summaryrefslogtreecommitdiff
path: root/include/broadcom
diff options
context:
space:
mode:
authorVikas Gupta <vikas.gupta@broadcom.com>2020-07-15 22:57:19 +0530
committerTom Rini <trini@konsulko.com>2020-07-29 10:37:11 -0400
commit8ed6373d31920ae844632ec4666a6b26e115da69 (patch)
tree1860ddcc99a94e6d0e20506df5bbe4ddd20daba5 /include/broadcom
parent2a4326ab254fb34931714387c5fa00511ace58b3 (diff)
drivers: tee: broadcom: add optee based bnxt fw load driver
Add optee based bnxt fw load driver. bnxt is Broadcom NetXtreme controller Ethernet card. This driver is used to load bnxt firmware binary using OpTEE. Signed-off-by: Vikas Gupta <vikas.gupta@broadcom.com> Signed-off-by: Rayagonda Kokatanur <rayagonda.kokatanur@broadcom.com> Reviewed-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'include/broadcom')
-rw-r--r--include/broadcom/chimp.h43
1 files changed, 43 insertions, 0 deletions
diff --git a/include/broadcom/chimp.h b/include/broadcom/chimp.h
new file mode 100644
index 0000000000..7f64152913
--- /dev/null
+++ b/include/broadcom/chimp.h
@@ -0,0 +1,43 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
+/*
+ * Copyright 2020 Broadcom.
+ *
+ */
+
+#ifndef __CHIMP_H__
+#define __CHIMP_H__
+
+#include <linux/compiler.h>
+
+/**
+ * chimp_fastboot_optee() - api to load bnxt firmware
+ *
+ * @return: 0 on success and -ve on failure
+ */
+int chimp_fastboot_optee(void);
+
+/**
+ * chimp_health_status_optee() - get chimp health status
+ *
+ * Chimp health status could be firmware is in good condition or
+ * bad condition because of crash/hang.
+ *
+ * @status: pointer to get chimp health status
+ *
+ * @return: 0 on success and -ve on failure
+ */
+int chimp_health_status_optee(u32 *status);
+
+/**
+ * chimp_handshake_status_optee() - get chimp handshake status.
+ *
+ * To know firmware is loaded and running.
+ *
+ * @timeout: timeout value, if 0 then default timeout is considered by op-tee
+ * @hstatus: pointer to chimp handshake status
+ *
+ * @return: 0 on success and -ve on failure
+ */
+int chimp_handshake_status_optee(u32 timeout, u32 *hstatus);
+
+#endif