Hello Stafford, On 03.03.21 14:50, Stafford Horne wrote: > Hello, > > These are the patches I came up with to get the setjmp/longjmp routines to work > on OpenRISC. It seems to be working well. > > The patches are on github here: > https://github.com/stffrdhrn/barebox/tree/openrisc-bthread > > I had to revert a commit to remove openrisc to do this work, I hope that can be > reverted. Great. Thanks for taking the time! Could this be tested on qemu-system-or1k? If so, it would be great to have this documented in-tree, so future changes could be tested. Cheers, Ahmad > > Test output: > > barebox@or1ksim:/ bthread -v > bthread_printer yield #1 > bthread_printer yield #2 > bthread_printer yield #3 > bthread_printer yield #4 > 36441 bthread yield calls in 1s > barebox@or1ksim:/ bthread -v > bthread_printer yield #1 > bthread_printer yield #2 > bthread_printer yield #3 > bthread_printer yield #4 > 36504 bthread yield calls in 1s > barebox@or1ksim:/ bthread > > bthread - print info about registered bthreads > > print info about registered barebox threads > > Options: > -i Print information about registered bthreads > -t measure how many bthreads we currently run in 1s > -c count maximum context switches in 1s > -v verify correct bthread operation > > barebox@or1ksim:/ bthread -c > bthread -c > 269536 bthread context switches possible in 1s > > Stafford Horne (4): > openrisc: Use movhi to zero registers > openrisc: Add gitignore for dtb files > openrisc: Add linkage.h > openrisc: Implement setjmp/longjmp/initjmp > > arch/openrisc/Kconfig | 1 + > arch/openrisc/cpu/start.S | 6 ++-- > arch/openrisc/dts/.gitignore | 1 + > arch/openrisc/include/asm/linkage.h | 7 ++++ > arch/openrisc/include/asm/setjmp.h | 17 +++++++++ > arch/openrisc/lib/Makefile | 1 + > arch/openrisc/lib/setjmp.S | 56 +++++++++++++++++++++++++++++ > 7 files changed, 86 insertions(+), 3 deletions(-) > create mode 100644 arch/openrisc/dts/.gitignore > create mode 100644 arch/openrisc/include/asm/linkage.h > create mode 100644 arch/openrisc/include/asm/setjmp.h > create mode 100644 arch/openrisc/lib/setjmp.S > -- Pengutronix e.K. | | Steuerwalder Str. 21 | http://www.pengutronix.de/ | 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox