* [linux-next:master 7416/8910] drivers/power/sequencing/pwrseq-kunit.c:248 pwrseq_circular_deps() warn: passing zero to 'PTR_ERR'
@ 2026-09-23 8:22 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2026-09-23 8:22 UTC (permalink / raw)
To: oe-kbuild; +Cc: lkp, Dan Carpenter
BCC: lkp@intel.com
CC: oe-kbuild-all@lists.linux.dev
TO: Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head: a8c591ed6b672915e0be57843f943a2a723aff40
commit: c42e50314a7629ada42a605666b18e22867a6b44 [7416/8910] power: sequencing: add kunit test cases
:::::: branch date: 19 hours ago
:::::: commit date: 2 days ago
config: i386-randconfig-2200-20260923 (https://download.01.org/0day-ci/archive/20260923/202609231008.4BkhtDFU-lkp@intel.com/config)
compiler: gcc-12 (Debian 12.4.0-5) 12.4.0
smatch: v0.5.0-9187-g5189e3fb
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Reported-by: Dan Carpenter <error27@gmail.com>
| Closes: https://lore.kernel.org/r/202609231008.4BkhtDFU-lkp@intel.com/
New smatch warnings:
drivers/power/sequencing/pwrseq-kunit.c:248 pwrseq_circular_deps() warn: passing zero to 'PTR_ERR'
drivers/power/sequencing/pwrseq-kunit.c:309 pwrseq_circular_deps_chain() warn: passing zero to 'PTR_ERR'
drivers/power/sequencing/pwrseq-kunit.c:382 pwrseq_register_invalid_args() warn: passing zero to 'PTR_ERR'
drivers/power/sequencing/pwrseq-kunit.c:427 pwrseq_register_target_without_unit() warn: passing zero to 'PTR_ERR'
drivers/power/sequencing/pwrseq-kunit.c:968 pwrseq_get_target_not_found() warn: passing zero to 'PTR_ERR'
Old smatch warnings:
drivers/power/sequencing/pwrseq-kunit.c:388 pwrseq_register_invalid_args() warn: passing zero to 'PTR_ERR'
drivers/power/sequencing/pwrseq-kunit.c:394 pwrseq_register_invalid_args() warn: passing zero to 'PTR_ERR'
drivers/power/sequencing/pwrseq-kunit.c:399 pwrseq_register_invalid_args() warn: passing zero to 'PTR_ERR'
vim +/PTR_ERR +248 drivers/power/sequencing/pwrseq-kunit.c
c42e50314a7629a Bartosz Golaszewski 2026-09-09 200
c42e50314a7629a Bartosz Golaszewski 2026-09-09 201 /*
c42e50314a7629a Bartosz Golaszewski 2026-09-09 202 * Test that registering a power sequencer whose unit dependency graph
c42e50314a7629a Bartosz Golaszewski 2026-09-09 203 * contains a two-node cycle (A -> B -> A) is rejected with -EINVAL.
c42e50314a7629a Bartosz Golaszewski 2026-09-09 204 */
c42e50314a7629a Bartosz Golaszewski 2026-09-09 205 static void pwrseq_circular_deps(struct kunit *test)
c42e50314a7629a Bartosz Golaszewski 2026-09-09 206 {
c42e50314a7629a Bartosz Golaszewski 2026-09-09 207 const struct pwrseq_unit_data *unit_a_deps[2] = { };
c42e50314a7629a Bartosz Golaszewski 2026-09-09 208 const struct pwrseq_unit_data *unit_b_deps[2] = { };
c42e50314a7629a Bartosz Golaszewski 2026-09-09 209 const struct pwrseq_target_data *targets[2] = { };
c42e50314a7629a Bartosz Golaszewski 2026-09-09 210 struct platform_device *pdev = test->priv;
c42e50314a7629a Bartosz Golaszewski 2026-09-09 211 struct pwrseq_unit_data unit_a, unit_b;
c42e50314a7629a Bartosz Golaszewski 2026-09-09 212 struct pwrseq_target_data target;
c42e50314a7629a Bartosz Golaszewski 2026-09-09 213 struct pwrseq_device *pwrseq;
c42e50314a7629a Bartosz Golaszewski 2026-09-09 214 struct pwrseq_config config;
c42e50314a7629a Bartosz Golaszewski 2026-09-09 215
c42e50314a7629a Bartosz Golaszewski 2026-09-09 216 unit_a = (struct pwrseq_unit_data){
c42e50314a7629a Bartosz Golaszewski 2026-09-09 217 .name = "unit-a",
c42e50314a7629a Bartosz Golaszewski 2026-09-09 218 .deps = unit_a_deps,
c42e50314a7629a Bartosz Golaszewski 2026-09-09 219 };
c42e50314a7629a Bartosz Golaszewski 2026-09-09 220
c42e50314a7629a Bartosz Golaszewski 2026-09-09 221 unit_b = (struct pwrseq_unit_data){
c42e50314a7629a Bartosz Golaszewski 2026-09-09 222 .name = "unit-b",
c42e50314a7629a Bartosz Golaszewski 2026-09-09 223 .deps = unit_b_deps,
c42e50314a7629a Bartosz Golaszewski 2026-09-09 224 };
c42e50314a7629a Bartosz Golaszewski 2026-09-09 225
c42e50314a7629a Bartosz Golaszewski 2026-09-09 226 unit_a_deps[0] = &unit_b;
c42e50314a7629a Bartosz Golaszewski 2026-09-09 227 unit_b_deps[0] = &unit_a;
c42e50314a7629a Bartosz Golaszewski 2026-09-09 228
c42e50314a7629a Bartosz Golaszewski 2026-09-09 229 target = (struct pwrseq_target_data){
c42e50314a7629a Bartosz Golaszewski 2026-09-09 230 .name = "test-target",
c42e50314a7629a Bartosz Golaszewski 2026-09-09 231 .unit = &unit_a,
c42e50314a7629a Bartosz Golaszewski 2026-09-09 232 };
c42e50314a7629a Bartosz Golaszewski 2026-09-09 233
c42e50314a7629a Bartosz Golaszewski 2026-09-09 234 targets[0] = ⌖
c42e50314a7629a Bartosz Golaszewski 2026-09-09 235
c42e50314a7629a Bartosz Golaszewski 2026-09-09 236 config = (struct pwrseq_config){
c42e50314a7629a Bartosz Golaszewski 2026-09-09 237 .parent = &pdev->dev,
c42e50314a7629a Bartosz Golaszewski 2026-09-09 238 .match = pwrseq_test_no_match,
c42e50314a7629a Bartosz Golaszewski 2026-09-09 239 .targets = targets,
c42e50314a7629a Bartosz Golaszewski 2026-09-09 240 };
c42e50314a7629a Bartosz Golaszewski 2026-09-09 241
c42e50314a7629a Bartosz Golaszewski 2026-09-09 242 kunit_warning_suppress(test) {
c42e50314a7629a Bartosz Golaszewski 2026-09-09 243 pwrseq = kunit_pwrseq_device_register(test, &config);
c42e50314a7629a Bartosz Golaszewski 2026-09-09 244 KUNIT_EXPECT_SUPPRESSED_WARNING_COUNT(test, 1);
c42e50314a7629a Bartosz Golaszewski 2026-09-09 245 }
c42e50314a7629a Bartosz Golaszewski 2026-09-09 246
c42e50314a7629a Bartosz Golaszewski 2026-09-09 247 KUNIT_EXPECT_TRUE(test, IS_ERR(pwrseq));
c42e50314a7629a Bartosz Golaszewski 2026-09-09 @248 KUNIT_EXPECT_EQ(test, PTR_ERR(pwrseq), -EINVAL);
c42e50314a7629a Bartosz Golaszewski 2026-09-09 249 }
c42e50314a7629a Bartosz Golaszewski 2026-09-09 250
c42e50314a7629a Bartosz Golaszewski 2026-09-09 251 /*
c42e50314a7629a Bartosz Golaszewski 2026-09-09 252 * Test that a longer chain cycle (A -> B -> C -> D -> A) is also rejected
c42e50314a7629a Bartosz Golaszewski 2026-09-09 253 * with -EINVAL.
c42e50314a7629a Bartosz Golaszewski 2026-09-09 254 */
c42e50314a7629a Bartosz Golaszewski 2026-09-09 255 static void pwrseq_circular_deps_chain(struct kunit *test)
c42e50314a7629a Bartosz Golaszewski 2026-09-09 256 {
c42e50314a7629a Bartosz Golaszewski 2026-09-09 257 struct pwrseq_unit_data unit_a, unit_b, unit_c, unit_d;
c42e50314a7629a Bartosz Golaszewski 2026-09-09 258 const struct pwrseq_unit_data *unit_a_deps[2] = { };
c42e50314a7629a Bartosz Golaszewski 2026-09-09 259 const struct pwrseq_unit_data *unit_b_deps[2] = { };
c42e50314a7629a Bartosz Golaszewski 2026-09-09 260 const struct pwrseq_unit_data *unit_c_deps[2] = { };
c42e50314a7629a Bartosz Golaszewski 2026-09-09 261 const struct pwrseq_unit_data *unit_d_deps[2] = { };
c42e50314a7629a Bartosz Golaszewski 2026-09-09 262 const struct pwrseq_target_data *targets[2] = { };
c42e50314a7629a Bartosz Golaszewski 2026-09-09 263 struct platform_device *pdev = test->priv;
c42e50314a7629a Bartosz Golaszewski 2026-09-09 264 struct pwrseq_target_data target;
c42e50314a7629a Bartosz Golaszewski 2026-09-09 265 struct pwrseq_device *pwrseq;
c42e50314a7629a Bartosz Golaszewski 2026-09-09 266 struct pwrseq_config config;
c42e50314a7629a Bartosz Golaszewski 2026-09-09 267
c42e50314a7629a Bartosz Golaszewski 2026-09-09 268 unit_a = (struct pwrseq_unit_data){
c42e50314a7629a Bartosz Golaszewski 2026-09-09 269 .name = "unit-a",
c42e50314a7629a Bartosz Golaszewski 2026-09-09 270 .deps = unit_a_deps,
c42e50314a7629a Bartosz Golaszewski 2026-09-09 271 };
c42e50314a7629a Bartosz Golaszewski 2026-09-09 272 unit_b = (struct pwrseq_unit_data){
c42e50314a7629a Bartosz Golaszewski 2026-09-09 273 .name = "unit-b",
c42e50314a7629a Bartosz Golaszewski 2026-09-09 274 .deps = unit_b_deps,
c42e50314a7629a Bartosz Golaszewski 2026-09-09 275 };
c42e50314a7629a Bartosz Golaszewski 2026-09-09 276 unit_c = (struct pwrseq_unit_data){
c42e50314a7629a Bartosz Golaszewski 2026-09-09 277 .name = "unit-c",
c42e50314a7629a Bartosz Golaszewski 2026-09-09 278 .deps = unit_c_deps,
c42e50314a7629a Bartosz Golaszewski 2026-09-09 279 };
c42e50314a7629a Bartosz Golaszewski 2026-09-09 280 unit_d = (struct pwrseq_unit_data){
c42e50314a7629a Bartosz Golaszewski 2026-09-09 281 .name = "unit-d",
c42e50314a7629a Bartosz Golaszewski 2026-09-09 282 .deps = unit_d_deps,
c42e50314a7629a Bartosz Golaszewski 2026-09-09 283 };
c42e50314a7629a Bartosz Golaszewski 2026-09-09 284
c42e50314a7629a Bartosz Golaszewski 2026-09-09 285 unit_a_deps[0] = &unit_b;
c42e50314a7629a Bartosz Golaszewski 2026-09-09 286 unit_b_deps[0] = &unit_c;
c42e50314a7629a Bartosz Golaszewski 2026-09-09 287 unit_c_deps[0] = &unit_d;
c42e50314a7629a Bartosz Golaszewski 2026-09-09 288 unit_d_deps[0] = &unit_a;
c42e50314a7629a Bartosz Golaszewski 2026-09-09 289
c42e50314a7629a Bartosz Golaszewski 2026-09-09 290 target = (struct pwrseq_target_data){
c42e50314a7629a Bartosz Golaszewski 2026-09-09 291 .name = "test-target",
c42e50314a7629a Bartosz Golaszewski 2026-09-09 292 .unit = &unit_a,
c42e50314a7629a Bartosz Golaszewski 2026-09-09 293 };
c42e50314a7629a Bartosz Golaszewski 2026-09-09 294
c42e50314a7629a Bartosz Golaszewski 2026-09-09 295 targets[0] = ⌖
c42e50314a7629a Bartosz Golaszewski 2026-09-09 296
c42e50314a7629a Bartosz Golaszewski 2026-09-09 297 config = (struct pwrseq_config){
c42e50314a7629a Bartosz Golaszewski 2026-09-09 298 .parent = &pdev->dev,
c42e50314a7629a Bartosz Golaszewski 2026-09-09 299 .match = pwrseq_test_no_match,
c42e50314a7629a Bartosz Golaszewski 2026-09-09 300 .targets = targets,
c42e50314a7629a Bartosz Golaszewski 2026-09-09 301 };
c42e50314a7629a Bartosz Golaszewski 2026-09-09 302
c42e50314a7629a Bartosz Golaszewski 2026-09-09 303 kunit_warning_suppress(test) {
c42e50314a7629a Bartosz Golaszewski 2026-09-09 304 pwrseq = kunit_pwrseq_device_register(test, &config);
c42e50314a7629a Bartosz Golaszewski 2026-09-09 305 KUNIT_EXPECT_SUPPRESSED_WARNING_COUNT(test, 1);
c42e50314a7629a Bartosz Golaszewski 2026-09-09 306 }
c42e50314a7629a Bartosz Golaszewski 2026-09-09 307
c42e50314a7629a Bartosz Golaszewski 2026-09-09 308 KUNIT_EXPECT_TRUE(test, IS_ERR(pwrseq));
c42e50314a7629a Bartosz Golaszewski 2026-09-09 @309 KUNIT_EXPECT_EQ(test, PTR_ERR(pwrseq), -EINVAL);
c42e50314a7629a Bartosz Golaszewski 2026-09-09 310 }
c42e50314a7629a Bartosz Golaszewski 2026-09-09 311
c42e50314a7629a Bartosz Golaszewski 2026-09-09 312 /*
c42e50314a7629a Bartosz Golaszewski 2026-09-09 313 * Test that a valid acyclic dependency graph (A -> B) registers successfully.
c42e50314a7629a Bartosz Golaszewski 2026-09-09 314 */
c42e50314a7629a Bartosz Golaszewski 2026-09-09 315 static void pwrseq_register_valid(struct kunit *test)
c42e50314a7629a Bartosz Golaszewski 2026-09-09 316 {
c42e50314a7629a Bartosz Golaszewski 2026-09-09 317 const struct pwrseq_unit_data *unit_a_deps[2] = { };
c42e50314a7629a Bartosz Golaszewski 2026-09-09 318 const struct pwrseq_target_data *targets[2] = { };
c42e50314a7629a Bartosz Golaszewski 2026-09-09 319 struct platform_device *pdev = test->priv;
c42e50314a7629a Bartosz Golaszewski 2026-09-09 320 struct pwrseq_unit_data unit_a, unit_b;
c42e50314a7629a Bartosz Golaszewski 2026-09-09 321 struct pwrseq_target_data target;
c42e50314a7629a Bartosz Golaszewski 2026-09-09 322 struct pwrseq_device *pwrseq;
c42e50314a7629a Bartosz Golaszewski 2026-09-09 323 struct pwrseq_config config;
c42e50314a7629a Bartosz Golaszewski 2026-09-09 324
c42e50314a7629a Bartosz Golaszewski 2026-09-09 325 unit_b = (struct pwrseq_unit_data){
c42e50314a7629a Bartosz Golaszewski 2026-09-09 326 .name = "unit-b",
c42e50314a7629a Bartosz Golaszewski 2026-09-09 327 };
c42e50314a7629a Bartosz Golaszewski 2026-09-09 328
c42e50314a7629a Bartosz Golaszewski 2026-09-09 329 unit_a_deps[0] = &unit_b;
c42e50314a7629a Bartosz Golaszewski 2026-09-09 330 unit_a = (struct pwrseq_unit_data){
c42e50314a7629a Bartosz Golaszewski 2026-09-09 331 .name = "unit-a",
c42e50314a7629a Bartosz Golaszewski 2026-09-09 332 .deps = unit_a_deps,
c42e50314a7629a Bartosz Golaszewski 2026-09-09 333 };
c42e50314a7629a Bartosz Golaszewski 2026-09-09 334
c42e50314a7629a Bartosz Golaszewski 2026-09-09 335 target = (struct pwrseq_target_data){
c42e50314a7629a Bartosz Golaszewski 2026-09-09 336 .name = "test-target",
c42e50314a7629a Bartosz Golaszewski 2026-09-09 337 .unit = &unit_a,
c42e50314a7629a Bartosz Golaszewski 2026-09-09 338 };
c42e50314a7629a Bartosz Golaszewski 2026-09-09 339
c42e50314a7629a Bartosz Golaszewski 2026-09-09 340 targets[0] = ⌖
c42e50314a7629a Bartosz Golaszewski 2026-09-09 341
c42e50314a7629a Bartosz Golaszewski 2026-09-09 342 config = (struct pwrseq_config){
c42e50314a7629a Bartosz Golaszewski 2026-09-09 343 .parent = &pdev->dev,
c42e50314a7629a Bartosz Golaszewski 2026-09-09 344 .match = pwrseq_test_no_match,
c42e50314a7629a Bartosz Golaszewski 2026-09-09 345 .targets = targets,
c42e50314a7629a Bartosz Golaszewski 2026-09-09 346 };
c42e50314a7629a Bartosz Golaszewski 2026-09-09 347
c42e50314a7629a Bartosz Golaszewski 2026-09-09 348 pwrseq = kunit_pwrseq_device_register(test, &config);
c42e50314a7629a Bartosz Golaszewski 2026-09-09 349 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, pwrseq);
c42e50314a7629a Bartosz Golaszewski 2026-09-09 350 }
c42e50314a7629a Bartosz Golaszewski 2026-09-09 351
c42e50314a7629a Bartosz Golaszewski 2026-09-09 352 /*
c42e50314a7629a Bartosz Golaszewski 2026-09-09 353 * Test that registration is rejected with -EINVAL when .parent, .match or
c42e50314a7629a Bartosz Golaszewski 2026-09-09 354 * .targets is missing, or when .targets is a non-NULL but empty array.
c42e50314a7629a Bartosz Golaszewski 2026-09-09 355 */
c42e50314a7629a Bartosz Golaszewski 2026-09-09 356 static void pwrseq_register_invalid_args(struct kunit *test)
c42e50314a7629a Bartosz Golaszewski 2026-09-09 357 {
c42e50314a7629a Bartosz Golaszewski 2026-09-09 358 const struct pwrseq_target_data *empty_targets[1] = { };
c42e50314a7629a Bartosz Golaszewski 2026-09-09 359 const struct pwrseq_target_data *targets[2] = { };
c42e50314a7629a Bartosz Golaszewski 2026-09-09 360 struct platform_device *pdev = test->priv;
c42e50314a7629a Bartosz Golaszewski 2026-09-09 361 struct pwrseq_target_data target;
c42e50314a7629a Bartosz Golaszewski 2026-09-09 362 struct pwrseq_unit_data unit;
c42e50314a7629a Bartosz Golaszewski 2026-09-09 363 struct pwrseq_device *pwrseq;
c42e50314a7629a Bartosz Golaszewski 2026-09-09 364 struct pwrseq_config config;
c42e50314a7629a Bartosz Golaszewski 2026-09-09 365
c42e50314a7629a Bartosz Golaszewski 2026-09-09 366 unit = (struct pwrseq_unit_data){ .name = "unit-a" };
c42e50314a7629a Bartosz Golaszewski 2026-09-09 367 target = (struct pwrseq_target_data){
c42e50314a7629a Bartosz Golaszewski 2026-09-09 368 .name = "test-target",
c42e50314a7629a Bartosz Golaszewski 2026-09-09 369 .unit = &unit,
c42e50314a7629a Bartosz Golaszewski 2026-09-09 370 };
c42e50314a7629a Bartosz Golaszewski 2026-09-09 371 targets[0] = ⌖
c42e50314a7629a Bartosz Golaszewski 2026-09-09 372
c42e50314a7629a Bartosz Golaszewski 2026-09-09 373 config = (struct pwrseq_config){
c42e50314a7629a Bartosz Golaszewski 2026-09-09 374 .parent = &pdev->dev,
c42e50314a7629a Bartosz Golaszewski 2026-09-09 375 .match = pwrseq_test_no_match,
c42e50314a7629a Bartosz Golaszewski 2026-09-09 376 .targets = targets,
c42e50314a7629a Bartosz Golaszewski 2026-09-09 377 };
c42e50314a7629a Bartosz Golaszewski 2026-09-09 378
c42e50314a7629a Bartosz Golaszewski 2026-09-09 379 config.parent = NULL;
c42e50314a7629a Bartosz Golaszewski 2026-09-09 380 pwrseq = kunit_pwrseq_device_register(test, &config);
c42e50314a7629a Bartosz Golaszewski 2026-09-09 381 KUNIT_EXPECT_TRUE(test, IS_ERR(pwrseq));
c42e50314a7629a Bartosz Golaszewski 2026-09-09 @382 KUNIT_EXPECT_EQ(test, PTR_ERR(pwrseq), -EINVAL);
c42e50314a7629a Bartosz Golaszewski 2026-09-09 383 config.parent = &pdev->dev;
c42e50314a7629a Bartosz Golaszewski 2026-09-09 384
c42e50314a7629a Bartosz Golaszewski 2026-09-09 385 config.match = NULL;
c42e50314a7629a Bartosz Golaszewski 2026-09-09 386 pwrseq = kunit_pwrseq_device_register(test, &config);
c42e50314a7629a Bartosz Golaszewski 2026-09-09 387 KUNIT_EXPECT_TRUE(test, IS_ERR(pwrseq));
c42e50314a7629a Bartosz Golaszewski 2026-09-09 388 KUNIT_EXPECT_EQ(test, PTR_ERR(pwrseq), -EINVAL);
c42e50314a7629a Bartosz Golaszewski 2026-09-09 389 config.match = pwrseq_test_no_match;
c42e50314a7629a Bartosz Golaszewski 2026-09-09 390
c42e50314a7629a Bartosz Golaszewski 2026-09-09 391 config.targets = NULL;
c42e50314a7629a Bartosz Golaszewski 2026-09-09 392 pwrseq = kunit_pwrseq_device_register(test, &config);
c42e50314a7629a Bartosz Golaszewski 2026-09-09 393 KUNIT_EXPECT_TRUE(test, IS_ERR(pwrseq));
c42e50314a7629a Bartosz Golaszewski 2026-09-09 394 KUNIT_EXPECT_EQ(test, PTR_ERR(pwrseq), -EINVAL);
c42e50314a7629a Bartosz Golaszewski 2026-09-09 395
c42e50314a7629a Bartosz Golaszewski 2026-09-09 396 config.targets = empty_targets;
c42e50314a7629a Bartosz Golaszewski 2026-09-09 397 pwrseq = kunit_pwrseq_device_register(test, &config);
c42e50314a7629a Bartosz Golaszewski 2026-09-09 398 KUNIT_EXPECT_TRUE(test, IS_ERR(pwrseq));
c42e50314a7629a Bartosz Golaszewski 2026-09-09 399 KUNIT_EXPECT_EQ(test, PTR_ERR(pwrseq), -EINVAL);
c42e50314a7629a Bartosz Golaszewski 2026-09-09 400 }
c42e50314a7629a Bartosz Golaszewski 2026-09-09 401
c42e50314a7629a Bartosz Golaszewski 2026-09-09 402 /*
c42e50314a7629a Bartosz Golaszewski 2026-09-09 403 * Test that a target without a unit is rejected with -EINVAL.
c42e50314a7629a Bartosz Golaszewski 2026-09-09 404 */
c42e50314a7629a Bartosz Golaszewski 2026-09-09 405 static void pwrseq_register_target_without_unit(struct kunit *test)
c42e50314a7629a Bartosz Golaszewski 2026-09-09 406 {
c42e50314a7629a Bartosz Golaszewski 2026-09-09 407 const struct pwrseq_target_data *targets[2] = { };
c42e50314a7629a Bartosz Golaszewski 2026-09-09 408 struct platform_device *pdev = test->priv;
c42e50314a7629a Bartosz Golaszewski 2026-09-09 409 struct pwrseq_target_data target;
c42e50314a7629a Bartosz Golaszewski 2026-09-09 410 struct pwrseq_device *pwrseq;
c42e50314a7629a Bartosz Golaszewski 2026-09-09 411 struct pwrseq_config config;
c42e50314a7629a Bartosz Golaszewski 2026-09-09 412
c42e50314a7629a Bartosz Golaszewski 2026-09-09 413 target = (struct pwrseq_target_data){
c42e50314a7629a Bartosz Golaszewski 2026-09-09 414 .name = "test-target",
c42e50314a7629a Bartosz Golaszewski 2026-09-09 415 .unit = NULL,
c42e50314a7629a Bartosz Golaszewski 2026-09-09 416 };
c42e50314a7629a Bartosz Golaszewski 2026-09-09 417 targets[0] = ⌖
c42e50314a7629a Bartosz Golaszewski 2026-09-09 418
c42e50314a7629a Bartosz Golaszewski 2026-09-09 419 config = (struct pwrseq_config){
c42e50314a7629a Bartosz Golaszewski 2026-09-09 420 .parent = &pdev->dev,
c42e50314a7629a Bartosz Golaszewski 2026-09-09 421 .match = pwrseq_test_no_match,
c42e50314a7629a Bartosz Golaszewski 2026-09-09 422 .targets = targets,
c42e50314a7629a Bartosz Golaszewski 2026-09-09 423 };
c42e50314a7629a Bartosz Golaszewski 2026-09-09 424
c42e50314a7629a Bartosz Golaszewski 2026-09-09 425 pwrseq = kunit_pwrseq_device_register(test, &config);
c42e50314a7629a Bartosz Golaszewski 2026-09-09 426 KUNIT_EXPECT_TRUE(test, IS_ERR(pwrseq));
c42e50314a7629a Bartosz Golaszewski 2026-09-09 @427 KUNIT_EXPECT_EQ(test, PTR_ERR(pwrseq), -EINVAL);
c42e50314a7629a Bartosz Golaszewski 2026-09-09 428 }
c42e50314a7629a Bartosz Golaszewski 2026-09-09 429
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2026-09-23 8:23 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-09-23 8:22 [linux-next:master 7416/8910] drivers/power/sequencing/pwrseq-kunit.c:248 pwrseq_circular_deps() warn: passing zero to 'PTR_ERR' kernel test robot
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.