Commit Graph

1107 Commits (06b6c0103e079c902348eea8e18e2d6d29e2ecae)

Author SHA1 Message Date
Daniele Lacamera 06b6c0103e Feature: verification of FSP images' signatures 2023-07-27 09:39:53 +02:00
Daniele Lacamera 2144057da8 Added option for authentication in stage1 2023-07-26 17:54:35 +02:00
David Garske 2e7a1efc82
Merge pull request #327 from rizlik/intel_fsp_support
Intel FSP support
2023-07-24 12:04:08 -07:00
Daniele Lacamera 693c4c0406 docs: update documentation with Intel FSP targets 2023-07-24 18:12:32 +00:00
Marco Oliverio c4ec5eef35 x86: support Intel FSP (TigerLake and QEMU) 2023-07-24 18:12:32 +00:00
Marco Oliverio 93b7281d12 x86: support MMU paging on x86 architecture 2023-07-24 18:12:14 +00:00
Marco Oliverio ab60ec47cb feature: support multiboot2 boot protocol 2023-07-24 18:12:14 +00:00
Marco Oliverio 30af6f617c x86: support Linux boot protocol for 32bit x86 architecture 2023-07-24 18:12:14 +00:00
Marco Oliverio bb93ce95d7 x86: MPTABLE: support multi processor table
BIOS uses this table to communiate IRQ routing and CPUs number to the OS.
2023-07-24 18:12:14 +00:00
Marco Oliverio 8ba7d01b1a x86: add support for 8250 UART 2023-07-24 18:12:14 +00:00
Daniele Lacamera 1d5231c969 feature: support disk boot/update 2023-07-24 18:12:14 +00:00
Daniele Lacamera 5d6662af35 x86: GPT: support GUID Partition Table
support parsing the table and reading/writing to/from a partition.

Signed-off-by: Marco Oliverio <marco@wolfssl.com>
2023-07-24 18:12:14 +00:00
Daniele Lacamera dbf913deb0 x86: ATA: support ATA commands
support ATA commands to read, write and identify a SATA disk.

Signed-off-by: Marco Oliverio <marco@wolfssl.com>
2023-07-24 18:12:14 +00:00
Daniele Lacamera 8ed6dd3281 x86: AHCI: support AHCI
supports querying the ports, detecting the disk and configuring FIS areas.

Signed-off-by: Marco Oliverio <marco@wolfssl.com>
2023-07-24 18:12:14 +00:00
Marco Oliverio 8ce80d6a65 PCI: add initial support
It support basic enumeration (only bus 0), and reading/writing to config space
register.
2023-07-24 18:12:13 +00:00
Marco Oliverio 1e754ca8f5 x86: common I/O, MMIO and misc architecture specific functions 2023-07-24 18:12:13 +00:00
Marco Oliverio 9aee0b4cdd TPM: support WOLFTPM_MMIO 2023-07-24 18:12:13 +00:00
Daniele Lacamera efa28e3787 x86_64: support SP_MATH on x86_64 architecture
Signed-off-by: Marco Oliverio <marco@wolfssl.com>
2023-07-24 18:12:13 +00:00
Marco Oliverio 0fd34f23c7 ELF: add mmu callback to map segments before loading 2023-07-24 18:12:13 +00:00
Marco Oliverio 95ea6659f9 ELF: allow turning off DEBUG_ELF if DEBUG=1 2023-07-24 18:12:13 +00:00
Marco Oliverio 93bedf7333 Makefile: force stage1 building 2023-07-24 18:12:13 +00:00
Marco Oliverio e7ab067759 stage1/Makefile: fix tabs in conditionals 2023-07-24 18:12:13 +00:00
Marco Oliverio 3a2a1523e3 stage1/Makefile: fix: don't use dir in vpath directive 2023-07-24 18:12:13 +00:00
Marco Oliverio e562aaedd3 stage1: un-generalize PPC specific options 2023-07-24 18:12:13 +00:00
Marco Oliverio 48bc97dab7 efi: buildroot version bump to 2022.08.03 2023-07-17 14:26:23 +00:00
David Garske f32f3c9b45
Merge pull request #326 from cmcquinn/feature/cmcquinn/stm32l4_clock
STM32L4: set clock speed to 80MHz
2023-07-13 11:40:55 -07:00
Cameron McQuinn a0212db8c0 STM32L4: set clock speed to 80MHz 2023-07-13 11:41:29 -06:00
Chris Conlon 94219e53cf
Merge pull request #325 from danielinux/changelog-typo
Fixed typo in wolfBoot 1.16 changelog
2023-07-12 09:16:47 -06:00
Daniele Lacamera b3e69ea91a Fixed typo in wolfBoot 1.16 changelog 2023-07-12 11:01:11 +02:00
David Garske 464d7552d4
Merge pull request #324 from danielinux/prepare-release-v1.16
Prepare release v1.16
2023-07-06 09:03:41 -07:00
Daniele Lacamera 2600df9a21 Updated bootloader version 2023-07-06 14:17:52 +02:00
Daniele Lacamera 8bab854ec9 Added changelog 2023-07-06 14:16:58 +02:00
Hideki Miyazaki 1badff120e addressed review comments 2023-07-06 08:24:26 +02:00
Hideki Miyazaki 8897228ffc update README including steps to create configuration.xml 2023-07-06 08:24:26 +02:00
Hideki Miyazaki 51fcb61cd2 modified interval when using version 1 2023-07-06 08:24:26 +02:00
Hideki Miyazaki 5fdc5e66cd rm pincfg, jlink, launch and configuration.xml from wolfBoot project 2023-07-06 08:24:26 +02:00
Hideki Miyazaki c0cba25e8b rm app_RA configuration.xml 2023-07-06 08:24:26 +02:00
Hideki Miyazaki 343631ba70 rm fsp.ld, pincfg, .jlink and .launch files 2023-07-06 08:24:26 +02:00
Hideki Miyazaki dee6be0671 update SW only case and fix SCE use case 2023-07-06 08:24:26 +02:00
David Garske 25bca043ed Increase size limits by 38 bytes (due to v5.6.3 update). 2023-07-05 18:34:42 +02:00
David Garske 1d6c421b41 Disable dynamic stack for SP math and SP math all. 2023-07-05 18:34:42 +02:00
Daniele Lacamera 17b948bd25 Added WOLFSSL_SP_NO_DYN_STACK to user_settings.h 2023-07-05 18:34:42 +02:00
Daniele Lacamera 180d819d4a Added WOLFSSL_SP_NO_DYN_STACK 2023-07-05 18:34:42 +02:00
Daniele Lacamera e186531ec2 Fixed preprocessor symbol clash MP_INT_SIZE 2023-07-05 18:34:42 +02:00
Daniele Lacamera b131ae553e Updated submodules 2023-07-05 18:34:42 +02:00
David Garske 338f4bc2ea Peer review feedback. 2023-07-05 17:03:57 +02:00
David Garske 11f46a51e1 Further fixes and improvements with NXP T2080 regression testing. Added required LAW's to startup assembly. Moved LAW definitions to header. Move isr_empty so other boot functions go in the boot section. 2023-07-05 17:03:57 +02:00
David Garske 63766c24e3 Fixes for regression testing on NXP T2080. Fix legacy U-Boot image header load address (make optional feature). Cleanup disabled/dead code. 2023-07-05 17:03:57 +02:00
David Garske db15f9b0f1 Further NXP P1021 fixes and improvements:
* Added ELF32 and ELF64 loader support (config `ELF=1` or build option `WOLFBOOT_ELF`).
* Add ELF support to `update_ram.c` loader.
* Add support for loading entire flash image to RAM when `EXT_FLASH=1` and `NO_XIP=1` (or `WOLFBOOT_USE_RAMBOOT`).
* Added QUICC Engine support to load microcode and enable.
* Add multiple core support for NXP P1021.
* Fixes to resolve first stage boot ROM relocation.
  - Implemented temporary workaround to resolve stack traps.
* Added PPC GOT relocation support.
* Fix for the PPC `isr_empty` handler address.
* Fix to allow stack to use DDR by having assembly setup DDR TLB. After relocating wolfBoot use stack on DDR.
* Cleanup wolfBoot output.
  - Only remove extra .bin/.elf created unless `make distclean` is used.
  - Don't output the key grep test (only check result).
  - Adjust build order (first stage, wolfboot, test app, key, sign test app and factory).
  - Fix to make sure linker script is rebuilt before objects.

Sample NXP P1021 Output:

```
Relocating BOOT ROM to DDR
Loading wolfBoot to DDR
Jumping to full wolfBoot
wolfBoot HAL Init
Flash Init: Ret 0, ID 0x76207620
QE: Length 63732, Count 1
QE: uploading 'Microcode for P1021 r1.0' version 0.0.1
QE: Traps 0
MP: Starting core 2 (spin table 0xFFFFF240)
Versions: Boot 1, Update 0
Trying Boot partition at 0x200000
Loading header 512 bytes to 0x1DFFFE00
Loading image 3170724 bytes to 0x1E000000
Image size 3170724
Firmware Valid
Loading elf at 0x1E000000
Found valid elf32 (big endian)
Booting at 0x6000
```
2023-07-05 17:03:57 +02:00
David Garske a56e2252c1 Revert the TPM based key store (root of trust). This feature is not ready for next release. 2023-07-04 08:36:41 +02:00