1 // SPDX-License-Identifier: GPL-2.0+
4 * Wolfgang Denk, DENX Software Engineering, wd@denx.de.
13 int do_diag(struct cmd_tbl
*cmdtp
, int flag
, int argc
, char *const argv
[])
17 if (argc
== 1 || strcmp (argv
[1], "run") != 0) {
20 puts ("Available hardware tests:\n");
22 puts ("Use 'diag [<test1> [<test2> ...]]'"
23 " to get more info.\n");
24 puts ("Use 'diag run [<test1> [<test2> ...]]'"
27 for (i
= 1; i
< argc
; i
++) {
28 if (post_info (argv
[i
]) != 0)
29 printf ("%s - no such test\n", argv
[i
]);
35 post_run (NULL
, POST_RAM
| POST_MANUAL
);
37 for (i
= 2; i
< argc
; i
++) {
38 if (post_run (argv
[i
], POST_RAM
| POST_MANUAL
) != 0)
39 printf ("%s - unable to execute the test\n",
47 /***************************************************/
50 diag
, CONFIG_SYS_MAXARGS
, 0, do_diag
,
51 "perform board diagnostics",
52 " - print list of available tests\n"
53 "diag [test1 [test2]]\n"
54 " - print information about specified tests\n"
55 "diag run - run all available tests\n"
56 "diag run [test1 [test2]]\n"
57 " - run specified tests"