Florent Kermarrec [Thu, 11 Jun 2020 17:18:30 +0000 (19:18 +0200)]
software/spisdcard: reduce SPISDCARD_CLK_FREQ to 16MHz.
25MHz does not seem to work on all boards/configurations, needs to be investigated.
Florent Kermarrec [Thu, 11 Jun 2020 12:45:50 +0000 (14:45 +0200)]
build: add DFUProg.
Florent Kermarrec [Thu, 11 Jun 2020 11:38:38 +0000 (13:38 +0200)]
bios/boot: simplify flashboot (remove specific linux boot).
Storage in SPI Flash is generally limited and booting Linux from it is no longer very useful
since boot from SDCard is now supported. This is in the continuity of the SDCard/Ethernet
simplications to have an easier and more flexible boot scheme.
Florent Kermarrec [Thu, 11 Jun 2020 11:19:37 +0000 (13:19 +0200)]
bios/boot: add separators, update copyrights.
Florent Kermarrec [Thu, 11 Jun 2020 11:12:58 +0000 (13:12 +0200)]
bios/boot: make Ethernet boot mode flexible (now also using boot.json similarly to SDCard boot).
Example of boot.json:
{
"Image": "0x40000000",
"rootfs.cpio": "0x40800000",
"rv32.dtb": "0x41000000",
"emulator.bin": "0x41100000"
}
Florent Kermarrec [Thu, 11 Jun 2020 09:15:31 +0000 (11:15 +0200)]
bios/boot: make SDCard boot more flexible using a boot.json file on the SDCard.
The BIOS now reads the boot.json file to know which files need to be copied to RAM and where.
It will fallback to boot.bin is no boot.json is found and boot will fail if neither is found.
Example of boot.json file used to boot Linux-On-LiteX-Vexriscv:
{
"Image": "0x40000000",
"rootfs.cpio": "0x40800000",
"rv32.dtb": "0x41000000",
"emulator.bin": "0x41100000"
}
Florent Kermarrec [Thu, 11 Jun 2020 06:33:56 +0000 (08:33 +0200)]
software/bios/boot/sdcardboot: let FatFs do the SDCard initialization with disk_initialize.
Florent Kermarrec [Wed, 10 Jun 2020 15:39:09 +0000 (17:39 +0200)]
software/bios/boot: add sdcardboot support for VexRiscv SMP.
Florent Kermarrec [Wed, 10 Jun 2020 13:19:44 +0000 (15:19 +0200)]
software/bios/main: clarify address space with @ instead of -.
Florent Kermarrec [Wed, 10 Jun 2020 13:03:09 +0000 (15:03 +0200)]
litex_setup.py: update microwatt.
enjoy-digital [Wed, 10 Jun 2020 12:53:09 +0000 (14:53 +0200)]
Merge pull request #564 from shenki/microwatt-updates
Microwatt updates
enjoy-digital [Wed, 10 Jun 2020 12:40:28 +0000 (14:40 +0200)]
Merge pull request #562 from gsomlo/gls-crlf
liblitesdcard: maintain unix newline convention across all source files
Florent Kermarrec [Wed, 10 Jun 2020 09:46:59 +0000 (11:46 +0200)]
software/liblitesdcard/ffconf: enable FF_FS_MINIMIZE and FF_FS_TINY.
Florent Kermarrec [Wed, 10 Jun 2020 09:46:18 +0000 (11:46 +0200)]
software/bios/boot: move f_mount to copy_image_from_sdcard_to_ram and force mount.
Florent Kermarrec [Wed, 10 Jun 2020 08:00:05 +0000 (10:00 +0200)]
software/libliteeth/tftp: switch to progress bar.
Florent Kermarrec [Wed, 10 Jun 2020 07:59:38 +0000 (09:59 +0200)]
bios/boot/copy_image_from_flash_to_ram: add missing init_progression_bar.
Florent Kermarrec [Wed, 10 Jun 2020 07:50:30 +0000 (09:50 +0200)]
soc/spisdcard: use 32-bit SPIMaster and do 32-bit xfers in spisdcardreceive_block to optimize speed.
Florent Kermarrec [Wed, 10 Jun 2020 07:15:59 +0000 (09:15 +0200)]
software/libbase/progress: avoid \t in progress bar, reduce HASHES_PER_LINE.
Florent Kermarrec [Wed, 10 Jun 2020 07:15:12 +0000 (09:15 +0200)]
software/libsdcard/spisdcard: add and use busy_wait_us to optimize speed.
Florent Kermarrec [Wed, 10 Jun 2020 06:21:54 +0000 (08:21 +0200)]
bios/boot/copy_image_from_sdcard_to_ram: use chunks of 32KB to increase speed.
Florent Kermarrec [Wed, 10 Jun 2020 06:12:12 +0000 (08:12 +0200)]
bios/boot: add progress bar to copy_image_from_flash_to_ram, use uint32_t in flash/sdcard functions.
Florent Kermarrec [Wed, 10 Jun 2020 05:47:21 +0000 (07:47 +0200)]
libase/progress: move __div64_32, do_div to div64.h/c as it was in Barebox.
Florent Kermarrec [Wed, 10 Jun 2020 05:40:08 +0000 (07:40 +0200)]
software/liblitesdcard: remove read_block prototype, minor cleanup.
Joel Stanley [Wed, 10 Jun 2020 02:44:39 +0000 (12:14 +0930)]
microwatt: Add mmu.vhdl
Joel Stanley [Wed, 10 Jun 2020 02:42:11 +0000 (12:12 +0930)]
microwatt: Update IRQ signal in wrapper
Joel Stanley [Wed, 10 Jun 2020 01:09:16 +0000 (10:39 +0930)]
microwatt: Add icache flush
Joel Stanley [Tue, 9 Jun 2020 09:10:21 +0000 (18:40 +0930)]
microwatt: Implement boot helper
Gabriel Somlo [Tue, 9 Jun 2020 12:26:10 +0000 (08:26 -0400)]
liblitesdcard: maintain unix newline convention across all source files
Florent Kermarrec [Tue, 9 Jun 2020 18:00:32 +0000 (20:00 +0200)]
bios/boot: use progress bar in copy_image_from_sdcard_to_ram.
Florent Kermarrec [Tue, 9 Jun 2020 18:00:05 +0000 (20:00 +0200)]
libbase: add progress bar (from Barebox).
Florent Kermarrec [Tue, 9 Jun 2020 17:59:38 +0000 (19:59 +0200)]
software/liblitesdcard: add retries when setting card to Idle.
Florent Kermarrec [Tue, 9 Jun 2020 15:58:43 +0000 (17:58 +0200)]
software/liblitesdcard/sdcard: add FatFs disk functions.
Florent Kermarrec [Tue, 9 Jun 2020 11:50:16 +0000 (13:50 +0200)]
software/liblitesdcard/spisdcard: rename #defines and allow external definition.
Florent Kermarrec [Tue, 9 Jun 2020 11:44:26 +0000 (13:44 +0200)]
software/liblitesdcard: create fat directory for FatFs files.
Florent Kermarrec [Tue, 9 Jun 2020 11:35:14 +0000 (13:35 +0200)]
sofware/liblitesdcard: enable Long Filename (LFN).
Florent Kermarrec [Tue, 9 Jun 2020 10:50:56 +0000 (12:50 +0200)]
software/libsdcard: rewrite/simplify SPISDCard/FatFs support and only keep SDCard ver2.00+ compatibility.
enjoy-digital [Sat, 6 Jun 2020 20:06:46 +0000 (22:06 +0200)]
Merge pull request #559 from gsomlo/gls-fix-crlf
liblitesdcard: convert all sources to unix style newlines (cosmetic)
Gabriel Somlo [Sat, 6 Jun 2020 17:24:29 +0000 (13:24 -0400)]
liblitesdcard: convert all sources to unix style newlines (cosmetic)
Signed-off-by: Gabriel Somlo <gsomlo@gmail.com>
Florent Kermarrec [Fri, 5 Jun 2020 21:25:54 +0000 (23:25 +0200)]
software/liblitesdcard: remove unsused functions with FF_FS_READONLY.
Florent Kermarrec [Fri, 5 Jun 2020 18:09:02 +0000 (20:09 +0200)]
software/liblitesdcard: switch to FatFs for sdcardboot.
Florent Kermarrec [Fri, 5 Jun 2020 14:27:38 +0000 (16:27 +0200)]
software/liblitesdcard: base it on FatFs generic example code + LiteX's SPIMaster specific functions.
Florent Kermarrec [Fri, 5 Jun 2020 13:30:14 +0000 (15:30 +0200)]
software/liblitesdcard: add FatFs files.
To avoid maintaining our own code and support all Fat filesystems, let's just use FatFs library.
Florent Kermarrec [Fri, 5 Jun 2020 07:07:19 +0000 (09:07 +0200)]
software/liblitesdcard/spisdcard: simplify/rewrite for consistency with the others parts of the project.
- Improve code readability, remove un-needed or duplicate comments.
- Only use a spi_xfer function for both write/read.
- Set the SDCard to low clk freq before init and increase it when initialized.
Florent Kermarrec [Thu, 4 Jun 2020 10:13:26 +0000 (12:13 +0200)]
software/liblitesdcard: add copyrights to spisdcard/fat16.
Florent Kermarrec [Thu, 4 Jun 2020 09:55:25 +0000 (11:55 +0200)]
software/liblitesdcard/sdcard: simplify readSector.
Florent Kermarrec [Thu, 4 Jun 2020 09:40:42 +0000 (11:40 +0200)]
software/liblitesdcard: fat16 boot working with both SPI and SD modes.
Florent Kermarrec [Wed, 3 Jun 2020 21:16:13 +0000 (23:16 +0200)]
software/liblitesdcard: move fat16 code to separate file to avoid duplication.
Florent Kermarrec [Wed, 3 Jun 2020 18:03:18 +0000 (20:03 +0200)]
software/bios/libsdcard: add initial boot from sdcard with litescard, rename spisdcardboot command to sdcardboot.
Florent Kermarrec [Wed, 3 Jun 2020 16:36:06 +0000 (18:36 +0200)]
soc/add_sdcard: use SDClockerS7 for 7-Series and SDClockerGen for others devices.
enjoy-digital [Wed, 3 Jun 2020 14:34:55 +0000 (16:34 +0200)]
Merge pull request #558 from antmicro/fix-function-names-liblitespi
litex/soc/software/liblitespi: fix names associated with PHY CSRs
Jan Kowalewski [Wed, 3 Jun 2020 13:33:47 +0000 (15:33 +0200)]
litex/soc/software/liblitespi: fix names associated with PHY CSRs
Florent Kermarrec [Wed, 3 Jun 2020 12:36:33 +0000 (14:36 +0200)]
boards/ulx3s: add sdcard pins and initial LiteSDCard integration.
Florent Kermarrec [Wed, 3 Jun 2020 12:34:59 +0000 (14:34 +0200)]
soc/add_sdcard: add minimal SDClockerECP5 on ECP5.
Florent Kermarrec [Wed, 3 Jun 2020 11:47:39 +0000 (13:47 +0200)]
soc/add_sdcard: remove limitation to 7-Series but only add clocker for it.
Florent Kermarrec [Wed, 3 Jun 2020 11:43:44 +0000 (13:43 +0200)]
soc/add_sdcard: emulator clocking moved to litesdcard.
Florent Kermarrec [Wed, 3 Jun 2020 11:38:34 +0000 (13:38 +0200)]
software/libsdcard: keep SDCARD_DEBUG enabled for now, fix typos.
Florent Kermarrec [Wed, 3 Jun 2020 11:13:07 +0000 (13:13 +0200)]
soc/add_sdcard: remove Timer (unused).
Florent Kermarrec [Wed, 3 Jun 2020 10:56:03 +0000 (12:56 +0200)]
software/liblitesdcard: review/simplify (code is over-complicated, revert part of the old code and write a minimal test for now).
Florent Kermarrec [Wed, 3 Jun 2020 09:11:45 +0000 (11:11 +0200)]
software/liblitesdcard: remove sdtimer functions (unused).
sdtimer was used to evaluate performance but is no longer used.
enjoy-digital [Tue, 2 Jun 2020 14:33:40 +0000 (16:33 +0200)]
Merge pull request #556 from antmicro/mglb/symbiflow-fixes
Symbiflow toolchain support: fix part name and clock frequency
Mariusz Glebocki [Tue, 2 Jun 2020 12:56:20 +0000 (14:56 +0200)]
targets/arty: use sys_clk_freq = 60MHz for Symbiflow toolchain
Mariusz Glebocki [Tue, 2 Jun 2020 12:53:15 +0000 (14:53 +0200)]
build/xilinx/symbiflow: remap part name
Florent Kermarrec [Tue, 2 Jun 2020 14:14:53 +0000 (16:14 +0200)]
software/liblitedram: revert sdrsw() in sdrlevel: this is still required for sdrlevel command.
enjoy-digital [Tue, 2 Jun 2020 13:49:00 +0000 (15:49 +0200)]
Merge pull request #553 from ozbenh/sim-autoinit
sdram: Unconditionally switch to SW control before inits
enjoy-digital [Tue, 2 Jun 2020 13:45:52 +0000 (15:45 +0200)]
Merge pull request #557 from antmicro/mor1kx_linux_booting
bios: boot: Boot linux on mor1kx with external device tree and rootfs
Florent Kermarrec [Tue, 2 Jun 2020 13:05:46 +0000 (15:05 +0200)]
CHANGES: update and change added features order.
Mateusz Holenko [Fri, 29 May 2020 10:20:36 +0000 (12:20 +0200)]
bios: boot: Boot linux on mor1kx with external device tree and rootfs
Florent Kermarrec [Tue, 2 Jun 2020 11:51:44 +0000 (13:51 +0200)]
test: update.
Florent Kermarrec [Tue, 2 Jun 2020 11:44:23 +0000 (13:44 +0200)]
targets: rename gateware-toolchain parameter to toolchain.
Florent Kermarrec [Tue, 2 Jun 2020 11:34:44 +0000 (13:34 +0200)]
targets/arty: integrate symbiflow changes to avoid duplication.
Florent Kermarrec [Tue, 2 Jun 2020 11:34:09 +0000 (13:34 +0200)]
build/generic_platform: add default_clk constraints only when used.
Florent Kermarrec [Tue, 2 Jun 2020 10:36:02 +0000 (12:36 +0200)]
build/xilinx/symbiflow: reuse .xdc generation from Vivado to avoid duplication, fix copyright.
Florent Kermarrec [Tue, 2 Jun 2020 10:18:12 +0000 (12:18 +0200)]
boards/arty: remove specific arty_symbiflow platform and adapt target to use standard platform.
Florent Kermarrec [Tue, 2 Jun 2020 10:15:38 +0000 (12:15 +0200)]
xilinx/simbiflow: add simple symbiflow_device re-mapping.
enjoy-digital [Tue, 2 Jun 2020 09:55:33 +0000 (11:55 +0200)]
Merge pull request #551 from antmicro/mglb/symbiflow-toolchain-xilinx-7-support
Add Symbiflow toolchain support for Xilinx 7-series
Tim Ansell [Mon, 1 Jun 2020 22:23:03 +0000 (15:23 -0700)]
Merge pull request #552 from ozbenh/memspeed-long
sdram: Use unsigned long for memory test
Benjamin Herrenschmidt [Mon, 1 Jun 2020 22:08:42 +0000 (08:08 +1000)]
sdram: Use unsigned long for memory test
This makes it twice as fast on 64-bit CPUs when using a 64-bit bus :-)
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Mariusz Glebocki [Mon, 1 Jun 2020 11:58:44 +0000 (13:58 +0200)]
test/test_targets: add arty_symbiflow
Signed-off-by: Mariusz Glebocki <mglebocki@antmicro.com>
Mariusz Glebocki [Mon, 1 Jun 2020 11:41:49 +0000 (13:41 +0200)]
targets: add arty_symbiflow
Signed-off-by: Mariusz Glebocki <mglebocki@antmicro.com>
Mariusz Glebocki [Mon, 1 Jun 2020 11:40:32 +0000 (13:40 +0200)]
platforms: add arty_symbiflow
Signed-off-by: Mariusz Glebocki <mglebocki@antmicro.com>
Mariusz Glebocki [Mon, 1 Jun 2020 11:39:33 +0000 (13:39 +0200)]
build/xilinx: add Symbiflow toolchain support
Signed-off-by: Mariusz Glebocki <mglebocki@antmicro.com>
enjoy-digital [Mon, 1 Jun 2020 19:17:40 +0000 (21:17 +0200)]
Merge pull request #550 from antmicro/jboc/spd-read
bios/litedram: Add command to verify SPD contents with the one used during generation
enjoy-digital [Mon, 1 Jun 2020 17:58:01 +0000 (19:58 +0200)]
Merge pull request #549 from antmicro/mglb/fix-vivado-yosys
build/xilinx: do not assume build name is "top"
Benjamin Herrenschmidt [Mon, 1 Jun 2020 13:44:09 +0000 (23:44 +1000)]
sdram: Unconditionally switch to SW control before inits
This will allow the controller to default to HW control which means
the sim model can be used without specific initializations
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Mariusz Glebocki [Sat, 23 May 2020 10:57:55 +0000 (12:57 +0200)]
build/xilinx: do not assume build name is "top"
enjoy-digital [Mon, 1 Jun 2020 09:37:05 +0000 (11:37 +0200)]
Merge pull request #547 from gsomlo/gls-fix-sdcard-status
soc/software/litesdcard: update for response register back to 128 bits
Florent Kermarrec [Mon, 1 Jun 2020 09:03:08 +0000 (11:03 +0200)]
interconnect/wishbone/DownConverter: skip accesses on slave when sel==0 and simplify.
Improve efficiency for 64-bit CPU accessing only the 32-bit LSBs/MSBs.
Florent Kermarrec [Mon, 1 Jun 2020 08:58:45 +0000 (10:58 +0200)]
soc/interconnect/axi: generate wishbone.sel for reads.
Florent Kermarrec [Mon, 1 Jun 2020 08:01:14 +0000 (10:01 +0200)]
soc/software: only keep 32-bit CSR alignment support.
64-bit support was added for 64-bit CPU because of limitation of the hardware
on CSR accesses. Now that the Wihhbone2CSR bus handles wishbone.sel, this is no
longer required.
Gabriel Somlo [Sat, 30 May 2020 00:42:49 +0000 (20:42 -0400)]
soc/software/litesdcard: update for response register back to 128 bits
The additional (17th) byte returned via the response register was
ignored by software (bios and kernel), so LiteSDCard was updated
to only return the (original, useful) 128 bits.
This patch updates the LiteSDCard code in the LiteX bios to only
expect those 128 bits, and to do so in a manner that's portable
across CSR data widths and alignments.
Signed-off-by: Gabriel Somlo <gsomlo@gmail.com>
Florent Kermarrec [Sat, 30 May 2020 13:21:32 +0000 (15:21 +0200)]
wishbone/wishbone2csr: use wishbone.sel on CSR write.
CSR write is only done if wishbone.sel != 0. This should avoid the need for 64-bit
CSR alignment on 64-bit CPUs since a 64-bit Wishbone write access targeting only the
32-bit LSB or MSB will be splitted in 2x32-bit accesses: one with sel=0xf, one with sel=0.
Florent Kermarrec [Fri, 29 May 2020 18:15:02 +0000 (20:15 +0200)]
soc/software/litesdcard: use new send register to send command and remove CSR8_CMD_FIX.
Florent Kermarrec [Fri, 29 May 2020 17:36:33 +0000 (19:36 +0200)]
platforms/nexys_video: add spisdcard pins.
Florent Kermarrec [Fri, 29 May 2020 17:26:29 +0000 (19:26 +0200)]
targets/nexys_video: add spi-sdcard and sdcard support.
Florent Kermarrec [Fri, 29 May 2020 17:26:03 +0000 (19:26 +0200)]
plaforms/nexys_video: keep up to date with litex-boards.
Florent Kermarrec [Fri, 29 May 2020 17:22:35 +0000 (19:22 +0200)]
targets: simplify Ethernet/Etherbone integration on targets with both.
Florent Kermarrec [Fri, 29 May 2020 16:51:24 +0000 (18:51 +0200)]
bios/cmds/cmd_litesdcard: rewrite comments/descriptions.
Florent Kermarrec [Fri, 29 May 2020 16:40:54 +0000 (18:40 +0200)]
bios/main: replace / with -.
enjoy-digital [Fri, 29 May 2020 16:32:30 +0000 (18:32 +0200)]
Merge pull request #545 from gsomlo/gls-fix-mmptr
csr: fix simple accessor alignment
Gabriel Somlo [Fri, 29 May 2020 15:54:10 +0000 (11:54 -0400)]
csr: fix simple accessor alignment
MMPTR should always follow CSR alignment, NOT CSR data width.
(the latter merely indicates how many bits within a MMPTR are
actually populated).
Fixup for commit #
4a5072a.
Signed-off-by: Gabriel Somlo <gsomlo@gmail.com>