aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-12-20Reworked the way iCE40-based MKM is configured. The bitmap is now stored rightice40mkmPavel V. Shatov (Meister)
after the main FPGA's bitstream (was placed at the very end of the configuration memory previously). This makes it possible to flash two devices at the same time, but needs a somewhat smarter supporting routine. Instead of just looking at the very last sector of the config memy we now to need to swipe through all the sectors looking for the Lattice magic bitmap marker to determine where the MKM firmware starts.
2021-12-20Small fix to the upload script. Skip dummy text information preceeding actualPavel V. Shatov (Meister)
bitstream data.
2021-09-13Added call to ice40mkm_configure() to the 'hsm' project startup code.Pavel V. Shatov (Meister)
2021-09-13Added call to ice40mkm_init() during initialization.Pavel V. Shatov (Meister)
2021-09-13Added ice40mkm.o to the Makefile for the bootloaderPavel V. Shatov (Meister)
2021-09-13Added ice40mkm.o to the main MakefilePavel V. Shatov (Meister)
2021-09-13This adds two routines, ice40mkm_init() and ice40mkm_configure(). The formerPavel V. Shatov (Meister)
should be called once during startup. The latter configures the iCE40 chip with a bitstream stored in the very end of the main FPGA's configuration memory. It should be called after startup and potentially after MKM bitstream is upgraded.
2021-09-13Function to read data from the main FPGA configuration memory.Pavel V. Shatov (Meister)
2021-09-13Initialize I/O pins of SPI3, which is used to configure iCE40-based MKM.Pavel V. Shatov (Meister)
Note, that SPI3 is alternate function 6, unlike SPI1 & SPI2 which are both AF5.
2021-07-19Fixed copyright notice.HEADmasterPavel V. Shatov (Meister)
2021-06-28Revert Peter's hardware flow control patch, as it sometimes causesPaul Selkirk
corruption on the sending side of USART2 (user/RPC) under load.
2020-10-15Ubuntu replaced arm-none-eabi-gdb with gdb-multiarch over 2 years ago, butPaul Selkirk
maybe we're running an old version that still has it? Check for both.
2020-10-15OpenOCD versions since at least 0.9.0 (May 2015) actually do need thePaul Selkirk
'exit' command to terminate the script. Hopefully we're all past using Debian Jessie by now?
2020-10-15Reduce overly-long HAL_IO_TIMEOUT.Paul Selkirk
2020-10-15Remove no-longer-useful mgmt-keywrap.Paul Selkirk
2020-10-15Remove no-longer-useful test-mkmif.Paul Selkirk
2020-10-15Add retro fmc_write_32/fmc_read_32 for the board-test projects that use them.Paul Selkirk
2020-10-15Silence deprecated warnings in CMSIS code.Paul Selkirk
2020-10-15Peter Stuge's fix for hardware flow control: Program CTS and RTS pins as ↵Paul Selkirk
alternate functions.
2020-09-02Well of course there had to be one last dumb Python3 string bugpython3Rob Austein
2020-09-01..Aaaand a few more Python3 string bugs in cryptech_uploadRob Austein
2020-09-01One more set of silly Python3 bytes handling errorsRob Austein
2020-07-13Whack all Python shebangs to Python 3Rob Austein
2020-05-26Wow, python-version-independent hexadecimal is painfulRob Austein
2020-05-25Untested conversion to support Python 3Rob Austein
2020-05-05Add more RPC tasks for better signing performance.Paul Selkirk
2020-04-29The new keywrap core now talks directly to the MKM, so there are some API ↵Paul Selkirk
changes.
2020-03-10change hal_aes_use_keywrap_corePaul Selkirk
2020-03-09Replace the brutally inefficient fp_to_unsigned_bin with one based onPaul Selkirk
fp_read_unsigned_bin. I thought about patching it directly in sw/thirdparty/libtfm, but ultimately decided to keep that pristine (especially since we verify file checksums there).
2020-02-26Merge branch 'js_keywrap' to 'master'Paul Selkirk
2020-02-26conditionalize timing testsPaul Selkirk
2020-02-26Merge branch 'modexpng' to 'master'Paul Selkirk
2020-02-26Some timing tests overflow the meagre 16K CLI task stack, so bump it up for ↵Paul Selkirk
that case.
2020-02-18timing tests for RSA signingmodexpngPaul Selkirk
2020-01-21Merge branch 'fmc_clk'Pavel V. Shatov (Meister)
2020-01-21New FMC settings for STM32.fmc_clkPavel V. Shatov (Meister)
2019-04-09Rebase branch 'js_keywrap' from masterjs_keywrapPaul Selkirk
2019-04-06Remove fmc_[read|write]_32, since we now memcpy in hal_io_[read|write].Paul Selkirk
2019-04-03Merge branch 'fmc_clk_60mhz' to 'master'Paul Selkirk
2019-03-31Remove inclusion of now-deleted hashsig.hPaul Selkirk
2019-02-28Report SDRAM usage in `task show`Paul Selkirk
2019-01-31Updated FMC initialization code to match changes in FMC arbiter.Pavel V. Shatov (Meister)
2018-12-12Rebase branch 'fmc_clk' of git.cryptech.is:sw/stm32 from masterPaul Selkirk
2018-12-12Whack various bits of sw/stm32 test code to compile on fmc_clk branch.Rob Austein
2018-12-12Changed FMC initialization code to match the new sync FMC arbiter. RemovedPavel V. Shatov (Meister)
unnecessary code (no more double read, yay!)
2018-12-05Tell libtfm that the ARM is little-endian, so it can optimize ↵Paul Selkirk
fp_read_unsigned_bin(). This enables some overflow-detection code, which fixes CT-01-009. It also saves 484us/call, which adds up to 6.3ms/RSA signature.
2018-12-03Re-delete SysTick_hook (commit 9ffead1), which somehow crept back in.Paul Selkirk
2018-12-02Clean up the profiling code to the point where I stand a chance ofPaul Selkirk
understanding it 6 months from now. While I'm at it, try to make it a little more efficient (because 50-60% of time in a typical profiling run is spent in the function-entry counting), and collapse profil.c into gmon.c.
2018-11-26Add loop unrolling to bring the profilable mem* functions closer toPaul Selkirk
newlib, because memset is called a LOT in the course of RSA signing, and we need to understand how much time we're actually spending there.
2018-11-14Increase cli task, and move it to SDRAM, because main RAM is getting full.Paul Selkirk