mirror of
https://github.com/Fishwaldo/u-boot.git
synced 2025-03-18 13:11:31 +00:00
dm: update test on of_offset in ofnode_valid
Update the test for node.of_offset because an invalid offset is not always set to -1 because the return value of the libfdt functions are: + an error with a value < 0 + a valid offset with value >=0 For example, in ofnode_get_by_phandle() function, we have: node.of_offset = fdt_node_offset_by_phandle(gd->fdt_blob, phandle); and this function can return -FDT_ERR_BADPHANDLE (-6). Without this patch, the added test dm_test_ofnode_get_by_phandle failed. Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com> Reviewed-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
parent
45dbe75da6
commit
6d9949fe86
2 changed files with 17 additions and 1 deletions
|
@ -128,7 +128,7 @@ static inline bool ofnode_valid(ofnode node)
|
|||
if (of_live_active())
|
||||
return node.np != NULL;
|
||||
else
|
||||
return node.of_offset != -1;
|
||||
return node.of_offset >= 0;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -19,6 +19,22 @@ static int dm_test_ofnode_compatible(struct unit_test_state *uts)
|
|||
}
|
||||
DM_TEST(dm_test_ofnode_compatible, UT_TESTF_SCAN_PDATA | UT_TESTF_SCAN_FDT);
|
||||
|
||||
static int dm_test_ofnode_get_by_phandle(struct unit_test_state *uts)
|
||||
{
|
||||
/* test invalid phandle */
|
||||
ut_assert(!ofnode_valid(ofnode_get_by_phandle(0)));
|
||||
ut_assert(!ofnode_valid(ofnode_get_by_phandle(-1)));
|
||||
|
||||
/* test first valid phandle */
|
||||
ut_assert(ofnode_valid(ofnode_get_by_phandle(1)));
|
||||
|
||||
/* test unknown phandle */
|
||||
ut_assert(!ofnode_valid(ofnode_get_by_phandle(0x1000000)));
|
||||
|
||||
return 0;
|
||||
}
|
||||
DM_TEST(dm_test_ofnode_get_by_phandle, UT_TESTF_SCAN_PDATA | UT_TESTF_SCAN_FDT);
|
||||
|
||||
static int dm_test_ofnode_by_prop_value(struct unit_test_state *uts)
|
||||
{
|
||||
const char propname[] = "compatible";
|
||||
|
|
Loading…
Add table
Reference in a new issue