ofread.c 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. // SPDX-License-Identifier: GPL-2.0+
  2. #include <common.h>
  3. #include <dm.h>
  4. #include <dm/test.h>
  5. #include <test/ut.h>
  6. static int dm_test_ofprop_get_property(struct unit_test_state *uts)
  7. {
  8. ofnode node;
  9. struct ofprop prop;
  10. const void *value;
  11. const char *propname;
  12. int res, len, count = 0;
  13. node = ofnode_path("/cros-ec/flash");
  14. for (res = ofnode_first_property(node, &prop);
  15. !res;
  16. res = ofnode_next_property(&prop)) {
  17. value = ofprop_get_property(&prop, &propname, &len);
  18. ut_assertnonnull(value);
  19. switch (count) {
  20. case 0:
  21. ut_asserteq_str("image-pos", propname);
  22. ut_asserteq(4, len);
  23. break;
  24. case 1:
  25. ut_asserteq_str("size", propname);
  26. ut_asserteq(4, len);
  27. break;
  28. case 2:
  29. ut_asserteq_str("erase-value", propname);
  30. ut_asserteq(4, len);
  31. break;
  32. case 3:
  33. /* only for plat */
  34. ut_asserteq_str("name", propname);
  35. ut_asserteq(6, len);
  36. ut_asserteq_str("flash", value);
  37. break;
  38. default:
  39. break;
  40. }
  41. count++;
  42. }
  43. return 0;
  44. }
  45. DM_TEST(dm_test_ofprop_get_property, UT_TESTF_SCAN_PDATA | UT_TESTF_SCAN_FDT);