fvp: expose the dockerfiles used by LAVA
The LAVA lab has the fvp device type [1], able to launch FVP models (model)
embededded in docker images and these are created based on docker
files. This commit provides the docker files currently being used by
LAVA.
One important point to notice: in most cases, these images embeds a
specific model (image:model 1:1) but there is one,
fvp/fvp_arm_std_library_11.12_38/Dockerfile, which contains
several (cortex-a) models (image:models 1:n).
Unfortunately, there is no automatic way to build them: user must
first fetch the model tarball then build the image. Simple
instructions are provided in the README file.
[1] https://tf.validation.linaro.org/scheduler/device_type/fvp
Signed-off-by: Leonardo Sandoval <leonardo.sandoval@linaro.org>
Change-Id: I91bba06186a7048407eae121066c3c2dfab56156
diff --git a/bionic-amd64-fvp/README b/bionic-amd64-fvp/README
new file mode 100644
index 0000000..5ce6693
--- /dev/null
+++ b/bionic-amd64-fvp/README
@@ -0,0 +1,13 @@
+FVP
+---
+
+Dockerfiles used by LAVA to launch FVP models. To create a docker image, download
+manually the FVP model from https://silver.arm.com/browse/FM000, place it in the corresponding
+folder and create it, i.e.
+
+```bash
+$ cd fvp_rd_e1_edge_11.10_36
+$ # fetch model from Arm and place it at current directory
+$ tag=fvp_rd_e1_edge_11.10_36
+$ docker build --tag fvp:$tag .
+```
diff --git a/bionic-amd64-fvp/foundation_platform_11.12_38/Dockerfile b/bionic-amd64-fvp/foundation_platform_11.12_38/Dockerfile
new file mode 100644
index 0000000..445d76d
--- /dev/null
+++ b/bionic-amd64-fvp/foundation_platform_11.12_38/Dockerfile
@@ -0,0 +1,20 @@
+FROM ubuntu:bionic as FVP
+
+RUN apt-get update && \
+ apt-get install --no-install-recommends --yes bc libatomic1 telnet libdbus-1-3 xterm && \
+ rm -rf /var/cache/apt
+
+FROM FVP
+
+WORKDIR /opt/model
+
+# Add the FVP model tarball
+# NOTE: some tarballs contain an installer script others don't, so it may be the case
+# that the ADD instruction do install the model under /opt/model
+ADD Foundation_Platform_11.12_38.tgz .
+
+# Install packages and model
+RUN /opt/model/Foundation_Platform.sh \
+ --i-agree-to-the-contained-eula \
+ --verbose \
+ --destination /opt/model/Foundation_Platform && rm -f /opt/model/Foundation_Platform.sh || true
diff --git a/bionic-amd64-fvp/fvp_arm_std_library_11.12_38/Dockerfile b/bionic-amd64-fvp/fvp_arm_std_library_11.12_38/Dockerfile
new file mode 100644
index 0000000..0c28713
--- /dev/null
+++ b/bionic-amd64-fvp/fvp_arm_std_library_11.12_38/Dockerfile
@@ -0,0 +1,20 @@
+FROM ubuntu:bionic as FVP
+
+RUN apt-get update && \
+ apt-get install --no-install-recommends --yes bc libatomic1 telnet libdbus-1-3 xterm && \
+ rm -rf /var/cache/apt
+
+FROM FVP
+
+WORKDIR /opt/model
+
+# Add the FVP model tarball
+# NOTE: some tarballs contain an installer script others don't, so it may be the case
+# that the ADD instruction do install the model under /opt/model
+ADD FVP_ARM_Std_Library_11.12_38.tgz .
+
+# Install packages and model
+RUN /opt/model/FVP_ARM_Std_Library.sh \
+ --i-agree-to-the-contained-eula \
+ --verbose \
+ --destination /opt/model/FVP_ARM_Std_Library && rm -f /opt/model/FVP_ARM_Std_Library.sh || true
diff --git a/bionic-amd64-fvp/fvp_base_revc-2xaemv8a_11.12_38/Dockerfile b/bionic-amd64-fvp/fvp_base_revc-2xaemv8a_11.12_38/Dockerfile
new file mode 100644
index 0000000..9e013b6
--- /dev/null
+++ b/bionic-amd64-fvp/fvp_base_revc-2xaemv8a_11.12_38/Dockerfile
@@ -0,0 +1,20 @@
+FROM ubuntu:bionic as FVP
+
+RUN apt-get update && \
+ apt-get install --no-install-recommends --yes bc libatomic1 telnet libdbus-1-3 xterm && \
+ rm -rf /var/cache/apt
+
+FROM FVP
+
+WORKDIR /opt/model
+
+# Add the FVP model tarball
+# NOTE: some tarballs contain an installer script others don't, so it may be the case
+# that the ADD instruction do install the model under /opt/model
+ADD FVP_Base_RevC-2xAEMv8A_11.12_38.tgz .
+
+# Install packages and model
+RUN /opt/model/FVP_Base_RevC-2xAEMv8A.sh \
+ --i-agree-to-the-contained-eula \
+ --verbose \
+ --destination /opt/model/FVP_Base_RevC-2xAEMv8A && rm -f /opt/model/FVP_Base_RevC-2xAEMv8A.sh || true
diff --git a/bionic-amd64-fvp/fvp_css_sgi-575_11.10_36/Dockerfile b/bionic-amd64-fvp/fvp_css_sgi-575_11.10_36/Dockerfile
new file mode 100644
index 0000000..a3d5f13
--- /dev/null
+++ b/bionic-amd64-fvp/fvp_css_sgi-575_11.10_36/Dockerfile
@@ -0,0 +1,20 @@
+FROM ubuntu:bionic as FVP
+
+RUN apt-get update && \
+ apt-get install --no-install-recommends --yes bc libatomic1 telnet libdbus-1-3 xterm && \
+ rm -rf /var/cache/apt
+
+FROM FVP
+
+WORKDIR /opt/model
+
+# Add the FVP model tarball
+# NOTE: some tarballs contain an installer script others don't, so it may be the case
+# that the ADD instruction do install the model under /opt/model
+ADD FVP_CSS_SGI-575_11.10_36.tgz .
+
+# Install packages and model
+RUN /opt/model/FVP_CSS_SGI-575.sh \
+ --i-agree-to-the-contained-eula \
+ --verbose \
+ --destination /opt/model/FVP_CSS_SGI-575 && rm -f /opt/model/FVP_CSS_SGI-575.sh || true
diff --git a/bionic-amd64-fvp/fvp_mps2_aemv8m_11.12_38/Dockerfile b/bionic-amd64-fvp/fvp_mps2_aemv8m_11.12_38/Dockerfile
new file mode 100644
index 0000000..2dfbb7a
--- /dev/null
+++ b/bionic-amd64-fvp/fvp_mps2_aemv8m_11.12_38/Dockerfile
@@ -0,0 +1,20 @@
+FROM ubuntu:bionic as FVP
+
+RUN apt-get update && \
+ apt-get install --no-install-recommends --yes bc libatomic1 telnet libdbus-1-3 xterm && \
+ rm -rf /var/cache/apt
+
+FROM FVP
+
+WORKDIR /opt/model
+
+# Add the FVP model tarball
+# NOTE: some tarballs contain an installer script others don't, so it may be the case
+# that the ADD instruction do install the model under /opt/model
+ADD FVP_MPS2_AEMv8M_11.12_38.tgz .
+
+# Install packages and model
+RUN /opt/model/FVP_MPS2_AEMv8M.sh \
+ --i-agree-to-the-contained-eula \
+ --verbose \
+ --destination /opt/model/FVP_MPS2_AEMv8M && rm -f /opt/model/FVP_MPS2_AEMv8M.sh || true
diff --git a/bionic-amd64-fvp/fvp_rd_e1_edge_11.10_36/Dockerfile b/bionic-amd64-fvp/fvp_rd_e1_edge_11.10_36/Dockerfile
new file mode 100644
index 0000000..090cd6f
--- /dev/null
+++ b/bionic-amd64-fvp/fvp_rd_e1_edge_11.10_36/Dockerfile
@@ -0,0 +1,20 @@
+FROM ubuntu:bionic as FVP
+
+RUN apt-get update && \
+ apt-get install --no-install-recommends --yes bc libatomic1 telnet libdbus-1-3 xterm && \
+ rm -rf /var/cache/apt
+
+FROM FVP
+
+WORKDIR /opt/model
+
+# Add the FVP model tarball
+# NOTE: some tarballs contain an installer script others don't, so it may be the case
+# that the ADD instruction do install the model under /opt/model
+ADD FVP_RD_E1_edge_11.10_36.tgz .
+
+# Install packages and model
+RUN /opt/model/FVP_RD_E1_edge.sh \
+ --i-agree-to-the-contained-eula \
+ --verbose \
+ --destination /opt/model/FVP_RD_E1_edge && rm -f /opt/model/FVP_RD_E1_edge.sh || true
diff --git a/bionic-amd64-fvp/fvp_rd_n1_edge_11.10_36/Dockerfile b/bionic-amd64-fvp/fvp_rd_n1_edge_11.10_36/Dockerfile
new file mode 100644
index 0000000..ec19aa4
--- /dev/null
+++ b/bionic-amd64-fvp/fvp_rd_n1_edge_11.10_36/Dockerfile
@@ -0,0 +1,20 @@
+FROM ubuntu:bionic as FVP
+
+RUN apt-get update && \
+ apt-get install --no-install-recommends --yes bc libatomic1 telnet libdbus-1-3 xterm && \
+ rm -rf /var/cache/apt
+
+FROM FVP
+
+WORKDIR /opt/model
+
+# Add the FVP model tarball
+# NOTE: some tarballs contain an installer script others don't, so it may be the case
+# that the ADD instruction do install the model under /opt/model
+ADD FVP_RD_N1_edge_11.10_36.tgz .
+
+# Install packages and model
+RUN /opt/model/FVP_RD_N1_edge.sh \
+ --i-agree-to-the-contained-eula \
+ --verbose \
+ --destination /opt/model/FVP_RD_N1_edge && rm -f /opt/model/FVP_RD_N1_edge.sh || true