Skip to content

fix(prodtest): fix wpc-info command output #5603

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Aug 21, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions core/embed/projects/prodtest/.changelog.d/5603.fixed
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Fixed wpc-info command - fixed hex formatting, args moved to OK.
5 changes: 2 additions & 3 deletions core/embed/projects/prodtest/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -1161,7 +1161,7 @@ Example:
```
> wpc-info
# Reading STWLC38 info...
# chip_id 0x38
# chip_id 0x26
# chip_rev 0x3
# cust_id 0x0
# rom_id 0x161
Expand All @@ -1179,8 +1179,7 @@ Example:
# nvm_config_err: 0x0
# nvm_patch_err: 0x0
# nvm_prod_info_err: 0x0
PROGRESS 0x38 0x4 0x0 0x161 0x1645 0x1D7C 0xC 0x1 0x52353038385055AA09446D0655AA55AA 0x0
OK
OK 0x26 0x4 0x0 0x161 0x1645 0x1D7C 0xC 0x1 0x52353038385055AA09446D0655AA55AA 0x0
```

### wpc-update
Expand Down
47 changes: 22 additions & 25 deletions core/embed/projects/prodtest/cmd/prodtest_wpc.c
Original file line number Diff line number Diff line change
Expand Up @@ -59,41 +59,38 @@ static void prodtest_wpc_info(cli_t* cli) {
goto cleanup;
}

cli_trace(cli, "chip_id 0x%d ", chip_info.chip_id);
cli_trace(cli, "chip_rev 0x%d ", chip_info.chip_rev);
cli_trace(cli, "cust_id 0x%d ", chip_info.cust_id);
cli_trace(cli, "rom_id 0x%X ", chip_info.rom_id);
cli_trace(cli, "chip_id 0x%X", chip_info.chip_id);
cli_trace(cli, "chip_rev 0x%X", chip_info.chip_rev);
cli_trace(cli, "cust_id 0x%X", chip_info.cust_id);
cli_trace(cli, "rom_id 0x%X", chip_info.rom_id);

if (chip_info.patch_id == 0) {
cli_trace(cli, "patch_id 0x%X (This value may be visible after reset)",
chip_info.patch_id);
} else {
cli_trace(cli, "patch_id 0x%X ", chip_info.patch_id);
cli_trace(cli, "patch_id 0x%X", chip_info.patch_id);
}
cli_trace(cli, "cfg_id 0x%X ", chip_info.cfg_id);
cli_trace(cli, "pe_id 0x%X ", chip_info.pe_id);
cli_trace(cli, "op_mode 0x%X ", chip_info.op_mode);
cli_trace(cli, "device_id %s", device_id);
cli_trace(cli, "cfg_id 0x%X", chip_info.cfg_id);
cli_trace(cli, "pe_id 0x%X", chip_info.pe_id);
cli_trace(cli, "op_mode 0x%X", chip_info.op_mode);
cli_trace(cli, "device_id 0x%s", device_id);
cli_trace(cli, "");
cli_trace(cli, "sys_err 0x%X ", chip_info.sys_err);
cli_trace(cli, " core_hard_fault: 0x%X ", chip_info.core_hard_fault);
cli_trace(cli, " nvm_ip_err: 0x%X ", chip_info.nvm_ip_err);
cli_trace(cli, " nvm_boot_err: 0x%X ", chip_info.nvm_boot_err);
cli_trace(cli, " nvm_pe_error: 0x%X ", chip_info.nvm_pe_error);
cli_trace(cli, " nvm_config_err: 0x%X ", chip_info.nvm_config_err);
cli_trace(cli, " nvm_patch_err: 0x%X ", chip_info.nvm_patch_err);
cli_trace(cli, " nvm_prod_info_err: 0x%X ", chip_info.nvm_prod_info_err);

cli_progress(cli, "0x%d 0x%d 0x%d 0x%X 0x%X 0x%X 0x%X 0x%X 0x%s 0x%X",
chip_info.chip_id, chip_info.chip_rev, chip_info.cust_id,
chip_info.rom_id, chip_info.patch_id, chip_info.cfg_id,
chip_info.pe_id, chip_info.op_mode, device_id,
chip_info.sys_err);
cli_trace(cli, "sys_err 0x%X", chip_info.sys_err);
cli_trace(cli, " core_hard_fault: 0x%X", chip_info.core_hard_fault);
cli_trace(cli, " nvm_ip_err: 0x%X", chip_info.nvm_ip_err);
cli_trace(cli, " nvm_boot_err: 0x%X", chip_info.nvm_boot_err);
cli_trace(cli, " nvm_pe_error: 0x%X", chip_info.nvm_pe_error);
cli_trace(cli, " nvm_config_err: 0x%X", chip_info.nvm_config_err);
cli_trace(cli, " nvm_patch_err: 0x%X", chip_info.nvm_patch_err);
cli_trace(cli, " nvm_prod_info_err: 0x%X", chip_info.nvm_prod_info_err);

cli_ok(cli, "0x%X 0x%X 0x%X 0x%X 0x%X 0x%X 0x%X 0x%X 0x%s 0x%X",
chip_info.chip_id, chip_info.chip_rev, chip_info.cust_id,
chip_info.rom_id, chip_info.patch_id, chip_info.cfg_id,
chip_info.pe_id, chip_info.op_mode, device_id, chip_info.sys_err);

stwlc38_deinit();

cli_ok(cli, "");

cleanup:

// initlize power manager again
Expand Down