[PATCH 0/3] Patch series to add/update nextpnr-ecp5 + deps

  • Open
  • quality assurance status badge
Details
One participant
  • Gary Wong
Owner
unassigned
Submitted by
Gary Wong
Severity
normal
G
G
Gary Wong wrote on 29 Jan 05:27 +0100
(address . guix-patches@gnu.org)
20240129042736.GA13188@flux.utah.edu
Thank you very much for all your Guix work. Please consider
this series of patches to (gnu packages fpga), adding the
nextpnr-ecp5 package and updating the related yosys version.

(Please note that the yosys patch appears bigger than strictly
necessary, since I applied 'guix style' as recommended in
Section 22.6 of the manual. I can submit a smaller patch
retaining the old formatting if that would be preferable.)

Many thanks,
Gary.

Gary Wong (3):
gnu: yosys: Update to 0.37.
gnu: Add trellis.
gnu: Add nextpnr-ecp5.

gnu/packages/fpga.scm | 221 ++++++++++++++++++++++++++++--------------
1 file changed, 147 insertions(+), 74 deletions(-)


base-commit: 65dc2d40cb113382fb98796f1d04099f28cab355
--
2.41.0
G
G
Gary Wong wrote on 29 Jan 16:01 +0100
[PATCH 1/3] gnu: yosys: Update to 0.37.
(address . 68791@debbugs.gnu.org)
20240129150107.GA83516@flux.utah.edu
Attachment: file
G
G
Gary Wong wrote on 29 Jan 16:03 +0100
[PATCH 2/3] gnu: Add trellis.
(address . 68791@debbugs.gnu.org)
20240129150300.GA83843@flux.utah.edu
* gnu/packages/fpga.scm (trellis): New variable.

Change-Id: I90a7c7c0994508a16193c5ae2b8659c1d32a3c33
---
gnu/packages/fpga.scm | 33 +++++++++++++++++++++++++++++++++
1 file changed, 33 insertions(+)

Toggle diff (43 lines)
diff --git a/gnu/packages/fpga.scm b/gnu/packages/fpga.scm
index 99841fb6..b42a3503 100644
--- a/gnu/packages/fpga.scm
+++ b/gnu/packages/fpga.scm
@@ -619,3 +619,36 @@ (define-public openfpgaloader
to an FPGA.")
(home-page "https://f4pga.org/")
(license license:asl2.0)))
+
+(define-public trellis
+ (package
+ (name "trellis")
+ (version "1.4")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/YosysHQ/prjtrellis")
+ (commit version)
+ (recursive? #t))) ;for the database submodule
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0c3asdfrjmnc6q3vawn3nfghgg43iajwy2zb8kck9d3wrypbhlmc"))))
+ (inputs (list boost python))
+ (build-system cmake-build-system)
+ (arguments
+ (list
+ #:out-of-source? #f ;README: "unsupported when coupled with nextpnr"
+ #:tests? #f ;contains no test target
+ #:phases #~(modify-phases %standard-phases
+ (add-before 'configure 'chdir-libtrellis
+ (lambda* (#:key #:allow-other-keys)
+ (chdir "libtrellis"))))))
+ (synopsis "Lattice ECP5 bitstream processing")
+ (description
+ "Project Trellis enables a fully open-source flow for ECP5
+FPGAs using Yosys for Verilog synthesis and nextpnr for place and
+route. Project Trellis itself provides the device database and tools
+for bitstream creation.")
+ (license (list license:isc license:expat))
+ (home-page "https://github.com/YosysHQ/prjtrellis")))
--
2.41.0
G
G
Gary Wong wrote on 29 Jan 16:03 +0100
[PATCH 3/3] gnu: Add nextpnr-ecp5.
(address . 68791@debbugs.gnu.org)
20240129150356.GA84024@flux.utah.edu
* gnu/packages/fpga.scm (nextpnr-ecp5): New variable.

Change-Id: Iec50903140fc9f0458423adbbe333e189e601922
---
gnu/packages/fpga.scm | 26 ++++++++++++++++++++++++++
1 file changed, 26 insertions(+)

Toggle diff (36 lines)
diff --git a/gnu/packages/fpga.scm b/gnu/packages/fpga.scm
index b42a3503..3dcd981e 100644
--- a/gnu/packages/fpga.scm
+++ b/gnu/packages/fpga.scm
@@ -652,3 +652,29 @@ (define-public trellis
for bitstream creation.")
(license (list license:isc license:expat))
(home-page "https://github.com/YosysHQ/prjtrellis")))
+
+(define-public nextpnr-ecp5
+ (package
+ (name "nextpnr-ecp5")
+ (version "0.7")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/YosysHQ/nextpnr")
+ (commit (string-append "nextpnr-" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "146nc05ypsyjnxdpayc4g6d16f5igry46nydrb13niix51q11030"))))
+ (inputs (list boost eigen python trellis))
+ (build-system cmake-build-system)
+ (arguments
+ `(#:configure-flags `("-DARCH=ecp5" ,(string-append
+ "-DTRELLIS_INSTALL_PREFIX="
+ (assoc-ref %build-inputs "trellis")))
+ #:tests? #f)) ;contains no test target
+ (synopsis "Portable FPGA place and route tool")
+ (description "Nextpnr aims to be a vendor neutral, timing driven,
+FOSS FPGA place and route tool.")
+ (home-page "https://github.com/YosysHQ/nextpnr")
+ (license license:isc)))
--
2.41.0
G
G
Gary Wong wrote on 23 Mar 15:39 +0100
Re: [PATCH 0/3] Patch series to add/update nextpnr-ecp5 + deps
(address . 68791@debbugs.gnu.org)
20240323143946.GA34728@flux.utah.edu
On Sun, Jan 28, 2024 at 09:27:36PM -0700, Gary Wong wrote:
Toggle quote (4 lines)
> Thank you very much for all your Guix work. Please consider
> this series of patches to (gnu packages fpga), adding the
> nextpnr-ecp5 package and updating the related yosys version.

Any thoughts on this?

Thanks very much,
Gary.
--
Gary Wong gtw@gnu.org http://www.cs.utah.edu/~gtw/
?
Your comment

Commenting via the web interface is currently disabled.

To comment on this conversation send an email to 68791@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 68791
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch