History log of /rk3399_ARM-atf/lib/cpus/aarch64/ (Results 351 – 375 of 843)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
b2d78e1c04-Apr-2023 Boyan Karatotev <boyan.karatotev@arm.com>

refactor(cpus): convert the Cortex-A53 to use the errata framework

This involves replacing:
* the reset_func with the standard cpu_reset_func_{start,end} to apply
errata automatically
* the <cp

refactor(cpus): convert the Cortex-A53 to use the errata framework

This involves replacing:
* the reset_func with the standard cpu_reset_func_{start,end} to apply
errata automatically
* the <cpu>_errata_report with the errata_report_shim to report errata
automatically
...and for each erratum:
* the prologue with the workaround_<type>_start to do the checks and
framework registration automatically
* the epilogue with the workaround_<type>_end
* the checker function with the check_erratum_<type> to make it more
descriptive

It is important to note that the errata workaround and checking
sequences remain unchanged and preserve their git blame.

Signed-off-by: Boyan Karatotev <boyan.karatotev@arm.com>
Change-Id: I30556f438859d17f054cb6bc96f3069b40474b58

show more ...

e37dfd3c03-Apr-2023 Boyan Karatotev <boyan.karatotev@arm.com>

refactor(cpus): reorder Cortex-A53 errata by ascending order

Errata report order is enforced to be in ascending order. To achieve
this with the errata framework this has to be done at the definition

refactor(cpus): reorder Cortex-A53 errata by ascending order

Errata report order is enforced to be in ascending order. To achieve
this with the errata framework this has to be done at the definition
level.

Also rename the disable_non_temporal_hint to its erratum number to
conform to convention.

Signed-off-by: Boyan Karatotev <boyan.karatotev@arm.com>
Change-Id: Id474872afebf361ab3d21c454ab3624db8354045

show more ...

0bbd432914-Aug-2023 Juan Pablo Conde <juanpablo.conde@arm.com>

fix(cpus): check for SME presence in Gelas

The original powerdown function for Gelas included SME disabling
instructions but did not check for the presence of SME before disabling.
This could lead t

fix(cpus): check for SME presence in Gelas

The original powerdown function for Gelas included SME disabling
instructions but did not check for the presence of SME before disabling.
This could lead to unexpected beaviors. This patch adds that check so
the feature is disabled only if it is present.

Change-Id: I582db53a6669317620e4f72a3eac87525897d3d0
Signed-off-by: Juan Pablo Conde <juanpablo.conde@arm.com>

show more ...

abc2919c14-Aug-2023 Lauren Wehrmeister <lauren.wehrmeister@arm.com>

Merge "feat(cpus): add support for Gelas CPU" into integration

02586e0e05-Jul-2023 Juan Pablo Conde <juanpablo.conde@arm.com>

feat(cpus): add support for Gelas CPU

This patch adds the necessary CPU library code to support the Gelas CPU

Change-Id: I13ec4a8bb7055c1ebd0796a4a1378983d930fcb3
Signed-off-by: Juan Pablo Conde <j

feat(cpus): add support for Gelas CPU

This patch adds the necessary CPU library code to support the Gelas CPU

Change-Id: I13ec4a8bb7055c1ebd0796a4a1378983d930fcb3
Signed-off-by: Juan Pablo Conde <juanpablo.conde@arm.com>

show more ...

0a54b5cd11-Aug-2023 Bipin Ravi <bipin.ravi@arm.com>

Merge changes from topic "ar/errata_refactor" into integration

* changes:
refactor(cpus): convert Neoverse Poseidon to use CPU helpers
refactor(cpus): convert Neoverse Poseidon to framework

b98eb2dc25-Jul-2023 Arvind Ram Prakash <arvind.ramprakash@arm.com>

refactor(cpus): convert Neoverse Poseidon to use CPU helpers

Signed-off-by: Arvind Ram Prakash <arvind.ramprakash@arm.com>
Change-Id: Icf406c05cdb8d62cd0f41a5f19ae5376707e69bd

471e0b8b25-Jul-2023 Arvind Ram Prakash <arvind.ramprakash@arm.com>

refactor(cpus): convert Neoverse Poseidon to framework

This involves replacing:
* the reset_func with the standard cpu_reset_func_{start,end} to apply
errata automatically
* the <cpu>_errata_re

refactor(cpus): convert Neoverse Poseidon to framework

This involves replacing:
* the reset_func with the standard cpu_reset_func_{start,end} to apply
errata automatically
* the <cpu>_errata_report with the errata_report_shim to report errata
automatically
...and for each erratum:
* the prologue with the workaround_<type>_start to do the checks and
framework registration automatically
* the epilogue with the workaround_<type>_end
* the checker function with the check_erratum_<type> to make it more
descriptive

It is important to note that the errata workaround sequences remain
unchanged and preserve their git blame.

Testing was conducted by:

* Manual comparison of disassembly of converted functions with non-
converted functions

aarch64-none-elf-objdump -D <trusted-firmware-a with conversion>/build/fvp/release/bl31/bl31.elf
vs
aarch64-none-elf-objdump -D <trusted-firmware-a clean repo>/build/fvp/release/bl31/bl31.elf

* Build for release with all errata flags enabled and run default tftf
tests

CROSS_COMPILE=aarch64-none-elf- make PLAT=fvp DEBUG=0 \
CTX_INCLUDE_AARCH32_REGS=0 HW_ASSISTED_COHERENCY=1 USE_COHERENT_MEM=0 \
BL33=./../tf-a-tests/build/fvp/release/tftf.bin \
WORKAROUND_CVE_2022_23960=1 ERRATA_ABI_SUPPORT=1 all fip

* Build for debug with all errata enabled and step through ArmDS
at reset to ensure all functions are entered.

Change-Id: I34e27e468d4f971423a03a95a4a52f4af8bd783a
Signed-off-by: Arvind Ram Prakash <arvind.ramprakash@arm.com>

show more ...

50d89e3011-Aug-2023 Lauren Wehrmeister <lauren.wehrmeister@arm.com>

Merge changes from topic "ar/errata_refactor" into integration

* changes:
refactor(cpus): convert Neoverse V2 to use CPU helpers
refactor(cpus): convert Neoverse V2 to framework

5039015a18-Jul-2023 Moritz Fischer <moritzf@google.com>

refactor(cpus): convert Neoverse V2 to use CPU helpers

Convert Neoverse V2 to use CPU helpers, in this case that's
only two spots.

Change-Id: Icd250f92974e8a50c459038de7644a2e68007589
Signed-off-by

refactor(cpus): convert Neoverse V2 to use CPU helpers

Convert Neoverse V2 to use CPU helpers, in this case that's
only two spots.

Change-Id: Icd250f92974e8a50c459038de7644a2e68007589
Signed-off-by: Moritz Fischer <moritzf@google.com>
Signed-off-by: Arvind Ram Prakash <arvind.ramprakash@arm.com>

show more ...

31a3da8317-Jul-2023 Moritz Fischer <moritzf@google.com>

refactor(cpus): convert Neoverse V2 to framework

For V2, this involves replacing:
- The reset_func with the standard cpu_reset_func_{start,end}
to apply errata automatically
- The <cpu>_erra

refactor(cpus): convert Neoverse V2 to framework

For V2, this involves replacing:
- The reset_func with the standard cpu_reset_func_{start,end}
to apply errata automatically
- The <cpu>_errata_report with the errata_report_shim to
report errata automatically

And for each erratum:
- The prologue with the workaround_<type>_start to do the checks and
framework registration automatically at reset or runtime
- The epilogue with the workaround_<type>_end
- The checker function with the check_erratum_<type> to check whether
the erratum applies on the revision of the CPU.

It is important to note that the errata workaround sequences remain
unchanged and preserve their git blame.

Testing was conducted by:

* Manual comparison of disassembly of converted functions with non-
converted functions

aarch64-none-elf-objdump -D <trusted-firmware-a with conversion>/build/fvp/release/bl31/bl31.elf
vs
aarch64-none-elf-objdump -D <trusted-firmware-a clean repo>/build/fvp/release/bl31/bl31.elf

* Build for release with all errata flags enabled and run default tftf
tests

CROSS_COMPILE=aarch64-none-elf- make PLAT=fvp CTX_INCLUDE_AARCH32_REGS=0 \
HW_ASSISTED_COHERENCY=1 USE_COHERENT_MEM=0 \
BL33=./../tf-a-tests/build/fvp/debug/tftf.bin \
ERRATA_V2_2801372 WORKAROUND_CVE_2022_23960=1 ERRATA_ABI_SUPPORT=1 all fip

* Build for debug with all errata enabled and step through ArmDS
at reset to ensure all functions are entered.

Change-Id: Ic968844d6aabea3867189d747769ced8faa87e56
Signed-off-by: Moritz Fischer <moritzf@google.com>
Signed-off-by: Arvind Ram Prakash <arvind.ramprakash@arm.com>

show more ...

3f721c6e19-Jul-2023 Thaddeus Serna <Thaddeus.Gonzalez-Serna@arm.com>

fix(cpus): assert invalid cpu_ops obtained

Not including the proper CPU file can halt execution at the
reset_handler since the cpu_ops obtained will be invalid and therefore
the cpu reset function w

fix(cpus): assert invalid cpu_ops obtained

Not including the proper CPU file can halt execution at the
reset_handler since the cpu_ops obtained will be invalid and therefore
the cpu reset function will be invalid too, unless SUPPORT_UNKNOWN_MPID
is enabled.

This patch adds an assert to check for the validity of the obtained
cpu_ops object and will display an error if the object is invalid.

Change-Id: I0e1661745e4a692aab5e910e110c2de0caf64f46
Signed-off-by: Thaddeus Serna <Thaddeus.Gonzalez-Serna@arm.com>

show more ...

1fd03dd608-Aug-2023 Bipin Ravi <bipin.ravi@arm.com>

Merge "fix(cpus): revert erroneous use of override_vector_table macro in Cortex-A73" into integration

72e8f24508-Aug-2023 Manish V Badarkhe <manish.badarkhe@arm.com>

Merge "chore: update to use Arm word across TF-A" into integration


/rk3399_ARM-atf/docs/design_documents/measured_boot.rst
/rk3399_ARM-atf/docs/design_documents/rss.rst
/rk3399_ARM-atf/docs/getting_started/build-options.rst
/rk3399_ARM-atf/docs/plat/arm/arm-build-options.rst
/rk3399_ARM-atf/docs/porting-guide.rst
/rk3399_ARM-atf/drivers/arm/ethosn/ethosn_npu.mk
/rk3399_ARM-atf/drivers/arm/ethosn/ethosn_smc.c
/rk3399_ARM-atf/drivers/auth/auth_mod.c
/rk3399_ARM-atf/drivers/measured_boot/rss/rss_measured_boot.c
/rk3399_ARM-atf/fdts/juno.dts
/rk3399_ARM-atf/include/drivers/measured_boot/rss/rss_measured_boot.h
/rk3399_ARM-atf/include/export/lib/bl_aux_params/bl_aux_params_exp.h
/rk3399_ARM-atf/include/export/lib/utils_def_exp.h
/rk3399_ARM-atf/include/lib/bakery_lock.h
/rk3399_ARM-atf/include/lib/bl_aux_params/bl_aux_params.h
/rk3399_ARM-atf/include/lib/cassert.h
/rk3399_ARM-atf/include/lib/coreboot.h
/rk3399_ARM-atf/include/lib/cpus/aarch32/aem_generic.h
/rk3399_ARM-atf/include/lib/cpus/aarch32/cortex_a12.h
/rk3399_ARM-atf/include/lib/cpus/aarch32/cortex_a15.h
/rk3399_ARM-atf/include/lib/cpus/aarch32/cortex_a17.h
/rk3399_ARM-atf/include/lib/cpus/aarch32/cortex_a32.h
/rk3399_ARM-atf/include/lib/cpus/aarch32/cortex_a5.h
/rk3399_ARM-atf/include/lib/cpus/aarch32/cortex_a53.h
/rk3399_ARM-atf/include/lib/cpus/aarch32/cortex_a57.h
/rk3399_ARM-atf/include/lib/cpus/aarch32/cortex_a7.h
/rk3399_ARM-atf/include/lib/cpus/aarch32/cortex_a72.h
/rk3399_ARM-atf/include/lib/cpus/aarch32/cortex_a9.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/aem_generic.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a35.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a53.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a55.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a57.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a72.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a73.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a75.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a77.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a78.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a78_ae.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cpuamu.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/denver.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/neoverse_e1.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/neoverse_n1.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/neoverse_poseidon.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/neoverse_v1.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/qemu_max.h
/rk3399_ARM-atf/include/lib/cpus/wa_cve_2017_5715.h
/rk3399_ARM-atf/include/lib/cpus/wa_cve_2018_3639.h
/rk3399_ARM-atf/include/lib/cpus/wa_cve_2022_23960.h
/rk3399_ARM-atf/include/lib/el3_runtime/aarch32/context.h
/rk3399_ARM-atf/include/lib/el3_runtime/pubsub_events.h
/rk3399_ARM-atf/include/lib/extensions/amu.h
/rk3399_ARM-atf/include/lib/extensions/pauth.h
/rk3399_ARM-atf/include/lib/extensions/ras.h
/rk3399_ARM-atf/include/lib/extensions/ras_arch.h
/rk3399_ARM-atf/include/lib/fconf/fconf.h
/rk3399_ARM-atf/include/lib/fconf/fconf_tbbr_getter.h
/rk3399_ARM-atf/include/lib/libc/aarch32/endian_.h
/rk3399_ARM-atf/include/lib/libc/aarch32/inttypes_.h
/rk3399_ARM-atf/include/lib/libc/aarch32/limits_.h
/rk3399_ARM-atf/include/lib/libc/aarch32/stddef_.h
/rk3399_ARM-atf/include/lib/libc/aarch32/stdint_.h
/rk3399_ARM-atf/include/lib/libc/aarch32/stdio_.h
/rk3399_ARM-atf/include/lib/libc/aarch64/endian_.h
/rk3399_ARM-atf/include/lib/libc/aarch64/inttypes_.h
/rk3399_ARM-atf/include/lib/libc/aarch64/limits_.h
/rk3399_ARM-atf/include/lib/libc/aarch64/setjmp_.h
/rk3399_ARM-atf/include/lib/libc/aarch64/stddef_.h
/rk3399_ARM-atf/include/lib/libc/aarch64/stdint_.h
/rk3399_ARM-atf/include/lib/libc/aarch64/stdio_.h
/rk3399_ARM-atf/include/lib/libc/arm_acle.h
/rk3399_ARM-atf/include/lib/libc/assert.h
/rk3399_ARM-atf/include/lib/libc/cdefs.h
/rk3399_ARM-atf/include/lib/libc/endian.h
/rk3399_ARM-atf/include/lib/libc/errno.h
/rk3399_ARM-atf/include/lib/libc/inttypes.h
/rk3399_ARM-atf/include/lib/libc/limits.h
/rk3399_ARM-atf/include/lib/libc/setjmp.h
/rk3399_ARM-atf/include/lib/libc/stdarg.h
/rk3399_ARM-atf/include/lib/libc/stdbool.h
/rk3399_ARM-atf/include/lib/libc/stddef.h
/rk3399_ARM-atf/include/lib/libc/stdint.h
/rk3399_ARM-atf/include/lib/libc/stdio.h
/rk3399_ARM-atf/include/lib/libc/stdlib.h
/rk3399_ARM-atf/include/lib/libc/string.h
/rk3399_ARM-atf/include/lib/libc/time.h
/rk3399_ARM-atf/include/lib/mmio.h
/rk3399_ARM-atf/include/lib/object_pool.h
/rk3399_ARM-atf/include/lib/optee_utils.h
/rk3399_ARM-atf/include/lib/pmf/aarch64/pmf_asm_macros.S
/rk3399_ARM-atf/include/lib/pmf/pmf.h
/rk3399_ARM-atf/include/lib/pmf/pmf_helpers.h
/rk3399_ARM-atf/include/lib/psci/psci.h
/rk3399_ARM-atf/include/lib/runtime_instr.h
/rk3399_ARM-atf/include/lib/semihosting.h
/rk3399_ARM-atf/include/lib/smccc.h
/rk3399_ARM-atf/include/lib/spinlock.h
/rk3399_ARM-atf/include/lib/utils.h
/rk3399_ARM-atf/include/lib/utils_def.h
/rk3399_ARM-atf/include/lib/xlat_mpu/xlat_mpu.h
/rk3399_ARM-atf/include/lib/xlat_tables/aarch32/xlat_tables_aarch32.h
/rk3399_ARM-atf/include/lib/xlat_tables/aarch64/xlat_tables_aarch64.h
/rk3399_ARM-atf/include/lib/xlat_tables/xlat_mmu_helpers.h
/rk3399_ARM-atf/include/lib/xlat_tables/xlat_tables.h
/rk3399_ARM-atf/include/lib/xlat_tables/xlat_tables_arch.h
/rk3399_ARM-atf/include/lib/xlat_tables/xlat_tables_compat.h
/rk3399_ARM-atf/include/lib/xlat_tables/xlat_tables_v2.h
/rk3399_ARM-atf/include/lib/xlat_tables/xlat_tables_v2_helpers.h
/rk3399_ARM-atf/include/lib/zlib/tf_gunzip.h
/rk3399_ARM-atf/include/plat/arm/common/fconf_ethosn_getter.h
/rk3399_ARM-atf/include/plat/common/platform.h
/rk3399_ARM-atf/include/tools_share/cca_oid.h
/rk3399_ARM-atf/include/tools_share/dualroot_oid.h
/rk3399_ARM-atf/include/tools_share/tbbr_oid.h
/rk3399_ARM-atf/include/tools_share/zero_oid.h
/rk3399_ARM-atf/lib/aarch32/arm32_aeabi_divmod.c
/rk3399_ARM-atf/lib/aarch32/arm32_aeabi_divmod_a32.S
/rk3399_ARM-atf/lib/aarch32/armclang_printf.S
/rk3399_ARM-atf/lib/aarch32/misc_helpers.S
/rk3399_ARM-atf/lib/aarch64/armclang_printf.S
/rk3399_ARM-atf/lib/bl_aux_params/bl_aux_params.c
/rk3399_ARM-atf/lib/compiler-rt/compiler-rt.mk
/rk3399_ARM-atf/lib/coreboot/coreboot.mk
/rk3399_ARM-atf/lib/coreboot/coreboot_table.c
/rk3399_ARM-atf/lib/cpus/aarch32/aem_generic.S
/rk3399_ARM-atf/lib/cpus/aarch32/cortex_a32.S
/rk3399_ARM-atf/lib/cpus/aarch32/cpu_helpers.S
aem_generic.S
cortex_a75.S
cortex_a75_pubsub.c
cpuamu_helpers.S
neoverse_n1_pubsub.c
wa_cve_2017_5715_bpiall.S
wa_cve_2017_5715_mmu.S
wa_cve_2022_23960_bhb.S
/rk3399_ARM-atf/lib/debugfs/debugfs.mk
/rk3399_ARM-atf/lib/debugfs/debugfs_smc.c
/rk3399_ARM-atf/lib/el3_runtime/aarch32/cpu_data.S
/rk3399_ARM-atf/lib/el3_runtime/aarch64/cpu_data.S
/rk3399_ARM-atf/lib/el3_runtime/cpu_data_array.c
/rk3399_ARM-atf/lib/extensions/amu/aarch32/amu.c
/rk3399_ARM-atf/lib/extensions/amu/aarch32/amu_helpers.S
/rk3399_ARM-atf/lib/extensions/amu/aarch64/amu.c
/rk3399_ARM-atf/lib/extensions/amu/aarch64/amu_helpers.S
/rk3399_ARM-atf/lib/extensions/amu/amu_private.h
/rk3399_ARM-atf/lib/extensions/ras/ras_common.c
/rk3399_ARM-atf/lib/extensions/ras/std_err_record.c
/rk3399_ARM-atf/lib/fconf/fconf.c
/rk3399_ARM-atf/lib/fconf/fconf.mk
/rk3399_ARM-atf/lib/libc/aarch64/setjmp.S
/rk3399_ARM-atf/lib/libc/abort.c
/rk3399_ARM-atf/lib/libc/assert.c
/rk3399_ARM-atf/lib/libc/exit.c
/rk3399_ARM-atf/lib/libc/libc.mk
/rk3399_ARM-atf/lib/libc/memchr.c
/rk3399_ARM-atf/lib/libc/memcmp.c
/rk3399_ARM-atf/lib/libc/memcpy.c
/rk3399_ARM-atf/lib/libc/memcpy_s.c
/rk3399_ARM-atf/lib/libc/memmove.c
/rk3399_ARM-atf/lib/libc/memset.c
/rk3399_ARM-atf/lib/libc/putchar.c
/rk3399_ARM-atf/lib/libc/puts.c
/rk3399_ARM-atf/lib/libc/strchr.c
/rk3399_ARM-atf/lib/libc/strcmp.c
/rk3399_ARM-atf/lib/libc/strlen.c
/rk3399_ARM-atf/lib/libc/strncmp.c
/rk3399_ARM-atf/lib/libc/strnlen.c
/rk3399_ARM-atf/lib/libfdt/libfdt.mk
/rk3399_ARM-atf/lib/locks/bakery/bakery_lock_coherent.c
/rk3399_ARM-atf/lib/locks/bakery/bakery_lock_normal.c
/rk3399_ARM-atf/lib/locks/exclusive/aarch32/spinlock.S
/rk3399_ARM-atf/lib/locks/exclusive/aarch64/spinlock.S
/rk3399_ARM-atf/lib/optee/optee_utils.c
/rk3399_ARM-atf/lib/pmf/pmf_main.c
/rk3399_ARM-atf/lib/pmf/pmf_smc.c
/rk3399_ARM-atf/lib/psci/aarch32/psci_helpers.S
/rk3399_ARM-atf/lib/psci/aarch64/psci_helpers.S
/rk3399_ARM-atf/lib/psci/psci_mem_protect.c
/rk3399_ARM-atf/lib/psci/psci_on.c
/rk3399_ARM-atf/lib/psci/psci_setup.c
/rk3399_ARM-atf/lib/psci/psci_stat.c
/rk3399_ARM-atf/lib/romlib/Makefile
/rk3399_ARM-atf/lib/romlib/gen_combined_bl1_romlib.sh
/rk3399_ARM-atf/lib/romlib/init.s
/rk3399_ARM-atf/lib/romlib/jmptbl.i
/rk3399_ARM-atf/lib/romlib/romlib.ld.S
/rk3399_ARM-atf/lib/semihosting/aarch32/semihosting_call.S
/rk3399_ARM-atf/lib/semihosting/aarch64/semihosting_call.S
/rk3399_ARM-atf/lib/semihosting/semihosting.c
/rk3399_ARM-atf/lib/stack_protector/aarch32/asm_stack_protector.S
/rk3399_ARM-atf/lib/stack_protector/aarch64/asm_stack_protector.S
/rk3399_ARM-atf/lib/stack_protector/stack_protector.c
/rk3399_ARM-atf/lib/stack_protector/stack_protector.mk
/rk3399_ARM-atf/lib/utils/mem_region.c
/rk3399_ARM-atf/lib/xlat_mpu/aarch64/enable_mpu.S
/rk3399_ARM-atf/lib/xlat_mpu/aarch64/xlat_mpu_arch.c
/rk3399_ARM-atf/lib/xlat_mpu/ro_xlat_mpu.mk
/rk3399_ARM-atf/lib/xlat_mpu/xlat_mpu.mk
/rk3399_ARM-atf/lib/xlat_mpu/xlat_mpu_context.c
/rk3399_ARM-atf/lib/xlat_mpu/xlat_mpu_core.c
/rk3399_ARM-atf/lib/xlat_mpu/xlat_mpu_private.h
/rk3399_ARM-atf/lib/xlat_mpu/xlat_mpu_utils.c
/rk3399_ARM-atf/lib/xlat_tables/aarch32/xlat_tables.c
/rk3399_ARM-atf/lib/xlat_tables/aarch64/xlat_tables.c
/rk3399_ARM-atf/lib/xlat_tables/xlat_tables_common.c
/rk3399_ARM-atf/lib/xlat_tables/xlat_tables_private.h
/rk3399_ARM-atf/lib/xlat_tables_v2/aarch32/enable_mmu.S
/rk3399_ARM-atf/lib/xlat_tables_v2/aarch32/xlat_tables_arch.c
/rk3399_ARM-atf/lib/xlat_tables_v2/aarch64/enable_mmu.S
/rk3399_ARM-atf/lib/xlat_tables_v2/ro_xlat_tables.mk
/rk3399_ARM-atf/lib/xlat_tables_v2/xlat_tables.mk
/rk3399_ARM-atf/lib/xlat_tables_v2/xlat_tables_context.c
/rk3399_ARM-atf/lib/zlib/tf_gunzip.c
/rk3399_ARM-atf/lib/zlib/zlib.mk
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_bl1_measured_boot.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_bl2_measured_boot.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_common_measured_boot.c
/rk3399_ARM-atf/plat/arm/board/juno/cert_create_tbbr.mk
/rk3399_ARM-atf/plat/arm/board/juno/fdts/juno_tb_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/juno/fip/plat_def_fip_uuid.h
/rk3399_ARM-atf/plat/arm/board/juno/fip/plat_def_uuid_config.c
/rk3399_ARM-atf/plat/arm/board/juno/include/plat_tbbr_img_def.h
/rk3399_ARM-atf/plat/arm/board/juno/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/juno/juno_tbbr_cot_bl2.c
/rk3399_ARM-atf/plat/arm/board/juno/platform.mk
/rk3399_ARM-atf/plat/arm/board/tc/tc_bl1_measured_boot.c
/rk3399_ARM-atf/plat/arm/board/tc/tc_bl2_measured_boot.c
/rk3399_ARM-atf/plat/arm/board/tc/tc_common_measured_boot.c
/rk3399_ARM-atf/plat/arm/common/aarch64/arm_bl2_mem_params_desc.c
/rk3399_ARM-atf/plat/arm/common/arm_common.mk
/rk3399_ARM-atf/plat/arm/common/arm_sip_svc.c
/rk3399_ARM-atf/plat/arm/common/fconf/arm_fconf_io.c
/rk3399_ARM-atf/plat/imx/imx8m/imx8m_measured_boot.c
/rk3399_ARM-atf/plat/nvidia/tegra/include/lib/profiler.h
/rk3399_ARM-atf/plat/nvidia/tegra/lib/debug/profiler.c
/rk3399_ARM-atf/plat/qemu/qemu/qemu_measured_boot.c
/rk3399_ARM-atf/plat/st/common/bl2_io_storage.c
/rk3399_ARM-atf/plat/st/common/stm32mp_fconf_io.c
/rk3399_ARM-atf/plat/st/stm32mp1/stm32mp1_fip_def.h
/rk3399_ARM-atf/plat/xilinx/common/plat_fdt.c
/rk3399_ARM-atf/plat/xilinx/common/plat_startup.c
/rk3399_ARM-atf/plat/xilinx/versal/aarch64/versal_helpers.S
/rk3399_ARM-atf/plat/xilinx/versal_net/aarch64/versal_net_helpers.S
/rk3399_ARM-atf/plat/xilinx/zynqmp/aarch64/zynqmp_common.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/platform.mk
/rk3399_ARM-atf/plat/xilinx/zynqmp/tsp/tsp_plat_setup.c
/rk3399_ARM-atf/tools/fiptool/plat_fiptool/arm/board/juno/plat_fiptool.mk
4c700c1501-Aug-2023 Govindraj Raja <govindraj.raja@arm.com>

chore: update to use Arm word across TF-A

Align entire TF-A to use Arm in copyright header.

Change-Id: Ief9992169efdab61d0da6bd8c5180de7a4bc2244
Signed-off-by: Govindraj Raja <govindraj.raja@arm.co

chore: update to use Arm word across TF-A

Align entire TF-A to use Arm in copyright header.

Change-Id: Ief9992169efdab61d0da6bd8c5180de7a4bc2244
Signed-off-by: Govindraj Raja <govindraj.raja@arm.com>

show more ...


/rk3399_ARM-atf/docs/design_documents/measured_boot.rst
/rk3399_ARM-atf/docs/design_documents/rss.rst
/rk3399_ARM-atf/drivers/auth/auth_mod.c
/rk3399_ARM-atf/drivers/measured_boot/rss/rss_measured_boot.c
/rk3399_ARM-atf/include/drivers/measured_boot/rss/rss_measured_boot.h
/rk3399_ARM-atf/include/export/lib/bl_aux_params/bl_aux_params_exp.h
/rk3399_ARM-atf/include/export/lib/utils_def_exp.h
/rk3399_ARM-atf/include/lib/bakery_lock.h
/rk3399_ARM-atf/include/lib/bl_aux_params/bl_aux_params.h
/rk3399_ARM-atf/include/lib/cassert.h
/rk3399_ARM-atf/include/lib/coreboot.h
/rk3399_ARM-atf/include/lib/cpus/aarch32/aem_generic.h
/rk3399_ARM-atf/include/lib/cpus/aarch32/cortex_a12.h
/rk3399_ARM-atf/include/lib/cpus/aarch32/cortex_a15.h
/rk3399_ARM-atf/include/lib/cpus/aarch32/cortex_a17.h
/rk3399_ARM-atf/include/lib/cpus/aarch32/cortex_a32.h
/rk3399_ARM-atf/include/lib/cpus/aarch32/cortex_a5.h
/rk3399_ARM-atf/include/lib/cpus/aarch32/cortex_a53.h
/rk3399_ARM-atf/include/lib/cpus/aarch32/cortex_a57.h
/rk3399_ARM-atf/include/lib/cpus/aarch32/cortex_a7.h
/rk3399_ARM-atf/include/lib/cpus/aarch32/cortex_a72.h
/rk3399_ARM-atf/include/lib/cpus/aarch32/cortex_a9.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/aem_generic.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a35.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a53.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a55.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a57.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a72.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a73.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a75.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a77.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a78.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a78_ae.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cpuamu.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/denver.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/neoverse_e1.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/neoverse_n1.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/neoverse_poseidon.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/neoverse_v1.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/qemu_max.h
/rk3399_ARM-atf/include/lib/cpus/wa_cve_2017_5715.h
/rk3399_ARM-atf/include/lib/cpus/wa_cve_2018_3639.h
/rk3399_ARM-atf/include/lib/cpus/wa_cve_2022_23960.h
/rk3399_ARM-atf/include/lib/el3_runtime/aarch32/context.h
/rk3399_ARM-atf/include/lib/el3_runtime/pubsub_events.h
/rk3399_ARM-atf/include/lib/extensions/amu.h
/rk3399_ARM-atf/include/lib/extensions/pauth.h
/rk3399_ARM-atf/include/lib/extensions/ras.h
/rk3399_ARM-atf/include/lib/extensions/ras_arch.h
/rk3399_ARM-atf/include/lib/fconf/fconf.h
/rk3399_ARM-atf/include/lib/fconf/fconf_tbbr_getter.h
/rk3399_ARM-atf/include/lib/libc/aarch32/endian_.h
/rk3399_ARM-atf/include/lib/libc/aarch32/inttypes_.h
/rk3399_ARM-atf/include/lib/libc/aarch32/limits_.h
/rk3399_ARM-atf/include/lib/libc/aarch32/stddef_.h
/rk3399_ARM-atf/include/lib/libc/aarch32/stdint_.h
/rk3399_ARM-atf/include/lib/libc/aarch32/stdio_.h
/rk3399_ARM-atf/include/lib/libc/aarch64/endian_.h
/rk3399_ARM-atf/include/lib/libc/aarch64/inttypes_.h
/rk3399_ARM-atf/include/lib/libc/aarch64/limits_.h
/rk3399_ARM-atf/include/lib/libc/aarch64/setjmp_.h
/rk3399_ARM-atf/include/lib/libc/aarch64/stddef_.h
/rk3399_ARM-atf/include/lib/libc/aarch64/stdint_.h
/rk3399_ARM-atf/include/lib/libc/aarch64/stdio_.h
/rk3399_ARM-atf/include/lib/libc/arm_acle.h
/rk3399_ARM-atf/include/lib/libc/assert.h
/rk3399_ARM-atf/include/lib/libc/cdefs.h
/rk3399_ARM-atf/include/lib/libc/endian.h
/rk3399_ARM-atf/include/lib/libc/errno.h
/rk3399_ARM-atf/include/lib/libc/inttypes.h
/rk3399_ARM-atf/include/lib/libc/limits.h
/rk3399_ARM-atf/include/lib/libc/setjmp.h
/rk3399_ARM-atf/include/lib/libc/stdarg.h
/rk3399_ARM-atf/include/lib/libc/stdbool.h
/rk3399_ARM-atf/include/lib/libc/stddef.h
/rk3399_ARM-atf/include/lib/libc/stdint.h
/rk3399_ARM-atf/include/lib/libc/stdio.h
/rk3399_ARM-atf/include/lib/libc/stdlib.h
/rk3399_ARM-atf/include/lib/libc/string.h
/rk3399_ARM-atf/include/lib/libc/time.h
/rk3399_ARM-atf/include/lib/mmio.h
/rk3399_ARM-atf/include/lib/object_pool.h
/rk3399_ARM-atf/include/lib/optee_utils.h
/rk3399_ARM-atf/include/lib/pmf/aarch64/pmf_asm_macros.S
/rk3399_ARM-atf/include/lib/pmf/pmf.h
/rk3399_ARM-atf/include/lib/pmf/pmf_helpers.h
/rk3399_ARM-atf/include/lib/psci/psci.h
/rk3399_ARM-atf/include/lib/runtime_instr.h
/rk3399_ARM-atf/include/lib/semihosting.h
/rk3399_ARM-atf/include/lib/smccc.h
/rk3399_ARM-atf/include/lib/spinlock.h
/rk3399_ARM-atf/include/lib/utils.h
/rk3399_ARM-atf/include/lib/utils_def.h
/rk3399_ARM-atf/include/lib/xlat_mpu/xlat_mpu.h
/rk3399_ARM-atf/include/lib/xlat_tables/aarch32/xlat_tables_aarch32.h
/rk3399_ARM-atf/include/lib/xlat_tables/aarch64/xlat_tables_aarch64.h
/rk3399_ARM-atf/include/lib/xlat_tables/xlat_mmu_helpers.h
/rk3399_ARM-atf/include/lib/xlat_tables/xlat_tables.h
/rk3399_ARM-atf/include/lib/xlat_tables/xlat_tables_arch.h
/rk3399_ARM-atf/include/lib/xlat_tables/xlat_tables_compat.h
/rk3399_ARM-atf/include/lib/xlat_tables/xlat_tables_v2.h
/rk3399_ARM-atf/include/lib/xlat_tables/xlat_tables_v2_helpers.h
/rk3399_ARM-atf/include/lib/zlib/tf_gunzip.h
/rk3399_ARM-atf/include/plat/common/platform.h
/rk3399_ARM-atf/include/tools_share/cca_oid.h
/rk3399_ARM-atf/include/tools_share/dualroot_oid.h
/rk3399_ARM-atf/include/tools_share/tbbr_oid.h
/rk3399_ARM-atf/include/tools_share/zero_oid.h
/rk3399_ARM-atf/lib/aarch32/arm32_aeabi_divmod.c
/rk3399_ARM-atf/lib/aarch32/arm32_aeabi_divmod_a32.S
/rk3399_ARM-atf/lib/aarch32/armclang_printf.S
/rk3399_ARM-atf/lib/aarch32/misc_helpers.S
/rk3399_ARM-atf/lib/aarch64/armclang_printf.S
/rk3399_ARM-atf/lib/bl_aux_params/bl_aux_params.c
/rk3399_ARM-atf/lib/compiler-rt/compiler-rt.mk
/rk3399_ARM-atf/lib/coreboot/coreboot.mk
/rk3399_ARM-atf/lib/coreboot/coreboot_table.c
/rk3399_ARM-atf/lib/cpus/aarch32/aem_generic.S
/rk3399_ARM-atf/lib/cpus/aarch32/cortex_a32.S
/rk3399_ARM-atf/lib/cpus/aarch32/cpu_helpers.S
aem_generic.S
cortex_a75.S
cortex_a75_pubsub.c
cpuamu_helpers.S
neoverse_n1_pubsub.c
wa_cve_2017_5715_bpiall.S
wa_cve_2017_5715_mmu.S
wa_cve_2022_23960_bhb.S
/rk3399_ARM-atf/lib/debugfs/debugfs.mk
/rk3399_ARM-atf/lib/debugfs/debugfs_smc.c
/rk3399_ARM-atf/lib/el3_runtime/aarch32/cpu_data.S
/rk3399_ARM-atf/lib/el3_runtime/aarch64/cpu_data.S
/rk3399_ARM-atf/lib/el3_runtime/cpu_data_array.c
/rk3399_ARM-atf/lib/extensions/amu/aarch32/amu.c
/rk3399_ARM-atf/lib/extensions/amu/aarch32/amu_helpers.S
/rk3399_ARM-atf/lib/extensions/amu/aarch64/amu.c
/rk3399_ARM-atf/lib/extensions/amu/aarch64/amu_helpers.S
/rk3399_ARM-atf/lib/extensions/amu/amu_private.h
/rk3399_ARM-atf/lib/extensions/ras/ras_common.c
/rk3399_ARM-atf/lib/extensions/ras/std_err_record.c
/rk3399_ARM-atf/lib/fconf/fconf.c
/rk3399_ARM-atf/lib/fconf/fconf.mk
/rk3399_ARM-atf/lib/libc/aarch64/setjmp.S
/rk3399_ARM-atf/lib/libc/abort.c
/rk3399_ARM-atf/lib/libc/assert.c
/rk3399_ARM-atf/lib/libc/exit.c
/rk3399_ARM-atf/lib/libc/libc.mk
/rk3399_ARM-atf/lib/libc/memchr.c
/rk3399_ARM-atf/lib/libc/memcmp.c
/rk3399_ARM-atf/lib/libc/memcpy.c
/rk3399_ARM-atf/lib/libc/memcpy_s.c
/rk3399_ARM-atf/lib/libc/memmove.c
/rk3399_ARM-atf/lib/libc/memset.c
/rk3399_ARM-atf/lib/libc/putchar.c
/rk3399_ARM-atf/lib/libc/puts.c
/rk3399_ARM-atf/lib/libc/strchr.c
/rk3399_ARM-atf/lib/libc/strcmp.c
/rk3399_ARM-atf/lib/libc/strlen.c
/rk3399_ARM-atf/lib/libc/strncmp.c
/rk3399_ARM-atf/lib/libc/strnlen.c
/rk3399_ARM-atf/lib/libfdt/libfdt.mk
/rk3399_ARM-atf/lib/locks/bakery/bakery_lock_coherent.c
/rk3399_ARM-atf/lib/locks/bakery/bakery_lock_normal.c
/rk3399_ARM-atf/lib/locks/exclusive/aarch32/spinlock.S
/rk3399_ARM-atf/lib/locks/exclusive/aarch64/spinlock.S
/rk3399_ARM-atf/lib/optee/optee_utils.c
/rk3399_ARM-atf/lib/pmf/pmf_main.c
/rk3399_ARM-atf/lib/pmf/pmf_smc.c
/rk3399_ARM-atf/lib/psci/aarch32/psci_helpers.S
/rk3399_ARM-atf/lib/psci/aarch64/psci_helpers.S
/rk3399_ARM-atf/lib/psci/psci_mem_protect.c
/rk3399_ARM-atf/lib/psci/psci_on.c
/rk3399_ARM-atf/lib/psci/psci_setup.c
/rk3399_ARM-atf/lib/psci/psci_stat.c
/rk3399_ARM-atf/lib/romlib/Makefile
/rk3399_ARM-atf/lib/romlib/gen_combined_bl1_romlib.sh
/rk3399_ARM-atf/lib/romlib/init.s
/rk3399_ARM-atf/lib/romlib/jmptbl.i
/rk3399_ARM-atf/lib/romlib/romlib.ld.S
/rk3399_ARM-atf/lib/semihosting/aarch32/semihosting_call.S
/rk3399_ARM-atf/lib/semihosting/aarch64/semihosting_call.S
/rk3399_ARM-atf/lib/semihosting/semihosting.c
/rk3399_ARM-atf/lib/stack_protector/aarch32/asm_stack_protector.S
/rk3399_ARM-atf/lib/stack_protector/aarch64/asm_stack_protector.S
/rk3399_ARM-atf/lib/stack_protector/stack_protector.c
/rk3399_ARM-atf/lib/stack_protector/stack_protector.mk
/rk3399_ARM-atf/lib/utils/mem_region.c
/rk3399_ARM-atf/lib/xlat_mpu/aarch64/enable_mpu.S
/rk3399_ARM-atf/lib/xlat_mpu/aarch64/xlat_mpu_arch.c
/rk3399_ARM-atf/lib/xlat_mpu/ro_xlat_mpu.mk
/rk3399_ARM-atf/lib/xlat_mpu/xlat_mpu.mk
/rk3399_ARM-atf/lib/xlat_mpu/xlat_mpu_context.c
/rk3399_ARM-atf/lib/xlat_mpu/xlat_mpu_core.c
/rk3399_ARM-atf/lib/xlat_mpu/xlat_mpu_private.h
/rk3399_ARM-atf/lib/xlat_mpu/xlat_mpu_utils.c
/rk3399_ARM-atf/lib/xlat_tables/aarch32/xlat_tables.c
/rk3399_ARM-atf/lib/xlat_tables/aarch64/xlat_tables.c
/rk3399_ARM-atf/lib/xlat_tables/xlat_tables_common.c
/rk3399_ARM-atf/lib/xlat_tables/xlat_tables_private.h
/rk3399_ARM-atf/lib/xlat_tables_v2/aarch32/enable_mmu.S
/rk3399_ARM-atf/lib/xlat_tables_v2/aarch32/xlat_tables_arch.c
/rk3399_ARM-atf/lib/xlat_tables_v2/aarch64/enable_mmu.S
/rk3399_ARM-atf/lib/xlat_tables_v2/ro_xlat_tables.mk
/rk3399_ARM-atf/lib/xlat_tables_v2/xlat_tables.mk
/rk3399_ARM-atf/lib/xlat_tables_v2/xlat_tables_context.c
/rk3399_ARM-atf/lib/zlib/tf_gunzip.c
/rk3399_ARM-atf/lib/zlib/zlib.mk
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_bl1_measured_boot.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_bl2_measured_boot.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_common_measured_boot.c
/rk3399_ARM-atf/plat/arm/board/tc/tc_bl1_measured_boot.c
/rk3399_ARM-atf/plat/arm/board/tc/tc_bl2_measured_boot.c
/rk3399_ARM-atf/plat/arm/board/tc/tc_common_measured_boot.c
/rk3399_ARM-atf/plat/imx/imx8m/imx8m_measured_boot.c
/rk3399_ARM-atf/plat/nvidia/tegra/include/lib/profiler.h
/rk3399_ARM-atf/plat/nvidia/tegra/lib/debug/profiler.c
/rk3399_ARM-atf/plat/qemu/qemu/qemu_measured_boot.c
/rk3399_ARM-atf/plat/xilinx/common/plat_fdt.c
/rk3399_ARM-atf/plat/xilinx/common/plat_startup.c
/rk3399_ARM-atf/plat/xilinx/versal/aarch64/versal_helpers.S
/rk3399_ARM-atf/plat/xilinx/versal_net/aarch64/versal_net_helpers.S
/rk3399_ARM-atf/plat/xilinx/zynqmp/aarch64/zynqmp_common.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/platform.mk
/rk3399_ARM-atf/plat/xilinx/zynqmp/tsp/tsp_plat_setup.c
9a0c812507-Aug-2023 Sona Mathew <SonaRebecca.Mathew@arm.com>

fix(cpus): revert erroneous use of override_vector_table macro in Cortex-A73

override_vector_table does adr, followed by an msr ops.
Accidentally was used here for for adr and mrs op.

Signed-off-by

fix(cpus): revert erroneous use of override_vector_table macro in Cortex-A73

override_vector_table does adr, followed by an msr ops.
Accidentally was used here for for adr and mrs op.

Signed-off-by: Sona Mathew <SonaRebecca.Mathew@arm.com>
Change-Id: I2d3fda12acd097acabbde9b7dcc376d08419e223

show more ...

7b1e8c1c04-May-2023 Harrison Mutai <harrison.mutai@arm.com>

refactor(cpus): convert the Cortex-A710 to use cpu helpers

Signed-off-by: Harrison Mutai <harrison.mutai@arm.com>
Change-Id: I5e928f139c2e9fa91c78947cf6a8bff546f7be05

d16a90d426-Apr-2023 Harrison Mutai <harrison.mutai@arm.com>

refactor(cpus): convert Cortex-A710 to use the errata framework

This involves replacing:
* the reset_func with the standard cpu_reset_func_{start,end} to apply
errata automatically
* the <cpu>_

refactor(cpus): convert Cortex-A710 to use the errata framework

This involves replacing:
* the reset_func with the standard cpu_reset_func_{start,end} to apply
errata automatically
* the <cpu>_errata_report with the errata_report_shim to report errata
automatically
...and for each erratum:
* the prologue with the workaround_<type>_start to do the checks and
framework registration automatically
* the epilogue with the workaround_<type>_end
* the checker function with the check_erratum_<type> to make it more
descriptive

It is important to note that the errata workaround and checking
sequences remain unchanged and preserve their git blame. Testing was
conducted by:

* Building for release with all errata flags enabled and running script
in change 19136 to compare output of objdump for each errata.
* Manual comparison of disassembly of converted functions with non-
converted functions
* Build for debug with all errata enabled and step through ArmDS
at reset to ensure all functions are entered.

Signed-off-by: Harrison Mutai <harrison.mutai@arm.com>
Change-Id: I417539ab292f13a4f0949625d2fef6b7792fbd35

show more ...

d25136da25-Apr-2023 Harrison Mutai <harrison.mutai@arm.com>

refactor(cpus): reorder Cortex-A710 errata by ascending order

Errata report order is enforced to be in ascending order. To achieve
this with the errata framework this has to be done at the definitio

refactor(cpus): reorder Cortex-A710 errata by ascending order

Errata report order is enforced to be in ascending order. To achieve
this with the errata framework this has to be done at the definition
level.

Change-Id: I4a6ed55d48e91ec914b7a591c6d30da5ce5d915d
Signed-off-by: Harrison Mutai <harrison.mutai@arm.com>

show more ...

bfd8560004-Aug-2023 Bipin Ravi <bipin.ravi@arm.com>

Merge changes from topic "sm/errata_refactor" into integration

* changes:
refactor(cpus): convert Cortex-A15 to use the errata framework
refactor(cpus): convert the Cortex-X3 to use the cpu help

Merge changes from topic "sm/errata_refactor" into integration

* changes:
refactor(cpus): convert Cortex-A15 to use the errata framework
refactor(cpus): convert the Cortex-X3 to use the cpu helpers
refactor(cpus): convert Cortex-X3 to use the errata framework
refactor(cpus): reorder Cortex-X3 errata by ascending order
refactor(cpus): convert the Cortex-A73 to use the cpu helpers
refactor(cpus): convert Cortex-A73 to use the errata framework
refactor(cpus): reorder Cortex-A73 errata by ascending order
refactor(cpus): convert the Cortex-A35 to use the cpu helpers
refactor(cpus): convert Cortex-A35 to use the errata framework

show more ...

f99a481020-Jun-2023 Sona Mathew <SonaRebecca.Mathew@arm.com>

refactor(cpus): convert the Cortex-X3 to use the cpu helpers

Change-Id: I922d3d0e81deb5ff7d89aaa1e7a96ef72d3d6943
Signed-off-by: Sona Mathew <SonaRebecca.Mathew@arm.com>

1a9d5d1e20-Jun-2023 Sona Mathew <SonaRebecca.Mathew@arm.com>

refactor(cpus): convert Cortex-X3 to use the errata framework

This involves replacing:
* the reset_func with the standard cpu_reset_func_{start,end} to apply
errata automatically
* the <cpu>_er

refactor(cpus): convert Cortex-X3 to use the errata framework

This involves replacing:
* the reset_func with the standard cpu_reset_func_{start,end} to apply
errata automatically
* the <cpu>_errata_report with the errata_report_shim to report errata
automatically
...and for each erratum:
* the prologue with the workaround_<type>_start to do the checks and
framework registration automatically
* the epilogue with the workaround_<type>_end
* the checker function with the check_erratum_<type> to make it more
descriptive

* Manual comparison of disassembly of converted functions with non-
converted functions.

aarch64-none-elf-objdump -D <TF-A with
conversion>/build/../release/bl31/bl31.elf
vs
aarch64-none-elf-objdump -D <TF-A clean
repo>/build/fvp/release/bl31/bl31.elf

* Build for debug with all errata enabled and step through ArmDS
at reset to ensure all functions are entered.

Change-Id: I62e030962edf4e8e8be2c19e7a3176e319468c50
Signed-off-by: Sona Mathew <SonaRebecca.Mathew@arm.com>

show more ...

2975bc0c20-Jun-2023 Sona Mathew <SonaRebecca.Mathew@arm.com>

refactor(cpus): reorder Cortex-X3 errata by ascending order

Errata report order is enforced to be in ascending order. To achieve
this with the errata framework this has to be done at the definition

refactor(cpus): reorder Cortex-X3 errata by ascending order

Errata report order is enforced to be in ascending order. To achieve
this with the errata framework this has to be done at the definition
level.

Change-Id: I168bf99be0cb0b046d6b641c855f9241991bb0bc
Signed-off-by: Sona Mathew <SonaRebecca.Mathew@arm.com>

show more ...

51e9eb1020-Jun-2023 Sona Mathew <SonaRebecca.Mathew@arm.com>

refactor(cpus): convert the Cortex-A73 to use the cpu helpers

Change-Id: I910c657b3064b8e19eb84656109074ddf0e4ece8
Signed-off-by: Sona Mathew <SonaRebecca.Mathew@arm.com>

7711223d19-Jun-2023 Sona Mathew <SonaRebecca.Mathew@arm.com>

refactor(cpus): convert Cortex-A73 to use the errata framework

This involves replacing:
* the reset_func with the standard cpu_reset_func_{start,end} to apply
errata automatically
* the <cpu>_e

refactor(cpus): convert Cortex-A73 to use the errata framework

This involves replacing:
* the reset_func with the standard cpu_reset_func_{start,end} to apply
errata automatically
* the <cpu>_errata_report with the errata_report_shim to report errata
automatically
...and for each erratum:
* the prologue with the workaround_<type>_start to do the checks and
framework registration automatically
* the epilogue with the workaround_<type>_end
* the checker function with the check_erratum_<type> to make it more
descriptive

It is important to note that the errata workaround and checking
sequences remain unchanged and preserve their git blame. Testing was
conducted by:

* Manual comparison of disassembly of converted functions with non-
converted functions.

aarch64-none-elf-objdump -D <TF-A with
conversion>/build/../release/bl31/bl31.elf
vs
aarch64-none-elf-objdump -D <TF-A clean
repo>/build/fvp/release/bl31/bl31.elf

* Build for release with all errata flags enabled and compare
the disassembly of converted functions with non-converted
functions.
CROSS_COMPILE=aarch64-none-elf- make PLAT=fvp DEBUG=0 \
HW_ASSISTED_COHERENCY=0 BL33=<tf-a-tests>/build/fvp/debug/tftf.bin \
all fip ERRATA_A73_852427=1 \
ERRATA_A73_855423=1 \
WORKAROUND_CVE_2017_5715=1 \
WORKAROUND_CVE_2018_3639=1 \
WORKAROUND_CVE_2022_23960=1

* Build for debug with all errata enabled and step through ArmDS
at reset to ensure all functions are entered.

Change-Id: I63e5b2cc42e1e12daee0b727770cbc19ba729ff7
Signed-off-by: Sona Mathew <SonaRebecca.Mathew@arm.com>

show more ...

1...<<11121314151617181920>>...34