uart: move internal static function to top of file
Signed-off-by: Thomas Ingleby <thomas.c.ingleby@intel.com>
This commit is contained in:
148
src/uart/uart.c
148
src/uart/uart.c
@@ -32,6 +32,80 @@
|
||||
#include "uart.h"
|
||||
#include "mraa_internal.h"
|
||||
|
||||
// This function takes an unsigned int and converts it to a B* speed_t
|
||||
// that can be used with linux/posix termios
|
||||
static speed_t
|
||||
uint2speed(unsigned int speed)
|
||||
{
|
||||
switch (speed) {
|
||||
case 0:
|
||||
return B0; // hangup, not too useful otherwise
|
||||
case 50:
|
||||
return B50;
|
||||
case 75:
|
||||
return B75;
|
||||
case 110:
|
||||
return B110;
|
||||
case 150:
|
||||
return B150;
|
||||
case 200:
|
||||
return B200;
|
||||
case 300:
|
||||
return B300;
|
||||
case 600:
|
||||
return B600;
|
||||
case 1200:
|
||||
return B1200;
|
||||
case 1800:
|
||||
return B1800;
|
||||
case 2400:
|
||||
return B2400;
|
||||
case 4800:
|
||||
return B4800;
|
||||
case 9600:
|
||||
return B9600;
|
||||
case 19200:
|
||||
return B19200;
|
||||
case 38400:
|
||||
return B38400;
|
||||
case 57600:
|
||||
return B57600;
|
||||
case 115200:
|
||||
return B115200;
|
||||
case 230400:
|
||||
return B230400;
|
||||
case 460800:
|
||||
return B460800;
|
||||
case 500000:
|
||||
return B500000;
|
||||
case 576000:
|
||||
return B576000;
|
||||
case 921600:
|
||||
return B921600;
|
||||
case 1000000:
|
||||
return B1000000;
|
||||
case 1152000:
|
||||
return B1152000;
|
||||
case 1500000:
|
||||
return B1500000;
|
||||
case 2000000:
|
||||
return B2000000;
|
||||
case 2500000:
|
||||
return B2500000;
|
||||
case 3000000:
|
||||
return B3000000;
|
||||
case 3500000:
|
||||
return B3500000;
|
||||
case 4000000:
|
||||
return B4000000;
|
||||
default:
|
||||
// if we are here, then an unsupported baudrate was selected.
|
||||
// Report it via syslog and return B9600, a common default.
|
||||
syslog(LOG_ERR, "uart: unsupported baud rate, defaulting to 9600.");
|
||||
return B9600;
|
||||
}
|
||||
}
|
||||
|
||||
mraa_uart_context
|
||||
mraa_uart_init(int index)
|
||||
{
|
||||
@@ -402,76 +476,4 @@ mraa_uart_data_available(mraa_uart_context dev, unsigned int millis)
|
||||
}
|
||||
}
|
||||
|
||||
// This function takes an unsigned int and converts it to a B* speed_t
|
||||
// that can be used with linux/posix termios
|
||||
static speed_t
|
||||
uint2speed(unsigned int speed)
|
||||
{
|
||||
switch (speed) {
|
||||
case 0:
|
||||
return B0; // hangup, not too useful otherwise
|
||||
case 50:
|
||||
return B50;
|
||||
case 75:
|
||||
return B75;
|
||||
case 110:
|
||||
return B110;
|
||||
case 150:
|
||||
return B150;
|
||||
case 200:
|
||||
return B200;
|
||||
case 300:
|
||||
return B300;
|
||||
case 600:
|
||||
return B600;
|
||||
case 1200:
|
||||
return B1200;
|
||||
case 1800:
|
||||
return B1800;
|
||||
case 2400:
|
||||
return B2400;
|
||||
case 4800:
|
||||
return B4800;
|
||||
case 9600:
|
||||
return B9600;
|
||||
case 19200:
|
||||
return B19200;
|
||||
case 38400:
|
||||
return B38400;
|
||||
case 57600:
|
||||
return B57600;
|
||||
case 115200:
|
||||
return B115200;
|
||||
case 230400:
|
||||
return B230400;
|
||||
case 460800:
|
||||
return B460800;
|
||||
case 500000:
|
||||
return B500000;
|
||||
case 576000:
|
||||
return B576000;
|
||||
case 921600:
|
||||
return B921600;
|
||||
case 1000000:
|
||||
return B1000000;
|
||||
case 1152000:
|
||||
return B1152000;
|
||||
case 1500000:
|
||||
return B1500000;
|
||||
case 2000000:
|
||||
return B2000000;
|
||||
case 2500000:
|
||||
return B2500000;
|
||||
case 3000000:
|
||||
return B3000000;
|
||||
case 3500000:
|
||||
return B3500000;
|
||||
case 4000000:
|
||||
return B4000000;
|
||||
default:
|
||||
// if we are here, then an unsupported baudrate was selected.
|
||||
// Report it via syslog and return B9600, a common default.
|
||||
syslog(LOG_ERR, "uart: unsupported baud rate, defaulting to 9600.");
|
||||
return B9600;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user