block_dev_desc_t *host_get_dev(int dev) { block_dev_desc_t *blk_dev; if (host_get_dev_err(dev, &blk_dev)) return NULL; return blk_dev; }
struct blk_desc *host_get_dev(int dev) { struct blk_desc *blk_dev; if (host_get_dev_err(dev, &blk_dev)) return NULL; return blk_dev; }
static int do_sandbox_info(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) { if (argc < 1 || argc > 2) return CMD_RET_USAGE; int min_dev = 0; int max_dev = CONFIG_HOST_MAX_DEVICES - 1; if (argc >= 2) { char *ep; char *dev_str = argv[1]; int dev = simple_strtoul(dev_str, &ep, 16); if (*ep) { printf("** Bad device specification %s **\n", dev_str); return CMD_RET_USAGE; } min_dev = dev; max_dev = dev; } int dev; printf("%3s %12s %s\n", "dev", "blocks", "path"); for (dev = min_dev; dev <= max_dev; dev++) { block_dev_desc_t *blk_dev; int ret; printf("%3d ", dev); ret = host_get_dev_err(dev, &blk_dev); if (ret) { if (ret == -ENOENT) puts("Not bound to a backing file\n"); else if (ret == -ENODEV) puts("Invalid host device number\n"); continue; } struct host_block_dev *host_dev = blk_dev->priv; printf("%12lu %s\n", (unsigned long)blk_dev->lba, host_dev->filename); } return 0; }