Florent Kermarrec [Thu, 12 Sep 2019 15:07:56 +0000 (17:07 +0200)]
build/openocd: add set_qe parameter to flash
QE bit is not set on blank SPI flashes and need to be set when SPI X4 is enabled in the bistream to load the FPGA.
Florent Kermarrec [Thu, 12 Sep 2019 08:21:37 +0000 (10:21 +0200)]
tools/litex_term/upload: bufferize only chunks of the file instead of the entire file to speedup upload when used on embedded devices (RPI for example)
Florent Kermarrec [Wed, 11 Sep 2019 16:30:28 +0000 (18:30 +0200)]
soc/integration/cpu_interface: don't raise OSError if we are not going to compile software and compilation toolchain is not found
Florent Kermarrec [Tue, 10 Sep 2019 10:41:05 +0000 (12:41 +0200)]
soc/integration/builder: call do_exit with vns when build is done.
Florent Kermarrec [Mon, 9 Sep 2019 13:12:24 +0000 (15:12 +0200)]
Merge branch 'master' of github.com/enjoy-digital/litex
Florent Kermarrec [Mon, 9 Sep 2019 13:12:08 +0000 (15:12 +0200)]
soc/itnegration: update litedram
enjoy-digital [Mon, 9 Sep 2019 11:38:29 +0000 (13:38 +0200)]
Merge pull request #255 from sergachev/fix-crc32
fix crc32
Ilia Sergachev [Mon, 9 Sep 2019 11:19:43 +0000 (13:19 +0200)]
fix crc32
Florent Kermarrec [Mon, 9 Sep 2019 09:02:14 +0000 (11:02 +0200)]
interconnect/wishbone: add FlipFlop to allow UpConverter to be used
Note: a test should be added for Converter and DownConverter/UpConverter should be cleaned up
Florent Kermarrec [Fri, 6 Sep 2019 09:57:18 +0000 (11:57 +0200)]
build/openocd: add stream method for JTAG UART
Florent Kermarrec [Fri, 6 Sep 2019 09:56:42 +0000 (11:56 +0200)]
soc_core: add JTAG UART support (uart_name="jtag_uart)
Florent Kermarrec [Fri, 6 Sep 2019 09:55:41 +0000 (11:55 +0200)]
soc/cores/jtag: add Xilinx JTAG TAPs support and simple JTAG PHY (can be used for JTAG UART)
Florent Kermarrec [Thu, 5 Sep 2019 13:59:35 +0000 (15:59 +0200)]
soc_zynq: fix indent
Florent Kermarrec [Thu, 5 Sep 2019 13:55:18 +0000 (15:55 +0200)]
soc_zynq: fix typo
Florent Kermarrec [Thu, 5 Sep 2019 09:54:14 +0000 (11:54 +0200)]
soc/interconnect/stream: add Monitor module
Generic module to monitor endpoints activity: tokens/overflows/underflows that
can be plugged on a endpoint. Can be useful for various purpose:
- endpoint bandwidth calculation.
- underflows/overflows detection.
- etc...
enjoy-digital [Tue, 3 Sep 2019 05:23:32 +0000 (07:23 +0200)]
Merge pull request #254 from mithro/crc-smaller
Add @xobs' smaller CRC version
Tim 'mithro' Ansell [Mon, 2 Sep 2019 21:48:30 +0000 (14:48 -0700)]
Use `SMALL_CRC` to enable smaller CRC versions.
@xobs created a smaller code size version of the CRC functions. Enable
these if someone uses the `SMALL_CRC` define.
Tim 'mithro' Ansell [Mon, 2 Sep 2019 21:47:20 +0000 (14:47 -0700)]
Remove extra whitespace.
Sean Cross [Sun, 20 Jan 2019 23:25:01 +0000 (12:25 +1300)]
libbase: crc16: commit smaller version of crc16
Signed-off-by: Sean Cross <sean@xobs.io>
Sean Cross [Sun, 20 Jan 2019 23:24:40 +0000 (12:24 +1300)]
libbase: crc32: add smaller version
Signed-off-by: Sean Cross <sean@xobs.io>
Tim Ansell [Mon, 2 Sep 2019 21:42:22 +0000 (14:42 -0700)]
Merge pull request #252 from mithro/only-change-on-contents
Only write file if contents will change.
Tim 'mithro' Ansell [Thu, 29 Nov 2018 04:18:31 +0000 (20:18 -0800)]
Only write file if contents will change.
Florent Kermarrec [Sat, 31 Aug 2019 16:32:35 +0000 (18:32 +0200)]
soc/cores: simplify JTAGAtlantic (only keep alt_jtag_atlantic instance), move to jtag and allow selecting it as uart with uart_name"jtag_atlantic"
enjoy-digital [Sat, 31 Aug 2019 16:33:27 +0000 (18:33 +0200)]
Merge pull request #251 from micro-FPGA/master
atlantic JTAG UART working module
Antti Lukats [Fri, 30 Aug 2019 07:35:10 +0000 (09:35 +0200)]
Create atlantic.py
atlantic JTAG uart for Intel FPGA's, working and tested on Intel C10LP EK
Florent Kermarrec [Thu, 29 Aug 2019 07:46:20 +0000 (09:46 +0200)]
core/spi: add minimal SPISlave
Florent Kermarrec [Wed, 28 Aug 2019 03:15:45 +0000 (05:15 +0200)]
gen/fhdl/verilog: allow single element verilog inline attribute
Florent Kermarrec [Tue, 27 Aug 2019 12:06:13 +0000 (14:06 +0200)]
targets/nexys_video: generate clk100
Florent Kermarrec [Tue, 27 Aug 2019 07:45:44 +0000 (09:45 +0200)]
software/bios: switch to standard CRLF
Avoid setting terminal to "implicit CR in every LF" mode.
Florent Kermarrec [Mon, 26 Aug 2019 16:17:43 +0000 (18:17 +0200)]
tools/litex_term: add automatic check to see if we need to insert LF or not
Florent Kermarrec [Mon, 26 Aug 2019 15:15:01 +0000 (17:15 +0200)]
bios/tools: allow disabling CRC check on serialboot (to speedup debug/loading large images when only serial is available)
Florent Kermarrec [Mon, 26 Aug 2019 10:10:11 +0000 (12:10 +0200)]
tools/litex_term: add sdl_payload_length
Florent Kermarrec [Mon, 26 Aug 2019 07:27:19 +0000 (09:27 +0200)]
litex_setup: add litex-boards
enjoy-digital [Fri, 23 Aug 2019 19:36:51 +0000 (21:36 +0200)]
Merge pull request #246 from gsomlo/gls-native-rv64
software: use native toolchain for same host, target architectures
Gabriel L. Somlo [Fri, 23 Aug 2019 12:56:02 +0000 (08:56 -0400)]
software: use native toolchain for same host, target architectures
LiteX rightfully assumes that most often the target software must
be cross-compiled from an x86 host platform. However, LiteX can be
also built on a 'linux-riscv64' platform (e.g. Fedora's riscv64
port), where the software for riscv64 targets should be compiled
using the native toolchain.
Signed-off-by: Gabriel Somlo <gsomlo@gmail.com>
enjoy-digital [Sat, 17 Aug 2019 09:54:39 +0000 (11:54 +0200)]
Merge pull request #244 from atommann/master
changing http to https
atommann [Sat, 17 Aug 2019 08:02:10 +0000 (16:02 +0800)]
changing http to https
Antti Lukats [Fri, 16 Aug 2019 12:36:59 +0000 (14:36 +0200)]
Merge pull request #2 from enjoy-digital/master
update with hyperram and other changes
Florent Kermarrec [Fri, 16 Aug 2019 11:56:56 +0000 (13:56 +0200)]
soc/core: simplify/cleanup HyperRAM core
- rename core to hyperbus.
- change layout (cs_n with variable length instead of cs0_n, cs1_n).
- use DifferentialOutput when differential clock is used.
- add test (python3 -m unittest test.test_hyperbus).
Usage example:
from litex.soc.cores.hyperbus import HyperRAM
self.submodules.hyperram = HyperRAM(platform.request("hyperram"))
self.add_wb_slave(mem_decoder(self.mem_map["hyperram"]), self.hyperram.bus)
self.add_memory_region("hyperram", self.mem_map["hyperram"], 8*1024*1024)
Antti Lukats [Fri, 16 Aug 2019 08:31:53 +0000 (10:31 +0200)]
libero enable enhanced constraints
Libero 12.0 does not support any more classic constraint flow
Antti Lukats [Fri, 16 Aug 2019 07:46:15 +0000 (09:46 +0200)]
soc/cores: add initial simple hyperram core
Florent Kermarrec [Thu, 15 Aug 2019 11:44:36 +0000 (13:44 +0200)]
build/altera/quartus: add add_ip method to use Quartus QSYS files
platform.add_ip("my_ip.qsys")
Florent Kermarrec [Thu, 15 Aug 2019 07:26:25 +0000 (09:26 +0200)]
cpu_interface: add json csr map export, simplify csv csr map export using json
Florent Kermarrec [Wed, 14 Aug 2019 17:09:58 +0000 (19:09 +0200)]
bios/sdram: set init done after memtest (for standalone LiteDRAM controllers)
Florent Kermarrec [Wed, 14 Aug 2019 17:03:10 +0000 (19:03 +0200)]
build/xilinx/vivado: use "" for strings
Florent Kermarrec [Wed, 14 Aug 2019 17:02:01 +0000 (19:02 +0200)]
build/xilinx/vivado: remove with_phys_opt
enjoy-digital [Wed, 14 Aug 2019 16:58:15 +0000 (18:58 +0200)]
Merge pull request #243 from sergachev/master
build/xilinx/vivado: improve directive support
enjoy-digital [Wed, 14 Aug 2019 16:55:34 +0000 (18:55 +0200)]
Merge pull request #241 from railnova/zynq
[fix] prevent Vivado from inferring DSP48 in AXIBurst2Beat
Ilia Sergachev [Wed, 14 Aug 2019 15:49:13 +0000 (17:49 +0200)]
build/xilinx/vivado: improve directive support
chmousset [Wed, 14 Aug 2019 09:30:39 +0000 (11:30 +0200)]
[fix] prevent Vivado from inferring DSP48 in AXIBurst2Beat
Florent Kermarrec [Wed, 14 Aug 2019 05:35:45 +0000 (07:35 +0200)]
cores/spi_flash/S7SPIFlash: make cs_n optional in pads (when driven externally)
enjoy-digital [Tue, 13 Aug 2019 08:34:50 +0000 (10:34 +0200)]
Merge pull request #240 from danielkucera/patch-1
more understandable error when missing a memory
Daniel Kucera [Tue, 13 Aug 2019 08:14:16 +0000 (10:14 +0200)]
more understandable error when missing a memory
atommann [Mon, 12 Aug 2019 14:20:34 +0000 (22:20 +0800)]
Update .gitmodules
http to https
enjoy-digital [Sat, 10 Aug 2019 13:33:05 +0000 (15:33 +0200)]
Merge pull request #235 from gsomlo/gls-trellis-yosys-opt
build/lattice/trellis: use additional yosys optimization flags
Gabriel L. Somlo [Fri, 5 Jul 2019 20:28:23 +0000 (16:28 -0400)]
build/lattice/trellis: use abc9 techmapping pass with yosys
Signed-off-by: Gabriel Somlo <gsomlo@gmail.com>
Florent Kermarrec [Fri, 9 Aug 2019 11:26:31 +0000 (13:26 +0200)]
software/libbase/mdio: set data before clock, revert two cycle turnaround and test with different phys
Florent Kermarrec [Fri, 9 Aug 2019 10:33:10 +0000 (12:33 +0200)]
cores/cpu: add riscv-none-embed toolchain support to riscv32 cpus
Florent Kermarrec [Fri, 9 Aug 2019 08:31:53 +0000 (10:31 +0200)]
software/libase/mdio: cleanup and reduce raw_turnaround by 1 cycle
Florent Kermarrec [Fri, 9 Aug 2019 07:27:32 +0000 (09:27 +0200)]
cores/clock/S7PLL: fix -1/-3 speedgrade vco max freq swap
Florent Kermarrec [Fri, 9 Aug 2019 07:26:41 +0000 (09:26 +0200)]
software/bios: add Ethernet PHY MDIO read/write/dump commands
Florent Kermarrec [Thu, 8 Aug 2019 14:19:22 +0000 (16:19 +0200)]
altera/common: fix AsyncResetSynchronizer polarity and simplify
Florent Kermarrec [Thu, 8 Aug 2019 14:08:55 +0000 (16:08 +0200)]
build/xilinx/common: improve presentation
Florent Kermarrec [Thu, 8 Aug 2019 14:06:40 +0000 (16:06 +0200)]
microsemi/common: improve presentation
Florent Kermarrec [Thu, 8 Aug 2019 14:02:34 +0000 (16:02 +0200)]
build/altera/common: improve presentation
Florent Kermarrec [Wed, 7 Aug 2019 06:36:04 +0000 (08:36 +0200)]
platforms/default_clk_period: use 1e9/freq
Florent Kermarrec [Wed, 7 Aug 2019 06:29:59 +0000 (08:29 +0200)]
targets/minispartan6/crg: only keep S6PLL code
Florent Kermarrec [Wed, 7 Aug 2019 06:29:20 +0000 (08:29 +0200)]
cores/clock: juse use 1e9/freq instead of period_ns
Florent Kermarrec [Wed, 7 Aug 2019 06:18:54 +0000 (08:18 +0200)]
cores/clock/s6pll: add phase support
Florent Kermarrec [Wed, 7 Aug 2019 06:17:44 +0000 (08:17 +0200)]
cores/clock/xilinx: change clkfbout_mult loop order to select highest vco_freq
Florent Kermarrec [Tue, 6 Aug 2019 06:46:25 +0000 (08:46 +0200)]
litex_term: make sure to unconfigure console when board is unplugged
Florent Kermarrec [Tue, 6 Aug 2019 05:56:45 +0000 (07:56 +0200)]
soc/integration/builder: -x
Florent Kermarrec [Mon, 5 Aug 2019 08:36:38 +0000 (10:36 +0200)]
cores: -x on spi.py
Florent Kermarrec [Mon, 5 Aug 2019 07:08:56 +0000 (09:08 +0200)]
wishbone/SRAM: make read_only emited verilog code compatible with all tools
Quartus was not able to implement ROM correctly, see #228
Florent Kermarrec [Sun, 4 Aug 2019 10:22:35 +0000 (12:22 +0200)]
soc/cores/uart: add FT245 FIFO mode support (sync & async)
Florent Kermarrec [Fri, 2 Aug 2019 08:27:38 +0000 (10:27 +0200)]
build/altera/quartus: use .bat on win32/cygwin
Florent Kermarrec [Thu, 1 Aug 2019 19:03:05 +0000 (21:03 +0200)]
build/xilinx/vivado: change severity of Common 17-55 critical warning to warning
Florent Kermarrec [Mon, 29 Jul 2019 06:37:46 +0000 (08:37 +0200)]
cores/pwm: remove default CSR reset values.
Florent Kermarrec [Sat, 27 Jul 2019 18:27:53 +0000 (20:27 +0200)]
soc: generate git header and show migen/litex git sha1 in bios
enjoy-digital [Thu, 25 Jul 2019 18:24:25 +0000 (20:24 +0200)]
Merge pull request #223 from sergachev/master
support vivado incremental implementation
Ilia Sergachev [Thu, 25 Jul 2019 17:18:11 +0000 (19:18 +0200)]
support vivado incremental implementation
enjoy-digital [Thu, 25 Jul 2019 07:25:26 +0000 (09:25 +0200)]
Merge pull request #222 from antmicro/bump_vexriscv
cpu/vexriscv: bump submodule
Mateusz Holenko [Thu, 25 Jul 2019 06:43:35 +0000 (08:43 +0200)]
cpu/vexriscv: bump submodule
Florent Kermarrec [Thu, 25 Jul 2019 05:46:14 +0000 (07:46 +0200)]
bios/sdram: fix compilation warning
Florent Kermarrec [Tue, 23 Jul 2019 18:56:49 +0000 (20:56 +0200)]
test/test_axi: remove use of rand_wait, rename rand_level to random
Florent Kermarrec [Tue, 23 Jul 2019 18:35:28 +0000 (20:35 +0200)]
soc_core: round memory regions size/length to next power of 2 (if not already a power of 2)
enjoy-digital [Tue, 23 Jul 2019 10:01:13 +0000 (12:01 +0200)]
Merge pull request #221 from antmicro/bump_vexriscv
cpu/vexriscv: bump submodule
Mateusz Holenko [Tue, 23 Jul 2019 09:48:00 +0000 (11:48 +0200)]
cpu/vexriscv: bump submodule
Florent Kermarrec [Tue, 23 Jul 2019 08:28:19 +0000 (10:28 +0200)]
bios/boot: fix default EMULATOR_RAM_BASE
Florent Kermarrec [Tue, 23 Jul 2019 07:53:48 +0000 (09:53 +0200)]
cores/clock: cleanup
Florent Kermarrec [Tue, 23 Jul 2019 07:27:20 +0000 (09:27 +0200)]
cores/clock: add initial iCE40 support
Florent Kermarrec [Mon, 22 Jul 2019 19:55:07 +0000 (21:55 +0200)]
cores/spi_flash/add_clk_primitive: return if clk primitive is not needed
Florent Kermarrec [Mon, 22 Jul 2019 19:32:46 +0000 (21:32 +0200)]
bios/boot: define EMULATOR_RAM_BASE if not defined, add KERNEL_IMAGE_RAM_OFFSET
Florent Kermarrec [Mon, 22 Jul 2019 10:38:16 +0000 (12:38 +0200)]
soc_core: fix cpu_variant definition
Florent Kermarrec [Mon, 22 Jul 2019 09:43:22 +0000 (11:43 +0200)]
bios/boot: fix booting rework
- keep emulator.bin in a specific ram (for now)
- print message when falling back to boot.bin
- print destination on tftp download (to ease debug)
Florent Kermarrec [Mon, 22 Jul 2019 09:41:01 +0000 (11:41 +0200)]
soc_core: fix cpu_variant config (we don't want the extension)
enjoy-digital [Mon, 22 Jul 2019 09:44:20 +0000 (11:44 +0200)]
Merge pull request #216 from antmicro/booting_vexriscv_linux
Rework booting Linux on VexRiscv
Florent Kermarrec [Mon, 22 Jul 2019 08:28:03 +0000 (10:28 +0200)]
cores/spi_flash: add SpiFlashCommon and use it to add clk primitives (7-Series/ECP5 support for now)
Florent Kermarrec [Mon, 22 Jul 2019 08:25:55 +0000 (10:25 +0200)]
platforms/versa_ecp5: add spiflash pads
Florent Kermarrec [Mon, 22 Jul 2019 06:53:18 +0000 (08:53 +0200)]
soc_core: optimize mem_decoder
Non-optimized version was tested on 7-series and was additional resource usage
was not noticeable. This does not seems to be the case on iCE40 (see #220), so
hand optimize it. On 256MB aligned addresses, it should be equivalent to the
old decoder used by previously in LiteX.
The only requirement is that to have address aligned on size, which was already
the case. An assertion will trigger it this condition is not respected.