|
|
|
@ -62,6 +62,9 @@
|
|
|
|
|
#define M_TXCx SERIAL_REGNAME(TXC,SERIAL_PORT,)
|
|
|
|
|
#define M_RXCIEx SERIAL_REGNAME(RXCIE,SERIAL_PORT,)
|
|
|
|
|
#define M_UDREx SERIAL_REGNAME(UDRE,SERIAL_PORT,)
|
|
|
|
|
#define M_FEx SERIAL_REGNAME(FE,SERIAL_PORT,)
|
|
|
|
|
#define M_DORx SERIAL_REGNAME(DOR,SERIAL_PORT,)
|
|
|
|
|
#define M_UPEx SERIAL_REGNAME(UPE,SERIAL_PORT,)
|
|
|
|
|
#define M_UDRIEx SERIAL_REGNAME(UDRIE,SERIAL_PORT,)
|
|
|
|
|
#define M_UDRx SERIAL_REGNAME(UDR,SERIAL_PORT,)
|
|
|
|
|
#define M_UBRRxH SERIAL_REGNAME(UBRR,SERIAL_PORT,H)
|
|
|
|
@ -91,6 +94,14 @@
|
|
|
|
|
extern uint8_t rx_dropped_bytes;
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
#if ENABLED(SERIAL_STATS_RX_BUFFER_OVERRUNS)
|
|
|
|
|
extern uint8_t rx_buffer_overruns;
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
#if ENABLED(SERIAL_STATS_RX_FRAMING_ERRORS)
|
|
|
|
|
extern uint8_t rx_framing_errors;
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
#if ENABLED(SERIAL_STATS_MAX_RX_QUEUED)
|
|
|
|
|
extern ring_buffer_pos_t rx_max_enqueued;
|
|
|
|
|
#endif
|
|
|
|
@ -112,6 +123,14 @@
|
|
|
|
|
FORCE_INLINE static uint32_t dropped() { return rx_dropped_bytes; }
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
#if ENABLED(SERIAL_STATS_RX_BUFFER_OVERRUNS)
|
|
|
|
|
FORCE_INLINE static uint32_t buffer_overruns() { return rx_buffer_overruns; }
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
#if ENABLED(SERIAL_STATS_RX_FRAMING_ERRORS)
|
|
|
|
|
FORCE_INLINE static uint32_t framing_errors() { return rx_framing_errors; }
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
#if ENABLED(SERIAL_STATS_MAX_RX_QUEUED)
|
|
|
|
|
FORCE_INLINE static ring_buffer_pos_t rxMaxEnqueued() { return rx_max_enqueued; }
|
|
|
|
|
#endif
|
|
|
|
|