Commit Graph

6541 Commits

Author SHA1 Message Date
Robert Szczepanski 15b3d932a4 gpio: add support for interrupts on GPIOIn 2021-02-09 15:29:31 +01:00
enjoy-digital 4c1dbf9991
Merge pull request #794 from geertu/vexriscv-sbt-failures-are-fatal
cpu/vexriscv_smp: Make sbt failures fatal
2021-02-01 15:16:06 +01:00
Geert Uytterhoeven 7b3737f531 cpu/vexriscv_smp: Make sbt failures fatal
When using a non-default VexRiscv cluster config, the netlist for that
config needs to be generated.  This requires sbt to be installed.
If sbt is missing, an error message is printed:

    sh: 1: sbt: not found

This message may easily be lost in the noise, as the build continues, and fails
later with:

    ERROR: Can't open input file `litex/pythondata-cpu-vexriscv-smp/pythondata_cpu_vexriscv_smp/verilog/VexRiscvLitexSmpCluster_Cc1_Iw32Is4096Iy1_Dw32Ds4096Dy1_Ood_Wm.v' for reading: No such file or directory

Make the root cause more visible by raising an OSError, and aborting the
build.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
2021-02-01 13:54:59 +01:00
Florent Kermarrec 8623536a8a build/generic_platform: avoid removing X pins from named_sc.
We need them on Gowin FPGAs with embedded SDRAM where SDRAM pins are not real IOs.
2021-02-01 13:12:25 +01:00
Florent Kermarrec f324f9531a build/gowin: Don't generate IO_LOC is pin name is X. 2021-02-01 13:08:37 +01:00
enjoy-digital fd33e360fb
Merge pull request #792 from euryecetelecom/master
Add flash method to openFPGALoader class
2021-01-30 21:35:09 +01:00
enjoy-digital 14ce5512a2
Merge pull request #793 from d0ntrash/master
cores/clock/lattice_ice40: add missing AsyncResetSynchronizer import.
2021-01-30 21:34:19 +01:00
Konstantin 3f27253ccc cores/clock/lattice_ice40: add missing AsyncResetSynchronizer import. 2021-01-30 18:25:19 +01:00
Guillaume REMBERT 18a5ace637 Add flash method to openFPGALoader class for support with generic_programmer usage (needed for linux-on-litex-vexriscv) + add offset/address support for firmware load 2021-01-30 13:20:30 +01:00
enjoy-digital 69307cfdde
Merge pull request #789 from antmicro/jboc/litex-sim-fix-name
litex_sim: fix old name: get_cl_cw -> get_default_cl_cwl
2021-01-29 19:13:34 +01:00
Jędrzej Boczar 61e605da92 litex_sim: fix old name: get_cl_cw -> get_default_cl_cwl 2021-01-29 11:31:40 +01:00
Florent Kermarrec 2287f73937 tools/litex_client: add --read/--write args to do simple MMAP accesses to SoC bus.
ex reading/writing to scratch register over jtagbone:

In the SoC:
self.add_jtagbone()

Open LiteX Server:
litex_server --jtag

Do the MMAP accesses:
./litex_cli --read 0x4
0x12345678
./litex_clk --write 0x4 0x5aa55aa5
./litex_cli --read 0x4
0x5aa55aa5
2021-01-28 17:46:18 +01:00
Florent Kermarrec 7abfbd9825 tools/litex_json2dts/ethernet: add missing 'status = "okay";'.
Was causing https://github.com/litex-hub/linux-on-litex-vexriscv/issues/178.
2021-01-27 11:52:04 +01:00
Florent Kermarrec b8bcbc522f integration/export/triple: use LITEX_ENV_CC_TRIPLE instead of TRIPLE.
triple can be used internally, but is too generic as an environment variable.
2021-01-27 08:25:48 +01:00
enjoy-digital f331ddace8
Merge pull request #780 from garytwong/triple-option
integration/export: allow manually specifying toolchain triple.
2021-01-27 08:16:41 +01:00
Florent Kermarrec 61034fe0f9 litex_setup/update: do a git submodule update --init --recursive on repos with recursive set to True.
Simplify for example pythondata-cpu-vexriscv-smp updates.
2021-01-27 07:55:59 +01:00
Florent Kermarrec 2f89e0aecf soc/do_finalize: check that crg.rst is a Signal before connecting to ctrl._reset. 2021-01-26 17:08:43 +01:00
Florent Kermarrec cafe0944f1 soc/add_uartbone/add_jtagbone: improve phy naming and add uartbone_phy to CSR. 2021-01-26 15:46:55 +01:00
enjoy-digital 7479cbe71b
Merge pull request #784 from Acathla-fr/patch-1
Update comm_usb.py
2021-01-26 14:36:07 +01:00
Florent Kermarrec 331124dd23 tools/litex_server: add --jtag-config args to provide OpenOCD configuration file. 2021-01-26 14:32:36 +01:00
Florent Kermarrec 2e1b9ed948 tools/litex_server: rename --jtag-uart to --jtag. 2021-01-26 14:12:54 +01:00
Florent Kermarrec 531ce0e8b7 soc: create specific add_jtagbone method instead of integrating it in add_uartbnone.
Creates a JTAG bridge in the SoC simply with self.add_jtagbone(), almost comes for free :)
2021-01-26 14:12:19 +01:00
Acathla-fr a092d5b28f
Update comm_usb.py
typo : csr_csr replaced by csr_csv
2021-01-26 12:34:08 +01:00
Florent Kermarrec ed1da7ed1e soc/add_pcie: expose max_pending_requests parameter.
Being able to configure it is useful to find resource usage/performance compromise.
2021-01-26 10:59:22 +01:00
Florent Kermarrec dd985cd1d0 integration/export: disable CSRField extract/read functions generation for csr.size > 32-bit. 2021-01-26 10:23:56 +01:00
Florent Kermarrec 2a542e150d jtag_uart/openocd: switch to raw tcp socket and get litex_server --jtag-uart working. 2021-01-25 16:33:43 +01:00
Florent Kermarrec 7799765471 soc/jtag: run JTAGPHY in sys_jtag clock domain (to fix behavior after reset). 2021-01-25 16:31:55 +01:00
Florent Kermarrec 213644af70 integration/soc/add_uart: ResetInserter no longer required on UART since reboot is now doing a full system reset. 2021-01-25 13:39:45 +01:00
Florent Kermarrec 8cada67f32 cores/jtag: cleanup instances. 2021-01-25 12:31:32 +01:00
Florent Kermarrec 0b5df58a1b cores/jtag: cores/uart: expose jtag/tx/rx_cdc (to ease probing with LiteScope). 2021-01-25 12:30:43 +01:00
Florent Kermarrec 4df336341b cores/uart: expose fsm/timer (to ease probing with LiteScope). 2021-01-25 12:29:18 +01:00
Florent Kermarrec 17195c5e96 cpu/vexriscv_smp: cleanup new args integration and fix cluster naming. 2021-01-25 11:48:05 +01:00
enjoy-digital 7fa03cb1f3
Merge pull request #782 from enjoy-digital/vexriscv-smp-no-litedram
soc/cpu/vexriscv-smp: add args to disable out of order or direct path to LiteDRAM
2021-01-25 08:45:03 +01:00
Florent Kermarrec 1a38d51e08 libbase/memtest: remove 0x no longer required with %p. 2021-01-24 21:09:19 +01:00
Dolu1990 ae2cd31573 soc/cpu/vexriscv-smp add --without-out-of-order-decode and --with-wishbone-memory 2021-01-23 20:38:50 +01:00
Florent Kermarrec 01a2fc11e2 integration/soc/usb_acm: run USB ACM in sys_usb clock domain similar to sys clock domain but with rst disconnected. 2021-01-22 22:57:24 +01:00
Gary Wong 13d1d4cf8e integration/export: allow manually specifying toolchain triple.
If the environment variable TRIPLE is defined, use its value as the
highest priority candidate.  Useful for testing new cross-compilers,
or selecting among toolchains in a different priority than the built-in
list.
2021-01-22 12:11:03 -07:00
Florent Kermarrec 8623b0a16a integration/soc/add_uartbone: fix jtag_uart integration. 2021-01-22 15:00:13 +01:00
Florent Kermarrec d7aedfbc12 tools/litex_server: add initial JTAG-UART support. 2021-01-22 14:19:38 +01:00
Florent Kermarrec 697ff7447c soc/integration: add initial JTAG-UART support to UARTbone. 2021-01-22 14:19:03 +01:00
Florent Kermarrec e8cfe3b6ea software/liblitedram: fix typo. 2021-01-22 11:57:06 +01:00
enjoy-digital f22079dc94
Merge pull request #776 from geertu/compiler-warning-fixes
Compiler warning fixes
2021-01-22 09:28:23 +01:00
enjoy-digital e366cf2928
Merge pull request #778 from blakesmith/timer_tests
Add initial core test for Timer
2021-01-22 09:16:59 +01:00
Blake Smith 98b75d8671 Add initial core test for Timer 2021-01-21 21:37:41 -06:00
Florent Kermarrec 4e5f20a060 software/liblitedram: rename Half Sys8x Taps to tCK/4 and display "-" during write calibration when no valid bitstlip found. 2021-01-21 20:00:29 +01:00
Florent Kermarrec 57289dd47c software/liblitedram/write_leveling: display Half Sys8x Taps value before write_leveling. 2021-01-20 09:43:53 +01:00
Florent Kermarrec acb6741b8a software/bios: rename CONFIG_SIM_DISABLE_DELAY to CONFIG_DISABLE_DELAYS and disable timeout on serialboot's check_ack when CONFIG_DISABLE_DELAYS is set.
This is useful in simulation to skip serialboot ack check.
2021-01-20 09:42:29 +01:00
Geert Uytterhoeven 0f28bc489d software/include/base/stdio: Enable printf format strings checks
Now all format issues are fixed, tag all functions taking printf()-style
format specifiers with "__attribute__((format(printf, ...))", enabling
format string checks ("-Wall" includes "-Wformat").

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
2021-01-19 15:03:48 +01:00
Geert Uytterhoeven c3dea1b9fd software: Use "%p" to format pointer values
To fix compiler warnings of the following type:

    warning: format '%x' expects argument of type 'unsigned int', but argument 2 has type 'foo *' [-Wformat=]

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
2021-01-19 15:03:48 +01:00
Geert Uytterhoeven 19e7b53762 software: Use "l" length modifier to format long values
To fix compiler warnings of the following type:

    warning: format '%x' expects argument of type 'unsigned int', but argument has type 'long unsigned int' [-Wformat=]

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
2021-01-19 15:03:48 +01:00