Lines Matching full:test
9 #include <kunit/test.h>
13 static void pm_runtime_depth_test(struct kunit *test) in pm_runtime_depth_test() argument
15 struct device *dev = kunit_device_register(test, DEVICE_NAME); in pm_runtime_depth_test()
17 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, dev); in pm_runtime_depth_test()
21 KUNIT_EXPECT_TRUE(test, pm_runtime_suspended(dev)); in pm_runtime_depth_test()
22 KUNIT_EXPECT_EQ(test, 0, pm_runtime_get_sync(dev)); in pm_runtime_depth_test()
23 KUNIT_EXPECT_TRUE(test, pm_runtime_active(dev)); in pm_runtime_depth_test()
24 KUNIT_EXPECT_EQ(test, 1, pm_runtime_get_sync(dev)); /* "already active" */ in pm_runtime_depth_test()
25 KUNIT_EXPECT_EQ(test, 0, pm_runtime_put_sync(dev)); in pm_runtime_depth_test()
26 KUNIT_EXPECT_EQ(test, 0, pm_runtime_put_sync(dev)); in pm_runtime_depth_test()
27 KUNIT_EXPECT_TRUE(test, pm_runtime_suspended(dev)); in pm_runtime_depth_test()
30 /* Test pm_runtime_put() and friends when already suspended. */
31 static void pm_runtime_already_suspended_test(struct kunit *test) in pm_runtime_already_suspended_test() argument
33 struct device *dev = kunit_device_register(test, DEVICE_NAME); in pm_runtime_already_suspended_test()
35 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, dev); in pm_runtime_already_suspended_test()
38 KUNIT_EXPECT_TRUE(test, pm_runtime_suspended(dev)); in pm_runtime_already_suspended_test()
41 KUNIT_EXPECT_EQ(test, 0, pm_runtime_barrier(dev)); /* no wakeup needed */ in pm_runtime_already_suspended_test()
45 KUNIT_EXPECT_EQ(test, 1, pm_runtime_put_sync(dev)); in pm_runtime_already_suspended_test()
47 KUNIT_EXPECT_EQ(test, 1, pm_runtime_suspend(dev)); in pm_runtime_already_suspended_test()
48 KUNIT_EXPECT_EQ(test, 1, pm_runtime_autosuspend(dev)); in pm_runtime_already_suspended_test()
49 KUNIT_EXPECT_EQ(test, 1, pm_request_autosuspend(dev)); in pm_runtime_already_suspended_test()
52 KUNIT_EXPECT_EQ(test, 1, pm_runtime_put_sync_autosuspend(dev)); in pm_runtime_already_suspended_test()
61 KUNIT_EXPECT_EQ(test, 0, pm_runtime_put_sync_autosuspend(dev)); in pm_runtime_already_suspended_test()
63 KUNIT_EXPECT_EQ(test, 1, pm_runtime_put_sync_autosuspend(dev)); in pm_runtime_already_suspended_test()
66 KUNIT_EXPECT_TRUE(test, pm_runtime_suspended(dev)); in pm_runtime_already_suspended_test()
69 static void pm_runtime_idle_test(struct kunit *test) in pm_runtime_idle_test() argument
71 struct device *dev = kunit_device_register(test, DEVICE_NAME); in pm_runtime_idle_test()
73 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, dev); in pm_runtime_idle_test()
77 KUNIT_EXPECT_TRUE(test, pm_runtime_suspended(dev)); in pm_runtime_idle_test()
78 KUNIT_EXPECT_EQ(test, 0, pm_runtime_get_sync(dev)); in pm_runtime_idle_test()
79 KUNIT_EXPECT_TRUE(test, pm_runtime_active(dev)); in pm_runtime_idle_test()
80 KUNIT_EXPECT_EQ(test, -EAGAIN, pm_runtime_idle(dev)); in pm_runtime_idle_test()
81 KUNIT_EXPECT_TRUE(test, pm_runtime_active(dev)); in pm_runtime_idle_test()
83 KUNIT_EXPECT_TRUE(test, pm_runtime_active(dev)); in pm_runtime_idle_test()
84 KUNIT_EXPECT_EQ(test, 0, pm_runtime_idle(dev)); in pm_runtime_idle_test()
85 KUNIT_EXPECT_TRUE(test, pm_runtime_suspended(dev)); in pm_runtime_idle_test()
86 KUNIT_EXPECT_EQ(test, -EAGAIN, pm_runtime_idle(dev)); in pm_runtime_idle_test()
87 KUNIT_EXPECT_EQ(test, -EAGAIN, pm_request_idle(dev)); in pm_runtime_idle_test()
90 static void pm_runtime_disabled_test(struct kunit *test) in pm_runtime_disabled_test() argument
92 struct device *dev = kunit_device_register(test, DEVICE_NAME); in pm_runtime_disabled_test()
94 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, dev); in pm_runtime_disabled_test()
97 KUNIT_EXPECT_FALSE(test, pm_runtime_enabled(dev)); in pm_runtime_disabled_test()
100 KUNIT_EXPECT_TRUE(test, pm_runtime_active(dev)); in pm_runtime_disabled_test()
101 KUNIT_EXPECT_FALSE(test, pm_runtime_suspended(dev)); in pm_runtime_disabled_test()
107 KUNIT_EXPECT_EQ(test, -EACCES, pm_runtime_get(dev)); in pm_runtime_disabled_test()
110 KUNIT_EXPECT_EQ(test, -EACCES, pm_runtime_get_sync(dev)); in pm_runtime_disabled_test()
111 KUNIT_EXPECT_EQ(test, -EACCES, pm_runtime_put_sync(dev)); in pm_runtime_disabled_test()
113 KUNIT_EXPECT_EQ(test, -EACCES, pm_runtime_get(dev)); in pm_runtime_disabled_test()
116 KUNIT_EXPECT_EQ(test, -EACCES, pm_runtime_resume_and_get(dev)); in pm_runtime_disabled_test()
117 KUNIT_EXPECT_EQ(test, -EACCES, pm_runtime_idle(dev)); in pm_runtime_disabled_test()
118 KUNIT_EXPECT_EQ(test, -EACCES, pm_request_idle(dev)); in pm_runtime_disabled_test()
119 KUNIT_EXPECT_EQ(test, -EACCES, pm_request_resume(dev)); in pm_runtime_disabled_test()
120 KUNIT_EXPECT_EQ(test, -EACCES, pm_request_autosuspend(dev)); in pm_runtime_disabled_test()
121 KUNIT_EXPECT_EQ(test, -EACCES, pm_runtime_suspend(dev)); in pm_runtime_disabled_test()
122 KUNIT_EXPECT_EQ(test, -EACCES, pm_runtime_resume(dev)); in pm_runtime_disabled_test()
123 KUNIT_EXPECT_EQ(test, -EACCES, pm_runtime_autosuspend(dev)); in pm_runtime_disabled_test()
126 KUNIT_EXPECT_TRUE(test, pm_runtime_active(dev)); in pm_runtime_disabled_test()
127 KUNIT_EXPECT_FALSE(test, pm_runtime_enabled(dev)); in pm_runtime_disabled_test()
130 static void pm_runtime_error_test(struct kunit *test) in pm_runtime_error_test() argument
132 struct device *dev = kunit_device_register(test, DEVICE_NAME); in pm_runtime_error_test()
134 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, dev); in pm_runtime_error_test()
137 KUNIT_EXPECT_TRUE(test, pm_runtime_suspended(dev)); in pm_runtime_error_test()
146 KUNIT_EXPECT_EQ(test, -EINVAL, pm_runtime_get(dev)); in pm_runtime_error_test()
149 KUNIT_EXPECT_EQ(test, -EINVAL, pm_runtime_get_sync(dev)); in pm_runtime_error_test()
150 KUNIT_EXPECT_EQ(test, -EINVAL, pm_runtime_put_sync(dev)); in pm_runtime_error_test()
152 KUNIT_EXPECT_EQ(test, -EINVAL, pm_runtime_get(dev)); in pm_runtime_error_test()
155 KUNIT_EXPECT_EQ(test, -EINVAL, pm_runtime_get(dev)); in pm_runtime_error_test()
156 KUNIT_EXPECT_EQ(test, -EINVAL, pm_runtime_put_sync_autosuspend(dev)); in pm_runtime_error_test()
158 KUNIT_EXPECT_EQ(test, -EINVAL, pm_runtime_resume_and_get(dev)); in pm_runtime_error_test()
159 KUNIT_EXPECT_EQ(test, -EINVAL, pm_runtime_idle(dev)); in pm_runtime_error_test()
160 KUNIT_EXPECT_EQ(test, -EINVAL, pm_request_idle(dev)); in pm_runtime_error_test()
161 KUNIT_EXPECT_EQ(test, -EINVAL, pm_request_resume(dev)); in pm_runtime_error_test()
162 KUNIT_EXPECT_EQ(test, -EINVAL, pm_request_autosuspend(dev)); in pm_runtime_error_test()
163 KUNIT_EXPECT_EQ(test, -EINVAL, pm_runtime_suspend(dev)); in pm_runtime_error_test()
164 KUNIT_EXPECT_EQ(test, -EINVAL, pm_runtime_resume(dev)); in pm_runtime_error_test()
165 KUNIT_EXPECT_EQ(test, -EINVAL, pm_runtime_autosuspend(dev)); in pm_runtime_error_test()
168 KUNIT_EXPECT_TRUE(test, pm_runtime_suspended(dev)); in pm_runtime_error_test()
169 KUNIT_EXPECT_EQ(test, -EIO, dev->power.runtime_error); in pm_runtime_error_test()
171 KUNIT_EXPECT_EQ(test, 0, pm_runtime_set_suspended(dev)); in pm_runtime_error_test()
172 KUNIT_EXPECT_EQ(test, 0, dev->power.runtime_error); in pm_runtime_error_test()
174 KUNIT_EXPECT_TRUE(test, pm_runtime_suspended(dev)); in pm_runtime_error_test()
176 KUNIT_EXPECT_EQ(test, 0, pm_runtime_get(dev)); in pm_runtime_error_test()
177 KUNIT_EXPECT_EQ(test, 1, pm_runtime_barrier(dev)); /* resume was pending */ in pm_runtime_error_test()
180 KUNIT_EXPECT_TRUE(test, pm_runtime_suspended(dev)); in pm_runtime_error_test()
182 KUNIT_EXPECT_EQ(test, 0, pm_runtime_get_sync(dev)); in pm_runtime_error_test()
183 KUNIT_EXPECT_EQ(test, 0, pm_runtime_put_sync(dev)); in pm_runtime_error_test()
185 KUNIT_EXPECT_EQ(test, 0, pm_runtime_get_sync(dev)); in pm_runtime_error_test()
188 KUNIT_EXPECT_EQ(test, 0, pm_runtime_resume_and_get(dev)); in pm_runtime_error_test()
194 KUNIT_EXPECT_EQ(test, -EAGAIN, pm_runtime_idle(dev)); in pm_runtime_error_test()
195 KUNIT_EXPECT_EQ(test, -EAGAIN, pm_request_idle(dev)); in pm_runtime_error_test()
196 KUNIT_EXPECT_EQ(test, 1, pm_request_resume(dev)); in pm_runtime_error_test()
197 KUNIT_EXPECT_EQ(test, -EAGAIN, pm_request_autosuspend(dev)); in pm_runtime_error_test()
198 KUNIT_EXPECT_EQ(test, -EAGAIN, pm_runtime_suspend(dev)); in pm_runtime_error_test()
199 KUNIT_EXPECT_EQ(test, 1, pm_runtime_resume(dev)); in pm_runtime_error_test()
200 KUNIT_EXPECT_EQ(test, -EAGAIN, pm_runtime_autosuspend(dev)); in pm_runtime_error_test()
202 KUNIT_EXPECT_EQ(test, 0, pm_runtime_put_sync(dev)); in pm_runtime_error_test()
205 KUNIT_EXPECT_TRUE(test, pm_runtime_suspended(dev)); in pm_runtime_error_test()
213 static void pm_runtime_probe_active_test(struct kunit *test) in pm_runtime_probe_active_test() argument
215 struct device *dev = kunit_device_register(test, DEVICE_NAME); in pm_runtime_probe_active_test()
217 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, dev); in pm_runtime_probe_active_test()
219 KUNIT_EXPECT_TRUE(test, pm_runtime_status_suspended(dev)); in pm_runtime_probe_active_test()
221 KUNIT_EXPECT_EQ(test, 0, pm_runtime_set_active(dev)); in pm_runtime_probe_active_test()
222 KUNIT_EXPECT_TRUE(test, pm_runtime_active(dev)); in pm_runtime_probe_active_test()
225 KUNIT_EXPECT_TRUE(test, pm_runtime_active(dev)); in pm_runtime_probe_active_test()
228 KUNIT_EXPECT_EQ(test, 0, pm_runtime_barrier(dev)); in pm_runtime_probe_active_test()
229 KUNIT_EXPECT_TRUE(test, pm_runtime_active(dev)); in pm_runtime_probe_active_test()
232 KUNIT_EXPECT_EQ(test, 0, pm_runtime_idle(dev)); in pm_runtime_probe_active_test()
233 KUNIT_EXPECT_TRUE(test, pm_runtime_suspended(dev)); in pm_runtime_probe_active_test()
252 MODULE_DESCRIPTION("Runtime power management unit test suite");