[PATCH v2 03/11] dm: test: Add a way to run SPL tests

Simon Glass sjg at chromium.org
Fri Oct 30 04:34:22 CET 2020


Add a -u flag for U-Boot SPL which requests that unit tests be run. To
make this work, export dm_test_main() and update it to skip test features
that are not used with of-platdata.

To run the tests:

   $ spl/u-boot-spl -u
   U-Boot SPL 2020.10-rc5 (Oct 01 2020 - 07:35:39 -0600)
   Running 0 driver model tests
   Failures: 0

At present there are no SPL unit tests.

Note that there is one wrinkle with these tests. SPL has limited memory
available for allocation. Also malloc_simple does not free memory
(free() is a nop) and running tests repeatedly causes driver-model to
reinit multiple times and allocate memory. Therefore it is not possible
to run more than a few tests at a time. One solution is to increase the
amount of malloc space in sandbox_spl. This is not a problem for pytest,
since it runs each test individually, so for now this is left as is.

Signed-off-by: Simon Glass <sjg at chromium.org>
---

(no changes since v1)

 arch/sandbox/cpu/spl.c           |  8 ++++++++
 arch/sandbox/cpu/start.c         |  9 +++++++++
 arch/sandbox/include/asm/state.h |  1 +
 include/test/test.h              | 11 +++++++++++
 test/dm/test-main.c              |  2 +-
 5 files changed, 30 insertions(+), 1 deletion(-)

Applied to u-boot-dm, thanks!


More information about the U-Boot mailing list