Florent Kermarrec
de9d3ab314
soc/cores/cpu/urv: Add DataBusToWishbone and use it.
2024-11-06 21:59:11 +01:00
Florent Kermarrec
2b3913982c
soc/cores/cpu/urv: Add InstructionBusToWishbone and use it.
2024-11-06 21:49:39 +01:00
Long Pham
d8e168a81f
Enhance software build performance by utilizing all available CPU cores in the builder
2024-11-06 11:35:28 -08:00
Long Pham
935326e66c
Add FTDI serial number option to openfpgaloader, useful when multiple similar boards are connected for CI/CD
2024-11-06 11:25:54 -08:00
Florent Kermarrec
1204cfda9d
soc/cores/cpu/urv: Fix add_sources.
2024-11-05 17:33:32 +01:00
Florent Kermarrec
20b0e98fe0
cpu/urv: Fix Instruction Bus conversion to Wishbone and only keep it now that working.
2024-11-05 17:19:13 +01:00
Chris Keilbart
e9613499ea
Fix SOC region range check
2024-11-04 12:01:29 -08:00
Florent Kermarrec
0170462fe8
soc/cores/jtag: Fix/Test p_init/p_INIT workaround.
2024-11-04 14:34:28 +01:00
enjoy-digital
3f3249cdf0
Merge pull request #2113 from trabucayre/toolchain_diamond_sdc
...
litex/build/lattice/diamond, platform: allows users to add custom sdc files
2024-11-04 12:53:48 +01:00
Gwenhael Goavec-Merou
47e8b0273f
litex/build/lattice/diamond, platform: allows users to add custom sdc files
2024-11-04 12:42:38 +01:00
Florent Kermarrec
175e63ac4c
soc/cores/jtag: Add p_INIT/p_init workaround on ECP5JTAG to support Diamond and Trellis toolchains without manual changes.
2024-11-04 12:40:39 +01:00
Florent Kermarrec
61ab30a739
soc/cores/jtag: Revert p_INIT since not tested.
2024-10-28 20:05:47 +01:00
enjoy-digital
10184ad325
Merge pull request #2097 from trabucayre/build_diamond_addition
...
Build diamond addition
2024-10-28 20:05:01 +01:00
enjoy-digital
dd092863f8
Merge branch 'master' into vexiiriscv-macsg
2024-10-28 20:02:56 +01:00
enjoy-digital
18714dfca3
Merge pull request #2104 from andelf/fix/ws2812-of-1-led
...
Fixes #2103 : calculate memory depth for WS2812
2024-10-28 19:53:25 +01:00
Dolu1990
59fc1caac4
Merge pull request #2099 from VOGL-electronic/vexiiriscv_sbi
...
vexiiriscv: add options and conditions
2024-10-25 14:26:02 +02:00
Fin Maaß
773fb34079
vexiiriscv: have opensbi behind a option
...
this way opensbi things are only activated,
when a linux variant is used.
Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2024-10-25 13:40:20 +02:00
Andelf
8c7e510473
Fixes #2103 : calculate memory depth for WS2812
...
See-also: https://github.com/m-labs/migen/pull/295
2024-10-25 11:48:57 +08:00
Dolu1990
24db36ced5
Merge remote-tracking branch 'origin/master' into wuff
2024-10-24 16:02:52 +02:00
Dolu1990
375940ad7d
soc/core/vexiiriscv: add macsg support (dma based ethernet)
2024-10-24 16:00:51 +02:00
Fin Maaß
d7bf75a75c
bios: litespi: add newline to debug output
...
add newline to debug output
Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2024-10-24 15:12:12 +02:00
Fin Maaß
63fa4fda85
bios: litespi: clear rx queue after write
...
clear rx queue at the end of spiflash_master_write().
Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2024-10-24 15:10:37 +02:00
Fin Maaß
54973eb9cb
build: efinix: use constant output option
...
use constant output option, when the output is a `Constant`
Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2024-10-23 14:12:30 +02:00
Fin Maaß
2d96e99494
build: io: SDRTristate: move check
...
check wraped signals instead of before.
Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2024-10-23 11:18:57 +02:00
Fin Maaß
70f4a349e5
efinix: ifacewriter: fix in output
...
fix in OUTPUT
Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2024-10-23 11:10:16 +02:00
Fin Maaß
d6eec8e76d
efinix: ifacewriter: gpio: share common code
...
share common code for INPUT, INOUT and OUTPUT.
Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2024-10-23 11:08:58 +02:00
Florent Kermarrec
aab8912f5a
soc/cores/cpu/urv: Move ROM init to builder and allow switching between classical ROM or ROM integrated in CPU.
2024-10-17 17:44:40 +02:00
Florent Kermarrec
9449d25911
soc/cores/cpu/urv: Able to boot LiteX BIOS with im bus connected to synchronous memory.
...
- Replace im bus wishbone adaptation with synchronous memory (for now and initial tests).
- Correctly handle dm bus wishbone adaptation (Added FIFO).
2024-10-17 16:54:20 +02:00
Florent Kermarrec
edb56e73aa
soc/cores/cpu: Add initial uRV CPU support (not yet working).
2024-10-16 22:24:07 +02:00
Gwenhael Goavec-Merou
06f9f9780d
litex/soc/cores/jtag.py: lattice target: INIT -> init (otherwise fails with diamond)
2024-10-16 13:47:42 +02:00
Gwenhael Goavec-Merou
ea81314866
build/lattice/diamond.py,platform.py: allows adding custom strategy
2024-10-16 13:46:43 +02:00
Gwenhael Goavec-Merou
331e1938c9
build/lattice/diamond.py,platform.py: allows adding lattice's IPs
2024-10-16 13:45:57 +02:00
Gwenhael Goavec-Merou
c4943c1c5d
build/lattice/diamond.py: allows adding addition ldf commands in tcl
2024-10-16 13:44:20 +02:00
Dolu1990
d5e4f9e975
soc/core/vexiiriscv : bring back xilinx support
2024-10-15 09:36:32 +02:00
Gwenhael Goavec-Merou
7f04cafe08
soc/cores/cpu/zynqmp/core.py: add_ethernet: added gt_location required by SGMII
2024-10-10 17:28:29 +02:00
Gwenhael Goavec-Merou
2935b7afb1
soc/cores/cpu/zynqmp/core.py: added missing pps signals
2024-10-10 17:26:35 +02:00
Gwenhael Goavec-Merou
ddb8d16381
soc/cores/cpu/zynqmp/core.py: added support for SGMII via PL with option PTP support
2024-10-09 16:14:31 +02:00
Fin Maaß
d26994916d
build: efinix: use ifacewriter to set bank voltage
...
use efinix python api to set bank voltage,
instead of editing the peri.xml file.
Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2024-10-08 09:05:04 +02:00
enjoy-digital
9ad5d21231
Merge pull request #2089 from VOGL-electronic/efinix_tristate_fix
...
build: efinix: Tristate fix
2024-10-07 11:06:26 +02:00
Fin Maaß
4fcae9f3c7
build: efinix: Tristate fix
...
fix efinix Tristate by adding size to add_iface_io().
Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2024-10-07 10:15:38 +02:00
Florent Kermarrec
64cf925b39
soc/integration/soc: Cleanup imports and directly use math.log2/ceil since math is already imported.
2024-10-02 17:10:08 +02:00
Florent Kermarrec
5e897752b7
soc/intergration/soc/add_pcie: Add new status_width parameter.
2024-10-02 17:10:05 +02:00
Fin Maaß
c1733ea2ff
build: io: make oe2 of DDRTristate optional
...
make oe2 of DDRTristate optional.
Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2024-10-01 12:11:27 +02:00
Fin Maaß
280b6b4ee4
build: io: don't use mutable object as default value
...
don't use mutable object (here: ClockSignal()) as default value,
beacuse they will be the same object.
Leeds to problems, when for example two `SDRInput`
are used in two different Modules and one of them is
used with a `ClockDomainsRenamer()`, then both are changed.
Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2024-09-30 15:18:11 +02:00
Florent Kermarrec
2130ff2fb3
build/efinix/efinity: Cosmetic cleanup on toolchain arguments.
2024-09-26 18:06:36 +02:00
Florent Kermarrec
1568b25ff7
build/efinix/common: Cosmetic cleanups.
2024-09-26 18:03:36 +02:00
Florent Kermarrec
431feb0ac2
build/efinix/common: Enable back SDRInput since support fixed with recent changes.
2024-09-26 18:01:02 +02:00
Florent Kermarrec
9760493c32
build/efinix/common: Switch to LiteXModule.
2024-09-26 17:46:07 +02:00
enjoy-digital
95e5e7302e
Merge pull request #2083 from VOGL-electronic/efinix_common_improve
...
build: efinix: EfinixTristateImpl: use GPIO Bus
2024-09-26 17:41:07 +02:00
Fin Maaß
a825c61385
build: efinix: EfinixTristateImpl: use GPIO Bus
...
use the gpio bus for Efinix Tristate implemenation.
Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2024-09-26 16:03:56 +02:00
Fin Maaß
e9a4b178ce
build: efinix: platform.py: add `get_pins_location` and `get_pins_name`
...
add `get_pins_location` and `get_pins_name`.
Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2024-09-26 16:03:56 +02:00
Fin Maaß
f8dc03810d
build: efinix: use LiteXContext to get platform
...
use LiteXContext to get platform.
Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2024-09-26 16:03:41 +02:00
Fin Maaß
afcc477c4e
efinix: common: replace `is_inclk_inverted`
...
replace `is_inclk_inverted` with `in_clk_inv` and `out_clk_inv`.
This way thwe right prop is set in the ifacewriter.py.
Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2024-09-26 15:11:39 +02:00
Fin Maaß
a605e75873
efinix: ifacewriter: remove deprecated GPIO properties
...
removes `OE_CLK_PIN_INV` and `OE_CLK_PIN` as they
got deprecated in efinity 2023.1.
Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2024-09-26 15:10:03 +02:00
Fin Maaß
2c3536720c
efinix: ifacewriter: add `in_clk_inv` for GPIO INPUT block
...
add `in_clk_inv` for GPIO INPUT block.
Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2024-09-26 15:10:03 +02:00
Fin Maaß
10ab1b76c0
efinix: ifacewriter: fix `out_reg` in GPIO INOUT block
...
fix `out_reg` in GPIO INOUT block.
Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2024-09-26 15:10:03 +02:00
Florent Kermarrec
b135f71512
build/efinix/common: Disable SDRInput for now since breaking designs, needs to be investigated.
2024-09-26 12:58:54 +02:00
Florent Kermarrec
b5e91473b7
build/efinix/common: Update EfinixSDRInputImpl and minor cleanup.
2024-09-26 11:50:37 +02:00
enjoy-digital
0e337e2079
Merge pull request #2081 from VOGL-electronic/build_efinix_add_sdr_input
...
build: efinix: common.py; add `SDRInput`
2024-09-26 11:43:20 +02:00
enjoy-digital
a19fbb70c4
Merge pull request #2078 from VOGL-electronic/efinix_add_ipm
...
build: efinix: add function to add ip
2024-09-26 11:42:34 +02:00
enjoy-digital
b11cc8c3eb
Merge pull request #2082 from enjoy-digital/efinix_iface_signal_names
...
Efinix iface signal names.
2024-09-26 11:42:02 +02:00
Florent Kermarrec
39d292a3c7
build/efinix/common: Deprecate passing clk as str to avoid previous approach with pre-generated names.
2024-09-26 10:38:05 +02:00
Florent Kermarrec
a3a55fc8fb
build/efinix/common: Directly pass ClockSignal/Signal to blocks and let the build resolve names.
2024-09-26 10:14:42 +02:00
Florent Kermarrec
fde9d2e4ad
build/efinix/efinity: Add resolve_iface_signal_names method to automatically resolve ClockSignal/Signal names passed in the blocks.
...
Allow the Migen/LiteX build elaboration to resolve signal names and just use it in blocks to avoid name_override workaround.
2024-09-26 10:13:58 +02:00
Fin Maaß
61f715e6e7
build: efinix: common.py; add `SDRInput`
...
add `SDRInput` for efinix
Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2024-09-25 17:17:53 +02:00
Dolu1990
c3e87367c3
soc/cores/vexriscv_smp: Add the generation of the default sim config ( https://github.com/litex-hub/linux-on-litex-vexriscv/issues/405 )
2024-09-25 10:38:37 +02:00
Florent Kermarrec
b86d76baed
build/sim/core/veril.cpp: Flush trace file on finish, fix issue with empty .fst dumps with short simulations.
2024-09-25 08:56:51 +02:00
Fin Maaß
8a6264c4f6
build: efinix: add function to add ip
...
add function to add efinix IP.
Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2024-09-24 11:59:28 +02:00
Florent Kermarrec
c95a6e041c
soc/interconnect/stream: Add Delay module.
2024-09-23 12:23:29 +02:00
enjoy-digital
baff4c69fe
Merge pull request #2075 from trabucayre/efinix_clkinput_signal
...
build/efinix/common.py: ClkInput: added ClockSignal support
2024-09-19 11:59:06 +02:00
enjoy-digital
033ec13f08
Merge pull request #2076 from trabucayre/xc7s_jtag
...
Spartan7 jtag support
2024-09-19 11:53:55 +02:00
Florent Kermarrec
6e9dffdbf5
soc/core/hyperbus: Avoid combinatorial loop on write bursts (Reported when building with Vivado).
2024-09-19 11:10:51 +02:00
Florent Kermarrec
ad2c3fcea7
soc/cores/cpu/vexiirscv: Add standard variant to allow compilation without specifying --cpu-variant.
2024-09-19 09:21:13 +02:00
Gwenhael Goavec-Merou
f1e1f3530e
build/efinix/ifacewriter.py: allows the use of ClockSignal for IN_CLK_PIN (gpio)
2024-09-19 09:14:30 +02:00
Gwenhael Goavec-Merou
aca959b059
build/efinix/common.py: ClkInput: added ClockSignal support
2024-09-19 09:12:36 +02:00
Gwenhael Goavec-Merou
e072156b93
build/xilinx/platform.py: added xc7s to the list of device supporting jtag access
2024-09-19 06:49:44 +02:00
Gwenhael Goavec-Merou
fc68f031a1
soc/cores/jtag.py: added Spartan7 definition for BSCANE2
2024-09-19 06:49:10 +02:00
enjoy-digital
9bacbe130b
Merge pull request #1974 from motec-research/dts_zephyr_updates
...
DTS zephyr updates
2024-09-17 14:58:51 +02:00
Florent Kermarrec
a350d2e909
soc/interconnect/stream: Add optional CSR to Multiplexer/Demultiplexer and Crossbar module with mux and demux.
2024-09-13 19:21:26 +02:00
Florent Kermarrec
2a19a61e05
build/xilinx/vivado: Fix typo.
2024-09-13 10:39:13 +02:00
enjoy-digital
99550809b3
Merge pull request #2069 from VOGL-electronic/fix-sim-ethernet
...
sim: add HW_PREAMBLE_CRC for ethernet
2024-09-13 08:36:40 +02:00
Florent Kermarrec
dc8c1bd9cd
build/xilinx/vivado: Rename opt_directive to vivado_opt_directive for consistency with other directives.
2024-09-12 18:04:25 +02:00
Florent Kermarrec
203c9816b2
integration/soc/add_etherbone: Allow 64-bit support now that validated.
2024-09-12 13:39:13 +02:00
Matthias Breithaupt
2fd8c2cd61
sim: add HW_PREAMBLE_CRC for ethernet
...
This fixes the behavior of `ethernet_phy_model` `"sim"`. As the preamble
is automatically attached by the tap, there is no need to add it from
the BIOS. To let the BIOS know, `HW_PREAMBLE_CRC` needs to be set.
Signed-off-by: Matthias Breithaupt <m.breithaupt@vogl-electronic.com>
2024-09-12 10:07:43 +02:00
enjoy-digital
b41a526e81
Merge pull request #2066 from VOGL-electronic/soc.py_ethernet_mac
...
soc.py: add_ethernet: add mac addr constant
2024-09-11 11:54:14 +02:00
enjoy-digital
11c7b69fd4
Merge pull request #2065 from VOGL-electronic/bios_little_warning_fix
...
bios: boot.c: fix warnings
2024-09-11 11:53:52 +02:00
Fin Maaß
7b3f1509d1
soc.py: add_ethernet: add mac addr constant
...
add mac addr constant to add_ethernet,
so it matches the one from add_etherbone.
Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2024-09-11 11:21:53 +02:00
Fin Maaß
3966e3438c
bios: boot.c: fix warnings
...
this fixes the warnings, when compiling.
Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2024-09-11 11:15:56 +02:00
Gwenhael Goavec-Merou
dc8b74cc58
Merge pull request #2060 from Dolu1990/efinix-rework
...
build/efinix: add a few IO primitives, IO constraints, sdc rework
2024-09-10 18:40:10 +02:00
Gwenhael Goavec-Merou
a80f290d80
soc/cores/clock/efinix.py: fill platform.clks with clkout mapping cd/clk_out_name. litex/build/efinix/ifacewriter.py: generate_lvds: when slow_clk/fast_clk are ClockSignal uses platform.clks to map between domain and signal name
2024-09-10 18:07:34 +02:00
Gwenhael Goavec-Merou
ad09ffc150
soc/cores/clock/efinix.py: register_clkin: uses clkin.name_override as input_signal name when name is not provided and PLL is configured in CORE or INTERNAL mode, create_clkout: added PLL name in clk_name str
2024-09-10 18:03:12 +02:00
Gwenhael Goavec-Merou
109ae17e9e
build/efinix/common.py: replaced i as str by a ClockDomain
2024-09-10 17:56:49 +02:00
Florent Kermarrec
458e0057f2
soc/interconnect/wishbone: Add Bypass mode on Cache when cachesize == 0 and similar data_widths.
2024-09-09 18:24:14 +02:00
Florent Kermarrec
5cd1a57080
soc/interconnect/wishbone: Cosmetic cleanup on Cache.
2024-09-09 18:16:40 +02:00
enjoy-digital
e06045c576
Merge pull request #2059 from Dolu1990/vexii-clk-video
...
soc/cores/vexiiriscv: update clocks + add video framebuffer support
2024-09-09 14:12:50 +02:00
Dolu1990
2db93c8e78
core/vexiiriscv: improve l2 timings
2024-09-06 16:07:05 +02:00
Fin Maaß
bd03c496a1
bios: add spiram
...
add spiram in bios, so it can enable QPI.
Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2024-09-05 16:31:32 +02:00
Dolu1990
599c6dde37
litex/build/efinix/common.py add EfinixDDRTristate binding
...
Co-authored-by: Fin Maaß <info@finmaass.de>
2024-09-05 16:12:32 +02:00
Dolu1990
c0fddb6561
build/efinix: add a few IO primitives, IO constraints, but mainly it rework how the SDC are handled
2024-09-05 15:21:12 +02:00
Dolu1990
642cfbe9a7
soc/cores/vexiiriscv: update clocks + add video framebuffer support
2024-09-05 15:16:15 +02:00