test: dm: Add a case to test ofnode_phy_is_fixed_link()
This adds a test case to test the new ofnode_phy_is_fixed_link() API.
Both the new and old DT bindings are covered.
Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
diff --git a/arch/sandbox/dts/test.dts b/arch/sandbox/dts/test.dts
index 57f4dc1..dde4efb 100644
--- a/arch/sandbox/dts/test.dts
+++ b/arch/sandbox/dts/test.dts
@@ -507,11 +507,7 @@
reg = <1>;
label = "lan1";
phy-mode = "rgmii-txid";
-
- fixed-link {
- speed = <100>;
- full-duplex;
- };
+ fixed-link = <0 1 100 0 0>;
};
port@2 {
diff --git a/test/dm/of_extra.c b/test/dm/of_extra.c
index b19cd37..ac2d886 100644
--- a/test/dm/of_extra.c
+++ b/test/dm/of_extra.c
@@ -36,3 +36,21 @@
return 0;
}
DM_TEST(dm_test_ofnode_read_fmap_entry, 0);
+
+static int dm_test_ofnode_phy_is_fixed_link(struct unit_test_state *uts)
+{
+ ofnode eth_node, phy_node, node;
+
+ eth_node = ofnode_path("/dsa-test/ports/port@0");
+ ut_assert(ofnode_phy_is_fixed_link(eth_node, &phy_node));
+ node = ofnode_path("/dsa-test/ports/port@0/fixed-link");
+ ut_asserteq_mem(&phy_node, &node, sizeof(ofnode));
+
+ eth_node = ofnode_path("/dsa-test/ports/port@1");
+ ut_assert(ofnode_phy_is_fixed_link(eth_node, &phy_node));
+ node = eth_node;
+ ut_asserteq_mem(&phy_node, &node, sizeof(ofnode));
+
+ return 0;
+}
+DM_TEST(dm_test_ofnode_phy_is_fixed_link, 0);