xPack GNU RISC-V Embedded GCC v12.2.0-1 with support of WCH RISCV CH56x... "WCH-Interrupt-fast"
LatestRelease 12.2.0-1 is a new release of the xPack RISC-V Embedded GCC package, following the upstream GNU GCC release.
- This version is the same as
https://github.com/xpack-dev-tools/riscv-none-elf-gcc-xpack/releases/tag/v12.2.0-1
but it add support of WCH RISCV CH56x... "WCH-Interrupt-fast"- This toolchain has been tested on HydraUSB3 v1 with WCH CH569 but it shall work also with all CH32V series (like CH32V003, CH32V103 and CH32V307) using special interrupt "WCH-Interrupt-fast"
- Example usage:
__attribute__((interrupt("WCH-Interrupt-fast"))) void IRQHandler() { }
- Example usage:
- For more details see the patch https://github.com/hydrausb3/riscv-none-elf-gcc-xpack/blob/xpack/patches/gcc-12.2.0.patch.diff
- Thanks to @davidcarne for that amazing contribution
- This toolchain has been tested on HydraUSB3 v1 with WCH CH569 but it shall work also with all CH32V series (like CH32V003, CH32V103 and CH32V307) using special interrupt "WCH-Interrupt-fast"
See in Assets pre-built version for Linux & Windows
-
Pre-built version (no multilib/minimalist)
xpack-riscv-none-elf-gcc-12.2.0-1-linux-x64.tar.gz
&xpack-riscv-none-elf-gcc-12.2.0-1-win32-x64.zip
have been generated using following command (using Docker)
bash ${HOME}/Work/riscv-none-elf-gcc-xpack.git/scripts/helper/build.sh --develop --disable-tests --linux64 --win64
- Note: This version is no multilib/minimalist (because built with option --develop) and support only
rv32emac/ilp32e;@march=rv32emac@mabi=ilp32e
rv32ima/ilp32;@march=rv32ima@mabi=ilp32
rv64imac/lp64;@march=rv64imac@mabi=lp64
- Including also march
rv32imac_zicsr
for WCH CH56x using special interrupt "WCH-Interrupt-fast"
- xPack GNU RISC-V Embedded GCC v12.2.0-1 (with patch gcc-12.2.0-riscv-wch-fast-interrupt.patch)
Prerequisites:- GNU/Linux Intel 64-bit: any system with GLIBC 2.27 or higher (like Ubuntu 18 or later, Debian 10 or later, RedHat 8 later, Fedora 29 or later, etc)
- Intel Windows 64-bit: Windows 7 with the Universal C Runtime (UCRT), Windows 8, Windows 10
- Note: This version is no multilib/minimalist (because built with option --develop) and support only
-
Pre-built version (multilib for all RISC-V MCU/CPU supported by xpack-riscv-none-elf-gcc-12.2.0-1)
xpack-riscv-none-elf-gcc-12.2.0-2-linux-x64.tar.gz
&xpack-riscv-none-elf-gcc-12.2.0-2-win32-x64.zip
have been generated using following command (using Docker)
bash ${HOME}/Work/riscv-none-elf-gcc-xpack.git/scripts/helper/build.sh --disable-tests --linux64 --win64
- Note: In the archive it is
xpack-riscv-none-elf-gcc-12.2.0-1
it is just the archive which is renamed toxpack-riscv-none-elf-gcc-12.2.0-2
to differentiate it from the no multilib/minimalist archive which is calledxpack-riscv-none-elf-gcc-12.2.0-1
- xPack GNU RISC-V Embedded GCC v12.2.0-1 (with patch gcc-12.2.0-riscv-wch-fast-interrupt.patch)
Prerequisites:- GNU/Linux Intel 64-bit: any system with GLIBC 2.27 or higher (like Ubuntu 18 or later, Debian 10 or later, RedHat 8 later, Fedora 29 or later, etc)
- Intel Windows 64-bit: Windows 7 with the Universal C Runtime (UCRT), Windows 8, Windows 10
- Note: In the archive it is
-
For more details about RISC-V multilib version see https://www.eevblog.com/forum/microcontrollers/ch32v307-risc-v-minicore-with-ethernet/msg4620265/#msg4620265
Note: The Pre-built version (no multilib/minimalist) is used automatically in GitHub Workflows(CI) & Makefile of HydraUSB3 Firmware see https://github.com/hydrausb3/hydrausb3_fw