Commit Graph

5889 Commits

Author SHA1 Message Date
Florent Kermarrec b1fe3140d7 bios/main: enable sdcardboot in boot_sequence with litesdcard. 2020-06-22 21:57:00 +02:00
Florent Kermarrec 847a5fcff4 software/liblitesdcard/sdcard: boot with FatFs working (hacky).
Tested with Linux-on-LiteX-Vexriscv on Trellisboard with 10MHz clock.
2020-06-22 21:33:17 +02:00
Florent Kermarrec 5b2f9c244d 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.
2020-06-22 17:09:55 +02:00
Florent Kermarrec 0c0689f444 wishbone/DownConverter: fix read datapath when access is skipped because sel = 0.
We also need to shift dat_r when acess is skipped.
2020-06-22 13:37:14 +02:00
Florent Kermarrec 84617b585b cores/cpu/microwatt: temporary revert crt0.S/setup stack.
lxsim --cpu-type=microwatt --cpu-variant=standard+ghdl no longer working otherwise.
2020-06-22 11:36:19 +02:00
enjoy-digital e32e8c069b
Merge pull request #573 from ozbenh/bios-data
software/microwatt: Fix copying data to RAM and clearing BSS
2020-06-22 10:44:33 +02:00
Benjamin Herrenschmidt 28ea4b3f4c 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>
2020-06-21 19:35:04 +10:00
Florent Kermarrec 13e0852af4 tools/litex_server: set socket option flags separately (required for Mac OS X). 2020-06-20 22:20:29 +02:00
Florent Kermarrec efa41fd6bb litex_sim: simplify a bit ethernet+etherbone. 2020-06-20 09:15:56 +02:00
Florent Kermarrec b0b37b4cb9 soc/cores/spi: make cs/loopback CSR optional.
Useful for API retro-compatibility.
2020-06-19 14:17:30 +02:00
Florent Kermarrec 05cb5f96a1 bios/boot: rewrite ROM boot description. 2020-06-18 12:56:29 +02:00
enjoy-digital bdcccb9216
Merge pull request #569 from gsomlo/gls-mor1kx-data-init
cpu/mor1kx: fix .data initialization (follow-up to PR #567)
2020-06-18 08:43:20 +02:00
enjoy-digital 4cab38fa5b
Merge pull request #570 from gsomlo/gls-sdcard-lazy-init
liblitesdcard/[spi]sdcard: avoid redundant (re-)initialization
2020-06-18 08:42:44 +02:00
Gabriel Somlo 9ad45a6932 liblitesdcard/[spi]sdcard: avoid redundant (re-)initialization 2020-06-17 17:21:33 -04:00
Gabriel Somlo e96cfbbc83 cpu/mor1kx: fix .data initialization (follow-up to PR #567) 2020-06-16 20:28:57 -04:00
enjoy-digital aa0cd21378
Merge pull request #565 from gsomlo/gls-cosmetic-spi-fat
post-FatFs cleanup
2020-06-16 21:49:15 +02:00
enjoy-digital 05d4756eff
Merge pull request #567 from zyp/fix_data_segment
bios/linker: Place .data in sram with initial copy in rom.
2020-06-16 21:45:17 +02:00
Florent Kermarrec b0f7611258 platforms/arty: move sdcard_pmod_io to JD. 2020-06-16 20:17:15 +02:00
enjoy-digital c3ed802526
Merge pull request #568 from sergachev/master
build/sim/core/modules: fix compilation warnings
2020-06-16 17:34:50 +02:00
Ilia Sergachev 3610b066c2 build/sim/core/modules: fix compilation warnings 2020-06-16 01:06:11 +02:00
Gabriel Somlo 5d9d99c0c2 liblitesdcard/sdcard: streamline initialization (cosmetic)
Also, s/spisdcardstatus/sdcardstatus/g (this is *not* the SPI version).
2020-06-15 15:31:41 -04:00
Gabriel Somlo c05d0f1966 liblitesdcard/spisdcard: streamline initialization (cosmetic). 2020-06-15 15:24:40 -04:00
Vegard Storheil Eriksen 27fcddb209 soc_core: Increase sram size default to 8k. 2020-06-15 21:18:26 +02:00
Vegard Storheil Eriksen 9c68d71503 bios/linker: Place .data in sram with initial copy in rom. 2020-06-15 16:24:53 +02:00
Vegard Storheil Eriksen 336896603f bios/linker: Place .got in .rodata. 2020-06-15 16:04:02 +02:00
Gabriel Somlo 7d5ca3f926 bios/boot: addresses should use 'unsigned long' 2020-06-13 21:31:49 -04:00
Florent Kermarrec 68d3804cdb CHANGES: update. 2020-06-11 19:25:16 +02:00
Florent Kermarrec 5ddf350c2d software/spisdcard: reduce SPISDCARD_CLK_FREQ to 16MHz.
25MHz does not seem to work on all boards/configurations, needs to be investigated.
2020-06-11 19:18:32 +02:00
Florent Kermarrec d6f92d1ffd build: add DFUProg. 2020-06-11 14:45:50 +02:00
Florent Kermarrec 653edd17ca 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.
2020-06-11 13:38:38 +02:00
Florent Kermarrec 7b65a93ca5 bios/boot: add separators, update copyrights. 2020-06-11 13:19:37 +02:00
Florent Kermarrec f4abdd3f2c 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"
}
2020-06-11 13:12:58 +02:00
Florent Kermarrec c2ae22eeb6 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"
}
2020-06-11 11:26:10 +02:00
Florent Kermarrec d918c0bb99 software/bios/boot/sdcardboot: let FatFs do the SDCard initialization with disk_initialize. 2020-06-11 08:33:56 +02:00
Florent Kermarrec 5197600812 software/bios/boot: add sdcardboot support for VexRiscv SMP. 2020-06-10 17:39:09 +02:00
Florent Kermarrec 72026d44f7 software/bios/main: clarify address space with @ instead of -. 2020-06-10 15:19:44 +02:00
Florent Kermarrec a01d08e5b5 litex_setup.py: update microwatt. 2020-06-10 15:03:23 +02:00
enjoy-digital a086237a07
Merge pull request #564 from shenki/microwatt-updates
Microwatt updates
2020-06-10 14:53:09 +02:00
enjoy-digital ace81c83ee
Merge pull request #562 from gsomlo/gls-crlf
liblitesdcard: maintain unix newline convention across all source files
2020-06-10 14:40:28 +02:00
Florent Kermarrec 08bef5fc4c software/liblitesdcard/ffconf: enable FF_FS_MINIMIZE and FF_FS_TINY. 2020-06-10 11:46:59 +02:00
Florent Kermarrec 75225e5e33 software/bios/boot: move f_mount to copy_image_from_sdcard_to_ram and force mount. 2020-06-10 11:46:18 +02:00
Florent Kermarrec 59a048b666 software/libliteeth/tftp: switch to progress bar. 2020-06-10 10:00:05 +02:00
Florent Kermarrec f7e06a7e3f bios/boot/copy_image_from_flash_to_ram: add missing init_progression_bar. 2020-06-10 09:59:38 +02:00
Florent Kermarrec df9146fb78 soc/spisdcard: use 32-bit SPIMaster and do 32-bit xfers in spisdcardreceive_block to optimize speed. 2020-06-10 09:50:30 +02:00
Florent Kermarrec d45cfc1e15 software/libbase/progress: avoid \t in progress bar, reduce HASHES_PER_LINE. 2020-06-10 09:16:06 +02:00
Florent Kermarrec 5beba178f2 software/libsdcard/spisdcard: add and use busy_wait_us to optimize speed. 2020-06-10 09:15:12 +02:00
Florent Kermarrec dae15511a4 bios/boot/copy_image_from_sdcard_to_ram: use chunks of 32KB to increase speed. 2020-06-10 08:21:54 +02:00
Florent Kermarrec d294e0f1de bios/boot: add progress bar to copy_image_from_flash_to_ram, use uint32_t in flash/sdcard functions. 2020-06-10 08:12:12 +02:00
Florent Kermarrec 99f40fecaa libase/progress: move __div64_32, do_div to div64.h/c as it was in Barebox. 2020-06-10 07:47:21 +02:00
Florent Kermarrec 96fc96eccd software/liblitesdcard: remove read_block prototype, minor cleanup. 2020-06-10 07:40:08 +02:00