Commit Graph

6280 Commits

Author SHA1 Message Date
Florent Kermarrec a1c023b900 software/bios/cmds/cmd_litedram: enable sdram_software_control before sdram_mode_register_write. 2020-09-24 14:58:42 +02:00
Florent Kermarrec 90a2b80b6a software/liblitedram/sdram_write_leveling_rst_cmd_delay: fix printf location (do it before taps is decremented). 2020-09-24 13:54:08 +02:00
Florent Kermarrec 7617a82fe6 targets/kcu105: create specific cd_eth for ethernet. 2020-09-24 10:27:48 +02:00
Florent Kermarrec a3c616028e software/liblitedram/sdram: fix cmd_delays -> dat_delays. 2020-09-23 19:43:28 +02:00
enjoy-digital 01528e643e
Merge pull request #652 from gsomlo/gls-sdcard-clocking
RFC: proper way to set sdcard clock?
2020-09-22 21:52:13 +02:00
Gabriel Somlo 8e7596d330 liblitesdcard/sdcard.c: ensure effective sdcard clock is <= requested
With the way the clock divider is currently calculated, it is
possible for the effective sdcard clock to end up *higher* than
the requested `clk_freq` value.

Calculate the divider starting with the `CONFIG_CLOCK_FREQUENCY/clk_freq`
ratio which is then rounded up to the nearest power-of-two, ensuring
that the resulting, effective clock frequency is <= to the requested
frequency.

Signed-off-by: Gabriel Somlo <gsomlo@gmail.com>
2020-09-22 15:15:50 -04:00
Florent Kermarrec ac32b92e9f targets/kcu105: add etherbone. 2020-09-22 18:31:06 +02:00
Florent Kermarrec a601415bf0 software/liblitedram: add functions/commands to reset and force cmd/dat write leveling delays.
Useful to investigate/speed-up new board support.
2020-09-21 19:53:34 +02:00
Florent Kermarrec a39660fa99 software/liblitedram/sdram.c: fix typo. 2020-09-17 18:19:12 +02:00
Florent Kermarrec a0d66dd60e software/liblitesdcard/sdcard: move busy_wait in sdcard_wait_cmd_done (fixes sdcardboot being stuck since code refactoring) and reduce busy_wait value. 2020-09-17 10:52:21 +02:00
Florent Kermarrec de4fc14cf9 software/bios/cmds/cmd_litsdcard: make sure all commands generate a report. 2020-09-17 10:41:49 +02:00
Florent Kermarrec 6c4abe2185 software/bios/cmds/cmd_liteeth: make sure all commands generate a report and improve it. 2020-09-17 09:10:58 +02:00
Florent Kermarrec 7d6818ab07 software/bios/command: avoid too much groups, reorganize a bit. 2020-09-17 09:07:36 +02:00
Florent Kermarrec 88ef2a330b software/bios/cmds/cmd_litedram: rename spdread command to sdram_spd. 2020-09-16 22:48:32 +02:00
Florent Kermarrec 3380de4adf software/bios/cmds/cmd_i2c: rename commands to i2c_xy. 2020-09-16 22:45:19 +02:00
Florent Kermarrec 79009f762d software/bios/cmds/cmd_spiflash: rename commands to flash_xy. 2020-09-16 22:44:47 +02:00
Florent Kermarrec cb55d7119c software/bios/cmds/cmd_liteeth: rename commands to mdio_xy. 2020-09-16 22:39:56 +02:00
Florent Kermarrec d5162a2a2b software/bios/cmds: use _handler suffix on all cmds functions. 2020-09-16 22:37:46 +02:00
Florent Kermarrec d4018b7ccf software/bios/cmds/cmd_litesdcard: rename commands to sdcard_xy. 2020-09-16 22:32:27 +02:00
Florent Kermarrec 400bf13400 bios/cmds/cmd_mem: rename commands to mem_xy. 2020-09-16 22:25:33 +02:00
Florent Kermarrec 21cc7df2fa software/bios/cmds/cmd_mem: remove debug cmds that shouldn't have been merged. 2020-09-16 21:18:37 +02:00
Florent Kermarrec 74fb086322 software/liblitedram: rename functions/commands and expose mode register write function to user. 2020-09-16 20:01:39 +02:00
Florent Kermarrec dc087f948a software/liblitedram/sdram: keep sdrwlon/sdrwloff private. 2020-09-16 11:56:39 +02:00
Florent Kermarrec 9c2975e8b4 software/liblitedram/sdram: remove low level manual controls of the DFI interface.
This was too low level and unused.
2020-09-16 11:22:15 +02:00
Florent Kermarrec 8a9d17c768 software/liblitedram/sdram.c: move sdrwl_delays definition to write_leveling section and add #ifdef on reinitialization. 2020-09-16 11:03:10 +02:00
enjoy-digital f208a5db2c
Merge pull request #649 from gsomlo/gls-misc-fixup
misc. fixes for a few recent commits
2020-09-15 21:17:14 +02:00
Gabriel Somlo 9729d053eb software/memtest: use "unsigned long" to represent pointers 2020-09-15 14:46:18 -04:00
Gabriel Somlo 6c838cedcd libbase/sim_debug: wrap markers variables within appropriate #ifdef 2020-09-15 14:46:18 -04:00
Gabriel Somlo e2719d4d71 fixup for e28e808c - don't define variable in .h file 2020-09-15 14:46:18 -04:00
Florent Kermarrec a69273db50 boards/targets/arty: switch SDRAM to NETWORKING mode (interface_type no longer supported). 2020-09-15 19:59:20 +02:00
Florent Kermarrec 404104be21 software/liblitedram/sdram.c: increase ddrphy reset time. 2020-09-15 19:58:17 +02:00
Florent Kermarrec cfe6f56572 software/liblitedram/sdram.c: improve reporting.
- ident sub-reports.
- avoid displaying software/hardware swich if set to previous value.
2020-09-15 19:41:20 +02:00
Florent Kermarrec e63a40370e software/libbase/memtest: improve reporting.
- indent sub-reports.
- report speed in MiB/s.
2020-09-15 19:37:09 +02:00
Florent Kermarrec e28e808c24 software/liblitedram: allow forced write leveling delays, improve delay printf when failing. 2020-09-15 19:34:09 +02:00
Florent Kermarrec 1d63d66a09 software/libbase/memtest: improve memtest_data progress.
Add base/current tested address and current/total tested size.

ex:
Memtest at 0x40000000...
Write: 0x40000000-0x40200000 (2/2MiB)
Read:  0x40000000-0x40200000 (2/2MiB)
2020-09-14 11:51:16 +02:00
Florent Kermarrec c169494793 litex_setup: detect and allow execution from a cloned LiteX repository.
Others dependencies will be installed alongside the Litex repository.
2020-09-10 13:19:34 +02:00
Florent Kermarrec b39fea4ecb software/liblitedram/write_level_scan: reset write delay even if not succeeding. 2020-09-07 18:53:31 +02:00
Florent Kermarrec 658f712001 software/liblitedram/write_level: add support for manual command delay.
Required on some configurations where automatic cmd/clk scan still has troubles.
2020-09-07 18:47:18 +02:00
enjoy-digital 5ee074f422
Merge pull request #642 from gsomlo/gls-sdcard-blk-vs-sec
RFC: bios/sdcard: use (512 byte) blocks as the smallest addressable data unit
2020-09-07 17:41:50 +02:00
enjoy-digital c0fb3691e6
Merge pull request #647 from antmicro/jboc/sim-debug
Improve dynamic tracing support in the simulator
2020-09-07 16:46:37 +02:00
Jędrzej Boczar 7c3fbf1d06 sim: improve tracing reset value and behaviour with sim_debug=False 2020-09-07 15:29:02 +02:00
Jędrzej Boczar 3fd567c4c9 sim: additional simulation tracing and debugging tools 2020-09-07 15:28:26 +02:00
Florent Kermarrec c247814ed4 software/liblitedram/sdram.c: add ifdef on MPR functions. 2020-09-05 11:37:07 +02:00
Florent Kermarrec f7b6dd05ae cores/clock: add initial Xilinx Ultrascale Plus PLL/MMCM/IDELAYCTRL support. 2020-09-03 18:58:10 +02:00
Florent Kermarrec 6d8a367abe software/liblitedram: add separators, expose read_level. 2020-09-03 17:47:32 +02:00
Florent Kermarrec ae152e28a7 software/liblitedram: add sdrmpr functions. 2020-09-03 15:25:04 +02:00
Florent Kermarrec 3e083958b0 software/liblitedram: move calibration to sdrcal function. 2020-09-03 14:55:37 +02:00
Florent Kermarrec 31afe55821 tools/litex_sim: avoid build/run duplication. 2020-09-03 09:21:37 +02:00
Florent Kermarrec e8f21cd958 build/sim/verilator: cleanup SimVerilatorToolchain, return to initial path after build/run. 2020-09-03 09:21:14 +02:00
Gabriel Somlo d86d20671e bios/sdcard: use (512 byte) blocks as the smallest addressable data unit
In liblitesdcard/sdcard.c, replace s/sector/block/ as the 512 byte sized
unit of data transfer to/from the sdcard.

In bios/cmds/cmd_litesdcard.c, do NOT multiply block numbers by 512,
allowing any "block" (a.k.a. "sector") on the sdcard to be addressed for
testing.

Before this patch, user-input "block numbers" were multiplied by 512 and
passed into sdcard_[read|write]() as "sector numbers", with the sdcard
logic internally treating these as 512-byte sized addressable units on
the card. This resulted in only every 512'th 512-byte sized "sector" being
accessible from the bios command line.

Signed-off-by: Gabriel Somlo <gsomlo@gmail.com>
2020-09-02 12:07:38 -04:00