dwrite will push a provided number of characters to
debug output. All other print functions require null
terminated strings.
Change-Id: I765366d67e9ef95156264ab8cb43552864395395
Use a fixed size for lk_time_t so the same time conversions can
be used on 64 bit and 32 bit systems.
Change-Id: I92ce900fc6b3d783a7d93a05c2ecf8fb236552ad
Add macro to allocate memory in early boot code. Allocated memory
is aligned to the size requested and cleared. phys_offset must be
supplied if used before the mmu is enabled.
Change-Id: I2c2a96ac83aa81d7ce6e14c786131f0c3de058ba
The tbz and tbnz arm64 instructions take a bit number, not a mask.
Add helper macros that convert a bitmask with a single bit set to
a bit number and pass it to the tbz or tbnz instruction.
Change-Id: I8b5f86a1ba91fd0251859324b4baba5296c328e4
If mark_pages_in_use fails to mark the kernel code (or data) as used,
it will get corrupted as the heap starts reusing using it.
Change-Id: I48f62bb68dcbad3268304aa2a1e63e9956128064
Floating pointer registers are not supported by the current context
switch and init code, so stop the compiler from using them.
Change-Id: Ifc0bea4553c60c8fb826455885e1f12b5249759d
MMU initial mapping entry marked as dynamic might be fixed up
by platform_reset in order to support memory mappings that cannot
be statically defined.
Change-Id: Iba4dcf538c334f165cfbeded3f96dfd7e4084f62
Added architecture specific variables
ARCH_COMPILEFLAGS
ARCH_CFLAGS
ARCH_CPPFLAGS
ARCH_ASMFLAGS
These variables are passed directly to $(CC) command and
are supposed to have global but architecture specific
settings.
Change-Id: I0929afacb4ad5229f503217ee370e0a84a15f35d
All makefiles added to EXTRA_BUILDRULES variable
will be included right before processing bulk of build.mk
Change-Id: Ic37e37ea7469ee57e6f6543f378c5d0c1510824b
Add LKROOT to LKINC only if it is not already there.
This would allow to specify particular overlay processing
order if required.
Remove adding separate LKROOT/include to GLOBAL_DEFINES as
It is already a part of LKINC list.
Add all directories specified by LKINC to GLOBAL_LDFLAGS instead
of just LKROOT
Change-Id: Ia61623f88f2c5978182c40b09d98b6e5b84e3955
Trigger a timer interrupt on cpu resume since the timer may have been reset.
Change-Id: I38af303f704dc88e2eb053d645ead460b7547937
Signed-off-by: Arve Hjønnevåg <arve@android.com>
Adds shadow registers so secure interrupt state is restored after suspend.
Adds cpu suspend and resume functions.
Disable fiqs in suspend and re-enable in resume.
Change-Id: Ie4a36d55fdd7275267eeeb208e358ab24855ee64
Signed-off-by: Arve Hjønnevåg <arve@android.com>
The CPU_SUSPEND flag/type will be used to save state/disable portions of
lk when entering a suspend state.
The CPU_RESUME flag/type will be used to re-initialize portions of lk
when resuming from a suspended state.
Change-Id: Ia21f845da72552c68c679b24413cdc1138e3968c
Allows multiple fiqs to be registered without one fiq handler
interrupting another and corrupting the return state.
Change-Id: I1ab1bd2e2808d3ff319cc31924e083011ef21fe3
Signed-off-by: Arve Hjønnevåg <arve@android.com>
Adds branch to arm_secondary_entry after exception vectors
if WITH_SMP is set.
Change-Id: If10d08e305cb4a183b9b80ef3b959f3dcb947b58
Signed-off-by: Arve Hjønnevåg <arve@android.com>