enjoy-digital [Fri, 10 Jul 2020 09:21:13 +0000 (11:21 +0200)]
Merge pull request #587 from antmicro/mor1x_ror_instruction
mor1kx: Do not generate the ror instruction
Florent Kermarrec [Fri, 10 Jul 2020 09:18:22 +0000 (11:18 +0200)]
integration/soc/sdcard: add mode parameter to enable read only, write only or read+write modes.
Mateusz Holenko [Fri, 10 Jul 2020 09:03:35 +0000 (11:03 +0200)]
mor1kx: Do not generate the ror instruction
The mor1kx core does not support `l.ror` instruction
by default, but gcc/clang flags allowed the
compiler to generate it.
Florent Kermarrec [Fri, 10 Jul 2020 08:42:00 +0000 (10:42 +0200)]
core/cpu/CPUNone: set endianness to little.
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