From 88a81bcecb7b94ec3b0b1760bf7ab034df61cf8d Mon Sep 17 00:00:00 2001 From: Bruce Richardson Date: Tue, 2 Jul 2019 10:56:07 +0100 Subject: [PATCH] raw/skeleton: remove compile-time constant for device id Use a variable value rather than compile-time constant zero as the device id for the skeleton rawdev tests. This ensures we can make the tests work even if other rawdevs are present. Signed-off-by: Bruce Richardson Acked-by: Hemant Agrawal --- .../skeleton_rawdev/skeleton_rawdev_test.c | 55 ++++++++++--------- 1 file changed, 28 insertions(+), 27 deletions(-) diff --git a/drivers/raw/skeleton_rawdev/skeleton_rawdev_test.c b/drivers/raw/skeleton_rawdev/skeleton_rawdev_test.c index 3250c2296e..a6be99aeee 100644 --- a/drivers/raw/skeleton_rawdev/skeleton_rawdev_test.c +++ b/drivers/raw/skeleton_rawdev/skeleton_rawdev_test.c @@ -14,7 +14,6 @@ /* Using relative path as skeleton_rawdev is not part of exported headers */ #include "skeleton_rawdev.h" -#define TEST_DEV_ID 0 #define TEST_DEV_NAME "rawdev_skeleton" #define SKELDEV_LOGS(level, fmt, args...) \ @@ -37,6 +36,8 @@ static int passed; static int failed; static int unsupported; +static uint16_t test_dev_id; + static int testsuite_setup(void) { @@ -88,7 +89,7 @@ static int test_rawdev_socket_id(void) { int socket_id; - socket_id = rte_rawdev_socket_id(TEST_DEV_ID); + socket_id = rte_rawdev_socket_id(test_dev_id); RTE_TEST_ASSERT(socket_id != -EINVAL, "Failed to get socket_id %d", socket_id); socket_id = rte_rawdev_socket_id(RTE_RAWDEV_MAX_DEVS); @@ -105,12 +106,12 @@ test_rawdev_info_get(void) struct rte_rawdev_info rdev_info = {0}; struct skeleton_rawdev_conf skel_conf = {0}; - ret = rte_rawdev_info_get(TEST_DEV_ID, NULL); + ret = rte_rawdev_info_get(test_dev_id, NULL); RTE_TEST_ASSERT(ret == -EINVAL, "Expected -EINVAL, %d", ret); rdev_info.dev_private = &skel_conf; - ret = rte_rawdev_info_get(TEST_DEV_ID, &rdev_info); + ret = rte_rawdev_info_get(test_dev_id, &rdev_info); RTE_TEST_ASSERT_SUCCESS(ret, "Failed to get raw dev info"); return TEST_SUCCESS; @@ -125,7 +126,7 @@ test_rawdev_configure(void) struct skeleton_rawdev_conf rdev_conf_get = {0}; /* Check invalid configuration */ - ret = rte_rawdev_configure(TEST_DEV_ID, NULL); + ret = rte_rawdev_configure(test_dev_id, NULL); RTE_TEST_ASSERT(ret == -EINVAL, "Null configure; Expected -EINVAL, got %d", ret); @@ -135,12 +136,12 @@ test_rawdev_configure(void) SKELETON_CAPA_FW_RESET; rdev_info.dev_private = &rdev_conf_set; - ret = rte_rawdev_configure(TEST_DEV_ID, + ret = rte_rawdev_configure(test_dev_id, (rte_rawdev_obj_t)&rdev_info); RTE_TEST_ASSERT_SUCCESS(ret, "Failed to configure rawdev (%d)", ret); rdev_info.dev_private = &rdev_conf_get; - ret = rte_rawdev_info_get(TEST_DEV_ID, + ret = rte_rawdev_info_get(test_dev_id, (rte_rawdev_obj_t)&rdev_info); RTE_TEST_ASSERT_SUCCESS(ret, "Failed to obtain rawdev configuration (%d)", @@ -168,7 +169,7 @@ test_rawdev_queue_default_conf_get(void) /* Get the current configuration */ rdev_info.dev_private = &rdev_conf_get; - ret = rte_rawdev_info_get(TEST_DEV_ID, + ret = rte_rawdev_info_get(test_dev_id, (rte_rawdev_obj_t)&rdev_info); RTE_TEST_ASSERT_SUCCESS(ret, "Failed to obtain rawdev configuration (%d)", ret); @@ -181,7 +182,7 @@ test_rawdev_queue_default_conf_get(void) * depth = DEF_DEPTH */ for (i = 0; i < rdev_conf_get.num_queues; i++) { - rte_rawdev_queue_conf_get(TEST_DEV_ID, i, &q); + rte_rawdev_queue_conf_get(test_dev_id, i, &q); RTE_TEST_ASSERT_EQUAL(q.depth, SKELETON_QUEUE_DEF_DEPTH, "Invalid default depth of queue (%d)", q.depth); @@ -199,7 +200,7 @@ test_rawdev_queue_count(void) unsigned int q_count; /* Get the current configuration */ - q_count = rte_rawdev_queue_count(TEST_DEV_ID); + q_count = rte_rawdev_queue_count(test_dev_id); RTE_TEST_ASSERT_EQUAL(q_count, 1, "Invalid queue count (%d)", q_count); return TEST_SUCCESS; @@ -216,7 +217,7 @@ test_rawdev_queue_setup(void) /* Get the current configuration */ rdev_info.dev_private = &rdev_conf_get; - ret = rte_rawdev_info_get(TEST_DEV_ID, + ret = rte_rawdev_info_get(test_dev_id, (rte_rawdev_obj_t)&rdev_info); RTE_TEST_ASSERT_SUCCESS(ret, "Failed to obtain rawdev configuration (%d)", @@ -230,11 +231,11 @@ test_rawdev_queue_setup(void) /* Modify the queue depth for Queue 0 and attach it */ qset.depth = 15; qset.state = SKELETON_QUEUE_ATTACH; - ret = rte_rawdev_queue_setup(TEST_DEV_ID, 0, &qset); + ret = rte_rawdev_queue_setup(test_dev_id, 0, &qset); RTE_TEST_ASSERT_SUCCESS(ret, "Failed to setup queue (%d)", ret); /* Now, fetching the queue 0 should show depth as 15 */ - ret = rte_rawdev_queue_conf_get(TEST_DEV_ID, 0, &qget); + ret = rte_rawdev_queue_conf_get(test_dev_id, 0, &qget); RTE_TEST_ASSERT_SUCCESS(ret, "Failed to get queue config (%d)", ret); RTE_TEST_ASSERT_EQUAL(qset.depth, qget.depth, @@ -254,11 +255,11 @@ test_rawdev_queue_release(void) struct skeleton_rawdev_queue qget = {0}; /* Now, fetching the queue 0 should show depth as 100 */ - ret = rte_rawdev_queue_release(TEST_DEV_ID, 0); + ret = rte_rawdev_queue_release(test_dev_id, 0); RTE_TEST_ASSERT_SUCCESS(ret, "Failed to release queue 0; (%d)", ret); /* Now, fetching the queue 0 should show depth as default */ - ret = rte_rawdev_queue_conf_get(TEST_DEV_ID, 0, &qget); + ret = rte_rawdev_queue_conf_get(test_dev_id, 0, &qget); RTE_TEST_ASSERT_SUCCESS(ret, "Failed to get queue config (%d)", ret); RTE_TEST_ASSERT_EQUAL(qget.depth, SKELETON_QUEUE_DEF_DEPTH, @@ -278,21 +279,21 @@ test_rawdev_attr_set_get(void) uint64_t ret_value; /* Set an attribute and fetch it */ - ret = rte_rawdev_set_attr(TEST_DEV_ID, "Test1", 100); + ret = rte_rawdev_set_attr(test_dev_id, "Test1", 100); RTE_TEST_ASSERT(!ret, "Unable to set an attribute (Test1)"); dummy_value = &set_value; *dummy_value = 200; - ret = rte_rawdev_set_attr(TEST_DEV_ID, "Test2", (uintptr_t)dummy_value); + ret = rte_rawdev_set_attr(test_dev_id, "Test2", (uintptr_t)dummy_value); /* Check if attributes have been set */ - ret = rte_rawdev_get_attr(TEST_DEV_ID, "Test1", &ret_value); + ret = rte_rawdev_get_attr(test_dev_id, "Test1", &ret_value); RTE_TEST_ASSERT_EQUAL(ret_value, 100, "Attribute (Test1) not set correctly (%" PRIu64 ")", ret_value); ret_value = 0; - ret = rte_rawdev_get_attr(TEST_DEV_ID, "Test2", &ret_value); + ret = rte_rawdev_get_attr(test_dev_id, "Test2", &ret_value); RTE_TEST_ASSERT_EQUAL(*((int *)(uintptr_t)ret_value), set_value, "Attribute (Test2) not set correctly (%" PRIu64 ")", ret_value); @@ -316,7 +317,7 @@ test_rawdev_start_stop(void) RTE_TEST_ASSERT(dummy_firmware != NULL, "Failed to create firmware memory backing"); - ret = rte_rawdev_firmware_load(TEST_DEV_ID, dummy_firmware); + ret = rte_rawdev_firmware_load(test_dev_id, dummy_firmware); RTE_TEST_ASSERT_SUCCESS(ret, "Firmware loading failed (%d)", ret); /* Skeleton doesn't do anything with the firmware area - that is dummy @@ -325,8 +326,8 @@ test_rawdev_start_stop(void) rte_free(dummy_firmware); dummy_firmware = NULL; - rte_rawdev_start(TEST_DEV_ID); - ret = rte_rawdev_info_get(TEST_DEV_ID, (rte_rawdev_obj_t)&rdev_info); + rte_rawdev_start(test_dev_id); + ret = rte_rawdev_info_get(test_dev_id, (rte_rawdev_obj_t)&rdev_info); RTE_TEST_ASSERT_SUCCESS(ret, "Failed to obtain rawdev configuration (%d)", ret); @@ -334,8 +335,8 @@ test_rawdev_start_stop(void) "Device start failed. State is (%d)", rdev_conf_get.device_state); - rte_rawdev_stop(TEST_DEV_ID); - ret = rte_rawdev_info_get(TEST_DEV_ID, (rte_rawdev_obj_t)&rdev_info); + rte_rawdev_stop(test_dev_id); + ret = rte_rawdev_info_get(test_dev_id, (rte_rawdev_obj_t)&rdev_info); RTE_TEST_ASSERT_SUCCESS(ret, "Failed to obtain rawdev configuration (%d)", ret); @@ -344,7 +345,7 @@ test_rawdev_start_stop(void) rdev_conf_get.device_state); /* Unloading the firmware once device is stopped */ - ret = rte_rawdev_firmware_unload(TEST_DEV_ID); + ret = rte_rawdev_firmware_unload(test_dev_id); RTE_TEST_ASSERT_SUCCESS(ret, "Failed to unload firmware (%d)", ret); return TEST_SUCCESS; @@ -365,7 +366,7 @@ test_rawdev_enqdeq(void) snprintf(buffers[0].buf_addr, strlen(TEST_DEV_NAME) + 2, "%s%d", TEST_DEV_NAME, 0); - ret = rte_rawdev_enqueue_buffers(TEST_DEV_ID, + ret = rte_rawdev_enqueue_buffers(test_dev_id, (struct rte_rawdev_buf **)&buffers, count, &queue_id); RTE_TEST_ASSERT_EQUAL((unsigned int)ret, count, @@ -375,7 +376,7 @@ test_rawdev_enqdeq(void) if (!deq_buffers) goto cleanup; - ret = rte_rawdev_dequeue_buffers(TEST_DEV_ID, + ret = rte_rawdev_dequeue_buffers(test_dev_id, (struct rte_rawdev_buf **)&deq_buffers, count, &queue_id); RTE_TEST_ASSERT_EQUAL((unsigned int)ret, count,