Skip to content

Commit efdd92c

Browse files
prabhakarladgregkh
authored andcommitted
can: rcar_canfd: rcar_canfd_channel_probe(): register the CAN device when fully ready
[ Upstream commit c5048a7 ] Register the CAN device only when all the necessary initialization is completed. This patch makes sure all the data structures and locks are initialized before registering the CAN device. Link: https://lore.kernel.org/all/20220221225935.12300-1-prabhakar.mahadev-lad.rj@bp.renesas.com Reported-by: Pavel Machek <pavel@denx.de> Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com> Reviewed-by: Pavel Machek <pavel@denx.de> Reviewed-by: Ulrich Hecht <uli+renesas@fpond.eu> Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de> Signed-off-by: Sasha Levin <sashal@kernel.org>
1 parent ebe106e commit efdd92c

1 file changed

Lines changed: 3 additions & 3 deletions

File tree

drivers/net/can/rcar/rcar_canfd.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1598,15 +1598,15 @@ static int rcar_canfd_channel_probe(struct rcar_canfd_global *gpriv, u32 ch,
15981598

15991599
netif_napi_add(ndev, &priv->napi, rcar_canfd_rx_poll,
16001600
RCANFD_NAPI_WEIGHT);
1601+
spin_lock_init(&priv->tx_lock);
1602+
devm_can_led_init(ndev);
1603+
gpriv->ch[priv->channel] = priv;
16011604
err = register_candev(ndev);
16021605
if (err) {
16031606
dev_err(&pdev->dev,
16041607
"register_candev() failed, error %d\n", err);
16051608
goto fail_candev;
16061609
}
1607-
spin_lock_init(&priv->tx_lock);
1608-
devm_can_led_init(ndev);
1609-
gpriv->ch[priv->channel] = priv;
16101610
dev_info(&pdev->dev, "device registered (channel %u)\n", priv->channel);
16111611
return 0;
16121612

0 commit comments

Comments
 (0)