mirror of
https://git.FreeBSD.org/src.git
synced 2026-06-02 11:24:32 +00:00
spi: switch to switch
use recommended switch with default case to catch invalid values Reviewed by: kevans, adrian Differential Revision: https://reviews.freebsd.org/D54759
This commit is contained in:
committed by
Adrian Chadd
parent
aa029088ec
commit
ee41a88205
+15
-20
@@ -30,6 +30,7 @@
|
||||
#include <sys/spigenio.h>
|
||||
#include <sys/sysctl.h>
|
||||
|
||||
#include <assert.h>
|
||||
#include <errno.h>
|
||||
#include <fcntl.h>
|
||||
#include <inttypes.h>
|
||||
@@ -364,30 +365,24 @@ main(int argc, char *argv[], char *envp[] __unused)
|
||||
|
||||
/* do data transfer */
|
||||
|
||||
if (stream) {
|
||||
while (!err && !feof(stdin)) {
|
||||
if (fdir == DIR_READ) {
|
||||
err = perform_read(hdev, &opt);
|
||||
}
|
||||
else if (fdir == DIR_WRITE) {
|
||||
err = perform_write(hdev, &opt);
|
||||
}
|
||||
else if (fdir == DIR_READWRITE) {
|
||||
err = perform_readwrite(hdev, &opt);
|
||||
}
|
||||
}
|
||||
}
|
||||
else {
|
||||
if (fdir == DIR_READ) {
|
||||
assert(fdir != DIR_NONE);
|
||||
do {
|
||||
switch (fdir) {
|
||||
case DIR_READ:
|
||||
err = perform_read(hdev, &opt);
|
||||
}
|
||||
else if (fdir == DIR_WRITE) {
|
||||
break;
|
||||
case DIR_WRITE:
|
||||
err = perform_write(hdev, &opt);
|
||||
}
|
||||
else if (fdir == DIR_READWRITE) {
|
||||
break;
|
||||
case DIR_READWRITE:
|
||||
err = perform_readwrite(hdev, &opt);
|
||||
break;
|
||||
default:
|
||||
fprintf(stderr, "Invalid state (%d)\n", fdir);
|
||||
err = EINVAL;
|
||||
break;
|
||||
}
|
||||
}
|
||||
} while (stream && !err && !feof(stdin));
|
||||
|
||||
the_end:
|
||||
|
||||
|
||||
Reference in New Issue
Block a user