/[packages]/updates/8/kernel/current/SOURCES/can-rcar_canfd-rcar_canfd_channel_probe-register-the.patch
ViewVC logotype

Contents of /updates/8/kernel/current/SOURCES/can-rcar_canfd-rcar_canfd_channel_probe-register-the.patch

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1795002 - (show annotations) (download)
Wed Mar 16 20:40:50 2022 UTC (2 years, 1 month ago) by tmb
File size: 1888 byte(s)
add current -stable queue
1 From 38753c013c6dec3010dcffc9689cb25a069c4b52 Mon Sep 17 00:00:00 2001
2 From: Sasha Levin <sashal@kernel.org>
3 Date: Mon, 21 Feb 2022 22:59:35 +0000
4 Subject: can: rcar_canfd: rcar_canfd_channel_probe(): register the CAN device
5 when fully ready
6
7 From: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
8
9 [ Upstream commit c5048a7b2c23ab589f3476a783bd586b663eda5b ]
10
11 Register the CAN device only when all the necessary initialization is
12 completed. This patch makes sure all the data structures and locks are
13 initialized before registering the CAN device.
14
15 Link: https://lore.kernel.org/all/20220221225935.12300-1-prabhakar.mahadev-lad.rj@bp.renesas.com
16 Reported-by: Pavel Machek <pavel@denx.de>
17 Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
18 Reviewed-by: Pavel Machek <pavel@denx.de>
19 Reviewed-by: Ulrich Hecht <uli+renesas@fpond.eu>
20 Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
21 Signed-off-by: Sasha Levin <sashal@kernel.org>
22 ---
23 drivers/net/can/rcar/rcar_canfd.c | 6 +++---
24 1 file changed, 3 insertions(+), 3 deletions(-)
25
26 diff --git a/drivers/net/can/rcar/rcar_canfd.c b/drivers/net/can/rcar/rcar_canfd.c
27 index 388521e70837..2f44c567ebd7 100644
28 --- a/drivers/net/can/rcar/rcar_canfd.c
29 +++ b/drivers/net/can/rcar/rcar_canfd.c
30 @@ -1720,15 +1720,15 @@ static int rcar_canfd_channel_probe(struct rcar_canfd_global *gpriv, u32 ch,
31
32 netif_napi_add(ndev, &priv->napi, rcar_canfd_rx_poll,
33 RCANFD_NAPI_WEIGHT);
34 + spin_lock_init(&priv->tx_lock);
35 + devm_can_led_init(ndev);
36 + gpriv->ch[priv->channel] = priv;
37 err = register_candev(ndev);
38 if (err) {
39 dev_err(&pdev->dev,
40 "register_candev() failed, error %d\n", err);
41 goto fail_candev;
42 }
43 - spin_lock_init(&priv->tx_lock);
44 - devm_can_led_init(ndev);
45 - gpriv->ch[priv->channel] = priv;
46 dev_info(&pdev->dev, "device registered (channel %u)\n", priv->channel);
47 return 0;
48
49 --
50 2.34.1
51

  ViewVC Help
Powered by ViewVC 1.1.30