Skip to content

sstabellini/tbm

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This is a small bare-metal SW test/exploration environment.

TEST
----
Examples how-to build some ARM and MicroBlaze variants:
$ make CFG=configs/vexpress-a32.cfg
$ make CFG=configs/vexpress-a64.cfg
$ make CFG=configs/petalogix-s3adsp1800.cfg

To build all:
make CFG=configs/test

If you need to override the default toolchains:
$ make CFG=configs/vexpress-a64.cfg CROSS=aarch64-myown-elf-

Or you can create a .config file, for example:
$ cat .config
MB_CROSS=microblazeel-xilinx-linux-gnu-
ARM_CROSS=arm-xilinx-linux-gnueabi-
AARCH64_CROSS=aarch64-linux-gnu-

The final binaries can be found in the build/* dir.

To run the vexpress-a64 tests, do the following:
qemu-system-aarch64 -M vexpress-a15,secure=on -cpu cortex-a53 -m 1024 -display none -serial stdio -kernel build/vexpress/a64/ctest-bare

To run the vexpress-a32 tests, do the following:
qemu-system-arm -M vexpress-a15,secure=on -serial stdio -display none -kernel build/vexpress/a32/ctest-bare

Directory structure:

configs/ Build configuration files.
build/ Build products/artifacts.
arch-*/ Contains arch specific boot code, interrupt setups and other stuff.
testsuite-*/ Contains most of the test driving logic.
drivers/*/ Contains drivers to be used by tests or other code.
drivers-*/ Legacy naming for old drivers
libminic/ A BSD licenced small C library implementation
libfdt/ Flat Device Tree lib to parse device trees on boot



About

TBM Bare metal tests

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 93.4%
  • Assembly 5.5%
  • Other 1.1%