| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|/ /
| |
| |
| |
| |
| | |
Since ce1d811, SHIFTREG_DIV_MODE is now 2 bits for the up5k
Signed-off-by: David Shah <dave@ds0.me>
|
|\ \
| | |
| | | |
Fix icebram
|
| | | |
|
| | | |
|
|/ /
| |
| |
| | |
This reverts commit 2679c91b8a158aa4aca49dd726955e8c63cf7bef.
|
|\ \
| | |
| | | |
icebox: Add support for the bit 1 of SHIFTREG_DIV_MODE
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This allows selection of the div-by-5 mode of the PLL.
This bit can't be fuzzed because it's not supported by the lattice
tools at all ...
This only works for sure on the UP5k.
I tested HX8k and it didn't support it, so I'm only adding this on
the known working FPGA.
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
|
|\ \ \
| | | |
| | | | |
icepack: show program name in usage
|
| |/ / |
|
|\ \ \
| | | |
| | | | |
Make icebram deterministic
|
| |/ / |
|
|\ \ \
| | | |
| | | | |
Fix array out of bounds access bug
|
| |/ /
| | |
| | |
| | | |
This is triggered for example when icetime is invoked with an empty design.
|
|\ \ \
| | | |
| | | | |
Use -MP to eliminate one way that -MD can fatally confuse make
|
| |/ /
| | |
| | |
| | | |
out of even trying to build
|
|\ \ \
| |/ /
|/| | |
icetime: avoid string + int Clang warning
|
|/ /
| |
| |
| |
| |
| | |
Clang warns that "adding 'int' to a string does not append to the string".
Although a false positive it's trivially avoided by using the array index
equivalent &PREFIX[1].
|
| |
| |
| |
| | |
Signed-off-by: Claire Wolf <claire@symbioticeda.com>
|
|\ \ |
|
| |/
| |
| |
| | |
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
|
| |
| |
| |
| | |
Signed-off-by: Claire Wolf <claire@symbioticeda.com>
|
|\ \
| | |
| | | |
icepack: Fix Windows-only stack overflow in CRAM pbm generation (fixe…
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
On Windows, attempting to generate a netpbm image of the CRAM with
`icepack -b` causes the tool to crash after writing only the netpbm
header due to a stack overflow. The bug did not appear on Linux.
This was traced to a large stack-allocated variable length array
(`tile_type`) inside `FpgaConfig::write_cram_pbm`. For an 8k ice40 with
4 banks, `cram_width = 872` and `cram_height = 272` the `tile_type`
array ends up at `4 * 872 * 272 * sizeof(uint32_t) =` 3794944 bytes, or
about 3.6 MiB.
The fix replaces the large stack VLA with an array of 4 (bank) 2D C++
vectors, moving the large amount of data to the heap. Even though the
fix is not in a Windows-specific code path (and hence applies to all
platforms), I think it's wise to eliminate such a large stack allocation
entirely.
The fix has been tested working on both Windows and an Ubuntu WSL
install.
|
|\ \
| | |
| | | |
Explicit include to compile with GCC 10
|
| | | |
|
|/ /
| |
| |
| | |
Signed-off-by: Claire Wolf <claire@symbioticeda.com>
|
|\ \
| | |
| | | |
Make sure that scripts find files on final install
|
|/ / |
|
|\ \
| | |
| | | |
icebox: fix missing DESTDIR for icebox_chipdb
|
|/ / |
|
|\ \
| | |
| | | |
Support custom PROGRAM_PREFIX
|
|/ / |
|
|\ \
| | |
| | | |
icepll: Add iteration over list of frequencies for best solution
|
| |/
| |
| |
| |
| |
| |
| |
| |
| | |
This patch adds support for icepll to try multiple input frequencies to
find the best crystal for the desired output frequency.
The values tested comes either from a specified file using-B, or from a
default set of frequencies from Mousers "normally stocked" crystal
oscillators.
|
|\ \
| |/
|/| |
Added an option to choose the erase block size.
|
|/
|
|
| |
This allows us to flash binaries at offsets that are smaller multiples.
|
|
|
|
| |
Signed-off-by: Clifford Wolf <clifford@clifford.at>
|
|\
| |
| | |
Make iceprog optional
|
|/
|
|
| |
Avoids dependency on libftdi.
|
|\
| |
| | |
iceprog: Better reset of flash
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If the flash was in a 'weird' mode (like CRM, QPI, ...), sending
a continuous stream of 0xff should take it out of it.
It looks like the previous code was trying to do that, but
was only transferring 8 bits and then 2 bits which is way
too short.
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
|
|\ \
| | |
| | | |
Fix piping on windows
|
| |/
| |
| |
| | |
On windows stdin and stdout have to be set to binary as otherwise windows treats it as text and converts occurences of CRLF to LF
|
| |
| |
| |
| |
| |
| | |
#228
Signed-off-by: Clifford Wolf <clifford@clifford.at>
|
|/
|
|
| |
Signed-off-by: Clifford Wolf <clifford@clifford.at>
|
|\
| |
| | |
up5k: Fix TOPADDSUB_CARRYSELECT_0 override where it swaps with osc tr…
|
|/
|
|
| |
Signed-off-by: David Shah <dave@ds0.me>
|
|\
| |
| | |
add RGB_DRV/LED_DRV_CUR for u4k
|
| | |
|
|\ \
| |/
|/| |
icepll: Add support for writing output data to stdout
|