mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-07-22 06:57:30 -04:00
spi: uniphier: Use FIELD_MODIFY()
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>
This commit is contained in:
@@ -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);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user