summaryrefslogtreecommitdiff
path: root/chip/g/usb_spi.c
diff options
context:
space:
mode:
Diffstat (limited to 'chip/g/usb_spi.c')
-rw-r--r--chip/g/usb_spi.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/chip/g/usb_spi.c b/chip/g/usb_spi.c
index 34e23bc4c5..a5f6ddd175 100644
--- a/chip/g/usb_spi.c
+++ b/chip/g/usb_spi.c
@@ -14,6 +14,10 @@
#include "usb_spi.h"
#include "util.h"
+#ifdef CONFIG_STREAM_SIGNATURE
+#include "signing.h"
+#endif
+
#define CPUTS(outstr) cputs(CC_USB, outstr)
#define CPRINTS(format, args...) cprints(CC_USB, format, ## args)
@@ -40,6 +44,15 @@ static uint16_t usb_spi_read_packet(struct usb_spi_config const *config)
static void usb_spi_write_packet(struct usb_spi_config const *config,
uint8_t count)
{
+#ifdef CONFIG_STREAM_SIGNATURE
+ /*
+ * This hook allows mn50 to sign SPI data read from newly
+ * manufactured H1 devieces. The data is added to a running
+ * hash until a completion message is received.
+ */
+ sig_append(stream_spi, config->buffer, count);
+#endif
+
QUEUE_ADD_UNITS(config->tx_queue, config->buffer, count);
}