[PATCH] block: sandbox: Add support for SYS_64BIT_LBA

Andrew Goodbody andrew.goodbody at linaro.org
Mon Jul 7 12:07:47 CEST 2025


On 04/07/2025 22:46, Tom Rini wrote:
> In order to use SYS_64BIT_LBA with this driver we need for "start" to
> also be of type lbaint_t and to then use the correct printf format
> characters.
> 
> Signed-off-by: Tom Rini <trini at konsulko.com>
> ---
>   drivers/block/sandbox.c | 8 ++++----
>   1 file changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/block/sandbox.c b/drivers/block/sandbox.c
> index 6c74d66037e7..9cb27561a97f 100644
> --- a/drivers/block/sandbox.c
> +++ b/drivers/block/sandbox.c
> @@ -18,7 +18,7 @@
>   DECLARE_GLOBAL_DATA_PTR;
>   
>   static unsigned long host_block_read(struct udevice *dev,
> -				     unsigned long start, lbaint_t blkcnt,
> +				     lbaint_t start, lbaint_t blkcnt,
>   				     void *buffer)
>   {
>   	struct blk_desc *desc = dev_get_uclass_plat(dev);
> @@ -26,7 +26,7 @@ static unsigned long host_block_read(struct udevice *dev,
>   	struct host_sb_plat *plat = dev_get_plat(host_dev);
>   
>   	if (os_lseek(plat->fd, start * desc->blksz, OS_SEEK_SET) < 0) {
> -		printf("ERROR: Invalid block %lx\n", start);
> +		printf("ERROR: Invalid block " LBAF "\n", start);
>   		return -1;
>   	}
>   	ssize_t len = os_read(plat->fd, buffer, blkcnt * desc->blksz);
> @@ -37,7 +37,7 @@ static unsigned long host_block_read(struct udevice *dev,
>   }
>   
>   static unsigned long host_block_write(struct udevice *dev,
> -				      unsigned long start, lbaint_t blkcnt,
> +				      lbaint_t start, lbaint_t blkcnt,
>   				      const void *buffer)
>   {
>   	struct blk_desc *desc = dev_get_uclass_plat(dev);
> @@ -45,7 +45,7 @@ static unsigned long host_block_write(struct udevice *dev,
>   	struct host_sb_plat *plat = dev_get_plat(host_dev);
>   
>   	if (os_lseek(plat->fd, start * desc->blksz, OS_SEEK_SET) < 0) {
> -		printf("ERROR: Invalid block %lx\n", start);
> +		printf("ERROR: Invalid block " LBAF "\n", start);
>   		return -1;
>   	}
>   	ssize_t len = os_write(plat->fd, buffer, blkcnt * desc->blksz);

Reviewed-by: Andrew Goodbody <andrew.goodbody at linaro.org>


More information about the U-Boot mailing list