Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
102 changes: 102 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,102 @@
name: SampleX CI Verification Pipeline

on:
push:
branches: [ main, master, 'feat/**' ]
pull_request:
branches: [ main, master ]

jobs:
build-arm-stm32:
name: Build STM32 NUCLEO_F401RE (ARM Cortex-M4)
runs-on: ubuntu-24.04
steps:
- name: Checkout Repository
uses: actions/checkout@v4
with:
submodules: recursive

- name: Install Build Tools and ARM Toolchain
run: |
sudo apt-get update
sudo apt-get install -y cmake ninja-build gcc-arm-none-eabi libnewlib-arm-none-eabi
- name: Build NUCLEO_F401RE Target
run: |
bash targets/STMicroelectronics/NUCLEO_F401RE/scripts/build.sh --rebuild
- name: Verify ELF Binary Generation
run: |
test -f targets/STMicroelectronics/NUCLEO_F401RE/build/app/nucleo_f401re.elf
echo "[OK] NUCLEO_F401RE ELF binary verified successfully."
build-riscv-polarfire:
name: Build PolarFire SoC Icicle Kit (64-Bit RISC-V)
runs-on: ubuntu-24.04
steps:
- name: Checkout Repository
uses: actions/checkout@v4
with:
submodules: recursive

- name: Install CMake and Ninja
run: |
sudo apt-get update
sudo apt-get install -y cmake ninja-build
- name: Install Pinned xPack RISC-V GCC 14.2.0
run: |
wget -q https://github.com/xpack-dev-tools/riscv-none-elf-gcc-xpack/releases/download/v14.2.0-1/xpack-riscv-none-elf-gcc-14.2.0-1-linux-x64.tar.gz
mkdir -p $HOME/riscv-gcc
tar -xzf xpack-riscv-none-elf-gcc-14.2.0-1-linux-x64.tar.gz -C $HOME/riscv-gcc --strip-components=1
rm xpack-riscv-none-elf-gcc-14.2.0-1-linux-x64.tar.gz
echo "$HOME/riscv-gcc/bin" >> $GITHUB_PATH
- name: Build SampleX PolarFire Condition-Monitoring Demo
run: |
bash targets/Microchip/POLARFIRE_ICICLE_RENODE/scripts/build.sh --rebuild
- name: Verify SampleX Demo ELF
run: |
test -f targets/Microchip/POLARFIRE_ICICLE_RENODE/build/app/polarfire_icicle_demo.elf
echo "[OK] PolarFire SampleX demo ELF verified."
- name: Archive Built PolarFire ELF
uses: actions/upload-artifact@v4
with:
name: polarfire-demo-elf
path: targets/Microchip/POLARFIRE_ICICLE_RENODE/build/app/polarfire_icicle_demo.elf
retention-days: 1

test-polarfire-renode:
name: Headless Renode Emulation & Assertion Test
needs: build-riscv-polarfire
runs-on: ubuntu-24.04
steps:
- name: Checkout Repository
uses: actions/checkout@v4
with:
submodules: recursive

- name: Set Up Python
uses: actions/setup-python@v5
with:
python-version: "3.11"

- name: Download Built PolarFire ELF
uses: actions/download-artifact@v4
with:
name: polarfire-demo-elf
path: targets/Microchip/POLARFIRE_ICICLE_RENODE/build/app

- name: Install Portable Renode Emulation Environment
run: |
wget -q https://builds.renode.io/renode-latest.linux-portable.tar.gz
mkdir -p $HOME/renode
tar -xzf renode-latest.linux-portable.tar.gz -C $HOME/renode --strip-components=1
rm renode-latest.linux-portable.tar.gz
echo "$HOME/renode" >> $GITHUB_PATH
- name: Run Deterministic Headless Renode Test
run: |
python3 targets/Microchip/POLARFIRE_ICICLE_RENODE/scripts/test_renode.py
5 changes: 0 additions & 5 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -22,10 +22,5 @@ CTestTestfile.cmake
*.map
#*.a
*.htm
*.gdb
*.log
shared/lib/netxduo/*
shared/lib/threadx/*
STMicroelectronics/STM32F767ZI-Nucleo/lib/stm32cubef7/
STMicroelectronics/STM32F767ZI-Nucleo/lib/netxduo/

4 changes: 0 additions & 4 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -7,16 +7,12 @@
[submodule "libs/threadx"]
path = libs/threadx
url = https://github.com/eclipse-threadx/threadx.git
branch = dev
[submodule "libs/netxduo"]
path = libs/netxduo
url = https://github.com/eclipse-threadx/netxduo.git
branch = dev
[submodule "libs/usbx"]
path = libs/usbx
url = https://github.com/eclipse-threadx/usbx.git
branch = dev
[submodule "libs/filex"]
path = libs/filex
url = https://github.com/eclipse-threadx/filex.git
branch = dev
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@

This repository will contain up-to-date samples for several development boards tracking the latest ThreadX releases.

Among others, it hosts a restructured, self-contained version of the application available in the [iot-devkit](https://github.com/eclipse-threadx/iot-devkit) repository. That particular repository will eventually be archived.
For the time being, it hosts a restructured, self-contained version of the application available in the [iot-devkit](https://github.com/eclipse-threadx/iot-devkit) repository.

## Cloning this repository
Eclipse ThreadX, Eclipse ThreadX NetX Duo, Eclipse ThreadX USBX, and Eclipse FileX are included as submodules.
Expand Down
38 changes: 10 additions & 28 deletions SECURITY.md
Original file line number Diff line number Diff line change
@@ -1,39 +1,21 @@
# Security Policy

This Eclipse Foundation Project adheres to the [Eclipse Foundation Vulnerability Reporting Policy](https://www.eclipse.org/security/policy/).
## Supported Versions

## How To Report a Vulnerability
For the time being, the contents of this repository are not in scope for quarterly releases. New versions will be published as needed to address bugs, vulnerabilities, or integrated updated third-party components.

If you think you have found a vulnerability in this repository, please report it to us through coordinated disclosure.
## Reporting a Vulnerability

**Please do not report security vulnerabilities through public issues, discussions, or change requests.**
If you think you have found a vulnerability in Eclipse ThreadX or one of its companion components, you can report it using one of the following ways:

Instead, [report it privately here](https://github.com/eclipse-threadx/samplex/security/advisories/new) on GitHub
* Contact the [Eclipse Foundation Security Team](mailto:security@eclipse-foundation.org)
* [Report a Vulnerability](https://github.com/eclipse-threadx/threadx/security/advisories/new)

You can find more information about reporting and disclosure at the [Eclipse Foundation Security page](https://www.eclipse.org/security/).

Please include as much of the information listed below as you can to help us better understand and resolve the issue:

* The type of issue (e.g., buffer overflow, SQL injection, or cross-site scripting)
* Affected version(s)
* Impact of the issue, including how an attacker might exploit the issue
* Step-by-step instructions to reproduce the issue
* The location of the affected source code (tag/branch/commit or direct URL)
* Full paths of source file(s) related to the manifestation of the issue
* Configuration required to reproduce the issue
* Log files that are related to this issue (if possible)
* Proof-of-concept or exploit code (if possible)

This information will help us triage your report more quickly.

## Supported Versions

| Version | Supported |
| ------- | ------------------ |
| 6.5.x | :white_check_mark: |

Eclipse ThreadX publishes a release every quarter. There are no long-term support branches or backports to older releases.
## Security Policy

Normally, fixes for non-critical vulnerabilities will ship in a regularly scheduled quarterly release. If fixes for an urgent or critical vulnerability must ship quickly, then the project will publish a hotfix release of the affected component(s) without waiting for the next quarterly release.
This project follows [Eclipse Foundation Vulnerability Reporting Policy](https://www.eclipse.org/security/policy/).

You can learn more about the [project's release cadence in this blog post](https://blogs.eclipse.org/post/fr%C3%A9d%C3%A9ric-desbiens/eclipse-threadx-more-predictable-more-open).
## About this repository
This repository contains only sample code for learning and evaluation purposes. It is not part of the core Eclipse ThreadX release process.
Loading