diff options
Diffstat (limited to 'target/linux/layerscape/patches-5.4/802-can-0025-can-flexcan-add-LPSR-mode-support-for-i.MX7D.patch')
-rw-r--r-- | target/linux/layerscape/patches-5.4/802-can-0025-can-flexcan-add-LPSR-mode-support-for-i.MX7D.patch | 49 |
1 files changed, 4 insertions, 45 deletions
diff --git a/target/linux/layerscape/patches-5.4/802-can-0025-can-flexcan-add-LPSR-mode-support-for-i.MX7D.patch b/target/linux/layerscape/patches-5.4/802-can-0025-can-flexcan-add-LPSR-mode-support-for-i.MX7D.patch index 96c25e5cd9..806a020303 100644 --- a/target/linux/layerscape/patches-5.4/802-can-0025-can-flexcan-add-LPSR-mode-support-for-i.MX7D.patch +++ b/target/linux/layerscape/patches-5.4/802-can-0025-can-flexcan-add-LPSR-mode-support-for-i.MX7D.patch @@ -28,57 +28,21 @@ Signed-off-by: Joakim Zhang <qiangqing.zhang@nxp.com> #include <linux/regmap.h> #define DRV_NAME "flexcan" -@@ -1942,7 +1943,7 @@ static int __maybe_unused flexcan_suspen - { - struct net_device *dev = dev_get_drvdata(device); - struct flexcan_priv *priv = netdev_priv(dev); -- int err = 0; -+ int err; - - if (netif_running(dev)) { - /* if wakeup is enabled, enter stop mode -@@ -1954,25 +1955,27 @@ static int __maybe_unused flexcan_suspen +@@ -1954,9 +1955,7 @@ static int __maybe_unused flexcan_suspen if (err) return err; } else { - err = flexcan_chip_disable(priv); +- if (err) +- return err; + flexcan_chip_stop(dev); -+ -+ err = pm_runtime_force_suspend(device); - if (err) - return err; - -- err = pm_runtime_force_suspend(device); -+ pinctrl_pm_select_sleep_state(device); } netif_stop_queue(dev); netif_device_detach(dev); - } - priv->can.state = CAN_STATE_SLEEPING; - -- return err; -+ return 0; - } - - static int __maybe_unused flexcan_resume(struct device *device) - { - struct net_device *dev = dev_get_drvdata(device); - struct flexcan_priv *priv = netdev_priv(dev); -- int err = 0; -+ int err; - - priv->can.state = CAN_STATE_ERROR_ACTIVE; - if (netif_running(dev)) { -@@ -1984,15 +1987,19 @@ static int __maybe_unused flexcan_resume +@@ -1982,7 +1981,9 @@ static int __maybe_unused flexcan_resume if (err) return err; } else { -+ pinctrl_pm_select_default_state(device); -+ - err = pm_runtime_force_resume(device); - if (err) - return err; - - err = flexcan_chip_enable(priv); + err = flexcan_chip_start(dev); + if (err) @@ -86,8 +50,3 @@ Signed-off-by: Joakim Zhang <qiangqing.zhang@nxp.com> } } -- return err; -+ return 0; - } - - static int __maybe_unused flexcan_runtime_suspend(struct device *device) |