[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20150126051755.GA3014@Darwish.PC>
Date: Mon, 26 Jan 2015 07:17:55 +0200
From: "Ahmed S. Darwish" <darwish.07@...il.com>
To: Olivier Sobrie <olivier@...rie.be>,
Oliver Hartkopp <socketcan@...tkopp.net>,
Wolfgang Grandegger <wg@...ndegger.com>,
Marc Kleine-Budde <mkl@...gutronix.de>,
Andri Yngvason <andri.yngvason@...el.com>
Cc: Linux-CAN <linux-can@...r.kernel.org>,
netdev <netdev@...r.kernel.org>,
LKML <linux-kernel@...r.kernel.org>
Subject: [PATCH v6 0/7] can: kvaser_usb: Leaf bugfixes and USBCan-II support
Hi!
This is an updated patch series for the Kvaser CAN/USB devices:
1- Extra patches are now added to the series. Most importantly
patch #1 which fixes a critical `sleep in atomic context' bug
in the current upstream driver. Patch #2 fixes a corruption in
the kernel logs, also affecting current upstream driver. Patch
#4 was originally USBCan-II only, but since it's a generic fix,
it's now retrofitted to the Leaf-only upstream driver first.
2- The series has been re-organized so that patches #1 -> #4
inclusive can go to linux-can/origin, while the rest can move
to -next.
3- There are some important updates regarding the USBCan-II
error counters, and how really erratic their heaviour is. All
the new details are covered at the bottom of this URL:
http://article.gmane.org/gmane.linux.can/7481
4- Attached below is the new candump traces. Now
`back-to-error-active' states appear _if_ the hardware was
kind enough and decreased the error counters appropriately.
The earlier code did not recognize the error counters going
down, thus the `back-to-error-active' transitions did not
appear.
###########################################################
* Bus-off scenario (with transitions active -> passive -> back-to-active):
(000.000000) can0 20000080 [8] 00 00 00 00 00 00 30 00 ERRORFRAME
bus-error
error-counter-tx-rx{{48}{0}}
(000.000011) can0 20000084 [8] 00 20 00 00 00 00 88 00 ERRORFRAME
controller-problem{tx-error-passive}
bus-error
error-counter-tx-rx{{136}{0}}
(000.000001) can0 20000080 [8] 00 00 00 00 00 00 88 00 ERRORFRAME
bus-error
error-counter-tx-rx{{136}{0}}
(000.000987) can0 20000080 [8] 00 00 00 00 00 00 98 00 ERRORFRAME
bus-error
error-counter-tx-rx{{152}{0}}
(000.002011) can0 20000084 [8] 00 40 00 00 00 00 30 00 ERRORFRAME
controller-problem{back-to-error-active}
bus-error
error-counter-tx-rx{{48}{0}}
(000.000004) can0 20000084 [8] 00 20 00 00 00 00 78 00 ERRORFRAME
controller-problem{tx-error-passive}
bus-error
error-counter-tx-rx{{120}{0}}
(000.000002) can0 20000080 [8] 00 00 00 00 00 00 88 00 ERRORFRAME
bus-error
error-counter-tx-rx{{136}{0}}
(000.000005) can0 20000080 [8] 00 00 00 00 00 00 90 00 ERRORFRAME
bus-error
error-counter-tx-rx{{144}{0}}
(000.000002) can0 20000080 [8] 00 00 00 00 00 00 98 00 ERRORFRAME
bus-error
error-counter-tx-rx{{152}{0}}
(000.000001) can0 20000080 [8] 00 00 00 00 00 00 A0 00 ERRORFRAME
bus-error
error-counter-tx-rx{{160}{0}}
(000.000966) can0 20000080 [8] 00 00 00 00 00 00 A8 00 ERRORFRAME
bus-error
error-counter-tx-rx{{168}{0}}
(000.002998) can0 20000084 [8] 00 40 00 00 00 00 30 00 ERRORFRAME
controller-problem{back-to-error-active}
bus-error
error-counter-tx-rx{{48}{0}}
(000.000004) can0 20000084 [8] 00 20 00 00 00 00 80 00 ERRORFRAME
controller-problem{tx-error-passive}
bus-error
error-counter-tx-rx{{128}{0}}
(000.000002) can0 20000080 [8] 00 00 00 00 00 00 88 00 ERRORFRAME
bus-error
error-counter-tx-rx{{136}{0}}
(001.031035) can0 200000C0 [8] 00 00 00 00 00 00 00 29 ERRORFRAME
bus-off
bus-error
error-counter-tx-rx{{0}{41}}
###########################################################
Regular sending, unpluggng CAN connector, then plugging again:
(with transitions active -> warning -> passive)
[ As stated earlier, the counters don't get decreased upon CAN
replug, even if they were constantly polled. ]
(000.011001) can0 2A1 [1] E5
(000.010001) can0 50E [8] E6 05 00 00 00 00 00 00
(000.009999) can0 009 [1] E7
(000.011000) can0 6E2 [8] E8 05 00 00 00 00 00 00
(000.009999) can0 314 [2] E9 05
(000.010001) can0 708 [6] EA 05 00 00 00 00
(000.010991) can0 20000080 [8] 00 00 00 00 00 00 00 09 ERRORFRAME
bus-error
error-counter-tx-rx{{0}{9}}
(000.000002) can0 20000080 [8] 00 00 00 00 00 00 00 0A ERRORFRAME
bus-error
error-counter-tx-rx{{0}{10}}
(000.000007) can0 20000080 [8] 00 00 00 00 00 00 00 2E ERRORFRAME
bus-error
error-counter-tx-rx{{0}{46}}
(000.000003) can0 20000080 [8] 00 00 00 00 00 00 00 37 ERRORFRAME
bus-error
error-counter-tx-rx{{0}{55}}
(000.000002) can0 20000080 [8] 00 00 00 00 00 00 00 40 ERRORFRAME
bus-error
error-counter-tx-rx{{0}{64}}
(000.000993) can0 20000080 [8] 00 00 00 00 00 00 00 49 ERRORFRAME
bus-error
error-counter-tx-rx{{0}{73}}
(000.000002) can0 20000080 [8] 00 00 00 00 00 00 00 52 ERRORFRAME
bus-error
error-counter-tx-rx{{0}{82}}
(000.000001) can0 20000080 [8] 00 00 00 00 00 00 00 5B ERRORFRAME
bus-error
error-counter-tx-rx{{0}{91}}
(000.000028) can0 20000084 [8] 00 04 00 00 00 00 00 6C ERRORFRAME
controller-problem{rx-error-warning}
bus-error
error-counter-tx-rx{{0}{108}}
(000.000955) can0 20000080 [8] 00 00 00 00 00 00 00 7F ERRORFRAME
bus-error
error-counter-tx-rx{{0}{127}}
(000.000008) can0 20000084 [8] 00 10 00 00 00 00 00 87 ERRORFRAME
controller-problem{rx-error-passive}
bus-error
error-counter-tx-rx{{0}{135}}
(000.000001) can0 20000080 [8] 00 00 00 00 00 00 00 87 ERRORFRAME
bus-error
error-counter-tx-rx{{0}{135}}
(000.000004) can0 20000080 [8] 00 00 00 00 00 00 00 87 ERRORFRAME
bus-error
error-counter-tx-rx{{0}{135}}
((( Then a continous flood, exactly similar to the above packet, appears )))
(000.500004) can0 2ED [4] EB 05 00 00
(000.000006) can0 0DD [5] EC 05 00 00 00
(000.000002) can0 1D3 [1] ED
(000.000988) can0 20D [8] EE 05 00 00 00 00 00 00
(000.000006) can0 04B [8] EF 05 00 00 00 00 00 00
(000.000002) can0 320 [8] F0 05 00 00 00 00 00 00
(000.000002) can0 023 [8] F1 05 00 00 00 00 00 00
(000.000989) can0 21D [8] F2 05 00 00 00 00 00 00
(000.000005) can0 17D [8] F3 05 00 00 00 00 00 00
(000.000002) can0 6DC [8] F4 05 00 00 00 00 00 00
(000.000993) can0 62D [8] F5 05 00 00 00 00 00 00
(000.000006) can0 18B [6] F6 05 00 00 00 00
(000.000001) can0 7EB [8] F7 05 00 00 00 00 00 00
(000.000001) can0 014 [8] F8 05 00 00 00 00 00 00
(000.000994) can0 52F [8] F9 05 00 00 00 00 00 00
--
Regards,
Darwish
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists