mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-24 21:54:01 +00:00
virtio: Add some debugging
When QEMU does not respond for some reason, it is helpful to have debugging info to show. Add some. Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
parent
4f6daaca0f
commit
d472e93ab4
1 changed files with 7 additions and 0 deletions
|
@ -4,6 +4,8 @@
|
|||
* Copyright (C) 2018, Bin Meng <bmeng.cn@gmail.com>
|
||||
*/
|
||||
|
||||
#define LOG_CATEGORY UCLASS_VIRTIO
|
||||
|
||||
#include <common.h>
|
||||
#include <blk.h>
|
||||
#include <dm.h>
|
||||
|
@ -42,6 +44,8 @@ static ulong virtio_blk_do_req(struct udevice *dev, u64 sector,
|
|||
sgs[num_out + num_in++] = &data_sg;
|
||||
|
||||
sgs[num_out + num_in++] = &status_sg;
|
||||
log_debug("dev=%s, active=%d, priv=%p, priv->vq=%p\n", dev->name,
|
||||
device_active(dev), priv, priv->vq);
|
||||
|
||||
ret = virtqueue_add(priv->vq, sgs, num_out, num_in);
|
||||
if (ret)
|
||||
|
@ -49,8 +53,10 @@ static ulong virtio_blk_do_req(struct udevice *dev, u64 sector,
|
|||
|
||||
virtqueue_kick(priv->vq);
|
||||
|
||||
log_debug("wait...");
|
||||
while (!virtqueue_get_buf(priv->vq, NULL))
|
||||
;
|
||||
log_debug("done\n");
|
||||
|
||||
return status == VIRTIO_BLK_S_OK ? blkcnt : -EIO;
|
||||
}
|
||||
|
@ -58,6 +64,7 @@ static ulong virtio_blk_do_req(struct udevice *dev, u64 sector,
|
|||
static ulong virtio_blk_read(struct udevice *dev, lbaint_t start,
|
||||
lbaint_t blkcnt, void *buffer)
|
||||
{
|
||||
log_debug("read %s\n", dev->name);
|
||||
return virtio_blk_do_req(dev, start, blkcnt, buffer,
|
||||
VIRTIO_BLK_T_IN);
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue