From 611c18704cf8a8866235e4b7fe93f17e8a2614c4 Mon Sep 17 00:00:00 2001 From: William Wilgus Date: Mon, 2 Nov 2020 21:30:41 -0500 Subject: [PATCH] FuzePlus USB+screen dump overflows usbstack Bump USB stack by 128 bytes adds USB_EXTRA_STACK Change-Id: I12839edbe889c878482081cf59fc6540384673ac --- firmware/export/config/sansafuzeplus.h | 1 + firmware/usb.c | 5 ++++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/firmware/export/config/sansafuzeplus.h b/firmware/export/config/sansafuzeplus.h index 4b3591931f..a853cb13b5 100644 --- a/firmware/export/config/sansafuzeplus.h +++ b/firmware/export/config/sansafuzeplus.h @@ -193,6 +193,7 @@ /* enable these for the experimental usb stack */ #define HAVE_USBSTACK +#define USB_EXTRA_STACK 0x80 //#define USB_HANDLED_BY_OF #define USB_VENDOR_ID 0x0781 #define USB_PRODUCT_ID 0x74e1 diff --git a/firmware/usb.c b/firmware/usb.c index f97cc75ffe..e0c0c45865 100644 --- a/firmware/usb.c +++ b/firmware/usb.c @@ -68,7 +68,10 @@ static int usb_mmc_countdown = 0; /* Make sure there's enough stack space for screendump */ #ifdef USB_FULL_INIT -static long usb_stack[(DEFAULT_STACK_SIZE + DUMP_BMP_LINESIZE)/sizeof(long)]; +#ifndef USB_EXTRA_STACK +# define USB_EXTRA_STACK 0x0 /*Define in firmware/export/config/[target].h*/ +#endif +static long usb_stack[(DEFAULT_STACK_SIZE + DUMP_BMP_LINESIZE + USB_EXTRA_STACK)/sizeof(long)]; static const char usb_thread_name[] = "usb"; static unsigned int usb_thread_entry = 0; static bool usb_monitor_enabled = false;