1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2025-01-18 12:52:44 +01:00

native: don't use RIOT read/write in UART

This commit is contained in:
René Kijewski 2014-03-26 13:49:01 +01:00
parent a6fd531783
commit 0b75a11291
4 changed files with 23 additions and 22 deletions

View File

@ -57,7 +57,7 @@ int uart0_puts(char *astring, int length)
while (
(length - offset > 0) && (
(nwritten = write(
(nwritten = _native_write(
STDOUT_FILENO,
astring+offset,
length-offset)
@ -168,7 +168,7 @@ void handle_uart_in()
DEBUG("handle_uart_in\n");
nread = read(STDIN_FILENO, buf, sizeof(buf));
nread = _native_read(STDIN_FILENO, buf, sizeof(buf));
if (nread == -1) {
err(1, "handle_uart_in(): read()");
}

View File

@ -61,6 +61,8 @@ extern char **_native_argv;
extern fd_set _native_rfds;
#endif
ssize_t _native_read(int fd, void *buf, size_t count);
ssize_t _native_write(int fd, const void *buf, size_t count);
/**
* register interrupt handler handler for interrupt sig

View File

@ -219,7 +219,7 @@ int8_t send_buf(radio_packet_t *packet)
DEBUG("send_buf: trying to send %d bytes\n", to_send);
if ((nsent = write(_native_tap_fd, buf, to_send)) == -1) {;
if ((nsent = _native_write(_native_tap_fd, buf, to_send)) == -1) {;
warn("write");
return -1;
}

View File

@ -131,7 +131,7 @@ void *realloc(void *ptr, size_t size)
return r;
}
ssize_t read(int fd, void *buf, size_t count)
ssize_t _native_read(int fd, void *buf, size_t count)
{
ssize_t r;
@ -142,12 +142,11 @@ ssize_t read(int fd, void *buf, size_t count)
return r;
}
ssize_t write(int fd, const void *buf, size_t count)
ssize_t _native_write(int fd, const void *buf, size_t count)
{
ssize_t r;
_native_syscall_enter();
//real_write(fd, "real_write: ", 12);
r = real_write(fd, buf, count);
_native_syscall_leave();
@ -155,14 +154,14 @@ ssize_t write(int fd, const void *buf, size_t count)
}
int putchar(int c) {
write(STDOUT_FILENO, &c, 1);
_native_write(STDOUT_FILENO, &c, 1);
return 0;
}
int puts(const char *s)
{
int r;
r = write(STDOUT_FILENO, (char*)s, strlen(s));
r = _native_write(STDOUT_FILENO, (char*)s, strlen(s));
putchar('\n');
return r;
}
@ -203,7 +202,7 @@ int printf(const char *format, ...)
if ((m = make_message(format, argp)) == NULL) {
err(EXIT_FAILURE, "malloc");
}
r = write(STDOUT_FILENO, m, strlen(m));
r = _native_write(STDOUT_FILENO, m, strlen(m));
va_end(argp);
free(m);
@ -219,7 +218,7 @@ int vprintf(const char *format, va_list argp)
if ((m = make_message(format, argp)) == NULL) {
err(EXIT_FAILURE, "malloc");
}
r = write(STDOUT_FILENO, m, strlen(m));
r = _native_write(STDOUT_FILENO, m, strlen(m));
free(m);
return r;
@ -233,15 +232,15 @@ void vwarn(const char *fmt, va_list args)
e = strerror(errno);
if ((m = make_message(fmt, args)) == NULL) {
write(STDERR_FILENO, "malloc\n", 7);
_native_write(STDERR_FILENO, "malloc\n", 7);
exit(EXIT_FAILURE);
}
write(STDERR_FILENO, _progname, strlen(_progname));
write(STDERR_FILENO, ": ", 2);
write(STDERR_FILENO, m, strlen(m));
write(STDERR_FILENO, ": ", 2);
write(STDERR_FILENO, e, strlen(e));
write(STDERR_FILENO, "\n", 1);
_native_write(STDERR_FILENO, _progname, strlen(_progname));
_native_write(STDERR_FILENO, ": ", 2);
_native_write(STDERR_FILENO, m, strlen(m));
_native_write(STDERR_FILENO, ": ", 2);
_native_write(STDERR_FILENO, e, strlen(e));
_native_write(STDERR_FILENO, "\n", 1);
free(m);
}
@ -250,13 +249,13 @@ void vwarnx(const char *fmt, va_list args)
char *m;
if ((m = make_message(fmt, args)) == NULL) {
write(STDERR_FILENO, "malloc\n", 7);
_native_write(STDERR_FILENO, "malloc\n", 7);
exit(EXIT_FAILURE);
}
write(STDERR_FILENO, _progname, strlen(_progname));
write(STDERR_FILENO, ": ", 2);
write(STDERR_FILENO, m, strlen(m));
write(STDERR_FILENO, "\n", 1);
_native_write(STDERR_FILENO, _progname, strlen(_progname));
_native_write(STDERR_FILENO, ": ", 2);
_native_write(STDERR_FILENO, m, strlen(m));
_native_write(STDERR_FILENO, "\n", 1);
free(m);
}