Rafael J. Wysocki
7226386965
PM: runtime: Unify error handling during suspend and resume
...
There is a confusing difference in error handling between rpm_suspend()
and rpm_resume() related to the special way in which -EAGAIN and -EBUSY
error values are treated by the former. Also, converting -EACCES coming
from the callback to I/O error, which it quite likely is not, may
confuse runtime PM users.
To address the above, modify rpm_callback() to convert -EACCES coming
from the driver to -EAGAIN and to set power.runtime_error only if the
return value is not -EAGAIN or -EBUSY.
This will cause the error handling in rpm_resume() and rpm_suspend() to
work consistently, so drop the no longer needed -EAGAIN or -EBUSY
special case from the latter and make it retry autosuspend if
power.runtime_error is unset.
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com >
Reviewed-by: Ulf Hansson <ulf.hansson@linaro.org >
Link: https://patch.msgid.link/12620037.O9o76ZdvQC@rjwysocki.net
2025-03-03 14:46:19 +01:00
..
2025-02-07 14:47:25 +10:00
2025-02-14 09:55:17 -08:00
2025-01-27 16:51:51 -08:00
2025-01-31 11:07:56 -08:00
2025-01-24 08:03:52 -08:00
2025-03-03 14:46:19 +01:00
2025-02-07 11:00:33 -08:00
2025-02-13 11:14:04 -05:00
2025-02-07 08:56:01 +01:00
2025-01-28 13:48:37 +01:00
2025-01-10 15:43:16 +01:00
2025-01-28 13:48:37 +01:00
2025-01-26 18:36:23 -08:00
2025-01-10 00:54:21 +00:00
2025-02-06 20:39:43 +01:00
2025-01-30 15:10:34 -08:00
2025-02-14 18:39:19 -05:00
2025-01-29 11:23:22 -08:00
2025-01-13 20:48:34 +01:00
2025-02-15 09:28:55 -08:00
2025-01-21 09:38:52 -08:00
2025-01-12 13:44:27 +01:00
2025-01-28 12:25:12 -08:00
2025-02-14 13:56:04 -08:00
2025-01-09 10:56:57 +01:00
2025-02-13 18:51:39 +01:00
2025-02-14 12:15:59 +10:00
2025-02-10 09:50:01 -08:00
2025-01-28 13:48:37 +01:00
2025-01-28 12:25:12 -08:00
2025-01-28 09:01:36 -08:00
2025-02-05 14:22:12 +01:00
2025-01-24 15:48:01 -08:00
2025-01-22 11:16:14 -08:00
2025-01-16 13:46:08 +01:00
2025-01-26 17:50:53 -08:00
2025-01-24 07:18:39 -08:00
2025-01-16 14:01:40 +01:00
2025-02-16 10:25:12 -08:00
2025-02-07 08:56:01 +01:00
2025-01-28 12:25:12 -08:00
2025-01-26 18:36:23 -08:00
2025-01-18 16:20:55 -06:00
2025-02-07 11:00:33 -08:00
2025-02-01 09:15:01 -08:00
2025-01-15 19:07:39 +01:00
2025-01-27 16:51:51 -08:00
2025-01-10 15:20:30 -05:00
2025-02-11 14:53:39 +00:00
2025-01-28 13:48:37 +01:00
2025-02-03 13:34:50 +01:00
2025-01-31 11:49:30 -08:00
2025-01-10 10:15:04 +01:00
2025-02-13 10:00:39 -08:00
2025-01-18 17:10:05 -08:00
2025-01-18 14:38:49 -06:00
2025-02-03 09:19:03 -07:00
2025-01-10 16:16:48 +01:00
2025-02-02 20:59:04 -06:00
2025-01-28 12:25:12 -08:00
2025-02-14 16:49:07 -08:00
2025-01-28 13:48:37 +01:00
2025-01-29 14:32:38 -08:00
2025-02-06 10:13:15 +01:00
2025-02-12 13:49:37 +02:00
2025-01-21 10:45:24 +01:00
2025-01-27 15:37:16 -08:00
2025-02-07 12:43:58 +01:00
2025-01-10 16:12:33 +01:00
2025-02-11 10:20:52 +01:00
2025-01-28 12:25:12 -08:00
2025-02-11 16:29:01 +00:00
2025-01-15 10:04:27 -07:00
2025-01-24 14:56:59 -08:00
2025-01-30 17:50:02 -08:00
2025-02-15 10:15:24 -08:00
2025-02-03 17:54:56 -05:00
2025-01-28 12:25:12 -08:00
2025-02-07 08:56:01 +01:00
2025-01-29 14:38:19 -08:00
2025-02-06 11:33:51 +00:00
2025-01-17 12:58:49 +01:00
2025-01-28 12:25:12 -08:00
2025-02-03 16:28:51 -05:00
2025-02-11 21:02:13 +01:00
2025-01-28 12:25:12 -08:00
2025-02-16 12:50:44 -08:00
2025-02-03 17:34:24 -05:00
2025-01-27 16:51:51 -08:00
2025-02-14 09:26:44 +01:00
2025-01-27 15:26:06 -08:00
2025-01-28 14:16:46 -08:00
2025-01-27 09:39:25 -05:00
2025-01-24 11:32:13 -08:00
2025-01-21 09:00:31 -08:00
2025-01-27 15:26:06 -08:00
2025-01-09 10:54:19 +01:00
2025-01-25 16:19:10 -08:00
2025-02-14 08:15:17 -08:00