summaryrefslogtreecommitdiff
path: root/board/traverse/ten64/ten64.c
diff options
context:
space:
mode:
authorMathew McBride <matt@traverse.com.au>2023-08-07 04:41:08 +0300
committerTom Rini <trini@konsulko.com>2023-08-07 20:41:44 +0300
commit29760c8e6d3a3d02a23439f62b7e663e0c38eb3b (patch)
tree3fcf8562d0094762890781f0e219d9f7a3257e17 /board/traverse/ten64/ten64.c
parent3cc7708dfdc8fec28a7bcd1b06717b7d510e235a (diff)
downloadu-boot-29760c8e6d3a3d02a23439f62b7e663e0c38eb3b.tar.xz
board: ten64: add missing error checks for retimer power on
The retimer reset/power on logic was changed in a recent commit, however, it neglected to check if the commands sent to the board microcontroller (to control power to the retimer chip) actually completed. Add return checks for these operations so any failures will be reported to the user. Signed-off-by: Mathew McBride <matt@traverse.com.au> Fixes: 7a041fea2 ("board: traverse: ten64: ensure retimer reset is done on new board revisions")
Diffstat (limited to 'board/traverse/ten64/ten64.c')
-rw-r--r--board/traverse/ten64/ten64.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/board/traverse/ten64/ten64.c b/board/traverse/ten64/ten64.c
index 52daae6e24..df9f0afe1a 100644
--- a/board/traverse/ten64/ten64.c
+++ b/board/traverse/ten64/ten64.c
@@ -383,10 +383,15 @@ static int board_cycle_retimer(struct udevice **retim_dev)
puts("(retimer on, resetting...) ");
ret = misc_call(uc_dev, TEN64_CNTRL_10G_OFF, NULL, 0, NULL, 0);
+ if (ret)
+ return ret;
mdelay(1000);
}
+ /* Turn on the retimer */
ret = misc_call(uc_dev, TEN64_CNTRL_10G_ON, NULL, 0, NULL, 0);
+ if (ret)
+ return ret;
}
// Wait for retimer to come back