diff --git a/src/main.c b/src/main.c index d89c78b..0eb28da 100644 --- a/src/main.c +++ b/src/main.c @@ -99,7 +99,6 @@ main(int argc, char *const *argv) { } const char *cmd = argv[optind++]; - optind = 0; /* reset */ int fd = pmbus_open(opt_bus, opt_addr); if (fd < 0) { @@ -111,6 +110,8 @@ main(int argc, char *const *argv) { int sub_argc = argc - optind; char * const *sub_argv = &argv[optind]; + optind = 0; /* reset */ + if (!strcmp(cmd, "read")) { rc = cmd_read(fd, sub_argc, sub_argv, opt_pretty); goto fini; diff --git a/src/mfr_restart.c b/src/mfr_restart.c index 0ca7c37..db60a5a 100644 --- a/src/mfr_restart.c +++ b/src/mfr_restart.c @@ -5,9 +5,9 @@ int cmd_restart(int fd) { - const char *s = "00000000"; + const char *s = "ERIC"; - if (pmbus_wr_block(fd, MFR_RESTART, (const uint8_t *) s, 8) < 0) { + if (pmbus_wr_block(fd, MFR_RESTART, (const uint8_t *) s, 4) < 0) { perror("MFR_RESTART"); return 1; }