Commit d903bca1 authored by Andy Shevchenko's avatar Andy Shevchenko Committed by Greg Kroah-Hartman
Browse files

software node: Switch property entry test to a new API

parent 24e51492
Loading
Loading
Loading
Loading
+14 −16
Original line number Diff line number Diff line
@@ -405,20 +405,18 @@ static void pe_test_move_inline_str(struct kunit *test)
/* Handling of reference properties */
static void pe_test_reference(struct kunit *test)
{
	static const struct software_node nodes[] = {
		{ .name = "1", },
		{ .name = "2", },
		{ }
	};
	static const struct software_node node1 = { .name = "1" };
	static const struct software_node node2 = { .name = "2" };
	static const struct software_node *group[] = { &node1, &node2, NULL };

	static const struct software_node_ref_args refs[] = {
		SOFTWARE_NODE_REFERENCE(&nodes[0]),
		SOFTWARE_NODE_REFERENCE(&nodes[1], 3, 4),
		SOFTWARE_NODE_REFERENCE(&node1),
		SOFTWARE_NODE_REFERENCE(&node2, 3, 4),
	};

	const struct property_entry entries[] = {
		PROPERTY_ENTRY_REF("ref-1", &nodes[0]),
		PROPERTY_ENTRY_REF("ref-2", &nodes[1], 1, 2),
		PROPERTY_ENTRY_REF("ref-1", &node1),
		PROPERTY_ENTRY_REF("ref-2", &node2, 1, 2),
		PROPERTY_ENTRY_REF_ARRAY("ref-3", refs),
		{ }
	};
@@ -427,7 +425,7 @@ static void pe_test_reference(struct kunit *test)
	struct fwnode_reference_args ref;
	int error;

	error = software_node_register_nodes(nodes);
	error = software_node_register_node_group(group);
	KUNIT_ASSERT_EQ(test, error, 0);

	node = fwnode_create_software_node(entries, NULL);
@@ -436,7 +434,7 @@ static void pe_test_reference(struct kunit *test)
	error = fwnode_property_get_reference_args(node, "ref-1", NULL,
						   0, 0, &ref);
	KUNIT_ASSERT_EQ(test, error, 0);
	KUNIT_EXPECT_PTR_EQ(test, to_software_node(ref.fwnode), &nodes[0]);
	KUNIT_EXPECT_PTR_EQ(test, to_software_node(ref.fwnode), &node1);
	KUNIT_EXPECT_EQ(test, ref.nargs, 0U);

	/* wrong index */
@@ -447,7 +445,7 @@ static void pe_test_reference(struct kunit *test)
	error = fwnode_property_get_reference_args(node, "ref-2", NULL,
						   1, 0, &ref);
	KUNIT_ASSERT_EQ(test, error, 0);
	KUNIT_EXPECT_PTR_EQ(test, to_software_node(ref.fwnode), &nodes[1]);
	KUNIT_EXPECT_PTR_EQ(test, to_software_node(ref.fwnode), &node2);
	KUNIT_EXPECT_EQ(test, ref.nargs, 1U);
	KUNIT_EXPECT_EQ(test, ref.args[0], 1LLU);

@@ -455,7 +453,7 @@ static void pe_test_reference(struct kunit *test)
	error = fwnode_property_get_reference_args(node, "ref-2", NULL,
						   3, 0, &ref);
	KUNIT_ASSERT_EQ(test, error, 0);
	KUNIT_EXPECT_PTR_EQ(test, to_software_node(ref.fwnode), &nodes[1]);
	KUNIT_EXPECT_PTR_EQ(test, to_software_node(ref.fwnode), &node2);
	KUNIT_EXPECT_EQ(test, ref.nargs, 3U);
	KUNIT_EXPECT_EQ(test, ref.args[0], 1LLU);
	KUNIT_EXPECT_EQ(test, ref.args[1], 2LLU);
@@ -470,14 +468,14 @@ static void pe_test_reference(struct kunit *test)
	error = fwnode_property_get_reference_args(node, "ref-3", NULL,
						   0, 0, &ref);
	KUNIT_ASSERT_EQ(test, error, 0);
	KUNIT_EXPECT_PTR_EQ(test, to_software_node(ref.fwnode), &nodes[0]);
	KUNIT_EXPECT_PTR_EQ(test, to_software_node(ref.fwnode), &node1);
	KUNIT_EXPECT_EQ(test, ref.nargs, 0U);

	/* second reference in the array */
	error = fwnode_property_get_reference_args(node, "ref-3", NULL,
						   2, 1, &ref);
	KUNIT_ASSERT_EQ(test, error, 0);
	KUNIT_EXPECT_PTR_EQ(test, to_software_node(ref.fwnode), &nodes[1]);
	KUNIT_EXPECT_PTR_EQ(test, to_software_node(ref.fwnode), &node2);
	KUNIT_EXPECT_EQ(test, ref.nargs, 2U);
	KUNIT_EXPECT_EQ(test, ref.args[0], 3LLU);
	KUNIT_EXPECT_EQ(test, ref.args[1], 4LLU);
@@ -488,7 +486,7 @@ static void pe_test_reference(struct kunit *test)
	KUNIT_EXPECT_NE(test, error, 0);

	fwnode_remove_software_node(node);
	software_node_unregister_nodes(nodes);
	software_node_unregister_node_group(group);
}

static struct kunit_case property_entry_test_cases[] = {