#
9f904ed2 |
|
06-Mar-2020 |
Gerwin Klein <gerwin.klein@data61.csiro.au> |
convert license headers to SPDX Includes license review of 3rd-party files, adding missing upstream headers, and moving the UNSW OZPLB license into its own file rather than replicating it in the header.
|
#
eb0b02b2 |
|
10-Dec-2019 |
Simon Shields <simon.shields@data61.csiro.au> |
elfloader: use driver model for SMP on ARM Previously, each platform had its own implementation of init_cpus(). This is particularly cumbersome in the case of aarch64, where all platforms which support SMP use PSCI to do so. This patch moves SMP on ARM to be implemented using the driver model. It introduces a new driver type, DRIVER_SMP. This driver has a single method, `cpu_on`, which, when given an `elfloader_cpu` struct, turns on the CPU corresponding to that struct, launching it at the given entry point with the provided stack. This patch also makes the aarch64 and aarch32 CPU bringup logic much more similar. Both architectures now wait for CPUs to come up before starting the next. Note that the i.MX7 is left as-is, using the old mechanism, due to a lack of hardware to test on.
|
#
b640ba45 |
|
02-Dec-2019 |
Simon Shields <simon.shields@data61.csiro.au> |
elfloader: move self to correct address on aarch64 The "shoehorn" tool figures out an address that the elfloader can be linked against based on a number of parameters known at buildtime. Unfortunately, binary (as opposed to ELF or EFI) images have no way of communicating this assumption to the bootloader, so the bootloader usually loads us in the wrong place. Fix this by making the elfloader move itself (if possible) to the correct location.
|
#
670e12b1 |
|
02-Dec-2019 |
Simon Shields <simon.shields@data61.csiro.au> |
elfloader: clear bss at runtime Currently, binary and EFI images do not zero the BSS section before running the elfloader. This means that global variables which we expect to be NULL at launch aren't. Add a clear_bss function which does this for us, and call it where appropriate.
|
#
65daeb20 |
|
19-May-2019 |
Yu Hou <Yu.Hou@data61.csiro.au> |
elfloader-tool: explicitly link config libs explicitly link kernel_autoconf and elfloader_Config since the global config lib is going to be remove
|
#
0be5f226 |
|
15-Apr-2019 |
Simon Shields <simon.shields@data61.csiro.au> |
elfloader: support relocating on ARM Under EFI, we can't control where the ELF loader is loaded - and so it might be loaded above the kernel's first vaddr. If this is the case, once we turn the MMU on the ELF loader will no longer be accessible and the system will not boot. When this occurs, workaround it by relocating the ELF loader below the kernel.
|
#
935ee687 |
|
04-Jun-2017 |
Anna Lyons <Anna.Lyons@data61.csiro.au> |
Fix licenses
|
#
6ae7c174 |
|
12-Jan-2017 |
amrzar <azarrabi@nicta.com.au> |
elfloader: Update 64-bit crt0.S to use core_stack_alloc as stack also remove the unused codes
|
#
839aab9b |
|
26-Jan-2016 |
amrzar <azarrabi@nicta.com.au> |
Add efi/64bit and Hikey platforms
|