mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH] can: flexcan: disable transceiver during system PM
@ 2025-03-04  3:37 haibo.chen
  2025-03-04  4:06 ` Vincent Mailhol
  0 siblings, 1 reply; 3+ messages in thread
From: haibo.chen @ 2025-03-04  3:37 UTC (permalink / raw)
  To: mkl, mailhol.vincent
  Cc: ciprianmarian.costea, haibo.chen, u.kleine-koenig, linux-can,
	linux-kernel, imx

From: Haibo Chen <haibo.chen@nxp.com>

During system PM, if no wakeup requirement, disable transceiver to
save power.

Signed-off-by: Haibo Chen <haibo.chen@nxp.com>
---
 drivers/net/can/flexcan/flexcan-core.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/drivers/net/can/flexcan/flexcan-core.c b/drivers/net/can/flexcan/flexcan-core.c
index b347a1c93536..74f3137295fb 100644
--- a/drivers/net/can/flexcan/flexcan-core.c
+++ b/drivers/net/can/flexcan/flexcan-core.c
@@ -2292,6 +2292,7 @@ static int __maybe_unused flexcan_suspend(struct device *device)
 				return err;
 
 			flexcan_chip_interrupts_disable(dev);
+			flexcan_transceiver_disable(priv);
 
 			err = pinctrl_pm_select_sleep_state(device);
 			if (err)
@@ -2325,6 +2326,10 @@ static int __maybe_unused flexcan_resume(struct device *device)
 			if (err)
 				return err;
 
+			err = flexcan_transceiver_enable(priv);
+			if (err)
+				return err;
+
 			err = flexcan_chip_start(dev);
 			if (err)
 				return err;
-- 
2.34.1


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2025-03-04  4:25 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-03-04  3:37 [PATCH] can: flexcan: disable transceiver during system PM haibo.chen
2025-03-04  4:06 ` Vincent Mailhol
2025-03-04  4:24   ` Bough Chen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®