Commit Graph

64 Commits (2f3da0220c73301c97dfa1fe2f85d768debdca1b)

Author SHA1 Message Date
David Garske 1bdfb3200a Added `NO_QNX` option to force not using QNX driver (when using QNX compiler). 2020-03-10 13:19:09 -07:00
David Garske 897e63b68c Added wolfBoot QNX QSPI driver support (builds, not tested). 2020-03-10 11:37:27 -07:00
David Garske 6b6d5611a7 Added support for initializting the GICv2 interrupt controller. This is required for QNX kernel boot. 2020-03-10 11:30:22 -07:00
David Garske 2867025ae5 Fixes for handling U-Boot image and DTS. Moved the Xilinx SDK project target settings into target.h. 2020-03-05 15:39:22 -08:00
David Garske c0b534edd7 wolfBoot Aarch64 support (Xilinx Zynq and Raspberry Pi):
* Added Aarch64 boot/startup support
* Added configuration templates for Raspberry Pi 3 and Xilinx ZynqMP UltraScale+
* Added Xilinx Zynq QSPI bare-metal Driver
* Added `NO_XIP` option for full `ext_flash_*` API on all partitions
* Added Xilinx SDK Project Template
* Added support for DTS image partitions
* Added wolfBoot signing tool in Native C (`tools/keytools/sign.c`).
* Added libwolfboot functions `int wolfBoot_fallback_is_possible(void);` and `int wolfBoot_dualboot_candidate(void);`
* Performance improvement to only hash application firmware image once
2020-03-04 12:04:46 -08:00
Daniele Lacamera 6ff8473c0e Option NVM_WRITEONCE not needed on LPC. (tested multi-write OK) 2020-03-04 16:21:50 +01:00
Daniele Lacamera a1a13c2318 LPC54xxx: fixed flash write 2020-03-04 16:17:49 +01:00
Daniele Lacamera 10186cac09 Added support for LPC (tested on LPC54606) 2020-03-04 08:53:13 +01:00
Chris Conlon 1f57ad9f39 update copyright to 2020 2020-01-03 15:36:00 -08:00
Daniele Lacamera 977b6e8975 Fixed CS pin pullup release 2019-12-23 13:34:24 +01:00
David Garske 00fff87d74 Revert SPIx_CR2 change. 2019-12-20 10:40:56 -08:00
David Garske a342b7824f Minor cleanups. 2019-12-20 10:22:13 -08:00
Daniele Lacamera 2f05d44c95 Fixed SPI defines, fix TPM SHA alignment in header 2019-12-20 19:08:31 +01:00
David Garske 5779baa8a9 Various items for STM32WB55 2019-12-20 19:08:31 +01:00
David Garske 485253f305 Fix build error with macro typo. 2019-12-20 19:08:31 +01:00
David Garske 79277d60ce Progress on expanding STM32WB testing support. Including external SPI/TPM and RSA. Fixes to prevent STM32WB macro collisions with PKA. Makefile improvements for combinations of PKA, SIGN and WOLFTPM. 2019-12-20 19:08:31 +01:00
Daniele Lacamera 25455744b6 Make Stm32 SPI driver more generic to reuse on other STM32 platforms 2019-12-20 19:08:31 +01:00
David Garske 515c4a015a Fix for external SPI CS for STM32F4. 2019-12-17 13:07:13 -08:00
David Garske 041ca75793 Added support for TPM2.0 module via wolfTPM. Tested with STM32F4. Build using `make SIGN=ECC256 WOLFTPM=1`. 2019-12-17 10:59:11 -08:00
David Garske fae6a974c8 Adds RSA support to wolfBoot using "SIGN=RSA2048". Includes RSA signing script tool in Python and instructions. 2019-12-17 09:44:02 -08:00
David Garske d146193615 Support for STM32H7. 2019-12-16 14:44:45 -08:00
Daniele Lacamera f1d983cbb6 Added missing file for stm32wb55 hal configuration 2019-11-13 09:17:32 +01:00
Daniele Lacamera 0b822cefbb Fixes to kinetis K82F 2019-11-11 14:27:16 -08:00
Daniele Lacamera c78f0d7026 Added support for STM32 PKA 2019-11-11 15:06:04 +01:00
Daniele Lacamera ca9ffbab7c Configuration (via .config), single entry point for options 2019-10-10 20:39:25 +02:00
Daniele Lacamera 3bd71fa96e Fixed erase page size and PG bit 2019-07-30 14:16:03 -07:00
Daniele Lacamera f9f10cb099 Added support for STM32WB 2019-07-30 14:16:03 -07:00
Daniele Lacamera 34def41dd1 Added support for STM32F7 + DUALBANK_SWAP hw-assisted support 2019-07-17 11:37:43 -07:00
David Garske da467e0ecf Updated wolfSSL sub-module. Enlarged RAM region to 36KB, which is good for any G07x or higher (note G03x or G04x only have 8KB RAM). 2019-07-17 11:35:15 -07:00
David Garske f2be454e08 Fixes for building STM32G0. 2019-07-16 12:04:34 -07:00
Daniele Lacamera 254882c5f2 Added support for STM32G0 (tested on STM32G070-Nucleo) 2019-07-16 08:46:14 -07:00
Daniele Lacamera e016722e66 Added support for STM32L0X3
(firmware update successfully tested on STM32L073)
2019-07-15 08:55:15 -07:00
Daniele Lacamera 88d0e4dcfb HiFive1 eSPI driver: Fixed return-to-hwmode, refactoring hal_flash_write
for short write operations
2019-07-08 19:10:16 +02:00
Daniele Lacamera 93fdc4a848 [hifive1] Flash Frequency set back to 50MHz 2019-06-27 13:11:32 +02:00
Daniele Lacamera 9cc558b7a2 [hifive1] fixed hal_flash_write 2019-06-27 12:40:40 +02:00
Daniele Lacamera e08d282879 [Hifive1 SPI] Changed order of SPI operations/direction changes 2019-06-26 19:24:39 +02:00
David Garske 68b5f67f23 Fix for `hal_flash_write` to use incremented data pointer for page. 2019-06-24 11:11:07 -07:00
David Garske 0a0e8f6a22 Fix for compile warning with operators and parens. 2019-06-24 10:54:47 -07:00
Daniele Lacamera 5c8bad047c Moved hifive1_write_page to separate module 2019-06-20 15:46:47 +02:00
Daniele Lacamera 637ffa9801 hifive hal: switch back to "hw mode" after erase/write operations 2019-06-19 15:56:39 +02:00
David Garske 92ed57832f Fixes for long jump. Targets.md fix for RAM_CODE typo. 2019-06-12 17:25:38 +02:00
David Garske 0f00f8e700 SiFive HiFive (FE310) RISC-V support
* HiFive1 HAL Support for PLL Clock, UART, RTC and Flash QSPI Erase/Write.
* HiFive1 update demo application for accepting firmware updates over UART.
* Added test-update-server application for pushing firmware image over UART.
* Fixes for building with `make SIGN=ECC256`.
* Improvements to wolfCrypt `user_settings.h`.
* General library cleanup (license headers and formatting)
* Updated the wolfSSL submodule to latest.
* Documentation updates including new `Targets.md` section for hardare instructions.
2019-06-07 13:08:15 -07:00
Daniele Lacamera 2ef5e47d61 Added test for bootloader update 2019-04-29 20:32:04 +02:00
Daniele Lacamera fc547e4a25 wolfBoot can update itself when compiled with RAM_CODE=1
- Added wolfBoot version
- Added extra 16bit header tag to identify the image type and authentication
- Implemented optional in-ram self-update of the bootloader, with version control
and authentication mechanism (not fail-safe)
2019-04-29 20:32:04 +02:00
Daniele Lacamera 937e9d46fb Introducing RAMCODE tag to transfer functions to RAM
- Moved functions in the flash write path to RAM, so their execution
does not depend on flash access

- RAMCODE can be enabled via "make RAM_CODE=1"
2019-04-29 20:32:04 +02:00
Daniele Lacamera b918014203 Multi-platform test application, added K82 to Kinetis port 2019-04-04 16:31:45 +02:00
Daniele Lacamera b5fd49a82a Initial experimental support for RISC-V
- New Makefile to support multiple architectures
- Separate architecture-specific start-up files
- Stub for a hifive1 HAL port
2019-04-01 14:01:14 +02:00
Daniele Lacamera da8175b856 stm32f4 SPI-flash: Remove unnecessary delay after CS-off 2019-03-18 12:10:40 +01:00
Daniele Lacamera fcf1985978 STM32F4 Hal: support internal flash up to 1MB 2019-03-18 12:10:03 +01:00
Daniele Lacamera 630a10eafa Automated tests for EXT_FLASH/SPI_FLASH 2019-03-15 11:16:34 +01:00