]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
spi: uniphier: Use FIELD_MODIFY()
authorHans Zhang <18255117159@163.com>
Thu, 30 Apr 2026 15:54:56 +0000 (23:54 +0800)
committerMark Brown <broonie@kernel.org>
Mon, 11 May 2026 12:05:12 +0000 (21:05 +0900)
Use FIELD_MODIFY() to remove open-coded bit manipulation.
No functional change intended.

Signed-off-by: Hans Zhang <18255117159@163.com>
Link: https://patch.msgid.link/20260430155456.36998-11-18255117159@163.com
Signed-off-by: Mark Brown <broonie@kernel.org>
drivers/spi/spi-uniphier.c

index eac6c3e8908bd96427df9fb51cef28138bc70d82..846f65ba9495464654d8cb8a53f4b8a88946ed6d 100644 (file)
@@ -184,14 +184,12 @@ static void uniphier_spi_set_transfer_size(struct spi_device *spi, int size)
        u32 val;
 
        val = readl(priv->base + SSI_TXWDS);
-       val &= ~(SSI_TXWDS_WDLEN_MASK | SSI_TXWDS_DTLEN_MASK);
-       val |= FIELD_PREP(SSI_TXWDS_WDLEN_MASK, size);
-       val |= FIELD_PREP(SSI_TXWDS_DTLEN_MASK, size);
+       FIELD_MODIFY(SSI_TXWDS_WDLEN_MASK, &val, size);
+       FIELD_MODIFY(SSI_TXWDS_DTLEN_MASK, &val, size);
        writel(val, priv->base + SSI_TXWDS);
 
        val = readl(priv->base + SSI_RXWDS);
-       val &= ~SSI_RXWDS_DTLEN_MASK;
-       val |= FIELD_PREP(SSI_RXWDS_DTLEN_MASK, size);
+       FIELD_MODIFY(SSI_RXWDS_DTLEN_MASK, &val, size);
        writel(val, priv->base + SSI_RXWDS);
 }
 
@@ -308,9 +306,8 @@ static void uniphier_spi_set_fifo_threshold(struct uniphier_spi_priv *priv,
        u32 val;
 
        val = readl(priv->base + SSI_FC);
-       val &= ~(SSI_FC_TXFTH_MASK | SSI_FC_RXFTH_MASK);
-       val |= FIELD_PREP(SSI_FC_TXFTH_MASK, SSI_FIFO_DEPTH - threshold);
-       val |= FIELD_PREP(SSI_FC_RXFTH_MASK, threshold);
+       FIELD_MODIFY(SSI_FC_TXFTH_MASK, &val, SSI_FIFO_DEPTH - threshold);
+       FIELD_MODIFY(SSI_FC_RXFTH_MASK, &val, threshold);
        writel(val, priv->base + SSI_FC);
 }