How To Install trellis on Fedora 34

trellis is Lattice ECP5 FPGA bitstream creation/analysis/programming tools Lattice ECP5 FPGA bitstream creation/analysis/programming tools

Introduction

In this tutorial we learn how to install trellis on Fedora 34.

What is trellis

Project Trellis enables a fully open-source flow for ECP5 FPGAs using Yosys for Verilog synthesis and nextpnr for place and route. Project Trellis provides the device database and tools for bitstream creation. trellis 1.0 0.17.20210523gitfe1c39c.fc34 x86_64 670 k trellis-1.0-0.17.20210523gitfe1c39c.fc34.src.rpm updates Lattice ECP5 FPGA bitstream creation/analysis/programming tools https ISC Project Trellis enables a fully open-source flow for ECP5 FPGAs using Yosys for Verilog synthesis and nextpnr for place and route. Project Trellis provides the device database and tools for bitstream creation.

We can use yum or dnf to install trellis on Fedora 34. In this tutorial we discuss both methods but you only need to choose one of method to install trellis.

Install trellis on Fedora 34 Using dnf

Update yum database with dnf using the following command.

sudo dnf makecache --refresh

The output should look something like this:

Fedora 34 - x86_64                               20 kB/s | 6.6 kB     00:00
Fedora 34 openh264 (From Cisco) - x86_64        1.4 kB/s | 989  B     00:00
Fedora Modular 34 - x86_64                       68 kB/s | 6.5 kB     00:00
Fedora 34 - x86_64 - Updates                    3.5 kB/s | 6.2 kB     00:01
Fedora Modular 34 - x86_64 - Updates             17 kB/s | 5.9 kB     00:00
Metadata cache created.

After updating yum database, We can install trellis using dnf by running the following command:

sudo dnf -y install trellis

Install trellis on Fedora 34 Using yum

Update yum database with yum using the following command.

sudo yum makecache --refresh

The output should look something like this:

Fedora 34 - x86_64                               20 kB/s | 6.6 kB     00:00
Fedora 34 openh264 (From Cisco) - x86_64        1.4 kB/s | 989  B     00:00
Fedora Modular 34 - x86_64                       68 kB/s | 6.5 kB     00:00
Fedora 34 - x86_64 - Updates                    3.5 kB/s | 6.2 kB     00:01
Fedora Modular 34 - x86_64 - Updates             17 kB/s | 5.9 kB     00:00
Metadata cache created.

After updating yum database, We can install trellis using yum by running the following command:

sudo yum -y install trellis

How To Uninstall trellis on Fedora 34

To uninstall only the trellis package we can use the following command:

sudo dnf remove trellis

trellis Package Contents on Fedora 34

/usr/bin/ecpbram
/usr/bin/ecpmulti
/usr/bin/ecppack
/usr/bin/ecppll
/usr/bin/ecpunpack
/usr/lib/.build-id
/usr/lib/.build-id/12
/usr/lib/.build-id/12/3c0bccf78f758985a9cf223dcd4bfb0892d8a4
/usr/lib/.build-id/16
/usr/lib/.build-id/16/8e63582f12895af445aa40e3ecad6254949de0
/usr/lib/.build-id/4d
/usr/lib/.build-id/4d/2c1cbf414940af86435e3c8b418fc3b4b61088
/usr/lib/.build-id/b0
/usr/lib/.build-id/b0/99da00d3383444993a4b10979466eded259ce7
/usr/lib/.build-id/c0
/usr/lib/.build-id/c0/db868cd3a82ef26717a26c1bc81f7336e5ad4d
/usr/lib/.build-id/ec
/usr/lib/.build-id/ec/82eafd7f0d2772826d36117c61b0eb98120bd4
/usr/lib64/trellis
/usr/lib64/trellis/libtrellis.so
/usr/share/doc/trellis
/usr/share/doc/trellis/ProjectTrellis.pdf
/usr/share/doc/trellis/README.md
/usr/share/doc/trellis/examples
/usr/share/doc/trellis/examples/README.md
/usr/share/doc/trellis/examples/ecp5_evn
/usr/share/doc/trellis/examples/ecp5_evn/Makefile
/usr/share/doc/trellis/examples/ecp5_evn/README.md
/usr/share/doc/trellis/examples/ecp5_evn/blinky.v
/usr/share/doc/trellis/examples/ecp5_evn/ecp5evn.lpf
/usr/share/doc/trellis/examples/ecp5_evn_multiboot
/usr/share/doc/trellis/examples/ecp5_evn_multiboot/Makefile
/usr/share/doc/trellis/examples/ecp5_evn_multiboot/README.md
/usr/share/doc/trellis/examples/ecp5_evn_multiboot/blinky1.v
/usr/share/doc/trellis/examples/ecp5_evn_multiboot/blinky2.v
/usr/share/doc/trellis/examples/ecp5_evn_multiboot/ecp5evn.lpf
/usr/share/doc/trellis/examples/picorv32_tinyfpga
/usr/share/doc/trellis/examples/picorv32_tinyfpga/Makefile
/usr/share/doc/trellis/examples/picorv32_tinyfpga/attosoc.v
/usr/share/doc/trellis/examples/picorv32_tinyfpga/attosoc_tb.v
/usr/share/doc/trellis/examples/picorv32_tinyfpga/firmware.s
/usr/share/doc/trellis/examples/picorv32_tinyfpga/io_wrapper.v
/usr/share/doc/trellis/examples/picorv32_tinyfpga/picorv32.v
/usr/share/doc/trellis/examples/picorv32_tinyfpga/sections.lds
/usr/share/doc/trellis/examples/picorv32_ulx3s
/usr/share/doc/trellis/examples/picorv32_ulx3s/Makefile
/usr/share/doc/trellis/examples/picorv32_ulx3s/attosoc.v
/usr/share/doc/trellis/examples/picorv32_ulx3s/attosoc_tb.v
/usr/share/doc/trellis/examples/picorv32_ulx3s/firmware.s
/usr/share/doc/trellis/examples/picorv32_ulx3s/io_wrapper.v
/usr/share/doc/trellis/examples/picorv32_ulx3s/picorv32.v
/usr/share/doc/trellis/examples/picorv32_ulx3s/sections.lds
/usr/share/doc/trellis/examples/picorv32_versa5g
/usr/share/doc/trellis/examples/picorv32_versa5g/Makefile
/usr/share/doc/trellis/examples/picorv32_versa5g/attosoc.v
/usr/share/doc/trellis/examples/picorv32_versa5g/attosoc_tb.v
/usr/share/doc/trellis/examples/picorv32_versa5g/firmware.s
/usr/share/doc/trellis/examples/picorv32_versa5g/io_wrapper.v
/usr/share/doc/trellis/examples/picorv32_versa5g/picorv32.v
/usr/share/doc/trellis/examples/picorv32_versa5g/sections.lds
/usr/share/doc/trellis/examples/soc_ecp5_evn
/usr/share/doc/trellis/examples/soc_ecp5_evn/Makefile
/usr/share/doc/trellis/examples/soc_ecp5_evn/README.md
/usr/share/doc/trellis/examples/soc_ecp5_evn/attosoc.v
/usr/share/doc/trellis/examples/soc_ecp5_evn/attosoc_tb.v
/usr/share/doc/trellis/examples/soc_ecp5_evn/ecp5evn.lpf
/usr/share/doc/trellis/examples/soc_ecp5_evn/firmware.c
/usr/share/doc/trellis/examples/soc_ecp5_evn/makehex.py
/usr/share/doc/trellis/examples/soc_ecp5_evn/picorv32.v
/usr/share/doc/trellis/examples/soc_ecp5_evn/pll.v
/usr/share/doc/trellis/examples/soc_ecp5_evn/sections.lds
/usr/share/doc/trellis/examples/soc_ecp5_evn/simpleuart.v
/usr/share/doc/trellis/examples/soc_ecp5_evn/start.s
/usr/share/doc/trellis/examples/soc_ecp5_evn/top.v
/usr/share/doc/trellis/examples/soc_versa5g
/usr/share/doc/trellis/examples/soc_versa5g/Makefile
/usr/share/doc/trellis/examples/soc_versa5g/attosoc.v
/usr/share/doc/trellis/examples/soc_versa5g/attosoc_tb.v
/usr/share/doc/trellis/examples/soc_versa5g/firmware.c
/usr/share/doc/trellis/examples/soc_versa5g/makehex.py
/usr/share/doc/trellis/examples/soc_versa5g/picorv32.v
/usr/share/doc/trellis/examples/soc_versa5g/pll.v
/usr/share/doc/trellis/examples/soc_versa5g/sections.lds
/usr/share/doc/trellis/examples/soc_versa5g/simpleuart.v
/usr/share/doc/trellis/examples/soc_versa5g/start.s
/usr/share/doc/trellis/examples/soc_versa5g/top.v
/usr/share/doc/trellis/examples/soc_versa5g/versa.lpf
/usr/share/doc/trellis/examples/tinyfpga_ax
/usr/share/doc/trellis/examples/tinyfpga_ax/Makefile
/usr/share/doc/trellis/examples/tinyfpga_ax/blinky.lpf
/usr/share/doc/trellis/examples/tinyfpga_ax/blinky.v
/usr/share/doc/trellis/examples/tinyfpga_ax/blinky_ext.lpf
/usr/share/doc/trellis/examples/tinyfpga_ax/blinky_ext.v
/usr/share/doc/trellis/examples/tinyfpga_ax/uart.lpf
/usr/share/doc/trellis/examples/tinyfpga_ax/uart.v
/usr/share/doc/trellis/examples/tinyfpga_rev1
/usr/share/doc/trellis/examples/tinyfpga_rev1/Makefile
/usr/share/doc/trellis/examples/tinyfpga_rev1/blinky.v
/usr/share/doc/trellis/examples/tinyfpga_rev1/empty_85k.config
/usr/share/doc/trellis/examples/tinyfpga_rev1/morse.v
/usr/share/doc/trellis/examples/tinyfpga_rev2
/usr/share/doc/trellis/examples/tinyfpga_rev2/Makefile
/usr/share/doc/trellis/examples/tinyfpga_rev2/morse.lpf
/usr/share/doc/trellis/examples/tinyfpga_rev2/morse.v
/usr/share/doc/trellis/examples/ulx3s
/usr/share/doc/trellis/examples/ulx3s/Makefile
/usr/share/doc/trellis/examples/ulx3s/blinky.v
/usr/share/doc/trellis/examples/ulx3s/hello.v
/usr/share/doc/trellis/examples/ulx3s/uart.v
/usr/share/doc/trellis/examples/ulx3s/ulx3s_v20.lpf
/usr/share/doc/trellis/examples/ulx3s/util.v
/usr/share/doc/trellis/examples/ulx3s_12k_multiboot
/usr/share/doc/trellis/examples/ulx3s_12k_multiboot/Makefile
/usr/share/doc/trellis/examples/ulx3s_12k_multiboot/README.md
/usr/share/doc/trellis/examples/ulx3s_12k_multiboot/blinky1.v
/usr/share/doc/trellis/examples/ulx3s_12k_multiboot/blinky2.v
/usr/share/doc/trellis/examples/ulx3s_12k_multiboot/ulx3s.lpf
/usr/share/doc/trellis/examples/versa5g
/usr/share/doc/trellis/examples/versa5g/Makefile
/usr/share/doc/trellis/examples/versa5g/README.md
/usr/share/doc/trellis/examples/versa5g/demo.v
/usr/share/doc/trellis/examples/versa5g/make_14seg.py
/usr/share/doc/trellis/examples/versa5g/text.in
/usr/share/doc/trellis/examples/versa5g/versa.lpf
/usr/share/licenses/trellis
/usr/share/licenses/trellis/COPYING
/usr/share/man/man1/ecpbram.1.gz
/usr/share/man/man1/ecpmulti.1.gz
/usr/share/man/man1/ecppack.1.gz
/usr/share/man/man1/ecppll.1.gz
/usr/share/man/man1/ecpunpack.1.gz
/usr/share/trellis/misc
/usr/share/trellis/misc/basecfgs
/usr/share/trellis/misc/basecfgs/README.md
/usr/share/trellis/misc/basecfgs/empty_lfe5u-25f.config
/usr/share/trellis/misc/basecfgs/empty_lfe5u-45f.config
/usr/share/trellis/misc/basecfgs/empty_lfe5u-85f.config
/usr/share/trellis/misc/basecfgs/empty_lfe5um-25f.config
/usr/share/trellis/misc/basecfgs/empty_lfe5um-45f.config
/usr/share/trellis/misc/basecfgs/empty_lfe5um-85f.config
/usr/share/trellis/misc/basecfgs/empty_lfe5um5g-25f.config
/usr/share/trellis/misc/basecfgs/empty_lfe5um5g-45f.config
/usr/share/trellis/misc/basecfgs/empty_lfe5um5g-85f.config
/usr/share/trellis/misc/basecfgs/empty_machxo2-1200hc.config
/usr/share/trellis/misc/openocd
/usr/share/trellis/misc/openocd/ecp5-evn.cfg
/usr/share/trellis/misc/openocd/ecp5-versa.cfg
/usr/share/trellis/misc/openocd/ecp5-versa5g.cfg
/usr/share/trellis/misc/openocd/trellisboard.cfg
/usr/share/trellis/misc/openocd/ulx3s.cfg
/usr/share/trellis/misc/openocd/ulx3s_85k.cfg
/usr/bin/ecpbram
/usr/bin/ecpmulti
/usr/bin/ecppack
/usr/bin/ecppll
/usr/bin/ecpunpack
/usr/lib/.build-id
/usr/lib/.build-id/18
/usr/lib/.build-id/18/2bfea950e3be20d8872de87d8b955ed08cc768
/usr/lib/.build-id/2b
/usr/lib/.build-id/2b/a663997f1e1591f9dbea1cc136cff5b756a51f
/usr/lib/.build-id/2c
/usr/lib/.build-id/2c/4b375bf1f78b235c4768a9bb95c18c5fd78287
/usr/lib/.build-id/8a
/usr/lib/.build-id/8a/34e972bd908f104140f3d6dfc9a6d9f3724943
/usr/lib/.build-id/90
/usr/lib/.build-id/90/8602819e3599826911816b6dca339ddeb7df03
/usr/lib/.build-id/a6
/usr/lib/.build-id/a6/da81d3c53a07e0e48a241318c2b8efa966bda5
/usr/lib64/trellis
/usr/lib64/trellis/libtrellis.so
/usr/share/doc/trellis
/usr/share/doc/trellis/ProjectTrellis.pdf
/usr/share/doc/trellis/README.md
/usr/share/doc/trellis/examples
/usr/share/doc/trellis/examples/README.md
/usr/share/doc/trellis/examples/ecp5_evn
/usr/share/doc/trellis/examples/ecp5_evn/Makefile
/usr/share/doc/trellis/examples/ecp5_evn/README.md
/usr/share/doc/trellis/examples/ecp5_evn/blinky.v
/usr/share/doc/trellis/examples/ecp5_evn/ecp5evn.lpf
/usr/share/doc/trellis/examples/ecp5_evn_multiboot
/usr/share/doc/trellis/examples/ecp5_evn_multiboot/Makefile
/usr/share/doc/trellis/examples/ecp5_evn_multiboot/README.md
/usr/share/doc/trellis/examples/ecp5_evn_multiboot/blinky1.v
/usr/share/doc/trellis/examples/ecp5_evn_multiboot/blinky2.v
/usr/share/doc/trellis/examples/ecp5_evn_multiboot/ecp5evn.lpf
/usr/share/doc/trellis/examples/picorv32_tinyfpga
/usr/share/doc/trellis/examples/picorv32_tinyfpga/Makefile
/usr/share/doc/trellis/examples/picorv32_tinyfpga/attosoc.v
/usr/share/doc/trellis/examples/picorv32_tinyfpga/attosoc_tb.v
/usr/share/doc/trellis/examples/picorv32_tinyfpga/firmware.s
/usr/share/doc/trellis/examples/picorv32_tinyfpga/io_wrapper.v
/usr/share/doc/trellis/examples/picorv32_tinyfpga/picorv32.v
/usr/share/doc/trellis/examples/picorv32_tinyfpga/sections.lds
/usr/share/doc/trellis/examples/picorv32_ulx3s
/usr/share/doc/trellis/examples/picorv32_ulx3s/Makefile
/usr/share/doc/trellis/examples/picorv32_ulx3s/attosoc.v
/usr/share/doc/trellis/examples/picorv32_ulx3s/attosoc_tb.v
/usr/share/doc/trellis/examples/picorv32_ulx3s/firmware.s
/usr/share/doc/trellis/examples/picorv32_ulx3s/io_wrapper.v
/usr/share/doc/trellis/examples/picorv32_ulx3s/picorv32.v
/usr/share/doc/trellis/examples/picorv32_ulx3s/sections.lds
/usr/share/doc/trellis/examples/picorv32_versa5g
/usr/share/doc/trellis/examples/picorv32_versa5g/Makefile
/usr/share/doc/trellis/examples/picorv32_versa5g/attosoc.v
/usr/share/doc/trellis/examples/picorv32_versa5g/attosoc_tb.v
/usr/share/doc/trellis/examples/picorv32_versa5g/firmware.s
/usr/share/doc/trellis/examples/picorv32_versa5g/io_wrapper.v
/usr/share/doc/trellis/examples/picorv32_versa5g/picorv32.v
/usr/share/doc/trellis/examples/picorv32_versa5g/sections.lds
/usr/share/doc/trellis/examples/soc_ecp5_evn
/usr/share/doc/trellis/examples/soc_ecp5_evn/Makefile
/usr/share/doc/trellis/examples/soc_ecp5_evn/README.md
/usr/share/doc/trellis/examples/soc_ecp5_evn/attosoc.v
/usr/share/doc/trellis/examples/soc_ecp5_evn/attosoc_tb.v
/usr/share/doc/trellis/examples/soc_ecp5_evn/ecp5evn.lpf
/usr/share/doc/trellis/examples/soc_ecp5_evn/firmware.c
/usr/share/doc/trellis/examples/soc_ecp5_evn/makehex.py
/usr/share/doc/trellis/examples/soc_ecp5_evn/picorv32.v
/usr/share/doc/trellis/examples/soc_ecp5_evn/pll.v
/usr/share/doc/trellis/examples/soc_ecp5_evn/sections.lds
/usr/share/doc/trellis/examples/soc_ecp5_evn/simpleuart.v
/usr/share/doc/trellis/examples/soc_ecp5_evn/start.s
/usr/share/doc/trellis/examples/soc_ecp5_evn/top.v
/usr/share/doc/trellis/examples/soc_versa5g
/usr/share/doc/trellis/examples/soc_versa5g/Makefile
/usr/share/doc/trellis/examples/soc_versa5g/attosoc.v
/usr/share/doc/trellis/examples/soc_versa5g/attosoc_tb.v
/usr/share/doc/trellis/examples/soc_versa5g/firmware.c
/usr/share/doc/trellis/examples/soc_versa5g/makehex.py
/usr/share/doc/trellis/examples/soc_versa5g/picorv32.v
/usr/share/doc/trellis/examples/soc_versa5g/pll.v
/usr/share/doc/trellis/examples/soc_versa5g/sections.lds
/usr/share/doc/trellis/examples/soc_versa5g/simpleuart.v
/usr/share/doc/trellis/examples/soc_versa5g/start.s
/usr/share/doc/trellis/examples/soc_versa5g/top.v
/usr/share/doc/trellis/examples/soc_versa5g/versa.lpf
/usr/share/doc/trellis/examples/tinyfpga_ax
/usr/share/doc/trellis/examples/tinyfpga_ax/Makefile
/usr/share/doc/trellis/examples/tinyfpga_ax/blinky.lpf
/usr/share/doc/trellis/examples/tinyfpga_ax/blinky.v
/usr/share/doc/trellis/examples/tinyfpga_ax/blinky_ext.lpf
/usr/share/doc/trellis/examples/tinyfpga_ax/blinky_ext.v
/usr/share/doc/trellis/examples/tinyfpga_ax/uart.lpf
/usr/share/doc/trellis/examples/tinyfpga_ax/uart.v
/usr/share/doc/trellis/examples/tinyfpga_rev1
/usr/share/doc/trellis/examples/tinyfpga_rev1/Makefile
/usr/share/doc/trellis/examples/tinyfpga_rev1/blinky.v
/usr/share/doc/trellis/examples/tinyfpga_rev1/empty_85k.config
/usr/share/doc/trellis/examples/tinyfpga_rev1/morse.v
/usr/share/doc/trellis/examples/tinyfpga_rev2
/usr/share/doc/trellis/examples/tinyfpga_rev2/Makefile
/usr/share/doc/trellis/examples/tinyfpga_rev2/morse.lpf
/usr/share/doc/trellis/examples/tinyfpga_rev2/morse.v
/usr/share/doc/trellis/examples/ulx3s
/usr/share/doc/trellis/examples/ulx3s/Makefile
/usr/share/doc/trellis/examples/ulx3s/blinky.v
/usr/share/doc/trellis/examples/ulx3s/hello.v
/usr/share/doc/trellis/examples/ulx3s/uart.v
/usr/share/doc/trellis/examples/ulx3s/ulx3s_v20.lpf
/usr/share/doc/trellis/examples/ulx3s/util.v
/usr/share/doc/trellis/examples/ulx3s_12k_multiboot
/usr/share/doc/trellis/examples/ulx3s_12k_multiboot/Makefile
/usr/share/doc/trellis/examples/ulx3s_12k_multiboot/README.md
/usr/share/doc/trellis/examples/ulx3s_12k_multiboot/blinky1.v
/usr/share/doc/trellis/examples/ulx3s_12k_multiboot/blinky2.v
/usr/share/doc/trellis/examples/ulx3s_12k_multiboot/ulx3s.lpf
/usr/share/doc/trellis/examples/versa5g
/usr/share/doc/trellis/examples/versa5g/Makefile
/usr/share/doc/trellis/examples/versa5g/README.md
/usr/share/doc/trellis/examples/versa5g/demo.v
/usr/share/doc/trellis/examples/versa5g/make_14seg.py
/usr/share/doc/trellis/examples/versa5g/text.in
/usr/share/doc/trellis/examples/versa5g/versa.lpf
/usr/share/licenses/trellis
/usr/share/licenses/trellis/COPYING
/usr/share/man/man1/ecpbram.1.gz
/usr/share/man/man1/ecpmulti.1.gz
/usr/share/man/man1/ecppack.1.gz
/usr/share/man/man1/ecppll.1.gz
/usr/share/man/man1/ecpunpack.1.gz
/usr/share/trellis/misc
/usr/share/trellis/misc/basecfgs
/usr/share/trellis/misc/basecfgs/README.md
/usr/share/trellis/misc/basecfgs/empty_lfe5u-25f.config
/usr/share/trellis/misc/basecfgs/empty_lfe5u-45f.config
/usr/share/trellis/misc/basecfgs/empty_lfe5u-85f.config
/usr/share/trellis/misc/basecfgs/empty_lfe5um-25f.config
/usr/share/trellis/misc/basecfgs/empty_lfe5um-45f.config
/usr/share/trellis/misc/basecfgs/empty_lfe5um-85f.config
/usr/share/trellis/misc/basecfgs/empty_lfe5um5g-25f.config
/usr/share/trellis/misc/basecfgs/empty_lfe5um5g-45f.config
/usr/share/trellis/misc/basecfgs/empty_lfe5um5g-85f.config
/usr/share/trellis/misc/basecfgs/empty_machxo2-1200hc.config
/usr/share/trellis/misc/openocd
/usr/share/trellis/misc/openocd/ecp5-evn.cfg
/usr/share/trellis/misc/openocd/ecp5-versa.cfg
/usr/share/trellis/misc/openocd/ecp5-versa5g.cfg
/usr/share/trellis/misc/openocd/trellisboard.cfg
/usr/share/trellis/misc/openocd/ulx3s.cfg
/usr/share/trellis/misc/openocd/ulx3s_85k.cfg
/usr/bin/ecpbram
/usr/bin/ecpmulti
/usr/bin/ecppack
/usr/bin/ecppll
/usr/bin/ecpunpack
/usr/lib/.build-id
/usr/lib/.build-id/4f
/usr/lib/.build-id/4f/ecea02226a63c1c943d900e0c7de4d3ed4214b
/usr/lib/.build-id/9f
/usr/lib/.build-id/9f/cfcbb1b0c5e79581b45bd40007c10be118cf32
/usr/lib/.build-id/c4
/usr/lib/.build-id/c4/87335802b9c88b198f2df4e0d815c142455645
/usr/lib/.build-id/dc
/usr/lib/.build-id/dc/344fd35709e06693016831a7bc3746ee9a67ee
/usr/lib/.build-id/ed
/usr/lib/.build-id/ed/a1c5d8b1145200297aba7a1d8ab610a7392f29
/usr/lib/.build-id/f8
/usr/lib/.build-id/f8/c63cbee6fd4e8edf8fda0072fb14870c545cf3
/usr/lib/trellis
/usr/lib/trellis/libtrellis.so
/usr/share/doc/trellis
/usr/share/doc/trellis/ProjectTrellis.pdf
/usr/share/doc/trellis/README.md
/usr/share/doc/trellis/examples
/usr/share/doc/trellis/examples/README.md
/usr/share/doc/trellis/examples/ecp5_evn
/usr/share/doc/trellis/examples/ecp5_evn/Makefile
/usr/share/doc/trellis/examples/ecp5_evn/README.md
/usr/share/doc/trellis/examples/ecp5_evn/blinky.v
/usr/share/doc/trellis/examples/ecp5_evn/ecp5evn.lpf
/usr/share/doc/trellis/examples/ecp5_evn_multiboot
/usr/share/doc/trellis/examples/ecp5_evn_multiboot/Makefile
/usr/share/doc/trellis/examples/ecp5_evn_multiboot/README.md
/usr/share/doc/trellis/examples/ecp5_evn_multiboot/blinky1.v
/usr/share/doc/trellis/examples/ecp5_evn_multiboot/blinky2.v
/usr/share/doc/trellis/examples/ecp5_evn_multiboot/ecp5evn.lpf
/usr/share/doc/trellis/examples/picorv32_tinyfpga
/usr/share/doc/trellis/examples/picorv32_tinyfpga/Makefile
/usr/share/doc/trellis/examples/picorv32_tinyfpga/attosoc.v
/usr/share/doc/trellis/examples/picorv32_tinyfpga/attosoc_tb.v
/usr/share/doc/trellis/examples/picorv32_tinyfpga/firmware.s
/usr/share/doc/trellis/examples/picorv32_tinyfpga/io_wrapper.v
/usr/share/doc/trellis/examples/picorv32_tinyfpga/picorv32.v
/usr/share/doc/trellis/examples/picorv32_tinyfpga/sections.lds
/usr/share/doc/trellis/examples/picorv32_ulx3s
/usr/share/doc/trellis/examples/picorv32_ulx3s/Makefile
/usr/share/doc/trellis/examples/picorv32_ulx3s/attosoc.v
/usr/share/doc/trellis/examples/picorv32_ulx3s/attosoc_tb.v
/usr/share/doc/trellis/examples/picorv32_ulx3s/firmware.s
/usr/share/doc/trellis/examples/picorv32_ulx3s/io_wrapper.v
/usr/share/doc/trellis/examples/picorv32_ulx3s/picorv32.v
/usr/share/doc/trellis/examples/picorv32_ulx3s/sections.lds
/usr/share/doc/trellis/examples/picorv32_versa5g
/usr/share/doc/trellis/examples/picorv32_versa5g/Makefile
/usr/share/doc/trellis/examples/picorv32_versa5g/attosoc.v
/usr/share/doc/trellis/examples/picorv32_versa5g/attosoc_tb.v
/usr/share/doc/trellis/examples/picorv32_versa5g/firmware.s
/usr/share/doc/trellis/examples/picorv32_versa5g/io_wrapper.v
/usr/share/doc/trellis/examples/picorv32_versa5g/picorv32.v
/usr/share/doc/trellis/examples/picorv32_versa5g/sections.lds
/usr/share/doc/trellis/examples/soc_ecp5_evn
/usr/share/doc/trellis/examples/soc_ecp5_evn/Makefile
/usr/share/doc/trellis/examples/soc_ecp5_evn/README.md
/usr/share/doc/trellis/examples/soc_ecp5_evn/attosoc.v
/usr/share/doc/trellis/examples/soc_ecp5_evn/attosoc_tb.v
/usr/share/doc/trellis/examples/soc_ecp5_evn/ecp5evn.lpf
/usr/share/doc/trellis/examples/soc_ecp5_evn/firmware.c
/usr/share/doc/trellis/examples/soc_ecp5_evn/makehex.py
/usr/share/doc/trellis/examples/soc_ecp5_evn/picorv32.v
/usr/share/doc/trellis/examples/soc_ecp5_evn/pll.v
/usr/share/doc/trellis/examples/soc_ecp5_evn/sections.lds
/usr/share/doc/trellis/examples/soc_ecp5_evn/simpleuart.v
/usr/share/doc/trellis/examples/soc_ecp5_evn/start.s
/usr/share/doc/trellis/examples/soc_ecp5_evn/top.v
/usr/share/doc/trellis/examples/soc_versa5g
/usr/share/doc/trellis/examples/soc_versa5g/Makefile
/usr/share/doc/trellis/examples/soc_versa5g/attosoc.v
/usr/share/doc/trellis/examples/soc_versa5g/attosoc_tb.v
/usr/share/doc/trellis/examples/soc_versa5g/firmware.c
/usr/share/doc/trellis/examples/soc_versa5g/makehex.py
/usr/share/doc/trellis/examples/soc_versa5g/picorv32.v
/usr/share/doc/trellis/examples/soc_versa5g/pll.v
/usr/share/doc/trellis/examples/soc_versa5g/sections.lds
/usr/share/doc/trellis/examples/soc_versa5g/simpleuart.v
/usr/share/doc/trellis/examples/soc_versa5g/start.s
/usr/share/doc/trellis/examples/soc_versa5g/top.v
/usr/share/doc/trellis/examples/soc_versa5g/versa.lpf
/usr/share/doc/trellis/examples/tinyfpga_ax
/usr/share/doc/trellis/examples/tinyfpga_ax/Makefile
/usr/share/doc/trellis/examples/tinyfpga_ax/blinky.lpf
/usr/share/doc/trellis/examples/tinyfpga_ax/blinky.v
/usr/share/doc/trellis/examples/tinyfpga_ax/blinky_ext.lpf
/usr/share/doc/trellis/examples/tinyfpga_ax/blinky_ext.v
/usr/share/doc/trellis/examples/tinyfpga_ax/uart.lpf
/usr/share/doc/trellis/examples/tinyfpga_ax/uart.v
/usr/share/doc/trellis/examples/tinyfpga_rev1
/usr/share/doc/trellis/examples/tinyfpga_rev1/Makefile
/usr/share/doc/trellis/examples/tinyfpga_rev1/blinky.v
/usr/share/doc/trellis/examples/tinyfpga_rev1/empty_85k.config
/usr/share/doc/trellis/examples/tinyfpga_rev1/morse.v
/usr/share/doc/trellis/examples/tinyfpga_rev2
/usr/share/doc/trellis/examples/tinyfpga_rev2/Makefile
/usr/share/doc/trellis/examples/tinyfpga_rev2/morse.lpf
/usr/share/doc/trellis/examples/tinyfpga_rev2/morse.v
/usr/share/doc/trellis/examples/ulx3s
/usr/share/doc/trellis/examples/ulx3s/Makefile
/usr/share/doc/trellis/examples/ulx3s/blinky.v
/usr/share/doc/trellis/examples/ulx3s/hello.v
/usr/share/doc/trellis/examples/ulx3s/uart.v
/usr/share/doc/trellis/examples/ulx3s/ulx3s_v20.lpf
/usr/share/doc/trellis/examples/ulx3s/util.v
/usr/share/doc/trellis/examples/ulx3s_12k_multiboot
/usr/share/doc/trellis/examples/ulx3s_12k_multiboot/Makefile
/usr/share/doc/trellis/examples/ulx3s_12k_multiboot/README.md
/usr/share/doc/trellis/examples/ulx3s_12k_multiboot/blinky1.v
/usr/share/doc/trellis/examples/ulx3s_12k_multiboot/blinky2.v
/usr/share/doc/trellis/examples/ulx3s_12k_multiboot/ulx3s.lpf
/usr/share/doc/trellis/examples/versa5g
/usr/share/doc/trellis/examples/versa5g/Makefile
/usr/share/doc/trellis/examples/versa5g/README.md
/usr/share/doc/trellis/examples/versa5g/demo.v
/usr/share/doc/trellis/examples/versa5g/make_14seg.py
/usr/share/doc/trellis/examples/versa5g/text.in
/usr/share/doc/trellis/examples/versa5g/versa.lpf
/usr/share/licenses/trellis
/usr/share/licenses/trellis/COPYING
/usr/share/man/man1/ecpbram.1.gz
/usr/share/man/man1/ecpmulti.1.gz
/usr/share/man/man1/ecppack.1.gz
/usr/share/man/man1/ecppll.1.gz
/usr/share/man/man1/ecpunpack.1.gz
/usr/share/trellis/misc
/usr/share/trellis/misc/basecfgs
/usr/share/trellis/misc/basecfgs/README.md
/usr/share/trellis/misc/basecfgs/empty_lfe5u-25f.config
/usr/share/trellis/misc/basecfgs/empty_lfe5u-45f.config
/usr/share/trellis/misc/basecfgs/empty_lfe5u-85f.config
/usr/share/trellis/misc/basecfgs/empty_lfe5um-25f.config
/usr/share/trellis/misc/basecfgs/empty_lfe5um-45f.config
/usr/share/trellis/misc/basecfgs/empty_lfe5um-85f.config
/usr/share/trellis/misc/basecfgs/empty_lfe5um5g-25f.config
/usr/share/trellis/misc/basecfgs/empty_lfe5um5g-45f.config
/usr/share/trellis/misc/basecfgs/empty_lfe5um5g-85f.config
/usr/share/trellis/misc/basecfgs/empty_machxo2-1200hc.config
/usr/share/trellis/misc/openocd
/usr/share/trellis/misc/openocd/ecp5-evn.cfg
/usr/share/trellis/misc/openocd/ecp5-versa.cfg
/usr/share/trellis/misc/openocd/ecp5-versa5g.cfg
/usr/share/trellis/misc/openocd/trellisboard.cfg
/usr/share/trellis/misc/openocd/ulx3s.cfg
/usr/share/trellis/misc/openocd/ulx3s_85k.cfg
/usr/bin/ecpbram
/usr/bin/ecpmulti
/usr/bin/ecppack
/usr/bin/ecppll
/usr/bin/ecpunpack
/usr/lib/.build-id
/usr/lib/.build-id/9b
/usr/lib/.build-id/9b/93d8ad4621ec2dce1e73e967236db31ec40861
/usr/lib/.build-id/a2
/usr/lib/.build-id/a2/eddc58c1f283ccc6dae0c167c275a92af16563
/usr/lib/.build-id/ad
/usr/lib/.build-id/ad/5a9a02fa7970ee1207c62e50a4cd6e42333f75
/usr/lib/.build-id/af
/usr/lib/.build-id/af/77407c3cb7eb032f69463b895ab362e324de4c
/usr/lib/.build-id/e4
/usr/lib/.build-id/e4/61f696800cd0ac9beda59dcf3f07289e6f8e9d
/usr/lib/.build-id/f7
/usr/lib/.build-id/f7/672381154bbf702874d54c567d43a8ebcf5724
/usr/lib/trellis
/usr/lib/trellis/libtrellis.so
/usr/share/doc/trellis
/usr/share/doc/trellis/ProjectTrellis.pdf
/usr/share/doc/trellis/README.md
/usr/share/doc/trellis/examples
/usr/share/doc/trellis/examples/README.md
/usr/share/doc/trellis/examples/ecp5_evn
/usr/share/doc/trellis/examples/ecp5_evn/Makefile
/usr/share/doc/trellis/examples/ecp5_evn/README.md
/usr/share/doc/trellis/examples/ecp5_evn/blinky.v
/usr/share/doc/trellis/examples/ecp5_evn/ecp5evn.lpf
/usr/share/doc/trellis/examples/ecp5_evn_multiboot
/usr/share/doc/trellis/examples/ecp5_evn_multiboot/Makefile
/usr/share/doc/trellis/examples/ecp5_evn_multiboot/README.md
/usr/share/doc/trellis/examples/ecp5_evn_multiboot/blinky1.v
/usr/share/doc/trellis/examples/ecp5_evn_multiboot/blinky2.v
/usr/share/doc/trellis/examples/ecp5_evn_multiboot/ecp5evn.lpf
/usr/share/doc/trellis/examples/picorv32_tinyfpga
/usr/share/doc/trellis/examples/picorv32_tinyfpga/Makefile
/usr/share/doc/trellis/examples/picorv32_tinyfpga/attosoc.v
/usr/share/doc/trellis/examples/picorv32_tinyfpga/attosoc_tb.v
/usr/share/doc/trellis/examples/picorv32_tinyfpga/firmware.s
/usr/share/doc/trellis/examples/picorv32_tinyfpga/io_wrapper.v
/usr/share/doc/trellis/examples/picorv32_tinyfpga/picorv32.v
/usr/share/doc/trellis/examples/picorv32_tinyfpga/sections.lds
/usr/share/doc/trellis/examples/picorv32_ulx3s
/usr/share/doc/trellis/examples/picorv32_ulx3s/Makefile
/usr/share/doc/trellis/examples/picorv32_ulx3s/attosoc.v
/usr/share/doc/trellis/examples/picorv32_ulx3s/attosoc_tb.v
/usr/share/doc/trellis/examples/picorv32_ulx3s/firmware.s
/usr/share/doc/trellis/examples/picorv32_ulx3s/io_wrapper.v
/usr/share/doc/trellis/examples/picorv32_ulx3s/picorv32.v
/usr/share/doc/trellis/examples/picorv32_ulx3s/sections.lds
/usr/share/doc/trellis/examples/picorv32_versa5g
/usr/share/doc/trellis/examples/picorv32_versa5g/Makefile
/usr/share/doc/trellis/examples/picorv32_versa5g/attosoc.v
/usr/share/doc/trellis/examples/picorv32_versa5g/attosoc_tb.v
/usr/share/doc/trellis/examples/picorv32_versa5g/firmware.s
/usr/share/doc/trellis/examples/picorv32_versa5g/io_wrapper.v
/usr/share/doc/trellis/examples/picorv32_versa5g/picorv32.v
/usr/share/doc/trellis/examples/picorv32_versa5g/sections.lds
/usr/share/doc/trellis/examples/soc_ecp5_evn
/usr/share/doc/trellis/examples/soc_ecp5_evn/Makefile
/usr/share/doc/trellis/examples/soc_ecp5_evn/README.md
/usr/share/doc/trellis/examples/soc_ecp5_evn/attosoc.v
/usr/share/doc/trellis/examples/soc_ecp5_evn/attosoc_tb.v
/usr/share/doc/trellis/examples/soc_ecp5_evn/ecp5evn.lpf
/usr/share/doc/trellis/examples/soc_ecp5_evn/firmware.c
/usr/share/doc/trellis/examples/soc_ecp5_evn/makehex.py
/usr/share/doc/trellis/examples/soc_ecp5_evn/picorv32.v
/usr/share/doc/trellis/examples/soc_ecp5_evn/pll.v
/usr/share/doc/trellis/examples/soc_ecp5_evn/sections.lds
/usr/share/doc/trellis/examples/soc_ecp5_evn/simpleuart.v
/usr/share/doc/trellis/examples/soc_ecp5_evn/start.s
/usr/share/doc/trellis/examples/soc_ecp5_evn/top.v
/usr/share/doc/trellis/examples/soc_versa5g
/usr/share/doc/trellis/examples/soc_versa5g/Makefile
/usr/share/doc/trellis/examples/soc_versa5g/attosoc.v
/usr/share/doc/trellis/examples/soc_versa5g/attosoc_tb.v
/usr/share/doc/trellis/examples/soc_versa5g/firmware.c
/usr/share/doc/trellis/examples/soc_versa5g/makehex.py
/usr/share/doc/trellis/examples/soc_versa5g/picorv32.v
/usr/share/doc/trellis/examples/soc_versa5g/pll.v
/usr/share/doc/trellis/examples/soc_versa5g/sections.lds
/usr/share/doc/trellis/examples/soc_versa5g/simpleuart.v
/usr/share/doc/trellis/examples/soc_versa5g/start.s
/usr/share/doc/trellis/examples/soc_versa5g/top.v
/usr/share/doc/trellis/examples/soc_versa5g/versa.lpf
/usr/share/doc/trellis/examples/tinyfpga_ax
/usr/share/doc/trellis/examples/tinyfpga_ax/Makefile
/usr/share/doc/trellis/examples/tinyfpga_ax/blinky.lpf
/usr/share/doc/trellis/examples/tinyfpga_ax/blinky.v
/usr/share/doc/trellis/examples/tinyfpga_ax/blinky_ext.lpf
/usr/share/doc/trellis/examples/tinyfpga_ax/blinky_ext.v
/usr/share/doc/trellis/examples/tinyfpga_ax/uart.lpf
/usr/share/doc/trellis/examples/tinyfpga_ax/uart.v
/usr/share/doc/trellis/examples/tinyfpga_rev1
/usr/share/doc/trellis/examples/tinyfpga_rev1/Makefile
/usr/share/doc/trellis/examples/tinyfpga_rev1/blinky.v
/usr/share/doc/trellis/examples/tinyfpga_rev1/empty_85k.config
/usr/share/doc/trellis/examples/tinyfpga_rev1/morse.v
/usr/share/doc/trellis/examples/tinyfpga_rev2
/usr/share/doc/trellis/examples/tinyfpga_rev2/Makefile
/usr/share/doc/trellis/examples/tinyfpga_rev2/morse.lpf
/usr/share/doc/trellis/examples/tinyfpga_rev2/morse.v
/usr/share/doc/trellis/examples/ulx3s
/usr/share/doc/trellis/examples/ulx3s/Makefile
/usr/share/doc/trellis/examples/ulx3s/blinky.v
/usr/share/doc/trellis/examples/ulx3s/hello.v
/usr/share/doc/trellis/examples/ulx3s/uart.v
/usr/share/doc/trellis/examples/ulx3s/ulx3s_v20.lpf
/usr/share/doc/trellis/examples/ulx3s/util.v
/usr/share/doc/trellis/examples/ulx3s_12k_multiboot
/usr/share/doc/trellis/examples/ulx3s_12k_multiboot/Makefile
/usr/share/doc/trellis/examples/ulx3s_12k_multiboot/README.md
/usr/share/doc/trellis/examples/ulx3s_12k_multiboot/blinky1.v
/usr/share/doc/trellis/examples/ulx3s_12k_multiboot/blinky2.v
/usr/share/doc/trellis/examples/ulx3s_12k_multiboot/ulx3s.lpf
/usr/share/doc/trellis/examples/versa5g
/usr/share/doc/trellis/examples/versa5g/Makefile
/usr/share/doc/trellis/examples/versa5g/README.md
/usr/share/doc/trellis/examples/versa5g/demo.v
/usr/share/doc/trellis/examples/versa5g/make_14seg.py
/usr/share/doc/trellis/examples/versa5g/text.in
/usr/share/doc/trellis/examples/versa5g/versa.lpf
/usr/share/licenses/trellis
/usr/share/licenses/trellis/COPYING
/usr/share/man/man1/ecpbram.1.gz
/usr/share/man/man1/ecpmulti.1.gz
/usr/share/man/man1/ecppack.1.gz
/usr/share/man/man1/ecppll.1.gz
/usr/share/man/man1/ecpunpack.1.gz
/usr/share/trellis/misc
/usr/share/trellis/misc/basecfgs
/usr/share/trellis/misc/basecfgs/README.md
/usr/share/trellis/misc/basecfgs/empty_lfe5u-25f.config
/usr/share/trellis/misc/basecfgs/empty_lfe5u-45f.config
/usr/share/trellis/misc/basecfgs/empty_lfe5u-85f.config
/usr/share/trellis/misc/basecfgs/empty_lfe5um-25f.config
/usr/share/trellis/misc/basecfgs/empty_lfe5um-45f.config
/usr/share/trellis/misc/basecfgs/empty_lfe5um-85f.config
/usr/share/trellis/misc/basecfgs/empty_lfe5um5g-25f.config
/usr/share/trellis/misc/basecfgs/empty_lfe5um5g-45f.config
/usr/share/trellis/misc/basecfgs/empty_lfe5um5g-85f.config
/usr/share/trellis/misc/basecfgs/empty_machxo2-1200hc.config
/usr/share/trellis/misc/openocd
/usr/share/trellis/misc/openocd/ecp5-evn.cfg
/usr/share/trellis/misc/openocd/ecp5-versa.cfg
/usr/share/trellis/misc/openocd/ecp5-versa5g.cfg
/usr/share/trellis/misc/openocd/trellisboard.cfg
/usr/share/trellis/misc/openocd/ulx3s.cfg
/usr/share/trellis/misc/openocd/ulx3s_85k.cfg

References

Summary

In this tutorial we learn how to install trellis on Fedora 34 using yum and dnf.