Skip to content

Commit

Permalink
[ci] Add CW340 build to pipeline for master branch
Browse files Browse the repository at this point in the history
This will add CW340 builds to the bitstream caches, so tooling and
software development may proceed without each developer needing to build
the design.

Signed-off-by: Alexander Williams <[email protected]>
  • Loading branch information
a-will committed Aug 3, 2023
1 parent f723841 commit 0b98603
Showing 1 changed file with 47 additions and 0 deletions.
47 changes: 47 additions & 0 deletions azure-pipelines.yml
Original file line number Diff line number Diff line change
Expand Up @@ -501,6 +501,50 @@ jobs:
displayName: Upload artifacts for CW310
condition: failed()

- job: chip_earlgrey_cw340
displayName: CW340's Earl Grey Bitstream
# Build CW340 variant of the Earl Grey toplevel design using Vivado
dependsOn:
- lint
condition: and(succeeded(), eq(dependencies.lint.outputs['DetermineBuildType.onlyDocChanges'], '0'), eq(dependencies.lint.outputs['DetermineBuildType.onlyDvChanges'], '0'), eq(dependencies.lint.outputs['DetermineBuildType.onlyCdcChanges'], '0'), eq(variables['Build.SourceBranchName'], 'master'))
pool: ci-public-eda
timeoutInMinutes: 150
steps:
- template: ci/checkout-template.yml
- template: ci/install-package-dependencies.yml
- bash: |
set -ex
trap 'get_logs' EXIT
get_logs() {
mkdir -p $OBJ_DIR/hw/top_earlgrey/chip_earlgrey_cw340/
cp -rLvt $OBJ_DIR/hw/top_earlgrey/chip_earlgrey_cw340/ \
$($REPO_TOP/bazelisk.sh outquery-all //hw/bitstream/vivado:fpga_cw340)
bitstream_archive=$($REPO_TOP/bazelisk.sh outquery \
//hw/bitstream/vivado:earlgrey_cw340_archive)
cp -Lv ${bitstream_archive} ${BUILD_ROOT}/build-bin.tar
}
. util/build_consts.sh
module load "xilinx/vivado/$(VIVADO_VERSION)"
ci/bazelisk.sh build //hw/bitstream/vivado:earlgrey_cw340_archive
displayName: Build bitstream with Vivado
- bash: |
. util/build_consts.sh
echo "Synthesis log"
cat $OBJ_DIR/hw/top_earlgrey/chip_earlgrey_cw340/build.fpga_cw340/synth-vivado/lowrisc_systems_chip_earlgrey_cw340_0.1.runs/synth_1/runme.log || true
echo "Implementation log"
cat $OBJ_DIR/hw/top_earlgrey/chip_earlgrey_cw340/build.fpga_cw340/synth-vivado/lowrisc_systems_chip_earlgrey_cw340_0.1.runs/impl_1/runme.log || true
displayName: Display synthesis & implementation logs
condition: succeededOrFailed()
- publish: "$(Build.ArtifactStagingDirectory)/build-bin.tar"
artifact: partial-build-bin-$(System.PhaseName)
displayName: Upload step outputs
- publish: "$(Build.ArtifactStagingDirectory)"
artifact: chip_earlgrey_cw340-build-out
displayName: Upload artifacts for CW340
condition: failed()

- job: chip_englishbreakfast_cw305
displayName: CW305's Bitstream
# Build CW305 variant of the English Breakfast toplevel design using Vivado
Expand Down Expand Up @@ -532,13 +576,15 @@ jobs:
dependsOn:
- chip_earlgrey_cw310
- chip_earlgrey_cw310_hyperdebug
- chip_earlgrey_cw340_hyperdebug
condition: eq(variables['Build.SourceBranchName'], 'master')
steps:
- template: ci/download-artifacts-template.yml
parameters:
downloadPartialBuildBinFrom:
- chip_earlgrey_cw310
- chip_earlgrey_cw310_hyperdebug
- chip_earlgrey_cw340
- bash: |
set -x
. util/build_consts.sh
Expand All @@ -547,6 +593,7 @@ jobs:
fragmentFiles:
- "$BIN_DIR/hw/top_earlgrey/chip_earlgrey_cw310/manifest.json"
- "$BIN_DIR/hw/top_earlgrey/chip_earlgrey_cw310_hyperdebug/manifest.json"
- "$BIN_DIR/hw/top_earlgrey/chip_earlgrey_cw340/manifest.json"
gcpKeyFile: "gcpkey.json"
bucketURI: "gs://opentitan-bitstreams/master"

Expand Down

0 comments on commit 0b98603

Please sign in to comment.