About applications on TockOS

I find that the newest version Tockloader has supported HiFive1. However, the applications in libtock-c are still made by Cortex. Is there any examples to build applicaitons on TockOS since HiFive1 supports TockOS and Tockloader supports HiFive1?
Thank you!.

Unless something has changed, TockOS supports the HiFive1 not the HiFive1 RevB, so be careful with that. I am planning to help port Tock over to the RevB that way PMP can be implemented. No memory protection is available on the HiFive1 with Tock since it does not have PMP registers.

There is a lot of good info at https://github.com/tock/tock/tree/master/doc if you haven’t been there yet. If I’m not mistaken you can write your applications as if you are not using Tock. Write your code, build the binary, then upload it with tockloader. It should just work. You can use any appropriate language to write your app.

This question may be better asked on the tock mailing list, the link is here https://www.tockos.org/community

There is RISC-V support for libtock-c in a branch. I would strongly recommend not to use libtock-c with RISC-V as it is challenging to setup as you need to manually tweak the linker addresses.

Tock 1.5 (the latest release) supports the HiFive 1 revA. You can use libtock-rs for apps and the latest tockloader (1.4) will work as well.

There is a PR pending to remove revA support and replace it with revB support for Tock. The current master branch of tockloader supports the revB board as well. I’ll send a PR to libtock-rs later this week to add support for revB.

1 Like