[U-Boot] [PATCH 04/13] sparse: Simplify multiple logic

Tom Rini trini at konsulko.com
Fri Sep 4 19:20:38 CEST 2015


On Mon, Aug 31, 2015 at 04:46:04PM +0200, Maxime Ripard wrote:

> To check the alignment of the image blocks to the storage blocks, the
> current code uses a convoluted syntax, while a simple mod also does the
> work.
> 
> Signed-off-by: Maxime Ripard <maxime.ripard at free-electrons.com>
> ---
>  common/aboot.c | 3 +--
>  1 file changed, 1 insertion(+), 2 deletions(-)
> 
> diff --git a/common/aboot.c b/common/aboot.c
> index 65e633acfcb9..c8556d9b23f4 100644
> --- a/common/aboot.c
> +++ b/common/aboot.c
> @@ -269,8 +269,7 @@ void write_sparse_image(block_dev_desc_t *dev_desc,
>  	}
>  
>  	/* verify sparse_header->blk_sz is an exact multiple of info->blksz */
> -	if (sparse_header->blk_sz !=
> -	    (sparse_header->blk_sz & ~(info->blksz - 1))) {
> +	if (sparse_header->blk_sz % info->blksz) {

So, sometimes we have convoluted syntax like this to avoid what ends up
as floating point math on 32bit platforms.  Maybe this needs to be one
of the helpers in include/linux/math64.h ?  Or is this really just
convoluted syntax?  Thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20150904/9a9b9bcf/attachment.sig>


More information about the U-Boot mailing list