• Ira W. Snyder's avatar
    can: janz-ican3: avoid firmware lockup caused by infinite bus error quota · 30df5888
    Ira W. Snyder authored
    If the bus error quota is set to infinite and the host CPU cannot keep
    up, the Janz VMOD-ICAN3 firmware will stop responding to control
    messages until the controller is reset.
    
    The firmware will automatically stop sending bus error messages when the
    quota is reached, and will only resume sending bus error messages when
    the quota is re-set to a positive value.
    
    This limitation is worked around by setting the bus error quota to one
    message, and then re-setting the quota to one message every time a bus
    error message is received. By doing this, the firmware never stops
    responding to control messages. The CAN bus can be reset without a
    hard-reset of the controller card.
    Signed-off-by: default avatarIra W. Snyder <iws@ovro.caltech.edu>
    Signed-off-by: default avatarMarc Kleine-Budde <mkl@pengutronix.de>
    30df5888
janz-ican3.c 46.5 KB