]> git.baikalelectronics.ru Git - kernel.git/commit
can: mcp251x: Use DT-supplied interrupt flags
authorPhil Elwell <phil@raspberrypi.org>
Tue, 14 Nov 2017 11:03:22 +0000 (11:03 +0000)
committerMarc Kleine-Budde <mkl@pengutronix.de>
Tue, 20 Aug 2019 11:41:26 +0000 (13:41 +0200)
commit492b1826f9d106c52e9eaa46738d332879a2032c
tree416ba6b634d3fc4d1740eff4417add0851720118
parentdeaa5f636e4a89d0347b7b9ab92a1c9e0cf3a2c1
can: mcp251x: Use DT-supplied interrupt flags

The MCP2515 datasheet clearly describes a level-triggered interrupt pin.
Therefore the receiving interrupt controller must also be configured for
level-triggered operation otherwise there is a danger of a missed
interrupt condition blocking all subsequent interrupts. The ONESHOT
flag ensures that the interrupt is masked until the threaded interrupt
handler exits.

Rather than change the flags globally (they must have worked for at
least one user), keep the old behavior for for non DT devices. DT based
devices specify the flags in their corresonding DT node.

See: https://github.com/raspberrypi/linux/issues/2175
     https://github.com/raspberrypi/linux/issues/2263

Signed-off-by: Phil Elwell <phil@raspberrypi.org>
Tested-by: Sean Nyekjaer <sean@geanix.com>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
drivers/net/can/spi/mcp251x.c