From cadb21ce8d34da5f7c3f2c7fd6a34e79c7bca45d Mon Sep 17 00:00:00 2001
From: Joakim Zhang <qiangqing.zhang@nxp.com>
Date: Mon, 25 Feb 2019 16:59:35 +0800
Subject: [PATCH] MLK-20979: can: flexcan: fix CAN can't set other modes when
 enable fd mode

Can't set mode like loopback,listen-only and so on due to wrong setting when
enable ISO-FD mode.

Signed-off-by: Joakim Zhang <qiangqing.zhang@nxp.com>
---
 drivers/net/can/flexcan.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/can/flexcan.c b/drivers/net/can/flexcan.c
index e78b6fba6d1764..1a8446e6e710db 100644
--- a/drivers/net/can/flexcan.c
+++ b/drivers/net/can/flexcan.c
@@ -1772,7 +1772,7 @@ static int flexcan_probe(struct platform_device *pdev)
 	if (priv->devtype_data->quirks & FLEXCAN_QUIRK_USE_OFF_TIMESTAMP) {
 		if (priv->devtype_data->quirks & FLEXCAN_QUIRK_TIMESTAMP_SUPPORT_FD) {
 			if (!(of_find_property(np, "disable-fd-mode", NULL))) {
-				priv->can.ctrlmode_supported = CAN_CTRLMODE_FD | CAN_CTRLMODE_FD_NON_ISO;
+				priv->can.ctrlmode_supported |= CAN_CTRLMODE_FD | CAN_CTRLMODE_FD_NON_ISO;
 				priv->can.bittiming_const = &flexcan_fd_bittiming_const;
 				priv->offload.is_canfd = true;
 			}
-- 
GitLab