Files
retroSoC/.github/workflows/test.yml
T

58 lines
1.8 KiB
YAML

name: test
on:
push:
branches: [ main, dev ]
pull_request:
branches: [ main, dev ]
jobs:
build:
runs-on: ubuntu-22.04
steps:
- name: Checkout Repository
uses: actions/checkout@v4
- name: Download and Extract RISC-V Toolchain
run: |
wget https://github.com/riscv-collab/riscv-gnu-toolchain/releases/download/2025.05.01/riscv32-elf-ubuntu-22.04-gcc-nightly-2025.05.01-nightly.tar.xz
tar -xvf riscv32-elf-ubuntu-22.04-gcc-nightly-2025.05.01-nightly.tar.xz -C /tmp
toolchain_bin="/tmp/riscv/bin"
echo "RISCV_TOOLCHAIN_BIN=$toolchain_bin" >> $GITHUB_ENV
echo "$toolchain_bin" >> $GITHUB_PATH
- name: Test RISC-V Toolchain
run: |
echo "The toolchain path is $RISCV_TOOLCHAIN_BIN"
riscv32-unknown-elf-gcc --version
- name: Setup Verilator and MPW Repo
run: python3 setup.py
- name: Config FatFs and Coremark Repo
run: python3 app/setup.py
- name: Compile Firmware
run: make CORE=MDD IP=MDD SIMU=VERILATOR HAVE_SRAM_IF=NO HAVE_SRAM_MACRO=NO HAVE_PLL=NO ISA=RV32IM EXEC_TYPE=ld2_psram firmware
- name: Build and Run sim
run: make CORE=MDD IP=MDD SIMU=VERILATOR HAVE_SRAM_IF=NO HAVE_SRAM_MACRO=NO HAVE_PLL=NO ISA=RV32IM EXEC_TYPE=ld2_psram sim
- name: Success Notification
run: echo "Workflow completed successfully"
# jobs:
# lint-tgt:
# name: SystemVerilog Lint
# runs-on: ubuntu-latest
# steps:
# - uses: actions/checkout@v3
# - uses: chipsalliance/verible-linter-action@main
# with:
# paths: |
# ./rtl
# # extra_args: "--waiver_files lint/common_cells.style.waiver --rules=-interface-name-style --lint_fatal"
# # github_token: ${{ secrets.GITHUB_TOKEN }}
# # reviewdog_reporter: github-check