dm: blk: Add a function to find an interface-type name

Add a function to find the name of an interface type (e.g. "sata", "scsi")
from the interface type enum.

This is useful for generic code (not specific to SATA or SCSI, for
example) that wants to display the type of interface it is dealing with.

Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Simon Glass 2017-07-29 11:34:53 -06:00 committed by Jaehoon Chung
parent 745fb9c25e
commit 6faa4ed74d
3 changed files with 20 additions and 0 deletions

View File

@ -57,6 +57,11 @@ static enum uclass_id if_type_to_uclass_id(enum if_type if_type)
return if_type_uclass_id[if_type];
}
const char *blk_get_if_type_name(enum if_type if_type)
{
return if_typename_str[if_type];
}
struct blk_desc *blk_get_devnum_by_type(enum if_type if_type, int devnum)
{
struct blk_desc *desc;

View File

@ -38,6 +38,13 @@ static struct blk_driver *blk_driver_lookup_typename(const char *if_typename)
return NULL;
}
const char *blk_get_if_type_name(enum if_type if_type)
{
struct blk_driver *drv = blk_driver_lookup_type(if_type);
return drv ? drv->if_typename : NULL;
}
/**
* get_desc() - Get the block device descriptor for the given device number
*

View File

@ -624,4 +624,12 @@ ulong blk_write_devnum(enum if_type if_type, int devnum, lbaint_t start,
*/
int blk_select_hwpart_devnum(enum if_type if_type, int devnum, int hwpart);
/**
* blk_get_if_type_name() - Get the name of an interface type
*
* @if_type: Interface type to check
* @return name of interface, or NULL if none
*/
const char *blk_get_if_type_name(enum if_type if_type);
#endif