Skip to content

Commit 6ee828b

Browse files
committed
Move SoftwareSerial buffers into DCCM area
1 parent 41f98f9 commit 6ee828b

File tree

2 files changed

+4
-4
lines changed

2 files changed

+4
-4
lines changed

libraries/CurieSoftwareSerial/src/SoftwareSerial.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,14 +31,13 @@ Rx does not work for pin 13
3131
//
3232
// Includes
3333
//
34-
#include <Arduino.h>
3534
#include <SoftwareSerial.h>
3635

3736
//
3837
// Statics
3938
//
4039
SoftwareSerial *SoftwareSerial::active_object = 0;
41-
char SoftwareSerial::_receive_buffer[_SS_MAX_RX_BUFF];
40+
char *SoftwareSerial::_receive_buffer;
4241
volatile uint8_t SoftwareSerial::_receive_buffer_tail = 0;
4342
volatile uint8_t SoftwareSerial::_receive_buffer_head = 0;
4443

@@ -231,6 +230,7 @@ SoftwareSerial::SoftwareSerial(uint32_t receivePin, uint32_t transmitPin, bool i
231230
_transmitPin = transmitPin;
232231
setRX(receivePin);
233232
_receivePin = receivePin;
233+
_receive_buffer = (char*)dccm_malloc(_SS_MAX_RX_BUFF);
234234
}
235235

236236
//

libraries/CurieSoftwareSerial/src/SoftwareSerial.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ Rx does not work for pin 13
2727

2828
#include <inttypes.h>
2929
#include <Stream.h>
30-
30+
#include <Arduino.h>
3131
/******************************************************************************
3232
* Definitions
3333
******************************************************************************/
@@ -56,7 +56,7 @@ class SoftwareSerial : public Stream
5656
bool _inverse_logic = false;
5757

5858
// static data
59-
static char _receive_buffer[_SS_MAX_RX_BUFF];
59+
static char *_receive_buffer;
6060
static volatile uint8_t _receive_buffer_tail;
6161
static volatile uint8_t _receive_buffer_head;
6262
static SoftwareSerial *active_object;

0 commit comments

Comments
 (0)