linux-can.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* RE: [PATCH 0/4] can: flexcan: fix state transition, suppress irq flooding
@ 2017-10-02  9:05 Jonas Mark (ST-FIR/ENG1)
  2017-10-02 10:12 ` Marc Kleine-Budde
  0 siblings, 1 reply; 4+ messages in thread
From: Jonas Mark (ST-FIR/ENG1) @ 2017-10-02  9:05 UTC (permalink / raw)
  To: ZHU Yi (ST-FIR/ENG1-Zhu), Wolfgang Grandegger, Marc Kleine-Budde,
	Andri Yngvason, linux-can@vger.kernel.org
  Cc: hs@denx.de, RUAN Tingquan (ST-FIR/ENG1-Zhu),
	Jonas Mark (ST-FIR/ENG1)

Hello Wolfgang and Marc,

> From 9253741b7d8bdd4fabe41a8dc2211869589f0f18 Mon Sep 17 00:00:00 2001
> From: Zhu Yi <yi.zhu5@cn.bosch.com>
> Date: Tue, 5 Sep 2017 16:09:04 +0800
> Subject: [PATCH 0/4] can: flexcan: fix state transition, suppress irq flooding

Is the patch set already on its way upstream or is there something we still need to do?

Regards,
Mark

^ permalink raw reply	[flat|nested] 4+ messages in thread
* [PATCH 0/4] can: flexcan: fix state transition, suppress irq flooding
@ 2017-09-05  8:33 ZHU Yi (ST-FIR/ENG1-Zhu)
  0 siblings, 0 replies; 4+ messages in thread
From: ZHU Yi (ST-FIR/ENG1-Zhu) @ 2017-09-05  8:33 UTC (permalink / raw)
  To: Wolfgang Grandegger, Marc Kleine-Budde, Andri Yngvason,
	linux-can@vger.kernel.org
  Cc: hs@denx.de, RUAN Tingquan (ST-FIR/ENG1-Zhu),
	Jonas Mark (ST-FIR/ENG1)

From 9253741b7d8bdd4fabe41a8dc2211869589f0f18 Mon Sep 17 00:00:00 2001
From: Zhu Yi <yi.zhu5@cn.bosch.com>
Date: Tue, 5 Sep 2017 16:09:04 +0800
Subject: [PATCH 0/4] can: flexcan: fix state transition, suppress irq flooding

A state transition regression was found after the rx-offload patches
were introduced. Additionally, when FLEXCAN_QUIRK_BROKEN_ERR_STATE is
enabled, error interrupt flooding may happen. This can cause a
performance hit on low end systems in combination with high bitrates.

Patch 1 fixes the state change regression by calling flexcan_irq_state()
upon any interrupt.

Patch 2 renames the legacy FLEXCAN_QUIRK_BROKEN_ERR_STATE to
FLEXCAN_QUIRK_BROKEN_WERR_STATE. This is the first step to tackle the
error interrupt flooding issue.

Patch 3 introduces FLEXCAN_QUIRK_BROKEN_PERR_STATE and uses the two
[PW]ERR_STATE quirks to limit error interrupt occurrences to the minimum
required to report correct state transitions.

Patch 4 enables FLEXCAN_QUIRK_BROKEN_PERR_STATE on i.MX6 to enable
correct state transitions on this SOC.

All patches were tested on i.MX6 with kernel v4.11. They were also
tested with disabled [TR]WRN_INT and enabled
FLEXCAN_QUIRK_BROKEN_PERR_STATE and FLEXCAN_QUIRK_BROKEN_WERR_STATE on
i.MX6 to verify that it should work with:
1. new FlexCAN core (with    [TR]WRN_INT connected), and
2. old FlexCAN core (without [TR]WRN_INT connected)

Because we cannot perform test on FlexCAN cores except i.MX6, the fix is
not enabled for other SOCs, e.g. i.MX53. These SOCs could also benefit
after to enabling the appropriate [PW]ERR_STATE quirk.

This series applies to kernel v4.13-rc5, but should also work on any
kernel which already switched to the rx-offload version of the flexcan
driver.

Zhu Yi (4):
  can: flexcan: fix state transition regression
  can: flexcan: rename legacy error state quirk
  can: flexcan: implement error passive state quirk
  can: flexcan: fix i.MX6 state transition issue

 drivers/net/can/flexcan.c | 90 +++++++++++++++++++++++++++++++++++++++--------
 1 file changed, 76 insertions(+), 14 deletions(-)

-- 
2.7.4




^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2017-10-02 16:02 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-10-02  9:05 [PATCH 0/4] can: flexcan: fix state transition, suppress irq flooding Jonas Mark (ST-FIR/ENG1)
2017-10-02 10:12 ` Marc Kleine-Budde
2017-10-02 16:02   ` AW: " Jonas Mark (ST-FIR/ENG1)
  -- strict thread matches above, loose matches on Subject: below --
2017-09-05  8:33 ZHU Yi (ST-FIR/ENG1-Zhu)

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).