| From 813d94986e3bfb67d10d8a59d8a8344204795cd3 Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Wed, 29 Jan 2020 10:23:30 +0800 |
| Subject: can: m_can: m_can_handle_state_change(): fix state change |
| |
| From: Wu Bo <wubo.oduw@gmail.com> |
| |
| [ Upstream commit cd0d83eab2e0c26fe87a10debfedbb23901853c1 ] |
| |
| m_can_handle_state_change() is called with the new_state as an argument. |
| |
| In the switch statements for CAN_STATE_ERROR_ACTIVE, the comment and the |
| following code indicate that a CAN_STATE_ERROR_WARNING is handled. |
| |
| This patch fixes this problem by changing the case to CAN_STATE_ERROR_WARNING. |
| |
| Signed-off-by: Wu Bo <wubo.oduw@gmail.com> |
| Link: http://lore.kernel.org/r/20200129022330.21248-2-wubo.oduw@gmail.com |
| Cc: Dan Murphy <dmurphy@ti.com> |
| Fixes: e0d1f4816f2a ("can: m_can: add Bosch M_CAN controller support") |
| Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| drivers/net/can/m_can/m_can.c | 4 ++-- |
| 1 file changed, 2 insertions(+), 2 deletions(-) |
| |
| diff --git a/drivers/net/can/m_can/m_can.c b/drivers/net/can/m_can/m_can.c |
| index deb274a19ba00..efaa342600c41 100644 |
| --- a/drivers/net/can/m_can/m_can.c |
| +++ b/drivers/net/can/m_can/m_can.c |
| @@ -675,7 +675,7 @@ static int m_can_handle_state_change(struct net_device *dev, |
| unsigned int ecr; |
| |
| switch (new_state) { |
| - case CAN_STATE_ERROR_ACTIVE: |
| + case CAN_STATE_ERROR_WARNING: |
| /* error warning state */ |
| priv->can.can_stats.error_warning++; |
| priv->can.state = CAN_STATE_ERROR_WARNING; |
| @@ -704,7 +704,7 @@ static int m_can_handle_state_change(struct net_device *dev, |
| __m_can_get_berr_counter(dev, &bec); |
| |
| switch (new_state) { |
| - case CAN_STATE_ERROR_ACTIVE: |
| + case CAN_STATE_ERROR_WARNING: |
| /* error warning state */ |
| cf->can_id |= CAN_ERR_CRTL; |
| cf->data[1] = (bec.txerr > bec.rxerr) ? |
| -- |
| 2.27.0 |
| |