Don't return error information from console_flushAnd from crash_console_flush.We ignore the error information return by console_flush in _every_place where we call it, and casting the return typ
Don't return error information from console_flushAnd from crash_console_flush.We ignore the error information return by console_flush in _every_place where we call it, and casting the return type to void does notwork around the MISRA violation that this causes. Instead, we collectthe error information from the driver (to avoid changing that API), anddon't return it to the caller.Change-Id: I1e35afe01764d5c8f0efd04f8949d333ffb688c1Signed-off-by: Jimmy Brisson <jimmy.brisson@arm.com>
show more ...
coreboot: Use generic base addressSince now the generic console_t structure holds the UART base address aswell, let's use that generic location for the coreboot memory console.This removes the ba
coreboot: Use generic base addressSince now the generic console_t structure holds the UART base address aswell, let's use that generic location for the coreboot memory console.This removes the base member from the coreboot specific data structure,but keeps the struct console_cbmc_t and its size member.Change-Id: I7f1dffd41392ba3fe5c07090aea761a42313fb5bSigned-off-by: Andre Przywara <andre.przywara@arm.com>
Console: remove deprecated finish_console_registerThe old version of the macro is deprecated.Commit cc5859ca19ff ("Multi-console: Deprecate the`finish_console_register` macro") provides more det
Console: remove deprecated finish_console_registerThe old version of the macro is deprecated.Commit cc5859ca19ff ("Multi-console: Deprecate the`finish_console_register` macro") provides more details.Change-Id: I3d1cdf6496db7d8e6cfbb5804f508ff46ae7e67eSigned-off-by: Ambroise Vincent <ambroise.vincent@arm.com>
Sanitise includes across codebaseEnforce full include path for includes. Deprecate old paths.The following folders inside include/lib have been left unchanged:- include/lib/cpus/${ARCH}- inclu
Sanitise includes across codebaseEnforce full include path for includes. Deprecate old paths.The following folders inside include/lib have been left unchanged:- include/lib/cpus/${ARCH}- include/lib/el3_runtime/${ARCH}The reason for this change is that having a global namespace forincludes isn't a good idea. It defeats one of the advantages of havingfolders and it introduces problems that are sometimes subtle (becauseyou may not know the header you are actually including if there are twoof them).For example, this patch had to be created because two headers werecalled the same way: e0ea0928d5b7 ("Fix gpio includes of mt8173 platformto avoid collision."). More recently, this patch has had similarproblems: 46f9b2c3a282 ("drivers: add tzc380 support").This problem was introduced in commit 4ecca33988b9 ("Move include andsource files to logical locations"). At that time, there weren't toomany headers so it wasn't a real issue. However, time has shown thatthis creates problems.Platforms that want to preserve the way they include headers may add theremoved paths to PLAT_INCLUDES, but this is discouraged.Change-Id: I39dc53ed98f9e297a5966e723d1936d6ccf2fc8fSigned-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>
Multi-console: Deprecate the `finish_console_register` macroThe `finish_console_register` macro is used by the multi consoleframework to register the `console_t` driver callbacks. It reliedon wea
Multi-console: Deprecate the `finish_console_register` macroThe `finish_console_register` macro is used by the multi consoleframework to register the `console_t` driver callbacks. It reliedon weak references to the `ldr` instruction to populate 0 to thecallback in case the driver has not defined the appropriatefunction. Use of `ldr` instruction to load absolute address to areference makes the binary position dependant. These instructionsshould be replaced with adrp/adr instruction for position independantexecutable(PIE). But adrp/adr instructions don't work well with weakreferences as described in GNU ld bugzilla issue 22589.This patch defines a new version of `finish_console_register` macrowhich can spcify which driver callbacks are valid and deprecates theold one. If any of the argument is not specified, then the macropopulates 0 for that callback. Hence the functionality of the previousdeprecated macro is preserved. The USE_FINISH_CONSOLE_REG_2 defineis used to select the new variant of the macro and will be removedonce the deprecated variant is removed.All the upstream console drivers have been migrated to use the newmacro in this patch.NOTE: Platforms be aware that the new variant of the`finish_console_register` should be used and the old variant isdeprecated.Change-Id: Ia6a67aaf2aa3ba93932992d683587bbd0ad25259Signed-off-by: Soby Mathew <soby.mathew@arm.com>
pl011: cnds: cbmem: 16550: Fix commentsThe comments with the prototypes of the register functions of theconsole drivers are incorrect. The arguments are wrong. This patch fixesthem.Change-Id: I
pl011: cnds: cbmem: 16550: Fix commentsThe comments with the prototypes of the register functions of theconsole drivers are incorrect. The arguments are wrong. This patch fixesthem.Change-Id: I38c4b481ee69e840780111c42f03c0752eb6315cSigned-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>
coreboot: Add support for CBMEM consolecoreboot supports an in-memory console to store firmware logs even whenno serial console is available. It is widely supported bycoreboot-compatible bootload
coreboot: Add support for CBMEM consolecoreboot supports an in-memory console to store firmware logs even whenno serial console is available. It is widely supported bycoreboot-compatible bootloaders (including SeaBIOS and GRUB) and can beread by the Linux kernel.This patch allows BL31 to add its own log messages to this console. Thedriver will be registered automatically if coreboot support is compiledin and detects the presence of a console buffer in the coreboot tables.Change-Id: I31254dfa0c2fdeb7454634134b5707b4b4154907Signed-off-by: Julius Werner <jwerner@chromium.org>