litex f4pga upsilon vexriscv smp compiles

This commit is contained in:
Peter McGoron 2023-05-30 17:34:00 -04:00
parent 2dc3ade632
commit 0b09bc26d5
6 changed files with 22 additions and 14 deletions

3
.gitignore vendored
View File

@ -4,3 +4,6 @@ f4pga/
litex/
opensbi/
upsilon/
.venv
upsilon.tar.gz
f4pga.tar.gz

View File

@ -11,18 +11,19 @@ help:
images: hardware-image buildroot-image
hardware-image: f4pga/scripts/prepare_environment.sh litex/litex_setup.py
docker build -f Dockerfile.litex_f4pga -t "upsilon-litex-f4pga-env" .
hardware-image:
docker build -f scripts/Dockerfile.litex_f4pga -t "upsilon-litex-f4pga-env" .
buildroot-image: buildroot.tar.gz
docker build -f Dockerfile.buildroot -t "upsilon-buildroot-env" .
docker build -f scripts/Dockerfile.buildroot -t "upsilon-buildroot-env" .
###### Containers
hardware-container:
docker run -d --name upsilon-hardware-container upsilon-litex-f4pga-env /bin/sh -c 'while true; do sleep 2; done'
hardware-container-copy: upsilon.tar.gz
docker cp upsilon.tar.gz upsilon-hardware-container:/home/user/upsilon.tar.gz
# XXX: this always fails if there are very high UIDs
-docker cp upsilon.tar.gz upsilon-hardware-container:/home/user/upsilon.tar.gz
hardware-container-shell:
docker exec -ti upsilon-hardware-container /bin/bash -l
hardware-container-clean:

View File

@ -6,24 +6,28 @@ ENV F4PGA_INSTALL_DIR=/home/user/conda
RUN apt-get update \
&& apt-get -y upgrade \
&& apt-get install -y git wget python3 xz-utils bash verilator \
m4 device-tree-compiler make gcc-riscv64-unknown-elf \
m4 device-tree-compiler make gcc-riscv64-unknown-elf vi \
&& adduser --quiet --disabled-password user
EXPOSE 22
USER user:user
WORKDIR /home/user
COPY --chown=user:user f4pga.tar.gz /home/user
COPY --chown=user:user install_f4pga_defs.sh /home/user
RUN tar -xvf f4pga.tar.gz \
&& rm f4pga.tar.gz
RUN cd f4pga/scripts/ \
&& sed -i 's/sudo/#sudo/g' ./prepare_environment.sh \
&& ./prepare_environment.sh \
# F4PGA
COPY --chown=user:user scripts/install_f4pga_defs.sh /home/user
RUN chmod +x install_f4pga_defs.sh \
&& ./install_f4pga_defs.sh \
&& echo 'source ~/conda/xc7/conda/etc/profile.d/conda.sh' >> /home/user/.bashrc \
&& echo 'conda activate xc7' >> /home/user/.bashrc
RUN cd f4pga/f4pga && bash -c 'source ~/conda/xc7/conda/etc/profile.d/conda.sh; conda activate xc7; pip install . ninja meson'
&& echo 'conda activate xc7' >> /home/user/.bashrc \
&& rm install_f4pga_defs.sh
COPY --chown=user:user f4pga.tar.gz /home/user
RUN tar -xvf f4pga.tar.gz \
&& rm f4pga.tar.gz \
&& cd f4pga/f4pga \
&& bash -c 'source ~/conda/xc7/conda/etc/profile.d/conda.sh; conda activate xc7; pip install . ninja meson'
#LITEX
COPY --chown=user:user litex/litex_setup.py /home/user
RUN mkdir /home/user/litex \
&& chmod +x litex_setup.py \

0
scripts/install_f4pga_defs.sh Normal file → Executable file
View File