Conversation
This commit introduces the complete example build environment for the RISC-V32/GNU port targeting the QEMU virt machine. It includes basic BSP components, startup code, drivers, linker script, and a minimal ThreadX demo application. Signed-off-by: Akif Ejaz <akif.ejaz@10xengineers.ai>
When TX_ENABLE_VFP_SUPPORT is defined, the build fails due to missing IRQ_MASK and FIQ_MASK symbols in the restore logic. This adds the local definitions (0x80 and 0x40) to tx_thread_schedule.S to match tx_thread_interrupt_restore.S, enabling successful compilation on GNU and AC6 Cortex-A ports.
- removed tx_port.h dependency from .S files - replaced tx_timer_interrupt.c with tx_timer_interrupt.S - made some cleanups, formatting to better readability - removed macros (LOAD/STORE/REGBYTES) changed register nomenclature to use RISC-V ABI names (ra, sp, t0, etc.) - added readme_threadx.txt Signed-off-by: Akif Ejaz <akif.ejaz@10xengineers.ai>
Signed-off-by: Akif Ejaz <akif.ejaz@10xengineers.ai>
- removed the trailing whitespaces Signed-off-by: Akif Ejaz <akif.ejaz@10xengineers.ai>
Improved RV64/GNU port robustness, portability, and CSR handling
Added missing ULONG64 definition for RX ports needed by USBX and NetX Duo
- add ThreadX porting codes for XuanTie E906. - add example for XuanTie E906 running on QEMU smartl.
Signed-off-by: Akif Ejaz <akif.ejaz@10xengineers.ai>
This update adapts the ThreadX low-level kernel routines
for RV32, including:
- startup and initialization logic
- context save/restore implementations
- interrupt control and scheduler entry
- thread stack build and system return paths
- timer interrupt handling
- made it complient as per new risc-v64/gnu
& threadx style
- added reademe for risc-v32/gnu port
These changes provide full low-level support needed to run
ThreadX on RISC-V32 targets.
Signed-off-by: Akif Ejaz <akif.ejaz@10xengineers.ai>
Added a RISC-V32 architecture port layer for GCC.
This update adapts the ThreadX low-level kernel routines
for RV32, including:
- startup and initialization logic
- context save/restore implementations
- interrupt control and scheduler entry
- thread stack build and system return paths
- timer interrupt handling
- made it complient as per new risc-v64/gnu
& threadx style
- added reademe for risc-v32/gnu port
These changes provide full low-level support needed to run
ThreadX on RISC-V32 targets.
Signed-off-by: Akif Ejaz <akif.ejaz@10xengineers.ai>
- Place the E906 implementation in the ports/risc-v32/gnu directory; - Remove code unrelated to the xuantie_smartl_fpga demo;
Removed dead code from riscv64/gnu port
Added a RISC-V32 QEMU-virt example
Added a missing symbol to tx_api.h for TX SMP.
Added ax attribute to ThreadX module example build preamble.S files
- removed the REGBYTES, STORE/LOAD macros Signed-off-by: Akif Ejaz <akif.ejaz@10xengineers.ai>
Signed-off-by: Akif Ejaz <akif.ejaz@10xengineers.ai>
Updated the QEMU examples to match the new RV port format
Fixed VFP build failure in Cortex-A tx_thread_schedule.S
Added support for the XuanTie E906 CPU.
Added a RV32 Clang port
* Updated version number constants * Removed revision history from all files * Added Eclipse ThreadX contributors' copyright header
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.