disk: introduce get_device()
This patch introduces function get_device(). This looks up a block_dev_desc_t from an interface name (e.g. mmc) and device number (e.g. 0). This function is essentially the non-partition-specific prefix of get_device_and_partition(). Signed-off-by: Stephen Warren <swarren@nvidia.com>
This commit is contained in:
parent
650f36641c
commit
2023e60861
22
disk/part.c
22
disk/part.c
@ -443,6 +443,28 @@ int get_partition_info(block_dev_desc_t *dev_desc, int part
|
||||
return -1;
|
||||
}
|
||||
|
||||
int get_device(const char *ifname, const char *dev_str,
|
||||
block_dev_desc_t **dev_desc)
|
||||
{
|
||||
char *ep;
|
||||
int dev;
|
||||
|
||||
dev = simple_strtoul(dev_str, &ep, 16);
|
||||
if (*ep) {
|
||||
printf("** Bad device specification %s %s **\n",
|
||||
ifname, dev_str);
|
||||
return -1;
|
||||
}
|
||||
|
||||
*dev_desc = get_dev(ifname, dev);
|
||||
if (!(*dev_desc) || ((*dev_desc)->type == DEV_TYPE_UNKNOWN)) {
|
||||
printf("** Bad device %s %s **\n", ifname, dev_str);
|
||||
return -1;
|
||||
}
|
||||
|
||||
return dev;
|
||||
}
|
||||
|
||||
int get_device_and_partition(const char *ifname, const char *dev_str,
|
||||
block_dev_desc_t **dev_desc,
|
||||
disk_partition_t *info)
|
||||
|
@ -112,6 +112,8 @@ int get_partition_info (block_dev_desc_t * dev_desc, int part, disk_partition_t
|
||||
void print_part (block_dev_desc_t *dev_desc);
|
||||
void init_part (block_dev_desc_t *dev_desc);
|
||||
void dev_print(block_dev_desc_t *dev_desc);
|
||||
int get_device(const char *ifname, const char *dev_str,
|
||||
block_dev_desc_t **dev_desc);
|
||||
int get_device_and_partition(const char *ifname, const char *dev_str,
|
||||
block_dev_desc_t **dev_desc,
|
||||
disk_partition_t *info);
|
||||
@ -131,6 +133,9 @@ static inline int get_partition_info (block_dev_desc_t * dev_desc, int part,
|
||||
static inline void print_part (block_dev_desc_t *dev_desc) {}
|
||||
static inline void init_part (block_dev_desc_t *dev_desc) {}
|
||||
static inline void dev_print(block_dev_desc_t *dev_desc) {}
|
||||
static inline int get_device(const char *ifname, const char *dev_str,
|
||||
block_dev_desc_t **dev_desc)
|
||||
{ return -1; }
|
||||
static inline int get_device_and_partition(const char *ifname,
|
||||
const char *dev_str,
|
||||
block_dev_desc_t **dev_desc,
|
||||
|
Loading…
Reference in New Issue
Block a user