While trying to add support for the Flexcan modules on the MPC8309,
I'm hitting ETIMEDOUT in flexcan_chip_disable(). With this, probing
succeeds. Checking the leftover value of timeout with a primitive

  pr_err("%s: timeout==%d\n", __func__, timeout);

after the loop in chip_disable() typically shows values around 12-14,
i.e. suggesting that it takes about 110-130 us for the LPM_ACK bit to
appear. So a timeout value of about twice that seems reasonable.

Signed-off-by: Rasmus Villemoes <rasmus.villem...@prevas.dk>
---
 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 75ce11395ee8..5f32053f78de 100644
--- a/drivers/net/can/flexcan.c
+++ b/drivers/net/can/flexcan.c
@@ -165,7 +165,7 @@
 #define FLEXCAN_MB_CNT_LENGTH(x)       (((x) & 0xf) << 16)
 #define FLEXCAN_MB_CNT_TIMESTAMP(x)    ((x) & 0xffff)
 
-#define FLEXCAN_TIMEOUT_US             (50)
+#define FLEXCAN_TIMEOUT_US             (250)
 
 /* FLEXCAN hardware feature flags
  *
-- 
2.20.1

Reply via email to