projects
/
linux-2.6-microblaze.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
6b69680
)
can: rcar_canfd: Fix controller mode setting
author
Duy Nguyen
<duy.nguyen.rh@renesas.com>
Thu, 18 Sep 2025 07:03:45 +0000
(07:03 +0000)
committer
Marc Kleine-Budde
<mkl@pengutronix.de>
Fri, 19 Sep 2025 16:59:15 +0000
(18:59 +0200)
Driver configures register to choose controller mode before
setting all channels to reset mode leading to failure.
The patch corrects operation of mode setting.
Signed-off-by: Duy Nguyen <duy.nguyen.rh@renesas.com>
Signed-off-by: Tranh Ha <tranh.ha.xb@renesas.com>
Link:
https://patch.msgid.link/TYWPR01MB87434739F83E27EDCD23DF44B416A@TYWPR01MB8743.jpnprd01.prod.outlook.com
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
drivers/net/can/rcar/rcar_canfd.c
patch
|
blob
|
history
diff --git
a/drivers/net/can/rcar/rcar_canfd.c
b/drivers/net/can/rcar/rcar_canfd.c
index
b3c8c59
..
7e8b1d2
100644
(file)
--- a/
drivers/net/can/rcar/rcar_canfd.c
+++ b/
drivers/net/can/rcar/rcar_canfd.c
@@
-823,9
+823,6
@@
static int rcar_canfd_reset_controller(struct rcar_canfd_global *gpriv)
/* Reset Global error flags */
rcar_canfd_write(gpriv->base, RCANFD_GERFL, 0x0);
- /* Set the controller into appropriate mode */
- rcar_canfd_set_mode(gpriv);
-
/* Transition all Channels to reset mode */
for_each_set_bit(ch, &gpriv->channels_mask, gpriv->info->max_channels) {
rcar_canfd_clear_bit(gpriv->base,
@@
-844,6
+841,10
@@
static int rcar_canfd_reset_controller(struct rcar_canfd_global *gpriv)
return err;
}
}
+
+ /* Set the controller into appropriate mode */
+ rcar_canfd_set_mode(gpriv);
+
return 0;
}