Commit Graph

9865 Commits

Author SHA1 Message Date
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
Gwenhael Goavec-Merou bc3e90c93a
Merge pull request #2090 from VOGL-electronic/efinix_iobank
build: efinix: use ifacewriter to set bank voltage
2024-10-08 09:54:20 +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
enjoy-digital 644ef7e4e5
Merge pull request #2086 from VOGL-electronic/build_io_clocksignal
build: io: don't use mutable object as default value
2024-10-01 11:49:03 +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 87ee6ec3a0 CHANGES.md: Prepare for post 2024.08 changes. 2024-09-27 09:58:09 +02:00
Florent Kermarrec f72368abaa CHANGES.md: Do 2024.08 release. 2024-09-27 09:45:11 +02:00
Florent Kermarrec 58e916d86e setup.py: 2024.08 release. 2024-09-27 09:37:11 +02:00
Florent Kermarrec 50bb6bb1ff CHANGES.md: Update. 2024-09-27 09:33:22 +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
enjoy-digital c67dfa82cc
Merge pull request #2079 from VOGL-electronic/efinix_iface_fixups
build: efinix: ifacewriter: some fixes
2024-09-26 17:31:53 +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
Florent Kermarrec b2f63b37cc CHANGES.md: Update. 2024-09-20 13:00:40 +02:00
Florent Kermarrec 427ec10cc4 CONTRIBUTORS: Update. 2024-09-20 12:43:18 +02:00
Florent Kermarrec 726d39f40d LICENSE: Bump year. 2024-09-20 12:39:28 +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