Commit Graph

42 Commits

Author SHA1 Message Date
Florent Kermarrec 1e1bec10c4 orangecrab: remove dm_remapping workaround: we are now using Wihsbone/L2 path with VexRiscv-SMP on this board. 2021-01-25 11:52:59 +01:00
Florent Kermarrec 23760e2eae orangecrab/CRGSDRAM: add missing rst signal (to reset from the SoC). 2021-01-22 22:55:02 +01:00
Florent Kermarrec 6a5f2f59a6 targets/orangecrab: use new ECP5DDRPHY's cmd_delay to add extra delay on DDR3's Clock/Commands.
This fixes https://github.com/enjoy-digital/litedram/issues/130 and has been tested
at 48/64/96MHz on MT41K64M16 and MT41K512M16 variants.

Also remove un-needed cd_sys2x_eb.
2021-01-12 18:57:22 +01:00
Florent Kermarrec 0a7443d273 targets/orangecrab: make usr_btn optional to fix compilation with revision 0.1. 2021-01-08 19:30:37 +01:00
Florent Kermarrec ae5494d7b6 orangecrab: defaults to USB-ACM UART. 2021-01-08 19:01:41 +01:00
Florent Kermarrec 5cc49bafbd orangecrab: Run reset_timer with por/48MHz clock domain (sys clock domain is now directly reseted on usr_btn press). 2021-01-04 09:42:05 +01:00
Florent Kermarrec 1fb24d4c71 orangecrab: Avoid usb clock domain reset on usr_btn press or SoC reset.
Allows the USB-ACM link to stay up during reset.
2021-01-04 09:05:19 +01:00
Vadim Kaushan f6a106cdf4
Fix orangecrab target 2020-12-20 01:07:43 +03:00
Florent Kermarrec 00fc2c5166 targets/orangecrab: use new DM remapping capability of LiteDRAM to fix LDM/UDM.
Required by VexRiscv-SMP that uses DMs on LiteDRAM interface.
2020-12-16 11:52:58 +01:00
Geert Uytterhoeven 8e5f955e4e targets/orangecrab: Fix --sdram-device help text
Obviously --sdram-device takes the SDRAM device, not the ECP5 FPGA
device.

Fixes: bf3c9dc9bf ("orangecrab: Add sdram selection option")
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
2020-12-04 14:34:01 +01:00
Florent Kermarrec 5a4e28d47d target/usb_acm: switch git clone to litex-hub/valentyusb repo (up to date with LiteX). 2020-11-27 18:53:45 +01:00
Florent Kermarrec d42af3ea19 targets: add --sys-clk-freq support to all targets. 2020-11-12 18:07:28 +01:00
Florent Kermarrec bd4e92ad13 targets: cleanup, uniformize build arguments between targets. 2020-11-12 11:46:00 +01:00
Florent Kermarrec 2b17dc1b89 target: add rst signal to CRG to allow full reset of the SoC on reboot command. 2020-11-04 11:13:42 +01:00
Florent Kermarrec 9b6ed6bdf1 targets/orangecrab: add fallback to bootloader when usr_btn is pressed for 1 second. 2020-09-01 16:22:32 +02:00
Florent Kermarrec b9ac72cf78 targets: simplify clocking on iCE40/ECP5 targets (AsyncResetSynchronizer now integrated in PLL). 2020-09-01 13:38:32 +02:00
Florent Kermarrec beccecf59f orangecrab: reduce DDR3 power consumption/heat and get back USB PLL to CRGSDRAM.
- disable DQ termination.
- disable RTT_NOM.
- drive VCCIO/GND pads.

Reduce current from 0.25A to 0.12A with: ./orangecrab.py --uart-name=usb_acm --sys-clk-freq=48e6.
Still working at 96MHz, 0.17A with: ./orangecrab.py --uart-name=usb_acm --sys-clk-freq=96e6.

See https://github.com/enjoy-digital/litedram/issues/216.
2020-08-28 20:01:54 +02:00
Florent Kermarrec 1781be166a general: add SPDX License identifier to header and specify files are part of LiteX-Boards. 2020-08-23 15:00:17 +02:00
Florent Kermarrec b6a1ad5a9c targets/orangecrab: add simple CRG when built without DDR3. 2020-08-07 18:10:03 +02:00
Florent Kermarrec 869ceadacb targets: use platform.request_all on LedChaser. 2020-08-06 20:04:03 +02:00
Florent Kermarrec d9595a317e targets/orangecrab: use user_btn as rst_n. 2020-07-06 17:49:05 +02:00
Florent Kermarrec 7a48a61605 targets: add indentifier on all targets. 2020-06-30 18:11:04 +02:00
Florent Kermarrec 1356ebb416 targets/ecp5: update clocking on boards with DDR3 to use reset from ddrphy.init and use primary clock for Power on reset. 2020-06-29 16:42:53 +02:00
Florent Kermarrec 64372d7876 targets/orangecrab: add spi-sdcard and workaround for ValentyUSB. 2020-06-11 19:21:44 +02:00
Florent Kermarrec c94cbae0c0 orangecrab: add user_led (RGB leds), DFUProg and --load support. 2020-06-11 19:21:40 +02:00
Florent Kermarrec 94861bbb9a targets/orangecrab: uncomment MT41K512M16. 2020-06-10 19:30:07 +02:00
Florent Kermarrec 06edf48897 targets: rename gateware-toolchain parameter to toolchain. 2020-06-02 13:45:05 +02:00
Tommy Thorn 6335717eca targets/orangecrab.py: propagate command arguments
The parsed args are stripped off by soc_core_argdict() (called from
soc_sdram_argdict() so we have to pass them explicitly (or pass the
original "args", but this mimics the rest of the code in the repo).

This fixes #72
2020-05-06 18:24:11 -07:00
Florent Kermarrec 2d9543b65e targets: add build/load parameters on all targets. 2020-05-05 15:11:47 +02:00
Florent Kermarrec 84468c2a63 targets/CRG: platforms are now automatically constraining the input clocks. 2020-05-05 11:51:57 +02:00
Florent Kermarrec 78b5727774 targets: rename usb_cdc to usb_acm.
As discussed recently on Discord.
2020-04-30 21:48:10 +02:00
Florent Kermarrec 4185a019f5 targets: manual define of the SDRAM PHY is no longer needed. 2020-04-16 11:25:59 +02:00
Florent Kermarrec 3b91e96c42 targets/add_constant: avoid specifying value when value is None (=default) 2020-03-26 09:47:22 +01:00
Florent Kermarrec 4053c02d7e targets/orangecrab: add USB PLL for USB CDC with ValentyUSB. 2020-03-25 19:38:36 +01:00
Greg Davill eb35ec92ba orangecrab: combine revisions in target 2020-03-23 09:20:01 +10:30
Greg Davill 159360da2c orangecrab: Add r0.2 support 2020-03-22 21:04:07 +10:30
Greg Davill bf3c9dc9bf orangecrab: Add sdram selection option 2020-03-22 20:41:12 +10:30
Greg Davill 88d3f1d63e orangecrab: r0.1 OrangeCrab fixes 2020-03-22 20:14:29 +10:30
Florent Kermarrec 83e6fb29f8 targets: switch to SoCCore/add_sdram instead of SoCSDRAM. 2020-03-21 12:43:39 +01:00
Florent Kermarrec 6f517ad1d6 targets/ecp5: make sure all BaseSoC/EthernetSoc default to trellis. 2020-03-05 10:57:59 +01:00
Florent Kermarrec be5ed35871 targets: default to trellis toolchain on all ECP5 targets (now able to build all supported targets). 2020-02-28 09:46:54 +01:00
Florent Kermarrec 8211aca2e8 Avoid Official/Partner/Community differentiation: use same directory for all platforms/targets.
We initially wanted to provide different level of support for the platforms/targets, mainly
to avoid too much maintenance and let each contributor update its contributed platforms and
targets, but it's easier to update all platforms/targets all-together when LiteX evolves or
changes (and that's what has been done on litex-boards since the creation of the repository).
So let just simplify things and avoid this differentiation.
2020-02-03 09:36:30 +01:00