First of all thanks to everyone involved. This firmware is a big improvement.
Since I already had an arm-eabi toolchain under FreeBSD, I decided to stick to that. This branch has the necessary changes:
The only substantial change is the removal (commented) of the __SVC(void) function from cortexm3_macro.s. The assembler (arm-eabi-as version 2.21) complained that SVC would not be supported by the target CPU. The function isn’t used anywhere in the code.
Other than that it is just capitalization of paths and adding Makefiles and a README.FreeBSD.
Does anyone have the arm-none-eabi toolchain installed on Linux to give this a quick test? All the Makefiles are in gmake syntax, so I hope that this works 1:1 on Linux as well.