| 315 | } |
| 316 | |
| 317 | static int |
| 318 | test_rawdev_start_stop(void) |
| 319 | { |
| 320 | int ret; |
| 321 | struct rte_rawdev_info rdev_info = {0}; |
| 322 | struct skeleton_rawdev_conf rdev_conf_get = {0}; |
| 323 | char *dummy_firmware = NULL; |
| 324 | |
| 325 | /* Get the current configuration */ |
| 326 | rdev_info.dev_private = &rdev_conf_get; |
| 327 | |
| 328 | /* Load a firmware using a dummy address area */ |
| 329 | dummy_firmware = rte_zmalloc("RAWDEV SKELETON", sizeof(int) * 10, 0); |
| 330 | RTE_TEST_ASSERT(dummy_firmware != NULL, |
| 331 | "Failed to create firmware memory backing"); |
| 332 | |
| 333 | ret = rte_rawdev_firmware_load(test_dev_id, dummy_firmware); |
| 334 | RTE_TEST_ASSERT_SUCCESS(ret, "Firmware loading failed (%d)", ret); |
| 335 | |
| 336 | /* Skeleton doesn't do anything with the firmware area - that is dummy |
| 337 | * and can be removed. |
| 338 | */ |
| 339 | rte_free(dummy_firmware); |
| 340 | dummy_firmware = NULL; |
| 341 | |
| 342 | rte_rawdev_start(test_dev_id); |
| 343 | ret = rte_rawdev_info_get(test_dev_id, (rte_rawdev_obj_t)&rdev_info, |
| 344 | sizeof(rdev_conf_get)); |
| 345 | RTE_TEST_ASSERT_SUCCESS(ret, |
| 346 | "Failed to obtain rawdev configuration (%d)", |
| 347 | ret); |
| 348 | RTE_TEST_ASSERT_EQUAL(rdev_conf_get.device_state, SKELETON_DEV_RUNNING, |
| 349 | "Device start failed. State is (%d)", |
| 350 | rdev_conf_get.device_state); |
| 351 | |
| 352 | rte_rawdev_stop(test_dev_id); |
| 353 | ret = rte_rawdev_info_get(test_dev_id, (rte_rawdev_obj_t)&rdev_info, |
| 354 | sizeof(rdev_conf_get)); |
| 355 | RTE_TEST_ASSERT_SUCCESS(ret, |
| 356 | "Failed to obtain rawdev configuration (%d)", |
| 357 | ret); |
| 358 | RTE_TEST_ASSERT_EQUAL(rdev_conf_get.device_state, SKELETON_DEV_STOPPED, |
| 359 | "Device stop failed. State is (%d)", |
| 360 | rdev_conf_get.device_state); |
| 361 | |
| 362 | /* Unloading the firmware once device is stopped */ |
| 363 | ret = rte_rawdev_firmware_unload(test_dev_id); |
| 364 | RTE_TEST_ASSERT_SUCCESS(ret, "Failed to unload firmware (%d)", ret); |
| 365 | |
| 366 | return TEST_SUCCESS; |
| 367 | } |
| 368 | |
| 369 | static int |
| 370 | test_rawdev_enqdeq(void) |
nothing calls this directly
no test coverage detected