[PATCH v3 rtems master 3/3] ZYNQ7000: Add support PYNQ, PicoZed, MicroZed, ZYBO and ZYBO Z7

Bernd Moessner berndmoessner80 at gmail.com
Tue Nov 21 19:42:05 UTC 2023


This patch adds basic support for the following boards:

xilinx_zynq_pynq - PYNQ Z1 / Z2
xilinx_zynq_microzed - MicroZed 7010 / 7020
xilinx_zynq_picozed - PicoZed 7010 / 7015 / 7020 / 7030
xilinx_zynq_zybo - ZYBO
xilinx_zynq_zybo_z7 - ZYBO Z7-10 / Z7-20

N.b. Arty Z7-20 is basically a PYNQ Z1 - different board
color and updated Eth PHY.
---
 .../xilinx_zynq_microzed-testsuite.tcfg       |  7 +++++++
 .../config/xilinx_zynq_microzed.cfg           |  1 +
 .../config/xilinx_zynq_picozed-testsuite.tcfg |  7 +++++++
 .../config/xilinx_zynq_picozed.cfg            |  1 +
 .../config/xilinx_zynq_pynq-testsuite.tcfg    |  7 +++++++
 .../xilinx-zynq/config/xilinx_zynq_pynq.cfg   |  1 +
 .../config/xilinx_zynq_zybo-testsuite.tcfg    |  7 +++++++
 .../xilinx-zynq/config/xilinx_zynq_zybo.cfg   |  1 +
 .../config/xilinx_zynq_zybo_z7-testsuite.tcfg |  7 +++++++
 .../config/xilinx_zynq_zybo_z7.cfg            |  1 +
 .../bsps/arm/xilinx-zynq/bspmicrozed.yml      | 19 +++++++++++++++++++
 .../build/bsps/arm/xilinx-zynq/bsppicozed.yml | 19 +++++++++++++++++++
 spec/build/bsps/arm/xilinx-zynq/bsppynq.yml   | 19 +++++++++++++++++++
 spec/build/bsps/arm/xilinx-zynq/bspzybo.yml   | 19 +++++++++++++++++++
 spec/build/bsps/arm/xilinx-zynq/bspzyboz7.yml | 19 +++++++++++++++++++
 .../bsps/arm/xilinx-zynq/opta9periphclk.yml   | 12 ++++++++++--
 .../bsps/arm/xilinx-zynq/optclkcpu1x.yml      |  5 +++++
 .../build/bsps/arm/xilinx-zynq/optclkuart.yml |  5 +++++
 spec/build/bsps/arm/xilinx-zynq/optramlen.yml |  9 ++++++++-
 spec/build/bsps/optconminor.yml               |  3 +++
 spec/build/cpukit/optsmp.yml                  |  6 ++++++
 21 files changed, 172 insertions(+), 3 deletions(-)
 create mode 100755 bsps/arm/xilinx-zynq/config/xilinx_zynq_microzed-testsuite.tcfg
 create mode 100755 bsps/arm/xilinx-zynq/config/xilinx_zynq_microzed.cfg
 create mode 100755 bsps/arm/xilinx-zynq/config/xilinx_zynq_picozed-testsuite.tcfg
 create mode 100755 bsps/arm/xilinx-zynq/config/xilinx_zynq_picozed.cfg
 create mode 100755 bsps/arm/xilinx-zynq/config/xilinx_zynq_pynq-testsuite.tcfg
 create mode 100755 bsps/arm/xilinx-zynq/config/xilinx_zynq_pynq.cfg
 create mode 100755 bsps/arm/xilinx-zynq/config/xilinx_zynq_zybo-testsuite.tcfg
 create mode 100755 bsps/arm/xilinx-zynq/config/xilinx_zynq_zybo.cfg
 create mode 100755 bsps/arm/xilinx-zynq/config/xilinx_zynq_zybo_z7-testsuite.tcfg
 create mode 100755 bsps/arm/xilinx-zynq/config/xilinx_zynq_zybo_z7.cfg
 create mode 100644 spec/build/bsps/arm/xilinx-zynq/bspmicrozed.yml
 create mode 100644 spec/build/bsps/arm/xilinx-zynq/bsppicozed.yml
 create mode 100644 spec/build/bsps/arm/xilinx-zynq/bsppynq.yml
 create mode 100644 spec/build/bsps/arm/xilinx-zynq/bspzybo.yml
 create mode 100644 spec/build/bsps/arm/xilinx-zynq/bspzyboz7.yml

diff --git a/bsps/arm/xilinx-zynq/config/xilinx_zynq_microzed-testsuite.tcfg b/bsps/arm/xilinx-zynq/config/xilinx_zynq_microzed-testsuite.tcfg
new file mode 100755
index 0000000000..ba80faab99
--- /dev/null
+++ b/bsps/arm/xilinx-zynq/config/xilinx_zynq_microzed-testsuite.tcfg
@@ -0,0 +1,7 @@
+#
+# Xilinx Zedboard RTEMS Test Database.
+#
+# Format is one line per test that is _NOT_ built.
+#
+
+include: xilinx_zynq-testsuite.tcfg
diff --git a/bsps/arm/xilinx-zynq/config/xilinx_zynq_microzed.cfg b/bsps/arm/xilinx-zynq/config/xilinx_zynq_microzed.cfg
new file mode 100755
index 0000000000..2de871d46e
--- /dev/null
+++ b/bsps/arm/xilinx-zynq/config/xilinx_zynq_microzed.cfg
@@ -0,0 +1 @@
+include $(RTEMS_ROOT)/make/custom/xilinx_zynq.inc
diff --git a/bsps/arm/xilinx-zynq/config/xilinx_zynq_picozed-testsuite.tcfg b/bsps/arm/xilinx-zynq/config/xilinx_zynq_picozed-testsuite.tcfg
new file mode 100755
index 0000000000..ba80faab99
--- /dev/null
+++ b/bsps/arm/xilinx-zynq/config/xilinx_zynq_picozed-testsuite.tcfg
@@ -0,0 +1,7 @@
+#
+# Xilinx Zedboard RTEMS Test Database.
+#
+# Format is one line per test that is _NOT_ built.
+#
+
+include: xilinx_zynq-testsuite.tcfg
diff --git a/bsps/arm/xilinx-zynq/config/xilinx_zynq_picozed.cfg b/bsps/arm/xilinx-zynq/config/xilinx_zynq_picozed.cfg
new file mode 100755
index 0000000000..2de871d46e
--- /dev/null
+++ b/bsps/arm/xilinx-zynq/config/xilinx_zynq_picozed.cfg
@@ -0,0 +1 @@
+include $(RTEMS_ROOT)/make/custom/xilinx_zynq.inc
diff --git a/bsps/arm/xilinx-zynq/config/xilinx_zynq_pynq-testsuite.tcfg b/bsps/arm/xilinx-zynq/config/xilinx_zynq_pynq-testsuite.tcfg
new file mode 100755
index 0000000000..ba80faab99
--- /dev/null
+++ b/bsps/arm/xilinx-zynq/config/xilinx_zynq_pynq-testsuite.tcfg
@@ -0,0 +1,7 @@
+#
+# Xilinx Zedboard RTEMS Test Database.
+#
+# Format is one line per test that is _NOT_ built.
+#
+
+include: xilinx_zynq-testsuite.tcfg
diff --git a/bsps/arm/xilinx-zynq/config/xilinx_zynq_pynq.cfg b/bsps/arm/xilinx-zynq/config/xilinx_zynq_pynq.cfg
new file mode 100755
index 0000000000..2de871d46e
--- /dev/null
+++ b/bsps/arm/xilinx-zynq/config/xilinx_zynq_pynq.cfg
@@ -0,0 +1 @@
+include $(RTEMS_ROOT)/make/custom/xilinx_zynq.inc
diff --git a/bsps/arm/xilinx-zynq/config/xilinx_zynq_zybo-testsuite.tcfg b/bsps/arm/xilinx-zynq/config/xilinx_zynq_zybo-testsuite.tcfg
new file mode 100755
index 0000000000..ba80faab99
--- /dev/null
+++ b/bsps/arm/xilinx-zynq/config/xilinx_zynq_zybo-testsuite.tcfg
@@ -0,0 +1,7 @@
+#
+# Xilinx Zedboard RTEMS Test Database.
+#
+# Format is one line per test that is _NOT_ built.
+#
+
+include: xilinx_zynq-testsuite.tcfg
diff --git a/bsps/arm/xilinx-zynq/config/xilinx_zynq_zybo.cfg b/bsps/arm/xilinx-zynq/config/xilinx_zynq_zybo.cfg
new file mode 100755
index 0000000000..2de871d46e
--- /dev/null
+++ b/bsps/arm/xilinx-zynq/config/xilinx_zynq_zybo.cfg
@@ -0,0 +1 @@
+include $(RTEMS_ROOT)/make/custom/xilinx_zynq.inc
diff --git a/bsps/arm/xilinx-zynq/config/xilinx_zynq_zybo_z7-testsuite.tcfg b/bsps/arm/xilinx-zynq/config/xilinx_zynq_zybo_z7-testsuite.tcfg
new file mode 100755
index 0000000000..ba80faab99
--- /dev/null
+++ b/bsps/arm/xilinx-zynq/config/xilinx_zynq_zybo_z7-testsuite.tcfg
@@ -0,0 +1,7 @@
+#
+# Xilinx Zedboard RTEMS Test Database.
+#
+# Format is one line per test that is _NOT_ built.
+#
+
+include: xilinx_zynq-testsuite.tcfg
diff --git a/bsps/arm/xilinx-zynq/config/xilinx_zynq_zybo_z7.cfg b/bsps/arm/xilinx-zynq/config/xilinx_zynq_zybo_z7.cfg
new file mode 100755
index 0000000000..2de871d46e
--- /dev/null
+++ b/bsps/arm/xilinx-zynq/config/xilinx_zynq_zybo_z7.cfg
@@ -0,0 +1 @@
+include $(RTEMS_ROOT)/make/custom/xilinx_zynq.inc
diff --git a/spec/build/bsps/arm/xilinx-zynq/bspmicrozed.yml b/spec/build/bsps/arm/xilinx-zynq/bspmicrozed.yml
new file mode 100644
index 0000000000..6bd9f617af
--- /dev/null
+++ b/spec/build/bsps/arm/xilinx-zynq/bspmicrozed.yml
@@ -0,0 +1,19 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+arch: arm
+bsp: xilinx_zynq_microzed
+build-type: bsp
+cflags: []
+copyrights:
+- Copyright (C) 2023 B. Moessner
+cppflags: []
+enabled-by: true
+family: xilinx-zynq
+includes: []
+install: []
+links:
+- role: build-dependency
+  uid: ../../opto2
+- role: build-dependency
+  uid: grp
+source: []
+type: build
diff --git a/spec/build/bsps/arm/xilinx-zynq/bsppicozed.yml b/spec/build/bsps/arm/xilinx-zynq/bsppicozed.yml
new file mode 100644
index 0000000000..dc5504a1fa
--- /dev/null
+++ b/spec/build/bsps/arm/xilinx-zynq/bsppicozed.yml
@@ -0,0 +1,19 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+arch: arm
+bsp: xilinx_zynq_picozed
+build-type: bsp
+cflags: []
+copyrights:
+- Copyright (C) 2023 B. Moessner
+cppflags: []
+enabled-by: true
+family: xilinx-zynq
+includes: []
+install: []
+links:
+- role: build-dependency
+  uid: ../../opto2
+- role: build-dependency
+  uid: grp
+source: []
+type: build
diff --git a/spec/build/bsps/arm/xilinx-zynq/bsppynq.yml b/spec/build/bsps/arm/xilinx-zynq/bsppynq.yml
new file mode 100644
index 0000000000..8c39ca6109
--- /dev/null
+++ b/spec/build/bsps/arm/xilinx-zynq/bsppynq.yml
@@ -0,0 +1,19 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+arch: arm
+bsp: xilinx_zynq_pynq
+build-type: bsp
+cflags: []
+copyrights:
+- Copyright (C) 2023 B. Moessner
+cppflags: []
+enabled-by: true
+family: xilinx-zynq
+includes: []
+install: []
+links:
+- role: build-dependency
+  uid: ../../opto2
+- role: build-dependency
+  uid: grp
+source: []
+type: build
diff --git a/spec/build/bsps/arm/xilinx-zynq/bspzybo.yml b/spec/build/bsps/arm/xilinx-zynq/bspzybo.yml
new file mode 100644
index 0000000000..4c89826ca7
--- /dev/null
+++ b/spec/build/bsps/arm/xilinx-zynq/bspzybo.yml
@@ -0,0 +1,19 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+arch: arm
+bsp: xilinx_zynq_zybo
+build-type: bsp
+cflags: []
+copyrights:
+- Copyright (C) 2023 B. Moessner
+cppflags: []
+enabled-by: true
+family: xilinx-zynq
+includes: []
+install: []
+links:
+- role: build-dependency
+  uid: ../../opto2
+- role: build-dependency
+  uid: grp
+source: []
+type: build
diff --git a/spec/build/bsps/arm/xilinx-zynq/bspzyboz7.yml b/spec/build/bsps/arm/xilinx-zynq/bspzyboz7.yml
new file mode 100644
index 0000000000..591dab19e2
--- /dev/null
+++ b/spec/build/bsps/arm/xilinx-zynq/bspzyboz7.yml
@@ -0,0 +1,19 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+arch: arm
+bsp: xilinx_zynq_zybo_z7
+build-type: bsp
+cflags: []
+copyrights:
+- Copyright (C) 2023 B. Moessner
+cppflags: []
+enabled-by: true
+family: xilinx-zynq
+includes: []
+install: []
+links:
+- role: build-dependency
+  uid: ../../opto2
+- role: build-dependency
+  uid: grp
+source: []
+type: build
diff --git a/spec/build/bsps/arm/xilinx-zynq/opta9periphclk.yml b/spec/build/bsps/arm/xilinx-zynq/opta9periphclk.yml
index ad34974665..efb883414c 100644
--- a/spec/build/bsps/arm/xilinx-zynq/opta9periphclk.yml
+++ b/spec/build/bsps/arm/xilinx-zynq/opta9periphclk.yml
@@ -4,17 +4,25 @@ actions:
 - define: null
 build-type: option
 copyrights:
+- Copyright (C) 2023 B. Moessner
 - Copyright (C) 2020 embedded brains GmbH & Co. KG
 default:
-- enabled-by: 
+- enabled-by:
   - arm/xilinx_zynq_zc702
   - arm/xilinx_zynq_zc706
   - arm/xilinx_zynq_zedboard
+  - arm/xilinx_zynq_picozed
+  - arm/xilinx_zynq_zybo_z7
+  - arm/xilinx_zynq_zybo_microzed
   value: 333333333
+- enabled-by:
+  - arm/xilinx_zynq_zybo
+  - arm/xilinx_zynq_pynq
+  value: 325000000
 - enabled-by: true
   value: 100000000
 description: |
-  ARM Cortex-A9 MPCore PERIPHCLK clock frequency in Hz
+  ARM Cortex-A9 MPCore PERIPHCLK clock frequency in Hz. Set this to CPU Clock /2.
 enabled-by: true
 format: '{}'
 links: []
diff --git a/spec/build/bsps/arm/xilinx-zynq/optclkcpu1x.yml b/spec/build/bsps/arm/xilinx-zynq/optclkcpu1x.yml
index b0b5cd710c..5044dca5d9 100644
--- a/spec/build/bsps/arm/xilinx-zynq/optclkcpu1x.yml
+++ b/spec/build/bsps/arm/xilinx-zynq/optclkcpu1x.yml
@@ -4,7 +4,12 @@ actions:
 - define: null
 build-type: option
 copyrights:
+- Copyright (C) 2023 B. Moessner
 - Copyright (C) 2020 embedded brains GmbH & Co. KG
+- enabled-by:
+  - arm/xilinx_zynq_zybo
+  - arm/xilinx_zynq_pynq
+  value: 108333336
 default:
 - enabled-by: true
   value: 111111111
diff --git a/spec/build/bsps/arm/xilinx-zynq/optclkuart.yml b/spec/build/bsps/arm/xilinx-zynq/optclkuart.yml
index 94d4be3ef5..a8d44bc584 100644
--- a/spec/build/bsps/arm/xilinx-zynq/optclkuart.yml
+++ b/spec/build/bsps/arm/xilinx-zynq/optclkuart.yml
@@ -4,8 +4,13 @@ actions:
 - define: null
 build-type: option
 copyrights:
+- Copyright (C) 2023 B. Moessner
 - Copyright (C) 2020 embedded brains GmbH & Co. KG
 default:
+- enabled-by:
+  - arm/xilinx_zynq_zybo_z7
+  - arm/xilinx_zynq_pynq
+  value: 100000000
 - enabled-by: true
   value: 50000000
 description: |
diff --git a/spec/build/bsps/arm/xilinx-zynq/optramlen.yml b/spec/build/bsps/arm/xilinx-zynq/optramlen.yml
index a66d5b84ae..94542aa809 100644
--- a/spec/build/bsps/arm/xilinx-zynq/optramlen.yml
+++ b/spec/build/bsps/arm/xilinx-zynq/optramlen.yml
@@ -6,13 +6,20 @@ actions:
 - format-and-define: null
 build-type: option
 copyrights:
+- Copyright (C) 2023 B. Moessner
 - Copyright (C) 2020 embedded brains GmbH & Co. KG
 default:
 - enabled-by:
   - arm/xilinx_zynq_zc702
   - arm/xilinx_zynq_zc706
+  - arm/xilinx_zynq_picozed
+  - arm/xilinx_zynq_zyno_z7
+  - arm/xilinx_zynq_microzed
   value: 0x40000000
-- enabled-by: arm/xilinx_zynq_zedboard
+- enabled-by:
+  - arm/xilinx_zynq_zedboard
+  - arm/xilinx_zynq_zybo
+  - arm/xilinx_zynq_pynq
   value: 0x20000000
 - enabled-by: true
   value: 0x10000000
diff --git a/spec/build/bsps/optconminor.yml b/spec/build/bsps/optconminor.yml
index 7f70b65394..514b3fa032 100644
--- a/spec/build/bsps/optconminor.yml
+++ b/spec/build/bsps/optconminor.yml
@@ -6,6 +6,9 @@ build-type: option
 copyrights:
 - Copyright (C) 2020 embedded brains GmbH & Co. KG
 default:
+- enabled-by:
+  - arm/xilinx_zynq_microzed
+  value: 0
 - enabled-by: true
   value: 1
 description: |
diff --git a/spec/build/cpukit/optsmp.yml b/spec/build/cpukit/optsmp.yml
index 28b9bd4cd8..6e4ec30802 100644
--- a/spec/build/cpukit/optsmp.yml
+++ b/spec/build/cpukit/optsmp.yml
@@ -5,6 +5,7 @@ actions:
 - define-condition: null
 build-type: option
 copyrights:
+- Copyright (C) 2023 B. Moessner
 - Copyright (C) 2020 embedded brains GmbH & Co. KG
 default:
 - enabled-by: true
@@ -27,6 +28,11 @@ enabled-by:
 - arm/xilinx_zynq_zc702
 - arm/xilinx_zynq_zc706
 - arm/xilinx_zynq_zedboard
+- arm/xilinx_zynq_zybo
+- arm/xilinx_zynq_zybo_z7
+- arm/xilinx_zynq_picozed
+- arm/xilinx_zynq_pynq
+- arm/xilinx_zynq_microzed
 - powerpc/qoriq_e500
 - powerpc/qoriq_e6500_32
 - powerpc/qoriq_e6500_64
-- 
2.25.1



More information about the devel mailing list