Tim Ansell [Thu, 9 Jul 2020 16:34:22 +0000 (09:34 -0700)]
Merge pull request #585 from FFY00/more-gcc
cpu: add a few missing GCC toolchains
Filipe Laíns [Thu, 9 Jul 2020 14:58:33 +0000 (15:58 +0100)]
cpu: add a few missing GCC toolchains
This names are used by Arch Linux for eg.
Signed-off-by: Filipe Laíns <lains@archlinux.org>
Florent Kermarrec [Thu, 9 Jul 2020 11:09:36 +0000 (13:09 +0200)]
liblitesdcard/sdcard: clamp divider value.
enjoy-digital [Thu, 9 Jul 2020 10:54:42 +0000 (12:54 +0200)]
Merge pull request #584 from ozbenh/memtest
Memtest/memspeed improvements
Florent Kermarrec [Thu, 9 Jul 2020 10:18:09 +0000 (12:18 +0200)]
cores/dma: add stream.last support on WishboneDMAReader.
Benjamin Herrenschmidt [Wed, 8 Jul 2020 07:13:37 +0000 (17:13 +1000)]
memspeed: Write a fixed value
Otherwise we have at least an extra addition in the loop
which squews the result compared to the read loop.
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Florent Kermarrec [Wed, 8 Jul 2020 06:33:52 +0000 (08:33 +0200)]
buid/io/InferedSDRIO/InferedSDRTristate: avoid unnecessary clk_domain/limitation.
Just create a local clk_domain from clk signal.
Florent Kermarrec [Wed, 8 Jul 2020 05:53:42 +0000 (07:53 +0200)]
interconnect/avalon: minor cleanup, remove max on SyncFIFO depth.
Benjamin Herrenschmidt [Wed, 8 Jul 2020 03:21:45 +0000 (13:21 +1000)]
memtest: Fix memspeed access size
The move to libbase reverted the type of the pointer
from long to int.
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Benjamin Herrenschmidt [Wed, 8 Jul 2020 03:17:48 +0000 (13:17 +1000)]
memtest: Fix integer size/type printf errors
In a couple of places, memtest uses %x to print a pointer which
is illegal (and could be problematic on 64-bit). Use %p instead.
Additionally, use %ld when printing longs
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Florent Kermarrec [Tue, 7 Jul 2020 17:59:34 +0000 (19:59 +0200)]
software/litesdcard: use new clocking and use slow clock during initialization.
Florent Kermarrec [Tue, 7 Jul 2020 13:05:07 +0000 (15:05 +0200)]
integration/soc/sdcard: cleanup emulator integration, fix sim.
Florent Kermarrec [Tue, 7 Jul 2020 12:58:06 +0000 (14:58 +0200)]
integration/soc: move pads.rst control to PHY.
Florent Kermarrec [Tue, 7 Jul 2020 10:11:47 +0000 (12:11 +0200)]
build/io/InferedSDRTristate: pass clock domain to SDROutput/SDRInput.
Florent Kermarrec [Tue, 7 Jul 2020 09:03:26 +0000 (11:03 +0200)]
software/liblitesdcard: improve sdcard_init and handle errors.
Florent Kermarrec [Tue, 7 Jul 2020 07:24:08 +0000 (09:24 +0200)]
litesdcard: use new Block2Mem/Mem2Block DMAs.
Florent Kermarrec [Tue, 7 Jul 2020 06:14:42 +0000 (08:14 +0200)]
litex/gen: remove io that has been replaced with litex/build/io (and should have been removed).
enjoy-digital [Tue, 7 Jul 2020 06:06:55 +0000 (08:06 +0200)]
Merge pull request #583 from gsomlo/gls-sdcard-timeout
liblitesdcard/sdcard: adjust card-ready timeout
Gabriel Somlo [Mon, 6 Jul 2020 21:00:24 +0000 (17:00 -0400)]
liblitesdcard/sdcard: adjust card-ready timeout
Testing on nexys4ddr and rocket, approximately 12 iterations of the
timeout loop (using `busy_wait(1)`) are needed to receive a "ready"
response from the SDcard, assuming a "warm" reset where the card has
already been previously initialized.
If the SDcard is ejected and re-inserted, or if the board is "cold-reset"
(e.g., reprogrammed via openocd vs. a simple push of the reset button),
it takes approximately 450 iterations before the SDCard responds with a
"ready" message.
In either case, a timeout of 10 is insufficient. This patch increases
the busy-wait to 10, and the timeout loop counter to 128, which should
cover most cases.
Additionally, make a few minor cosmetic improvements.
Signed-off-by: Gabriel Somlo <gsomlo@gmail.com>
Florent Kermarrec [Mon, 6 Jul 2020 18:07:06 +0000 (20:07 +0200)]
liblitesdcard/sdcard: add timeout when waiting card to be ready.
Florent Kermarrec [Mon, 6 Jul 2020 16:59:28 +0000 (18:59 +0200)]
liblitesdcard/sdcard: use new SDClocker enable CSR.
Florent Kermarrec [Mon, 6 Jul 2020 10:26:24 +0000 (12:26 +0200)]
interconnect/csr_bus: move/rewrite paged access warning.
Was incorrectly triggered with csr_data_width=32.
Florent Kermarrec [Mon, 6 Jul 2020 07:51:32 +0000 (09:51 +0200)]
interconnect/csr_bus: remove 64-bit CSR bus alignment support (no longer supported in SoCs).
enjoy-digital [Sun, 5 Jul 2020 08:06:01 +0000 (10:06 +0200)]
Merge pull request #582 from gsomlo/gls-minor-fixup
Minor sdcard fixes
Gabriel Somlo [Sat, 4 Jul 2020 19:24:05 +0000 (15:24 -0400)]
liblitesdcard/sdcard: return error code outside '#ifdef SDCARD_DEBUG'
Gabriel Somlo [Sat, 4 Jul 2020 19:22:28 +0000 (15:22 -0400)]
liblitesdcard/sdcard: cosmetic: fix indentation, eliminate redundant counter
Florent Kermarrec [Fri, 3 Jul 2020 18:11:05 +0000 (20:11 +0200)]
targets: remove sdcard clock domain (now generated in the PHY).
Florent Kermarrec [Fri, 3 Jul 2020 18:06:42 +0000 (20:06 +0200)]
litesdcard: use new clocker.
Florent Kermarrec [Fri, 3 Jul 2020 17:30:06 +0000 (19:30 +0200)]
liblitesdcard/sdcard: use new register names and new software initalization register.
Florent Kermarrec [Fri, 3 Jul 2020 17:29:05 +0000 (19:29 +0200)]
interconnect/stream: allow empty description/payload on Endpoint.
Florent Kermarrec [Fri, 3 Jul 2020 16:48:43 +0000 (18:48 +0200)]
litelitesdcard/sdcard: remove wait workaround and replace remove SDCARD_MULTIPLE_BLOCK_SUPPORT define (replace it with SDCARD_CMD23_SUPPORT).
Florent Kermarrec [Fri, 3 Jul 2020 12:43:30 +0000 (14:43 +0200)]
litesdcard: update integration.
Florent Kermarrec [Fri, 3 Jul 2020 12:39:31 +0000 (14:39 +0200)]
interconnect/stream: add ClockDomainCrossing wrapper around AsyncFIFO.
Florent Kermarrec [Thu, 2 Jul 2020 09:37:31 +0000 (11:37 +0200)]
integration/soc/etherbone: always run ethcore in eth_tx clock domain and remove clock_domain parameter.
This avoid issues when sys_clk_freq < eth_tx clock like sys_clk_freq < 125MHz with 1Gbps link.
enjoy-digital [Wed, 1 Jul 2020 13:27:06 +0000 (15:27 +0200)]
Merge pull request #581 from antmicro/i2s_tx_fix
i2s: Fix the incorrect TX fifo almost empty offset
Pawel Sagan [Thu, 25 Jun 2020 12:32:50 +0000 (14:32 +0200)]
i2s: Fix the incorrect TX fifo almost empty offset
Florent Kermarrec [Wed, 1 Jul 2020 10:50:24 +0000 (12:50 +0200)]
sdcard: rename cd_sdcard to cd_sd to avoid unnecessary clock domain.
Florent Kermarrec [Wed, 1 Jul 2020 10:40:23 +0000 (12:40 +0200)]
liblitesdcard/sdcard: add SDCARD_MULTIPLE_BLOCK_SUPPORT define.
Florent Kermarrec [Wed, 1 Jul 2020 10:39:56 +0000 (12:39 +0200)]
integration/soc/add_sdcard: update SDEmulator.
Florent Kermarrec [Wed, 1 Jul 2020 07:47:10 +0000 (09:47 +0200)]
tools/litex_sim: cleanup cpu endianness.
enjoy-digital [Wed, 1 Jul 2020 06:37:03 +0000 (08:37 +0200)]
Merge pull request #580 from Dolu1990/patch-2
Improve verilator compilation speed
Florent Kermarrec [Wed, 1 Jul 2020 06:35:54 +0000 (08:35 +0200)]
boards/platforms/versa_ecp5: fix mising update.
Florent Kermarrec [Tue, 30 Jun 2020 17:17:44 +0000 (19:17 +0200)]
tools/litex_crossover_uart: add host argument to connect to a remote server.
example: litex_server over PCIe running on a remote machine and create virtual uart on our local machine.
Florent Kermarrec [Tue, 30 Jun 2020 16:32:11 +0000 (18:32 +0200)]
targets: add identifier on all targets and update Versa ECP5.
Florent Kermarrec [Tue, 30 Jun 2020 12:12:35 +0000 (14:12 +0200)]
tools/remote/comm_pcie: use ctypes.c_uint32 to do 32-bit accesses and avoid double writes/reads.
Florent Kermarrec [Tue, 30 Jun 2020 12:10:36 +0000 (14:10 +0200)]
tools/litex_crossover_uart: add base_address argument (required when wishbone translation).
Dolu1990 [Tue, 30 Jun 2020 08:38:26 +0000 (10:38 +0200)]
Improve verilator compilation speed
by asking verilator to split the C++ model into multiple files.
Florent Kermarrec [Mon, 29 Jun 2020 15:01:36 +0000 (17:01 +0200)]
software/bios/Makefile: fix #578 merge. (get back #579).
Florent Kermarrec [Mon, 29 Jun 2020 07:51:34 +0000 (09:51 +0200)]
software/libbase/memtest: fix bus errors reporting.
enjoy-digital [Mon, 29 Jun 2020 12:53:33 +0000 (14:53 +0200)]
Merge pull request #578 from scanakci/blackparrot_litex
Blackparrot litex syn with master BP, upgrade to IMA
enjoy-digital [Mon, 29 Jun 2020 12:53:13 +0000 (14:53 +0200)]
Merge branch 'master' into blackparrot_litex
enjoy-digital [Mon, 29 Jun 2020 12:52:37 +0000 (14:52 +0200)]
Merge pull request #579 from antmicro/fix_building_bios
Fix ordering of libraries
sadullah [Mon, 29 Jun 2020 01:23:56 +0000 (21:23 -0400)]
clean Makefile
sadullah [Sun, 28 Jun 2020 17:10:24 +0000 (13:10 -0400)]
minor change in BP top module
sadullah [Sat, 27 Jun 2020 21:38:53 +0000 (17:38 -0400)]
syn with master blackparrot, upgrade BP to IMA
enjoy-digital [Sat, 27 Jun 2020 07:35:04 +0000 (09:35 +0200)]
Merge pull request #576 from betrusted-io/deprecate_slave
Deprecate slave terminology
Florent Kermarrec [Fri, 26 Jun 2020 18:10:10 +0000 (20:10 +0200)]
liblitesdcard/sdcard: update with litesdcard.
Florent Kermarrec [Fri, 26 Jun 2020 06:36:16 +0000 (08:36 +0200)]
interconnect/axi/AXIStreamInterface: add tuser support.
Florent Kermarrec [Thu, 25 Jun 2020 18:07:39 +0000 (20:07 +0200)]
liblitesdcard/sdcard: increase busy_wait and use common timeout.
Florent Kermarrec [Thu, 25 Jun 2020 11:48:49 +0000 (13:48 +0200)]
liblitesdcard/sdcard: decode cid only when SDCARD_DEBUG is set.
Florent Kermarrec [Thu, 25 Jun 2020 11:46:39 +0000 (13:46 +0200)]
liblitesdcard/sdcard_read: enable multiple block read.
>10MB/s read speed with a 25MHz clock.
Mateusz Holenko [Thu, 25 Jun 2020 10:21:36 +0000 (12:21 +0200)]
Fix ordering of libraries
Since libcompiler_rt provides functions for other
libraries (e.g., __muldiv3), it must be listed
at the end.
Florent Kermarrec [Thu, 25 Jun 2020 09:13:24 +0000 (11:13 +0200)]
targets: add fixed sdcard clock on boards with SDCard support.
Florent Kermarrec [Thu, 25 Jun 2020 09:12:40 +0000 (11:12 +0200)]
software/bios/litesdcard: remove sdcard_set_clk.
Florent Kermarrec [Thu, 25 Jun 2020 09:12:17 +0000 (11:12 +0200)]
integration/soc/add_sdcard: remove sdclk.
bunnie [Thu, 25 Jun 2020 09:12:12 +0000 (17:12 +0800)]
Deprecate slave terminology
http://oshwa.org/a-resolution-to-redefine-spi-signal-names
Florent Kermarrec [Thu, 25 Jun 2020 08:11:42 +0000 (10:11 +0200)]
cores/clock/S6DCM: add expose_drp.
From LiteSDCard SDClockerS6.
Florent Kermarrec [Thu, 25 Jun 2020 07:58:08 +0000 (09:58 +0200)]
software/bios/boot: improve printfs.
Florent Kermarrec [Thu, 25 Jun 2020 07:57:29 +0000 (09:57 +0200)]
software/libase/memtest: improve printfs and add progress bar on data test.
Florent Kermarrec [Thu, 25 Jun 2020 07:56:13 +0000 (09:56 +0200)]
libbase/progress: reduce to 40 HASHES_PER_LINE.
Florent Kermarrec [Thu, 25 Jun 2020 07:01:33 +0000 (09:01 +0200)]
software/liblitedram: remove DDRPHY_CMD_DELAY support (no longer useful).
Florent Kermarrec [Thu, 25 Jun 2020 06:58:01 +0000 (08:58 +0200)]
software/liblitedram/sdram: remove SRAM hack.
We now have memtest bios functions to test memories and testing SRAM while used by the BIOS is probably not a good idea.
Florent Kermarrec [Thu, 25 Jun 2020 06:47:57 +0000 (08:47 +0200)]
software/libbase/memtest: reorder functions.
enjoy-digital [Thu, 25 Jun 2020 06:29:23 +0000 (08:29 +0200)]
Merge pull request #575 from antmicro/jboc/memtest
Move memtest from liblitedram to libbase
Jędrzej Boczar [Wed, 24 Jun 2020 10:21:34 +0000 (12:21 +0200)]
bios: move memtest from liblitedram to libbase
Florent Kermarrec [Wed, 24 Jun 2020 10:25:37 +0000 (12:25 +0200)]
software/liblitesdcard: simplify, switch to DMAs, remove clocking/test functions.
Florent Kermarrec [Wed, 24 Jun 2020 10:23:35 +0000 (12:23 +0200)]
integration/soc: replace SDDataReader/SDDataWriter with DMAs.
Florent Kermarrec [Wed, 24 Jun 2020 08:17:40 +0000 (10:17 +0200)]
soc/cores: add simple DMA with WishboneDMAReader/WishboneDMAWriter.
Florent Kermarrec [Tue, 23 Jun 2020 16:01:51 +0000 (18:01 +0200)]
platforms/genesys2: add usb_fifo.
Florent Kermarrec [Tue, 23 Jun 2020 15:20:12 +0000 (17:20 +0200)]
litex_term: keep and reduce inter-frame delay to 1e-5.
Removing it completely would require revisiting the gateware/firmware code of the
UART. Since this is use for test purpose only and already allow > 600KB/s upload
speed, keeping it is acceptable.
Florent Kermarrec [Tue, 23 Jun 2020 14:53:02 +0000 (16:53 +0200)]
soc/cores/uart/FT245: only use Asynchronous FIFO (Synchronous FIFO requires a software configuration).
Florent Kermarrec [Tue, 23 Jun 2020 14:51:24 +0000 (16:51 +0200)]
soc/cores/usb_fifo: cleanup and reduce fifo_depth (provide similar throughput when used as UART).
Florent Kermarrec [Tue, 23 Jun 2020 10:49:36 +0000 (12:49 +0200)]
CHANGES: update.
Florent Kermarrec [Tue, 23 Jun 2020 10:23:26 +0000 (12:23 +0200)]
software: use a single crt0 (deprecate crt0-ctr/crt0-xip) and avoid unnecessary defines.
Since https://github.com/enjoy-digital/litex/issues/566, crt0-ctr and crt0-xip are now similiar
so we can get back to a single crt0 and remove the defines that were generated to distinguish
the different cases.
Since LiteX/MiSoC have diverged and are no longer compatible, we also no longer need to generate
the LiteX flag.
Florent Kermarrec [Tue, 23 Jun 2020 09:58:36 +0000 (11:58 +0200)]
platforms/genesys2: use openocd_genesys2.cfg.
Florent Kermarrec [Tue, 23 Jun 2020 09:54:33 +0000 (11:54 +0200)]
platforms/kcu105: add sdcard/spisdcard.
Florent Kermarrec [Tue, 23 Jun 2020 09:54:16 +0000 (11:54 +0200)]
genesys2: add sdcard/spisdcard.
Florent Kermarrec [Tue, 23 Jun 2020 09:54:05 +0000 (11:54 +0200)]
platforms/netv2: add spisdcard.
Florent Kermarrec [Tue, 23 Jun 2020 08:57:43 +0000 (10:57 +0200)]
platforms/k705: rename mmc to sdcard and make it similar to other boards.
Florent Kermarrec [Tue, 23 Jun 2020 07:47:04 +0000 (09:47 +0200)]
cpu/lm32: fix config include paths.
Was broken since the switch to python data modules.
Florent Kermarrec [Mon, 22 Jun 2020 19:57:00 +0000 (21:57 +0200)]
bios/main: enable sdcardboot in boot_sequence with litesdcard.
Florent Kermarrec [Mon, 22 Jun 2020 19:33:17 +0000 (21:33 +0200)]
software/liblitesdcard/sdcard: boot with FatFs working (hacky).
Tested with Linux-on-LiteX-Vexriscv on Trellisboard with 10MHz clock.
Florent Kermarrec [Mon, 22 Jun 2020 15:09:55 +0000 (17:09 +0200)]
cores/cpu/microwatt: revert setup stack and fix missing subi %r1,%r1,0x100 (thanks ozbenh).
Tested with powerpc64le-buildroot-linux-gnu-gcc.br_real (Buildroot
2020.02-00011-g7ea8a52) 8.4.0.
Florent Kermarrec [Mon, 22 Jun 2020 11:37:14 +0000 (13:37 +0200)]
wishbone/DownConverter: fix read datapath when access is skipped because sel = 0.
We also need to shift dat_r when acess is skipped.
Florent Kermarrec [Mon, 22 Jun 2020 09:36:19 +0000 (11:36 +0200)]
cores/cpu/microwatt: temporary revert crt0.S/setup stack.
lxsim --cpu-type=microwatt --cpu-variant=standard+ghdl no longer working otherwise.
enjoy-digital [Mon, 22 Jun 2020 08:44:33 +0000 (10:44 +0200)]
Merge pull request #573 from ozbenh/bios-data
software/microwatt: Fix copying data to RAM and clearing BSS
Benjamin Herrenschmidt [Sun, 21 Jun 2020 09:35:04 +0000 (19:35 +1000)]
software/microwatt: Fix copying data to RAM and clearing BSS
This also makes us use the "small" memory model to avoid having to
use more complex constructs and adds the TOC to the linker script
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Florent Kermarrec [Sat, 20 Jun 2020 20:20:29 +0000 (22:20 +0200)]
tools/litex_server: set socket option flags separately (required for Mac OS X).
Florent Kermarrec [Sat, 20 Jun 2020 07:15:56 +0000 (09:15 +0200)]
litex_sim: simplify a bit ethernet+etherbone.
Florent Kermarrec [Fri, 19 Jun 2020 12:17:30 +0000 (14:17 +0200)]
soc/cores/spi: make cs/loopback CSR optional.
Useful for API retro-compatibility.