cmd: List all uclass devices regardless of probe error
There are a few commands that iterate uclass with uclass_first_device/uclass_next_device or the _err variant. Use the _check class iterator variant to get devices that fail to probe as well, and print the status. Signed-off-by: Michal Suchanek <msuchanek@suse.de> Reviewed-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
committed by
Simon Glass
parent
9244645f92
commit
8676ae36ae
15
cmd/demo.c
15
cmd/demo.c
@@ -64,20 +64,23 @@ static int do_demo_light(struct cmd_tbl *cmdtp, int flag, int argc,
|
||||
int do_demo_list(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
|
||||
{
|
||||
struct udevice *dev;
|
||||
int i, ret;
|
||||
int i, ret, err = 0;
|
||||
|
||||
puts("Demo uclass entries:\n");
|
||||
|
||||
for (i = 0, ret = uclass_first_device(UCLASS_DEMO, &dev);
|
||||
for (i = 0, ret = uclass_first_device_check(UCLASS_DEMO, &dev);
|
||||
dev;
|
||||
ret = uclass_next_device(&dev)) {
|
||||
printf("entry %d - instance %08x, ops %08x, plat %08x\n",
|
||||
ret = uclass_next_device_check(&dev)) {
|
||||
printf("entry %d - instance %08x, ops %08x, plat %08x, status %i\n",
|
||||
i++, (uint)map_to_sysmem(dev),
|
||||
(uint)map_to_sysmem(dev->driver->ops),
|
||||
(uint)map_to_sysmem(dev_get_plat(dev)));
|
||||
(uint)map_to_sysmem(dev_get_plat(dev)),
|
||||
ret);
|
||||
if (ret)
|
||||
err = ret;
|
||||
}
|
||||
|
||||
return cmd_process_error(cmdtp, ret);
|
||||
return cmd_process_error(cmdtp, err);
|
||||
}
|
||||
|
||||
static struct cmd_tbl demo_commands[] = {
|
||||
|
||||
Reference in New Issue
Block a user