From 7020b2eca49e2c902bb443273ba21df2050d7f1e Mon Sep 17 00:00:00 2001 From: Bin Meng Date: Tue, 26 Sep 2023 16:43:31 +0800 Subject: blk: Use a macro for the typical block size Avoid using the magic number 512 directly. Signed-off-by: Bin Meng Reviewed-by: Simon Glass --- drivers/block/host_dev.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'drivers/block/host_dev.c') diff --git a/drivers/block/host_dev.c b/drivers/block/host_dev.c index 64422417b74..31c7814054e 100644 --- a/drivers/block/host_dev.c +++ b/drivers/block/host_dev.c @@ -105,7 +105,7 @@ static int host_sb_bind(struct udevice *dev) int ret; ret = blk_create_devicef(dev, "sandbox_host_blk", "blk", UCLASS_HOST, - dev_seq(dev), 512, 0, &blk); + dev_seq(dev), DEFAULT_BLKSZ, 0, &blk); if (ret) return log_msg_ret("blk", ret); -- cgit v1.2.3 From 0491cb8f9b819e90d02c33c7fb73b6dc70722e0a Mon Sep 17 00:00:00 2001 From: Bin Meng Date: Tue, 26 Sep 2023 16:43:34 +0800 Subject: blk: host_dev: Make host_sb_detach_file() and host_sb_ops static They are only used in drivers/block/host_dev.c. Signed-off-by: Bin Meng Reviewed-by: Simon Glass --- drivers/block/host_dev.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'drivers/block/host_dev.c') diff --git a/drivers/block/host_dev.c b/drivers/block/host_dev.c index 31c7814054e..0b43f80a864 100644 --- a/drivers/block/host_dev.c +++ b/drivers/block/host_dev.c @@ -73,7 +73,7 @@ err_fname: return ret; } -int host_sb_detach_file(struct udevice *dev) +static int host_sb_detach_file(struct udevice *dev) { struct host_sb_plat *plat = dev_get_plat(dev); int ret; @@ -123,7 +123,7 @@ static int host_sb_bind(struct udevice *dev) return 0; } -struct host_ops host_sb_ops = { +static struct host_ops host_sb_ops = { .attach_file = host_sb_attach_file, .detach_file = host_sb_detach_file, }; -- cgit v1.2.3 From e261fbf347854c75de50dd410904b436d49a7636 Mon Sep 17 00:00:00 2001 From: Bin Meng Date: Tue, 26 Sep 2023 16:43:35 +0800 Subject: blk: host_dev: Sanity check on the size of host backing file Since we are emulating a block device, its size should be multiple of the configured block size. Signed-off-by: Bin Meng Reviewed-by: Simon Glass --- drivers/block/host_dev.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'drivers/block/host_dev.c') diff --git a/drivers/block/host_dev.c b/drivers/block/host_dev.c index 0b43f80a864..30c74157934 100644 --- a/drivers/block/host_dev.c +++ b/drivers/block/host_dev.c @@ -58,6 +58,11 @@ static int host_sb_attach_file(struct udevice *dev, const char *filename) size = os_filesize(fd); desc = dev_get_uclass_plat(blk); + if (size % desc->blksz) { + printf("The size of host backing file '%s' is not multiple of " + "the device block size\n", filename); + goto err_fname; + } desc->lba = size / desc->blksz; /* write this in last, when nothing can go wrong */ -- cgit v1.2.3