History log of /rk3399_ARM-atf/include/drivers/console.h (Results 26 – 50 of 64)
Revision Date Author Comments
# 09d40e0e 14-Dec-2018 Antonio Nino Diaz <antonio.ninodiaz@arm.com>

Sanitise includes across codebase

Enforce 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 codebase

Enforce 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 for
includes isn't a good idea. It defeats one of the advantages of having
folders and it introduces problems that are sometimes subtle (because
you may not know the header you are actually including if there are two
of them).

For example, this patch had to be created because two headers were
called the same way: e0ea0928d5b7 ("Fix gpio includes of mt8173 platform
to avoid collision."). More recently, this patch has had similar
problems: 46f9b2c3a282 ("drivers: add tzc380 support").

This problem was introduced in commit 4ecca33988b9 ("Move include and
source files to logical locations"). At that time, there weren't too
many headers so it wasn't a real issue. However, time has shown that
this creates problems.

Platforms that want to preserve the way they include headers may add the
removed paths to PLAT_INCLUDES, but this is discouraged.

Change-Id: I39dc53ed98f9e297a5966e723d1936d6ccf2fc8f
Signed-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>

show more ...


# 85456a92 10-Dec-2018 Soby Mathew <soby.mathew@arm.com>

Merge pull request #1700 from jwerner-chromium/JW_crashfix

MULTI_CONSOLE_API fixes and cleanups


# 0f8aee4e 04-Dec-2018 Julius Werner <jwerner@chromium.org>

console: Fix console_unregister() signature

console_unregister() has always returned a pointer to the console that
was removed on success, not just an integer. Fix the C prototype to
match the assem

console: Fix console_unregister() signature

console_unregister() has always returned a pointer to the console that
was removed on success, not just an integer. Fix the C prototype to
match the assembly implementation.

Change-Id: Iafc43de0767a5c87c9ae5c3aba53761dd28d51e6
Signed-off-by: Julius Werner <jwerner@chromium.org>

show more ...


# 9d068f66 08-Nov-2018 Antonio Niño Díaz <antonio.ninodiaz@arm.com>

Merge pull request #1673 from antonio-nino-diaz-arm/an/headers

Standardise header guards across codebase


# c3cf06f1 08-Nov-2018 Antonio Nino Diaz <antonio.ninodiaz@arm.com>

Standardise header guards across codebase

All identifiers, regardless of use, that start with two underscores are
reserved. This means they can't be used in header guards.

The style that this proje

Standardise header guards across codebase

All identifiers, regardless of use, that start with two underscores are
reserved. This means they can't be used in header guards.

The style that this project is now to use the full name of the file in
capital letters followed by 'H'. For example, for a file called
"uart_example.h", the header guard is UART_EXAMPLE_H.

The exceptions are files that are imported from other projects:

- CryptoCell driver
- dt-bindings folders
- zlib headers

Change-Id: I50561bf6c88b491ec440d0c8385c74650f3c106e
Signed-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>

show more ...


# 6d4f6aea 22-Aug-2018 Dimitris Papastamos <dimitris.papastamos@arm.com>

Merge pull request #1528 from antonio-nino-diaz-arm/an/libc

libc: Cleanup library


# 93c78ed2 16-Aug-2018 Antonio Nino Diaz <antonio.ninodiaz@arm.com>

libc: Fix all includes in codebase

The codebase was using non-standard headers. It is needed to replace
them by the correct ones so that we can use the new libc headers.

Change-Id: I530f71d9510cb03

libc: Fix all includes in codebase

The codebase was using non-standard headers. It is needed to replace
them by the correct ones so that we can use the new libc headers.

Change-Id: I530f71d9510cb036e69fe79823c8230afe890b9d
Acked-by: Sumit Garg <sumit.garg@linaro.org>
Signed-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>

show more ...


# e313c122 31-Jul-2018 Dimitris Papastamos <dimitris.papastamos@arm.com>

Merge pull request #1500 from danielboulby-arm/db/RORedirection

Set console function pointers to const


# 455bca21 07-Jun-2018 Daniel Boulby <daniel.boulby@arm.com>

Set console function pointers to const

Set the function pointers in the console struct and the functions
they point to to const since they only need to be defined when
the console is being initialis

Set console function pointers to const

Set the function pointers in the console struct and the functions
they point to to const since they only need to be defined when
the console is being initialised and should not be changed after

Change-Id: I0574307111e3ab2f13d1a4a74c3fa75532dfa4be
Signed-off-by: Daniel Boulby <daniel.boulby@arm.com>

show more ...


# 7fb3a70b 19-Jun-2018 Dimitris Papastamos <dimitris.papastamos@arm.com>

Merge pull request #1418 from antonio-nino-diaz-arm/an/arm-multi-console

plat/arm: Migrate AArch64 port to the multi console driver


# 88a0523e 19-Jun-2018 Antonio Nino Diaz <antonio.ninodiaz@arm.com>

plat/arm: Migrate AArch64 port to the multi console driver

The old API is deprecated and will eventually be removed.

Arm platforms now use the multi console driver for boot and runtime
consoles. Ho

plat/arm: Migrate AArch64 port to the multi console driver

The old API is deprecated and will eventually be removed.

Arm platforms now use the multi console driver for boot and runtime
consoles. However, the crash console uses the direct console API because
it doesn't need any memory access to work. This makes it more robust
during crashes.

The AArch32 port of the Trusted Firmware doesn't support this new API
yet, so it is only enabled in AArch64 builds. Because of this, the
common code must maintain compatibility with both systems. SP_MIN
doesn't have to be updated because it's only used in AArch32 builds.
The TSP is only used in AArch64, so it only needs to support the new
API without keeping support for the old one.

Special care must be taken because of PSCI_SYSTEM_SUSPEND. In Juno, this
causes the UARTs to reset (except for the one used by the TSP). This
means that they must be unregistered when suspending and re-registered
when resuming. This wasn't a problem with the old driver because it just
restarted the UART, and there were no problems associated with
registering and unregistering consoles.

The size reserved for BL2 has been increased.

Change-Id: Icefd117dd1eb9c498921181a21318c2d2435c441
Signed-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>

show more ...


# dcf0bdb6 21-May-2018 Dimitris Papastamos <dimitris.papastamos@arm.com>

Merge pull request #1359 from danielboulby-arm/db/match_flags_type

Ensure read and write of flags defined in the console struct are 32 bit


# 8abcdf92 16-May-2018 Daniel Boulby <daniel.boulby@arm.com>

Ensure read and write of flags are 32 bit

In 'console_set_scope' and when registering a console, field 'flags' of
'console_t' is assigned a 32-bit value. However, when it is actually
used, the funct

Ensure read and write of flags are 32 bit

In 'console_set_scope' and when registering a console, field 'flags' of
'console_t' is assigned a 32-bit value. However, when it is actually
used, the functions perform 64-bit reads to access its value. This patch
changes all 64-bit reads to 32-bit reads.

Change-Id: I181349371409e60065335f078857946fa3c32dc1
Signed-off-by: Daniel Boulby <daniel.boulby@arm.com>

show more ...


# 83cf7a00 15-May-2018 Dimitris Papastamos <dimitris.papastamos@arm.com>

Merge pull request #1385 from antonio-nino-diaz-arm/an/revert-console

Revert "plat/arm: Migrate AArch64 port to the multi console driver"


# bf4698fd 15-May-2018 Antonio Nino Diaz <antonio.ninodiaz@arm.com>

Revert "plat/arm: Migrate AArch64 port to the multi console driver"

This reverts commit 2f18aa1fa35305f8feec25867473d30975b242fe.

It is causing some tests to fail. Until the cause is found and fixe

Revert "plat/arm: Migrate AArch64 port to the multi console driver"

This reverts commit 2f18aa1fa35305f8feec25867473d30975b242fe.

It is causing some tests to fail. Until the cause is found and fixed, it
is needed to remove this commit from master.

Change-Id: Ic5ff7a841903a15613e00379e87cbbd8a0e85152
Signed-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>

show more ...


# da9d1d59 11-May-2018 Dimitris Papastamos <dimitris.papastamos@arm.com>

Merge pull request #1372 from antonio-nino-diaz-arm/an/arm-multi-console

Arm platforms: Migrate to multi console driver


# 2f18aa1f 04-May-2018 Antonio Nino Diaz <antonio.ninodiaz@arm.com>

plat/arm: Migrate AArch64 port to the multi console driver

The old API is deprecated and will eventually be removed.

Arm platforms now use the multi console driver for boot and runtime
consoles. Ho

plat/arm: Migrate AArch64 port to the multi console driver

The old API is deprecated and will eventually be removed.

Arm platforms now use the multi console driver for boot and runtime
consoles. However, the crash console uses the direct console API because
it doesn't need any memory access to work. This makes it more robust
during crashes.

The AArch32 port of the Trusted Firmware doesn't support this new API
yet, so it is only enabled in AArch64 builds. Because of this, the
common code must maintain compatibility with both systems. SP_MIN
doesn't have to be updated because it's only used in AArch32 builds.
The TSP is only used in AArch64, so it only needs to support the new
API without keeping support for the old one.

Special care must be taken because of PSCI_SYSTEM_SUSPEND. In Juno, this
causes the UARTs to reset (except for the one used by the TSP). This
means that they must be unregistered when suspending and re-registered
when resuming. This wasn't a problem with the old driver because it just
restarted the UART, and there were no problems associated with
registering and unregistering consoles.

The size of BL31 has been increased in builds with SPM.

Change-Id: Icefd117dd1eb9c498921181a21318c2d2435c441
Signed-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>

show more ...


# c2e05bb7 30-Apr-2018 Antonio Nino Diaz <antonio.ninodiaz@arm.com>

multi console: Assert that consoles aren't registered twice

In the multi console driver, allowing to register the same console more
than once may result in an infinte loop when putc is called.

If,

multi console: Assert that consoles aren't registered twice

In the multi console driver, allowing to register the same console more
than once may result in an infinte loop when putc is called.

If, for example, a boot message is trying to be printed, but the
consoles in the loop in the linked list are runtime consoles, putc will
iterate forever looking for a console that can print boot messages (or
a NULL pointer that will never come).

This loop in the linked list can occur after restoring the system from a
system suspend. The boot console is registered during the cold boot in
BL31, but the runtime console is registered even in the warm boot path.
Consoles are always added to the start of the linked list when they are
registered, so this it what should happen if they were actually
different structures:

console_list -> NULL
console_list -> BOOT -> NULL
console_list -> RUNTIME -> BOOT -> NULL
console_list -> RUNTIME -> RUNTIME -> BOOT -> NULL

In practice, the two runtime consoles are the same one, so they create
this loop:

console_list -> RUNTIME -. X -> BOOT -> NULL
^ |
`----'

This patch adds an assertion to detect this problem. The assertion will
fail whenever the same structure tries to be registered while being on
the list.

In order to assert this, console_is_registered() has been implemented.
It returns 1 if the specified console is registered, 0 if not.

Change-Id: I922485e743775ca9bd1af9cbd491ddd360526a6d
Signed-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>

show more ...


# f11916bf 03-Apr-2018 Dimitris Papastamos <dimitris.papastamos@arm.com>

Merge pull request #1334 from michpappas/tf-issues#572_qemu_dont_use_C_for_crash_console

qemu: don't use C functions for the crash console callbacks


# 0e24ea81 27-Mar-2018 Michalis Pappas <mpappas@fastmail.fm>

qemu: don't use C functions for the crash console callbacks

Use the console_pl011_core_* functions directly in the crash console
callbacks.

This bypasses the MULTI_CONSOLE_API for the crash console

qemu: don't use C functions for the crash console callbacks

Use the console_pl011_core_* functions directly in the crash console
callbacks.

This bypasses the MULTI_CONSOLE_API for the crash console (UART1), but
allows using the crash console before the C runtime has been initialized
(eg to call ASM_ASSERT). This retains backwards compatibility with respect
to functionality when the old API is used.

Use the MULTI_CONSOLE_API to register UART0 as the boot and runtime
console.

Fixes ARM-software/tf-issues#572

Signed-off-by: Michalis Pappas <mpappas@fastmail.fm>

show more ...


# ba7848e2 25-Mar-2018 davidcunado-arm <david.cunado@arm.com>

Merge pull request #1330 from michpappas/tf-issues#571_qemu_fix_MULTI_CONSOLE=0

qemu: MULTI_CONSOLE_API=0 causes build error


# 4c746fc5 24-Mar-2018 Michalis Pappas <mpappas@fastmail.fm>

qemu: MULTI_CONSOLE_API=0 causes build error

Add crash_console_init declaration to console.h
Only enable MULTI_CONSOLE_API for AArch64

Fixes ARM-software/tf-issues#571

Signed-off-by: Michalis Papp

qemu: MULTI_CONSOLE_API=0 causes build error

Add crash_console_init declaration to console.h
Only enable MULTI_CONSOLE_API for AArch64

Fixes ARM-software/tf-issues#571

Signed-off-by: Michalis Pappas <mpappas@fastmail.fm>

show more ...


# c37be00b 03-Mar-2018 davidcunado-arm <david.cunado@arm.com>

Merge pull request #1292 from danh-arm/dh/spurious-dep-warn

Suppress spurious deprecated declaration warnings


# bc1a03c7 27-Feb-2018 Dan Handley <dan.handley@arm.com>

Improve MULTI_CONSOLE_API deprecation warnings

For platforms that have not migrated to MULTI_CONSOLE_API == 1, there
are a lot of confusing deprecated declaration warnings relating to
use of console

Improve MULTI_CONSOLE_API deprecation warnings

For platforms that have not migrated to MULTI_CONSOLE_API == 1, there
are a lot of confusing deprecated declaration warnings relating to
use of console_init() and console_uninit(). Some of these relate to use
by the generic code, not the platform code. These functions are not really
deprecated but *removed* when MULTI_CONSOLE_API == 1.

This patch consolidates these warnings into a single preprocessor warning.
The __deprecated attribute is removed from the console_init() and
console_uninit() declarations.

For preprocessor warnings like this to not cause fatal build errors,
this patch adds -Wno-error=cpp to the build flags when
ERROR_DEPRECATED == 0.
This option (and -Wno-error=deprecated-declarations) is now added to
CPPFLAGS instead of TF_CFLAGS to ensure the build flags are used in the
assembler as well as the compiler.

This patch also disentangles the MULTI_CONSOLE_API and ERROR_DEPRECATED
build flags by defaulting MULTI_CONSOLE_API to 0 instead of
ERROR_DEPRECATED. This allows platforms that have not migrated to
MULTI_CONSOLE_API to use ERROR_DEPRECATED == 1 to emit a more meaningful
build error.

Finally, this patch bans use of MULTI_CONSOLE_API == 1 and AARCH32, since
the AArch32 console implementation does not support
MULTI_CONSOLE_API == 1.

Change-Id: If762165ddcb90c28aa7a4951aba70cb15c2b709c
Signed-off-by: Dan Handley <dan.handley@arm.com>

show more ...


# 040f1e69 24-Jan-2018 davidcunado-arm <david.cunado@arm.com>

Merge pull request #1193 from jwerner-chromium/JW_coreboot

New console API and coreboot support [v4]


123