The RX and TX ID mask for CAN2.0 is 11 bits wide. This patch fixes
the incorrect mask, which caused the CAN IDs to miss the MSBit both
on receive and transmit.

Signed-off-by: Marek Vasut <ma...@denx.de>
Cc: Marc Kleine-Budde <m...@pengutronix.de>
Cc: Mark Rutland <mark.rutl...@arm.com>
Cc: Oliver Hartkopp <socket...@hartkopp.net>
Cc: Wolfgang Grandegger <w...@grandegger.com>
---
V2: Use CAN_SFF_MASK instead of plain bitfield
    Use CAN_EFF_MASK for the extended frame format
---
 drivers/net/can/ifi_canfd/ifi_canfd.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/net/can/ifi_canfd/ifi_canfd.c 
b/drivers/net/can/ifi_canfd/ifi_canfd.c
index 75616fe..9b8638e 100644
--- a/drivers/net/can/ifi_canfd/ifi_canfd.c
+++ b/drivers/net/can/ifi_canfd/ifi_canfd.c
@@ -135,8 +135,8 @@
 
 #define IFI_CANFD_RXFIFO_ID                    0x6c
 #define IFI_CANFD_RXFIFO_ID_ID_OFFSET          0
-#define IFI_CANFD_RXFIFO_ID_ID_STD_MASK                0x3ff
-#define IFI_CANFD_RXFIFO_ID_ID_XTD_MASK                0x1fffffff
+#define IFI_CANFD_RXFIFO_ID_ID_STD_MASK                CAN_SFF_MASK
+#define IFI_CANFD_RXFIFO_ID_ID_XTD_MASK                CAN_EFF_MASK
 #define IFI_CANFD_RXFIFO_ID_IDE                        BIT(29)
 
 #define IFI_CANFD_RXFIFO_DATA                  0x70    /* 0x70..0xac */
@@ -156,8 +156,8 @@
 
 #define IFI_CANFD_TXFIFO_ID                    0xbc
 #define IFI_CANFD_TXFIFO_ID_ID_OFFSET          0
-#define IFI_CANFD_TXFIFO_ID_ID_STD_MASK                0x3ff
-#define IFI_CANFD_TXFIFO_ID_ID_XTD_MASK                0x1fffffff
+#define IFI_CANFD_TXFIFO_ID_ID_STD_MASK                CAN_SFF_MASK
+#define IFI_CANFD_TXFIFO_ID_ID_XTD_MASK                CAN_EFF_MASK
 #define IFI_CANFD_TXFIFO_ID_IDE                        BIT(29)
 
 #define IFI_CANFD_TXFIFO_DATA                  0xc0    /* 0xb0..0xfc */
-- 
2.7.0

Reply via email to