mirror of
https://github.com/smaeul/u-boot.git
synced 2025-10-14 04:46:01 +01:00
blk: add a helper function, blk_probe_or_unbind()
This function will be commonly used in block device drivers in the succeeding patches. Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
This commit is contained in:
parent
5d21dfec4a
commit
19b241c61f
@ -672,6 +672,19 @@ int blk_create_devicef(struct udevice *parent, const char *drv_name,
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int blk_probe_or_unbind(struct udevice *dev)
|
||||||
|
{
|
||||||
|
int ret;
|
||||||
|
|
||||||
|
ret = device_probe(dev);
|
||||||
|
if (ret) {
|
||||||
|
log_debug("probing %s failed\n", dev->name);
|
||||||
|
device_unbind(dev);
|
||||||
|
}
|
||||||
|
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
int blk_unbind_all(int if_type)
|
int blk_unbind_all(int if_type)
|
||||||
{
|
{
|
||||||
struct uclass *uc;
|
struct uclass *uc;
|
||||||
|
@ -370,6 +370,18 @@ int blk_create_devicef(struct udevice *parent, const char *drv_name,
|
|||||||
const char *name, int if_type, int devnum, int blksz,
|
const char *name, int if_type, int devnum, int blksz,
|
||||||
lbaint_t lba, struct udevice **devp);
|
lbaint_t lba, struct udevice **devp);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* blk_probe_or_unbind() - Try to probe
|
||||||
|
*
|
||||||
|
* Try to probe the device, primarily for enumerating partitions.
|
||||||
|
* If it fails, the device itself is unbound since it means that it won't
|
||||||
|
* work any more.
|
||||||
|
*
|
||||||
|
* @dev: The device to probe
|
||||||
|
* Return: 0 if OK, -ve on error
|
||||||
|
*/
|
||||||
|
int blk_probe_or_unbind(struct udevice *dev);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* blk_unbind_all() - Unbind all device of the given interface type
|
* blk_unbind_all() - Unbind all device of the given interface type
|
||||||
*
|
*
|
||||||
|
Loading…
x
Reference in New Issue
Block a user