diff options
author | Dean Camera <dean@fourwalledcubicle.com> | 2015-05-17 13:01:13 +1000 |
---|---|---|
committer | Dean Camera <dean@fourwalledcubicle.com> | 2015-05-17 13:01:13 +1000 |
commit | 366a8461566edd7982e8eb6b0790365f6d99e3ab (patch) | |
tree | 486cc5b4af162143ecca661e1e738b73668c958e /LUFA/Drivers/Peripheral/XMEGA/Serial_XMEGA.c | |
parent | a9364a866f99334f3aee5a58480ae5bc5e7a5a02 (diff) | |
download | lufa-366a8461566edd7982e8eb6b0790365f6d99e3ab.tar.gz lufa-366a8461566edd7982e8eb6b0790365f6d99e3ab.tar.bz2 lufa-366a8461566edd7982e8eb6b0790365f6d99e3ab.zip |
Fix incorrect XMEGA serial driver stream functions (thanks to William Patterson).
Diffstat (limited to 'LUFA/Drivers/Peripheral/XMEGA/Serial_XMEGA.c')
-rw-r--r-- | LUFA/Drivers/Peripheral/XMEGA/Serial_XMEGA.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/LUFA/Drivers/Peripheral/XMEGA/Serial_XMEGA.c b/LUFA/Drivers/Peripheral/XMEGA/Serial_XMEGA.c index 4e2935730..ff3ac0d4f 100644 --- a/LUFA/Drivers/Peripheral/XMEGA/Serial_XMEGA.c +++ b/LUFA/Drivers/Peripheral/XMEGA/Serial_XMEGA.c @@ -95,19 +95,20 @@ void Serial_SendData(USART_t* const USART, Serial_SendByte(USART, *((uint8_t*)Buffer++)); } -void Serial_CreateStream(FILE* Stream) +void Serial_CreateStream(USART_t* USART, FILE* Stream) { if (!(Stream)) { Stream = &USARTSerialStream; stdin = Stream; stdout = Stream; - } + } - *Stream = (FILE)FDEV_SETUP_STREAM(Serial_putchar, Serial_getchar, _FDEV_SETUP_RW); + *Stream = (FILE)FDEV_SETUP_STREAM(Serial_putchar, Serial_getchar, _FDEV_SETUP_RW); + fdev_set_udata(Stream, USART); } -void Serial_CreateBlockingStream(FILE* Stream) +void Serial_CreateBlockingStream(USART_t* USART, FILE* Stream) { if (!(Stream)) { @@ -116,7 +117,8 @@ void Serial_CreateBlockingStream(FILE* Stream) stdout = Stream; } - *Stream = (FILE)FDEV_SETUP_STREAM(Serial_putchar, Serial_getchar_Blocking, _FDEV_SETUP_RW); + *Stream = (FILE)FDEV_SETUP_STREAM(Serial_putchar, Serial_getchar_Blocking, _FDEV_SETUP_RW); + fdev_set_udata(Stream, USART); } #endif |