summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--firmware/export/usb_core.h2
-rw-r--r--firmware/usbstack/usb_serial.c8
2 files changed, 8 insertions, 2 deletions
diff --git a/firmware/export/usb_core.h b/firmware/export/usb_core.h
index bf6f2be..fc1c742 100644
--- a/firmware/export/usb_core.h
+++ b/firmware/export/usb_core.h
@@ -37,7 +37,7 @@
#define NUM_ENDPOINTS 8
#define USBDEVBSS_ATTR DEVBSS_ATTR
#else
-#define USBDEVBSS_ATTR NOCACHEBSS_ATTR
+#define USBDEVBSS_ATTR IBSS_ATTR
#define NUM_ENDPOINTS 3
#endif
diff --git a/firmware/usbstack/usb_serial.c b/firmware/usbstack/usb_serial.c
index f390354..08eb121 100644
--- a/firmware/usbstack/usb_serial.c
+++ b/firmware/usbstack/usb_serial.c
@@ -53,10 +53,16 @@ struct usb_endpoint_descriptor __attribute__((aligned(2))) endpoint_descriptor =
};
#define BUFFER_SIZE 512 /* Max 16k because of controller limitations */
+#if CONFIG_CPU == IMX31L
static unsigned char send_buffer[BUFFER_SIZE]
USBDEVBSS_ATTR __attribute__((aligned(32)));
-static unsigned char receive_buffer[512]
+static unsigned char receive_buffer[32]
USBDEVBSS_ATTR __attribute__((aligned(32)));
+#else
+static unsigned char send_buffer[BUFFER_SIZE] __attribute__((aligned(32)));
+static unsigned char receive_buffer[32] __attribute__((aligned(32)));
+#endif
+
static bool busy_sending = false;
static int buffer_start;
static int buffer_length;