forked from Archive/PX4-Autopilot
Merge pull request #1003 from PX4/systemcmds_warnings
Systemcmds warnings
This commit is contained in:
commit
0761cad3c1
|
@ -1,8 +1,6 @@
|
|||
/****************************************************************************
|
||||
*
|
||||
* Copyright (c) 2012, 2013 PX4 Development Team. All rights reserved.
|
||||
* Author: Lorenz Meier <lm@inf.ethz.ch>
|
||||
* Author: Julian Oes <joes@student.ethz.ch>
|
||||
* Copyright (c) 2012-2014 PX4 Development Team. All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
|
@ -94,7 +92,6 @@ do_device(int argc, char *argv[])
|
|||
}
|
||||
|
||||
int fd;
|
||||
int ret;
|
||||
|
||||
fd = open(argv[0], 0);
|
||||
|
||||
|
@ -104,6 +101,8 @@ do_device(int argc, char *argv[])
|
|||
|
||||
} else {
|
||||
|
||||
int ret;
|
||||
|
||||
if (argc == 2 && !strcmp(argv[1], "block")) {
|
||||
|
||||
/* disable the device publications */
|
||||
|
@ -132,7 +131,6 @@ static void
|
|||
do_gyro(int argc, char *argv[])
|
||||
{
|
||||
int fd;
|
||||
int ret;
|
||||
|
||||
fd = open(GYRO_DEVICE_PATH, 0);
|
||||
|
||||
|
@ -142,6 +140,8 @@ do_gyro(int argc, char *argv[])
|
|||
|
||||
} else {
|
||||
|
||||
int ret;
|
||||
|
||||
if (argc == 2 && !strcmp(argv[0], "sampling")) {
|
||||
|
||||
/* set the gyro internal sampling rate up to at least i Hz */
|
||||
|
@ -173,8 +173,13 @@ do_gyro(int argc, char *argv[])
|
|||
warnx("gyro self test FAILED! Check calibration:");
|
||||
struct gyro_scale scale;
|
||||
ret = ioctl(fd, GYROIOCGSCALE, (long unsigned int)&scale);
|
||||
warnx("offsets: X: % 9.6f Y: % 9.6f Z: % 9.6f", scale.x_offset, scale.y_offset, scale.z_offset);
|
||||
warnx("scale: X: % 9.6f Y: % 9.6f Z: % 9.6f", scale.x_scale, scale.y_scale, scale.z_scale);
|
||||
|
||||
if (ret) {
|
||||
err(1, "failed getting gyro scale");
|
||||
}
|
||||
|
||||
warnx("offsets: X: % 9.6f Y: % 9.6f Z: % 9.6f", (double)scale.x_offset, (double)scale.y_offset, (double)scale.z_offset);
|
||||
warnx("scale: X: % 9.6f Y: % 9.6f Z: % 9.6f", (double)scale.x_scale, (double)scale.y_scale, (double)scale.z_scale);
|
||||
} else {
|
||||
warnx("gyro calibration and self test OK");
|
||||
}
|
||||
|
@ -199,7 +204,6 @@ static void
|
|||
do_mag(int argc, char *argv[])
|
||||
{
|
||||
int fd;
|
||||
int ret;
|
||||
|
||||
fd = open(MAG_DEVICE_PATH, 0);
|
||||
|
||||
|
@ -209,6 +213,8 @@ do_mag(int argc, char *argv[])
|
|||
|
||||
} else {
|
||||
|
||||
int ret;
|
||||
|
||||
if (argc == 2 && !strcmp(argv[0], "sampling")) {
|
||||
|
||||
/* set the mag internal sampling rate up to at least i Hz */
|
||||
|
@ -240,8 +246,13 @@ do_mag(int argc, char *argv[])
|
|||
warnx("mag self test FAILED! Check calibration:");
|
||||
struct mag_scale scale;
|
||||
ret = ioctl(fd, MAGIOCGSCALE, (long unsigned int)&scale);
|
||||
warnx("offsets: X: % 9.6f Y: % 9.6f Z: % 9.6f", scale.x_offset, scale.y_offset, scale.z_offset);
|
||||
warnx("scale: X: % 9.6f Y: % 9.6f Z: % 9.6f", scale.x_scale, scale.y_scale, scale.z_scale);
|
||||
|
||||
if (ret) {
|
||||
err(ret, "failed getting mag scale");
|
||||
}
|
||||
|
||||
warnx("offsets: X: % 9.6f Y: % 9.6f Z: % 9.6f", (double)scale.x_offset, (double)scale.y_offset, (double)scale.z_offset);
|
||||
warnx("scale: X: % 9.6f Y: % 9.6f Z: % 9.6f", (double)scale.x_scale, (double)scale.y_scale, (double)scale.z_scale);
|
||||
} else {
|
||||
warnx("mag calibration and self test OK");
|
||||
}
|
||||
|
@ -266,7 +277,6 @@ static void
|
|||
do_accel(int argc, char *argv[])
|
||||
{
|
||||
int fd;
|
||||
int ret;
|
||||
|
||||
fd = open(ACCEL_DEVICE_PATH, 0);
|
||||
|
||||
|
@ -276,6 +286,8 @@ do_accel(int argc, char *argv[])
|
|||
|
||||
} else {
|
||||
|
||||
int ret;
|
||||
|
||||
if (argc == 2 && !strcmp(argv[0], "sampling")) {
|
||||
|
||||
/* set the accel internal sampling rate up to at least i Hz */
|
||||
|
@ -307,8 +319,13 @@ do_accel(int argc, char *argv[])
|
|||
warnx("accel self test FAILED! Check calibration:");
|
||||
struct accel_scale scale;
|
||||
ret = ioctl(fd, ACCELIOCGSCALE, (long unsigned int)&scale);
|
||||
warnx("offsets: X: % 9.6f Y: % 9.6f Z: % 9.6f", scale.x_offset, scale.y_offset, scale.z_offset);
|
||||
warnx("scale: X: % 9.6f Y: % 9.6f Z: % 9.6f", scale.x_scale, scale.y_scale, scale.z_scale);
|
||||
|
||||
if (ret) {
|
||||
err(ret, "failed getting accel scale");
|
||||
}
|
||||
|
||||
warnx("offsets: X: % 9.6f Y: % 9.6f Z: % 9.6f", (double)scale.x_offset, (double)scale.y_offset, (double)scale.z_offset);
|
||||
warnx("scale: X: % 9.6f Y: % 9.6f Z: % 9.6f", (double)scale.x_scale, (double)scale.y_scale, (double)scale.z_scale);
|
||||
} else {
|
||||
warnx("accel calibration and self test OK");
|
||||
}
|
||||
|
|
|
@ -57,6 +57,8 @@
|
|||
#define PARAM_FILE_NAME "/fs/mtd_params"
|
||||
|
||||
static int check_user_abort(int fd);
|
||||
static void print_fail(void);
|
||||
static void print_success(void);
|
||||
|
||||
int check_user_abort(int fd) {
|
||||
/* check if user wants to abort */
|
||||
|
@ -126,7 +128,7 @@ test_mtd(int argc, char *argv[])
|
|||
uint8_t write_buf[chunk_sizes[c]] __attribute__((aligned(64)));
|
||||
|
||||
/* fill write buffer with known values */
|
||||
for (int i = 0; i < sizeof(write_buf); i++) {
|
||||
for (unsigned i = 0; i < sizeof(write_buf); i++) {
|
||||
/* this will wrap, but we just need a known value with spacing */
|
||||
write_buf[i] = i+11;
|
||||
}
|
||||
|
@ -137,11 +139,14 @@ test_mtd(int argc, char *argv[])
|
|||
int fd = open(PARAM_FILE_NAME, O_RDONLY);
|
||||
int rret = read(fd, read_buf, chunk_sizes[c]);
|
||||
close(fd);
|
||||
if (rret <= 0) {
|
||||
err(1, "read error");
|
||||
}
|
||||
|
||||
fd = open(PARAM_FILE_NAME, O_WRONLY);
|
||||
|
||||
printf("printing 2 percent of the first chunk:\n");
|
||||
for (int i = 0; i < sizeof(read_buf) / 50; i++) {
|
||||
for (unsigned i = 0; i < sizeof(read_buf) / 50; i++) {
|
||||
printf("%02X", read_buf[i]);
|
||||
}
|
||||
printf("\n");
|
||||
|
@ -171,9 +176,9 @@ test_mtd(int argc, char *argv[])
|
|||
|
||||
/* read back data for validation */
|
||||
for (unsigned i = 0; i < iterations; i++) {
|
||||
int rret = read(fd, read_buf, chunk_sizes[c]);
|
||||
int rret2 = read(fd, read_buf, chunk_sizes[c]);
|
||||
|
||||
if (rret != chunk_sizes[c]) {
|
||||
if (rret2 != (int)chunk_sizes[c]) {
|
||||
warnx("READ ERROR!");
|
||||
print_fail();
|
||||
return 1;
|
||||
|
@ -182,7 +187,7 @@ test_mtd(int argc, char *argv[])
|
|||
/* compare value */
|
||||
bool compare_ok = true;
|
||||
|
||||
for (int j = 0; j < chunk_sizes[c]; j++) {
|
||||
for (unsigned j = 0; j < chunk_sizes[c]; j++) {
|
||||
if (read_buf[j] != write_buf[j]) {
|
||||
warnx("COMPARISON ERROR: byte %d", j);
|
||||
print_fail();
|
||||
|
@ -211,7 +216,7 @@ test_mtd(int argc, char *argv[])
|
|||
char ffbuf[64];
|
||||
memset(ffbuf, 0xFF, sizeof(ffbuf));
|
||||
int fd = open(PARAM_FILE_NAME, O_WRONLY);
|
||||
for (int i = 0; i < file_size / sizeof(ffbuf); i++) {
|
||||
for (unsigned i = 0; i < file_size / sizeof(ffbuf); i++) {
|
||||
int ret = write(fd, ffbuf, sizeof(ffbuf));
|
||||
|
||||
if (ret != sizeof(ffbuf)) {
|
||||
|
|
Loading…
Reference in New Issue