Skip to content

Commit baa8aaf

Browse files
sknseanmarckleinebudde
authored andcommitted
can: m_can: add deinit callback
This is added in preparation for calling standby mode in the tcan4x5x driver or other users of m_can. For the tcan4x5x; If Vsup 12V, standby mode will save 7-8mA, when the interface is down. Signed-off-by: Sean Nyekjaer <[email protected]> Link: https://patch.msgid.link/[email protected] Signed-off-by: Marc Kleine-Budde <[email protected]>
1 parent d50c837 commit baa8aaf

File tree

2 files changed

+8
-0
lines changed

2 files changed

+8
-0
lines changed

drivers/net/can/m_can/m_can.c

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1756,6 +1756,13 @@ static void m_can_stop(struct net_device *dev)
17561756

17571757
/* set the state as STOPPED */
17581758
cdev->can.state = CAN_STATE_STOPPED;
1759+
1760+
if (cdev->ops->deinit) {
1761+
ret = cdev->ops->deinit(cdev);
1762+
if (ret)
1763+
netdev_err(dev, "failed to deinitialize: %pe\n",
1764+
ERR_PTR(ret));
1765+
}
17591766
}
17601767

17611768
static int m_can_close(struct net_device *dev)

drivers/net/can/m_can/m_can.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,7 @@ struct m_can_ops {
6868
int (*write_fifo)(struct m_can_classdev *cdev, int addr_offset,
6969
const void *val, size_t val_count);
7070
int (*init)(struct m_can_classdev *cdev);
71+
int (*deinit)(struct m_can_classdev *cdev);
7172
};
7273

7374
struct m_can_tx_op {

0 commit comments

Comments
 (0)