Commit Graph

359 Commits

Author SHA1 Message Date
Tim Ansell bebaef1e25
Merge pull request #48 from mithro/fix-constants
cpu_interface: Fix indenting on constant generation.
2018-01-13 19:07:04 +11:00
Tim 'mithro' Ansell f6f73cf13c cpu_interface: Fix indenting on constant generation.
This was preventing constants from getting added to the csr.h header
file.
2018-01-13 19:05:26 +11:00
Felix Held 6318a2b29a Fix all remaining indentation issues in python code
I ran a script that shouldn't have missed any tab in the python source files.
2018-01-13 13:19:36 +11:00
Chris Ballance 782711e5a9 bios/sdram: make read leveling robust for KUS SDRAM
Increases the initial delay step into the valid read window as
with the original delay I was not getting out of the noisy
transition window, as evidenced by seeing read delay windows
of only 8 LSB ~10% of the time, leading to failing memory
tests
2018-01-12 19:23:08 +01:00
Tim Ansell 5c95c8ead0
Merge pull request #44 from felixheld/nexys_video-dram-fix
Fix DDR3 on nexys_video
2018-01-12 14:08:03 +11:00
Felix Held 9eb1beea04 fix DDR3 on arty 2018-01-12 13:54:10 +11:00
Felix Held 4a3454107a fix DDR3 on nexys_video 2018-01-12 13:33:13 +11:00
Felix Held 23585385c0 fix the unsupported programmer case for kc705 and minispartan6 2018-01-11 18:15:11 +11:00
Florent Kermarrec 10000eb607 build/xilinx/vivado: only generate constraints that are not empty 2018-01-08 17:03:19 +01:00
Florent Kermarrec 5681a3c1a9 bios/sdram: revert capability to do manual read leveling since still needed with some targets 2018-01-08 12:04:33 +01:00
Florent Kermarrec 03eb137449 bios/sdram: fix data error reporting 2018-01-08 11:43:49 +01:00
Florent Kermarrec 22ff745027 bump year 2018-01-08 11:43:13 +01:00
Florent Kermarrec ee6b33e9d3 build: add Inverted property to IOs to ease inverting signals and propagate property to cores 2018-01-06 01:33:02 +01:00
Florent Kermarrec 621aaf6988 soc/integration/soc_core: avoid removing uart interrupts (break some designs) 2017-12-30 18:41:49 +01:00
enjoy-digital 377af99678
Merge pull request #40 from mithro/or1k-linux
cpu: Adding "variant" support.
2017-12-30 11:19:12 +01:00
enjoy-digital f8a07c5d3c
Merge pull request #41 from cr1901/python-3.6
fhdl/tracer: Import Python 3.5/3.6 version guards from Migen.
2017-12-30 11:17:41 +01:00
William D. Jones ff0ad9a622 fhdl/tracer: Import Python 3.5/3.6 version guards from Migen. 2017-12-29 19:56:52 -05:00
Tim 'mithro' Ansell 44650dffd8 cpu: Adding "variant" support.
It is useful to support slightly different variants of the CPU
configurations. This adds a "cpu_variant" option.

For the mor1k we now have the default mor1k configuration and the
"linux" variant which enables the features needed for Linux support on
the mor1k.

Currently there are no variants for the lm32, but we will likely add a
"tiny" variant for usage on the iCE40.
2017-12-30 01:18:51 +01:00
Greg Darke bbd15ca567 Wait longer before giving up on the 2nd tftp block.
Previously we would wait the same number of iterations as it took us to
receive the first data block after sending the request. When using the
build in tftp server in qemu, the first wait loop succeeds (and thus
breaks when 'i' is still 0.

Since the counter was never reset between the first and second data
block, under qemu the tftp_get call would fail before ever checking if
we have received the second block of data.

Now that we initialise 'i' to 12M, we ensure that we wait the same
amount of time for the second data block as it previously did for the
third (and subsequent) blocks.
2017-12-29 23:56:32 +01:00
Florent Kermarrec 0a2d38ecd2 bios/sdram: use same initialization procedure for artix7 than kintex7 excepting write leveling that is not done 2017-12-29 17:13:58 +01:00
Florent Kermarrec b78a4760bb soc/integration/builder: don't build bios is user is providing rom data 2017-12-28 22:42:58 +01:00
enjoy-digital 5d98a60e6e
Merge pull request #38 from cr1901/mercury
Add Mercury baseboard support from Migen, import fixes.
2017-12-27 17:52:37 +01:00
bunnie 282f22f09e Add tracelength report generation by default to help with board layout 2017-12-27 22:40:39 +08:00
Florent Kermarrec b463b2169b boards/platforms/tinyfpga_b: add defaut serial pins 2017-12-27 00:26:30 +01:00
Florent Kermarrec fe2564e921 build/lattice/icestorm: fix missing toolchain_path 2017-12-27 00:26:07 +01:00
William D. Jones 5a2c92ba80 Add TinyFPGA platform based on Migen. 2017-12-27 00:00:05 +01:00
William D. Jones f096030fc8 Import Icestorm backend improvements from Migen. 2017-12-26 23:57:13 +01:00
Florent Kermarrec e7015e4191 soc/integration/soc_core: add uart_name parameters (allow selecting uart without modifications in platform file) 2017-12-26 18:11:47 +01:00
Florent Kermarrec a3390bb403 build/xilinx/programmer: fix settings in run_vivado (update) 2017-12-19 10:29:29 +01:00
William D. Jones dd6ca87561 Add Mercury baseboard support from Migen, import fixes. 2017-12-18 19:30:25 -05:00
Florent Kermarrec 4c82eb549f build/xilinx: add support for edif/ngc files 2017-12-16 13:20:45 +01:00
Florent Kermarrec b31d0f37db cpu/picorv32: adapt to current version, some cleanup 2017-12-10 03:01:53 +01:00
Florent Kermarrec 4239aff68a cpu: cleanup wrappers 2017-12-10 02:52:01 +01:00
Florent Kermarrec 43429560d4 soc/integration/soc_core: add integrated_rom_init to allow initializing rom with custom code 2017-12-08 10:18:01 +01:00
Florent Kermarrec 27d37fa95d targets/sim: fix 2017-12-06 22:22:05 +01:00
Florent Kermarrec 284b16e2c1 soc/integration/soc_core: make nmi interrupt optional 2017-12-03 23:07:41 +01:00
Florent Kermarrec c1eba9a6cc soc/integration: add integrated_main_ram_init parameter to allow using main_ram with pre-initialized firmware 2017-11-24 13:16:58 +01:00
Florent Kermarrec 831b489fd3 soc/interconnect/stream: fix specific cases for last/first signal in UpConverter 2017-11-23 17:58:02 +01:00
Florent Kermarrec c3d902ef42 soc/software/bios/sdram: add Kintex Ultrascale support 2017-11-08 12:59:38 +01:00
Florent Kermarrec 2665a83288 soc/interconnect/stream: expose depth on SyncFIFO 2017-10-30 22:56:09 +01:00
Tim 'mithro' Ansell 56ef229029 Make the interrupt dicts read only. 2017-10-29 19:45:52 -07:00
Tim 'mithro' Ansell 295e78ee9e Make it harder to have conflicting interrupts. 2017-10-29 19:45:52 -07:00
Tim 'mithro' Ansell ff72757b87 Bump the IRQ for liteeth based targets. 2017-10-29 19:45:52 -07:00
Tim 'mithro' Ansell 73e0036b99 Change the default IRQs.
* Reserve IRQ 0 to be used as a "non-maskable interrupt" (NMI) in the
   future.

 * Use IRQ 2 for the LiteX. This matches the standard mor1k config which
   connects the UART to IRQ 2.

This change is needed for Linux running on LiteX as it gets grumpy with
using IRQ 0 for anything other other than an NMI.
2017-10-29 19:45:52 -07:00
Tim 'mithro' Ansell e07bd71b16 build/xilinx: Fixing settings finding.
* Better error messages.
 * Search correct directories;
   - XXX/Vivado/<version>
   - XXX/<version>/ISE_DS/
2017-10-16 18:25:51 +11:00
Florent Kermarrec db6c88bbef soc/interconnect/stream: don't use reset less on last and first signals (not reseting these signals can cause troubles in some specific cases) 2017-10-12 11:30:56 +02:00
Tim 'mithro' Ansell 2c013948b1 Output better error message for flash_proxy. 2017-10-07 12:14:00 +11:00
Tim 'mithro' Ansell 279ec488e3 bios: Print location jumping too.
Makes it easier to  understand what is happening (and that the BIOS is
jumping to the right place).
2017-10-06 20:38:44 +11:00
Tim 'mithro' Ansell 8152673d18 common: Compile with debugging symbols on.
Debugging symbols are useful when using GDB :-)
2017-10-06 20:38:44 +11:00
Tim 'mithro' Ansell b1b6a74170 or1k: Use EXCEPTION_STACK_SIZE of 256bytes.
or1k defines a 128 byte "red zone" after the stack that can not be
touched by the exception handler.

We also need 128 bytes to store the 32 registers.
2017-10-06 20:38:44 +11:00