mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-01-20 21:50:41 -05:00
can: at91_can: ECR register: convert to FIELD_GET()
Use FIELD_GET() to access the individual fields of the ECR register. Link: https://lore.kernel.org/all/20231005-at91_can-rx_offload-v2-5-9987d53600e0@pengutronix.de Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
This commit is contained in:
@@ -72,6 +72,9 @@ enum at91_reg {
|
||||
#define AT91_BR_BRP_MASK GENMASK(22, 16)
|
||||
#define AT91_BR_SMP BIT(24)
|
||||
|
||||
#define AT91_ECR_REC_MASK GENMASK(8, 0)
|
||||
#define AT91_ECR_TEC_MASK GENMASK(23, 16)
|
||||
|
||||
#define AT91_MMR_PRIO_SHIFT (16)
|
||||
|
||||
#define AT91_MID_MIDE BIT(29)
|
||||
@@ -385,8 +388,8 @@ static int at91_get_berr_counter(const struct net_device *dev,
|
||||
const struct at91_priv *priv = netdev_priv(dev);
|
||||
u32 reg_ecr = at91_read(priv, AT91_ECR);
|
||||
|
||||
bec->rxerr = reg_ecr & 0xff;
|
||||
bec->txerr = reg_ecr >> 16;
|
||||
bec->rxerr = FIELD_GET(AT91_ECR_REC_MASK, reg_ecr);
|
||||
bec->txerr = FIELD_GET(AT91_ECR_TEC_MASK, reg_ecr);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user