Merge patch series "can: gs_usb: fix time stamp counter initialization"
authorMarc Kleine-Budde <mkl@pengutronix.de>
Mon, 17 Jul 2023 14:41:23 +0000 (16:41 +0200)
committerMarc Kleine-Budde <mkl@pengutronix.de>
Mon, 17 Jul 2023 14:41:28 +0000 (16:41 +0200)
commitdc050849d93f4c5d8a88dc6789668212b7785967
tree89c4f319a2c29a36ee9362a423a1f2453bba338c
parent55c3b96074f3f9b0aee19bf93cd71af7516582bb
parent5886e4d5ecec3e22844efed90b2dd383ef804b3a
Merge patch series "can: gs_usb: fix time stamp counter initialization"

Marc Kleine-Budde <mkl@pengutronix.de> says:

During testing I noticed a crash if unloading/loading the gs_usb
driver during high CAN bus load.

The current version of the candlelight firmware doesn't flush the
queues of the received CAN frames during the reset command. This leads
to a crash if hardware timestamps are enabled, and an URB from the
device is received before the cycle counter/time counter
infrastructure has been setup.

First clean up then error handling in gs_can_open().

Then, fix the problem by converting the cycle counter/time counter
infrastructure from a per-channel to per-device and set it up before
submitting RX-URBs to the USB stack.

Link: https://lore.kernel.org/all/20230716-gs_usb-fix-time-stamp-counter-v1-0-9017cefcd9d5@pengutronix.de
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>