forked from Archive/PX4-Autopilot
Merge branch 'master' of github.com:PX4/Firmware
This commit is contained in:
commit
c1ecdadd9b
|
@ -302,7 +302,7 @@ CONFIG_USART2_RXDMA=y
|
||||||
CONFIG_USART3_RXDMA=y
|
CONFIG_USART3_RXDMA=y
|
||||||
# CONFIG_UART4_RS485 is not set
|
# CONFIG_UART4_RS485 is not set
|
||||||
CONFIG_UART4_RXDMA=y
|
CONFIG_UART4_RXDMA=y
|
||||||
# CONFIG_UART5_RXDMA is not set
|
CONFIG_UART5_RXDMA=y
|
||||||
# CONFIG_USART6_RS485 is not set
|
# CONFIG_USART6_RS485 is not set
|
||||||
CONFIG_USART6_RXDMA=y
|
CONFIG_USART6_RXDMA=y
|
||||||
# CONFIG_UART7_RS485 is not set
|
# CONFIG_UART7_RS485 is not set
|
||||||
|
|
|
@ -38,6 +38,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <sys/stat.h>
|
#include <sys/stat.h>
|
||||||
|
#include <poll.h>
|
||||||
#include <dirent.h>
|
#include <dirent.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <stddef.h>
|
#include <stddef.h>
|
||||||
|
@ -51,6 +52,38 @@
|
||||||
|
|
||||||
#include "tests.h"
|
#include "tests.h"
|
||||||
|
|
||||||
|
int check_user_abort();
|
||||||
|
|
||||||
|
int check_user_abort() {
|
||||||
|
/* check if user wants to abort */
|
||||||
|
char c;
|
||||||
|
|
||||||
|
struct pollfd fds;
|
||||||
|
int ret;
|
||||||
|
fds.fd = 0; /* stdin */
|
||||||
|
fds.events = POLLIN;
|
||||||
|
ret = poll(&fds, 1, 0);
|
||||||
|
|
||||||
|
if (ret > 0) {
|
||||||
|
|
||||||
|
read(0, &c, 1);
|
||||||
|
|
||||||
|
switch (c) {
|
||||||
|
case 0x03: // ctrl-c
|
||||||
|
case 0x1b: // esc
|
||||||
|
case 'c':
|
||||||
|
case 'q':
|
||||||
|
{
|
||||||
|
warnx("Test aborted.");
|
||||||
|
return OK;
|
||||||
|
/* not reached */
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
test_file(int argc, char *argv[])
|
test_file(int argc, char *argv[])
|
||||||
{
|
{
|
||||||
|
@ -108,6 +141,9 @@ test_file(int argc, char *argv[])
|
||||||
fsync(fd);
|
fsync(fd);
|
||||||
//perf_end(wperf);
|
//perf_end(wperf);
|
||||||
|
|
||||||
|
if (!check_user_abort())
|
||||||
|
return OK;
|
||||||
|
|
||||||
}
|
}
|
||||||
end = hrt_absolute_time();
|
end = hrt_absolute_time();
|
||||||
|
|
||||||
|
@ -142,6 +178,9 @@ test_file(int argc, char *argv[])
|
||||||
errx(1, "ABORTING FURTHER COMPARISON DUE TO ERROR");
|
errx(1, "ABORTING FURTHER COMPARISON DUE TO ERROR");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!check_user_abort())
|
||||||
|
return OK;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -152,7 +191,7 @@ test_file(int argc, char *argv[])
|
||||||
int ret = unlink("/fs/microsd/testfile");
|
int ret = unlink("/fs/microsd/testfile");
|
||||||
fd = open("/fs/microsd/testfile", O_TRUNC | O_WRONLY | O_CREAT);
|
fd = open("/fs/microsd/testfile", O_TRUNC | O_WRONLY | O_CREAT);
|
||||||
|
|
||||||
warnx("testing aligned writes - please wait..");
|
warnx("testing aligned writes - please wait.. (CTRL^C to abort)");
|
||||||
|
|
||||||
start = hrt_absolute_time();
|
start = hrt_absolute_time();
|
||||||
for (unsigned i = 0; i < iterations; i++) {
|
for (unsigned i = 0; i < iterations; i++) {
|
||||||
|
@ -162,6 +201,9 @@ test_file(int argc, char *argv[])
|
||||||
err(1, "WRITE ERROR!");
|
err(1, "WRITE ERROR!");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!check_user_abort())
|
||||||
|
return OK;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
fsync(fd);
|
fsync(fd);
|
||||||
|
@ -190,6 +232,9 @@ test_file(int argc, char *argv[])
|
||||||
align_read_ok = false;
|
align_read_ok = false;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!check_user_abort())
|
||||||
|
return OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!align_read_ok) {
|
if (!align_read_ok) {
|
||||||
|
@ -228,6 +273,9 @@ test_file(int argc, char *argv[])
|
||||||
if (unalign_read_err_count > 10)
|
if (unalign_read_err_count > 10)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!check_user_abort())
|
||||||
|
return OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!unalign_read_ok) {
|
if (!unalign_read_ok) {
|
||||||
|
|
Loading…
Reference in New Issue