linux-can.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/3] can: kvaser_usb: CAN clock frequency regression
@ 2022-06-03  8:38 Jimmy Assarsson
  2022-06-03  8:38 ` [PATCH v2 1/3] can: kvaser_usb: Replace run-time checks with struct kvaser_usb_driver_info Jimmy Assarsson
                   ` (3 more replies)
  0 siblings, 4 replies; 6+ messages in thread
From: Jimmy Assarsson @ 2022-06-03  8:38 UTC (permalink / raw)
  To: linux-can, Marc Kleine-Budde; +Cc: Jimmy Assarsson, stable, Jimmy Assarsson

When fixing the CAN clock frequency,
fb12797ab1fe ("can: kvaser_usb: get CAN clock frequency from device"),
I introduced a regression.

For Leaf devices based on M32C, the firmware expects bittiming parameters
calculated for 16MHz clock. Regardless of the actual clock frequency.

This regression affects M32C based Leaf devices with non-16MHz clock.

Also correct the bittiming constants in kvaser_usb_leaf.c, where the limits
are different depending on which firmware/device being used.

Once merged to mainline, I'll backport these fixes for the stable kernels.

Changes in v2:
  - Add struct kvaser_usb_driver_info as suggested by Marc Kleine-Budde [1],
    instead of adding dev->card_data.quirks.

[1] https://lore.kernel.org/linux-can/20220602063031.415858-1-extja@kvaser.com/T/#maf9cd66c368ce43eb509a27c69d0323cfc776809

Jimmy Assarsson (3):
  can: kvaser_usb: Replace run-time checks with struct
    kvaser_usb_driver_info
  can: kvaser_usb: kvaser_usb_leaf: Fix CAN clock frequency regression
  can: kvaser_usb: kvaser_usb_leaf: Fix bittiming limits

 drivers/net/can/usb/kvaser_usb/kvaser_usb.h   |  73 ++++-
 .../net/can/usb/kvaser_usb/kvaser_usb_core.c  | 253 +++++++++---------
 .../net/can/usb/kvaser_usb/kvaser_usb_hydra.c |  14 +-
 .../net/can/usb/kvaser_usb/kvaser_usb_leaf.c  | 119 ++++----
 4 files changed, 255 insertions(+), 204 deletions(-)

-- 
2.36.1


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

end of thread, other threads:[~2022-07-04 15:08 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-06-03  8:38 [PATCH v2 0/3] can: kvaser_usb: CAN clock frequency regression Jimmy Assarsson
2022-06-03  8:38 ` [PATCH v2 1/3] can: kvaser_usb: Replace run-time checks with struct kvaser_usb_driver_info Jimmy Assarsson
2022-06-03  8:38 ` [PATCH v2 2/3] can: kvaser_usb: kvaser_usb_leaf: Fix CAN clock frequency regression Jimmy Assarsson
2022-06-03  8:38 ` [PATCH v2 3/3] can: kvaser_usb: kvaser_usb_leaf: Fix bittiming limits Jimmy Assarsson
2022-07-04 13:07 ` [PATCH v2 0/3] can: kvaser_usb: CAN clock frequency regression Marc Kleine-Budde
2022-07-04 15:07   ` Jimmy Assarsson

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).