lkml.org 
[lkml]   [2022]   [Aug]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.10 240/545] can: kvaser_usb_hydra: do not report txerr and rxerr during bus-off
    Date
    From: Vincent Mailhol <mailhol.vincent@wanadoo.fr>

    [ Upstream commit 936e90595376e64b6247c72d3ea8b8b164b7ac96 ]

    During bus off, the error count is greater than 255 and can not fit in
    a u8.

    Fixes: aec5fb2268b7 ("can: kvaser_usb: Add support for Kvaser USB hydra family")
    Link: https://lore.kernel.org/all/20220719143550.3681-8-mailhol.vincent@wanadoo.fr
    CC: Jimmy Assarsson <extja@kvaser.com>
    Signed-off-by: Vincent Mailhol <mailhol.vincent@wanadoo.fr>
    Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/net/can/usb/kvaser_usb/kvaser_usb_hydra.c | 12 ++++++++----
    1 file changed, 8 insertions(+), 4 deletions(-)

    diff --git a/drivers/net/can/usb/kvaser_usb/kvaser_usb_hydra.c b/drivers/net/can/usb/kvaser_usb/kvaser_usb_hydra.c
    index a7c408acb0c0..01d4a731b579 100644
    --- a/drivers/net/can/usb/kvaser_usb/kvaser_usb_hydra.c
    +++ b/drivers/net/can/usb/kvaser_usb/kvaser_usb_hydra.c
    @@ -890,8 +890,10 @@ static void kvaser_usb_hydra_update_state(struct kvaser_usb_net_priv *priv,
    new_state < CAN_STATE_BUS_OFF)
    priv->can.can_stats.restarts++;

    - cf->data[6] = bec->txerr;
    - cf->data[7] = bec->rxerr;
    + if (new_state != CAN_STATE_BUS_OFF) {
    + cf->data[6] = bec->txerr;
    + cf->data[7] = bec->rxerr;
    + }

    stats = &netdev->stats;
    stats->rx_packets++;
    @@ -1045,8 +1047,10 @@ kvaser_usb_hydra_error_frame(struct kvaser_usb_net_priv *priv,
    shhwtstamps->hwtstamp = hwtstamp;

    cf->can_id |= CAN_ERR_BUSERROR;
    - cf->data[6] = bec.txerr;
    - cf->data[7] = bec.rxerr;
    + if (new_state != CAN_STATE_BUS_OFF) {
    + cf->data[6] = bec.txerr;
    + cf->data[7] = bec.rxerr;
    + }

    stats->rx_packets++;
    stats->rx_bytes += cf->can_dlc;
    --
    2.35.1


    \
     
     \ /
      Last update: 2022-08-19 18:19    [W:2.258 / U:0.332 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site