]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/commitdiff
crypto: sun4i-ss - use lower/upper_32_bits helpers
authorAntoine Ténart <antoine.tenart@free-electrons.com>
Thu, 1 Jun 2017 19:38:55 +0000 (21:38 +0200)
committerHerbert Xu <herbert@gondor.apana.org.au>
Mon, 19 Jun 2017 06:19:49 +0000 (14:19 +0800)
Replace custom bit shifts and masks with lower/upper_32_bits helpers.

Signed-off-by: Antoine Tenart <antoine.tenart@free-electrons.com>
Tested-by: Corentin Labbe <clabbe.montjoie@gmail.com>
Acked-by: Corentin Labbe <clabbe.montjoie@gmail.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
drivers/crypto/sunxi-ss/sun4i-ss-hash.c

index 39f0abe5ee256f46920d02181eb0a1d24a9385c8..e53c3127b7432e4dc9fc7c9a4a1b8ffd5dd46fc3 100644 (file)
@@ -188,7 +188,6 @@ static int sun4i_hash(struct ahash_request *areq)
        struct sg_mapping_iter mi;
        int in_r, err = 0, zeros;
        size_t copied = 0;
-       __be64 bits;
 
        dev_dbg(ss->dev, "%s %s bc=%llu len=%u mode=%x wl=%u h0=%0x",
                __func__, crypto_tfm_alg_name(areq->base.tfm),
@@ -423,12 +422,13 @@ hash_final:
 
        /* write the length of data */
        if (op->mode == SS_OP_SHA1) {
-               bits = cpu_to_be64(op->byte_count << 3);
-               bf[j++] = bits & 0xffffffff;
-               bf[j++] = (bits >> 32) & 0xffffffff;
+               __be64 bits = cpu_to_be64(op->byte_count << 3);
+               bf[j++] = lower_32_bits(bits);
+               bf[j++] = upper_32_bits(bits);
        } else {
-               bf[j++] = (op->byte_count << 3) & 0xffffffff;
-               bf[j++] = (op->byte_count >> 29) & 0xffffffff;
+               __le64 bits = op->byte_count << 3;
+               bf[j++] = lower_32_bits(bits);
+               bf[j++] = upper_32_bits(bits);
        }
        writesl(ss->base + SS_RXFIFO, bf, j);