[PATCH v2 1/5] lib: Import rol32 function from Linux
Ilias Apalodimas
ilias.apalodimas at linaro.org
Tue Nov 11 10:07:11 CET 2025
On Tue, 11 Nov 2025 at 07:48, Heiko Schocher <hs at nabladev.com> wrote:
>
> sm3 crypto algorithm uses rol32 function from linux, so
> import it. Linux base was:
>
> commit ca91b9500108:("Merge tag 'v6.15-rc4-ksmbd-server-fixes' of git://git.samba.org/ksmbd")
>
> Signed-off-by: Heiko Schocher <hs at nabladev.com>
Reviewed-by: Ilias Apalodimas <ilias.apalodimas at linaro.org>
> ---
>
> Changes in v2:
> rebase to
> 6b27b688694: ("Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-sh")
> add Ilias to Series-cc
>
> include/linux/bitops.h | 11 +++++++++++
> 1 file changed, 11 insertions(+)
>
> diff --git a/include/linux/bitops.h b/include/linux/bitops.h
> index f826d7f3b34..29e0da48de8 100644
> --- a/include/linux/bitops.h
> +++ b/include/linux/bitops.h
> @@ -148,6 +148,17 @@ static inline unsigned long hweight_long(unsigned long w)
> return sizeof(w) == 4 ? generic_hweight32(w) : generic_hweight64(w);
> }
>
> +/**
> + * rol32 - rotate a 32-bit value left
> + * @word: value to rotate
> + * @shift: bits to roll
> + */
> +
> +static inline __u32 rol32(__u32 word, unsigned int shift)
> +{
> + return (word << (shift & 31)) | (word >> ((-shift) & 31));
> +}
> +
> #include <asm/bitops.h>
>
> /* linux/include/asm-generic/bitops/non-atomic.h */
> --
> 2.20.1
>
More information about the U-Boot
mailing list