]> git.baikalelectronics.ru Git - arm-tf.git/log
arm-tf.git
2 years agoMerge "feat(drtm): add DRTM parameters structure version check" into integration
Manish Pandey [Thu, 3 Nov 2022 16:56:35 +0000 (17:56 +0100)]
Merge "feat(drtm): add DRTM parameters structure version check" into integration

2 years agofeat(drtm): add DRTM parameters structure version check
Manish V Badarkhe [Wed, 21 Sep 2022 09:04:16 +0000 (10:04 +0100)]
feat(drtm): add DRTM parameters structure version check

Added DRTM parameters structure version check that as per
the current released DRTM specification [1].

Mainly to cater below mentioned in the specification [1]
section 3.12 -
For a given DRTM major version number this structure will
always be extended in a backwards compatible manner.

[1]: https://developer.arm.com/documentation/den0113/a

Change-Id: I9f312c7f9f20152c5d7e40a22b462c7fe8db70bc
Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
2 years agoMerge changes from topic "el3-spmc" into integration
Olivier Deprez [Wed, 2 Nov 2022 18:47:31 +0000 (19:47 +0100)]
Merge changes from topic "el3-spmc" into integration

* changes:
  fix(el3-spmc): error handling in allocation
  fix(el3-spmc): deadlock when relinquishing memory
  fix(el3-spmc): compute full FF-A V1.1 desc size

2 years agoMerge "chore(docs): update supported FVP models doc" into integration
Manish V Badarkhe [Wed, 2 Nov 2022 14:51:49 +0000 (15:51 +0100)]
Merge "chore(docs): update supported FVP models doc" into integration

2 years agofix(el3-spmc): error handling in allocation
vallau01 [Tue, 9 Aug 2022 16:03:28 +0000 (18:03 +0200)]
fix(el3-spmc): error handling in allocation

Error check must be done on the previously allocated pointer, not a
random one from the code.

Change-Id: I1c8253eacbe778cc4a9a8d71081fc615fa7e5293
Signed-off-by: Lukas Hanel <lukas.hanel@trustonic.com>
2 years agofix(el3-spmc): deadlock when relinquishing memory
vallau01 [Tue, 9 Aug 2022 15:06:53 +0000 (17:06 +0200)]
fix(el3-spmc): deadlock when relinquishing memory

Do not forget to pass via err_unlock_mailbox: label.

Change-Id: Icfb997b1c7cce196003af2c28bffc50dc73e30b4
Signed-off-by: Lukas Hanel <lukas.hanel@trustonic.com>
2 years agofix(el3-spmc): compute full FF-A V1.1 desc size
vallau01 [Mon, 8 Aug 2022 12:10:14 +0000 (14:10 +0200)]
fix(el3-spmc): compute full FF-A V1.1 desc size

This patch fixes an issue in spmc_ffa_fill_desc.

In order to compute the spmc_shm_get_v1_1_descriptor_size,
fragment_length which is a fraction of the descriptor size is used as
desc_size parameter. It has to be replaced with the
full V1.0 descriptor size(obj->desc_filled).

Ran a subset of our tests and they are passing.

Change-Id: Ia4bbc5dabf0b77fa53d923ff609ee48ecd5bf549
Signed-off-by: vallau01 <valentin.laurent@trustonic.com>
Signed-off-by: Lukas Hanel <lukas.hanel@trustonic.com>
2 years agoMerge "feat(imx8mm): add BL31 PIE support" into integration
Madhukar Pappireddy [Tue, 1 Nov 2022 14:16:07 +0000 (15:16 +0100)]
Merge "feat(imx8mm): add BL31 PIE support" into integration

2 years agoMerge "refactor(imx8mm): introduce BL2_SIZE and BL31_SIZE" into integration
Madhukar Pappireddy [Tue, 1 Nov 2022 14:16:03 +0000 (15:16 +0100)]
Merge "refactor(imx8mm): introduce BL2_SIZE and BL31_SIZE" into integration

2 years agoMerge "refactor(imx8mm): make use of setup_page_tables()" into integration
Madhukar Pappireddy [Tue, 1 Nov 2022 14:15:52 +0000 (15:15 +0100)]
Merge "refactor(imx8mm): make use of setup_page_tables()" into integration

2 years agoMerge "refactor(imx8mm): cleanup the mmap region settings" into integration
Madhukar Pappireddy [Tue, 1 Nov 2022 14:15:45 +0000 (15:15 +0100)]
Merge "refactor(imx8mm): cleanup the mmap region settings" into integration

2 years agoMerge "feat(imx8mn): add BL31 PIE support" into integration
Madhukar Pappireddy [Tue, 1 Nov 2022 14:15:04 +0000 (15:15 +0100)]
Merge "feat(imx8mn): add BL31 PIE support" into integration

2 years agoMerge "refactor(imx8mn): introduce BL31_SIZE" into integration
Madhukar Pappireddy [Tue, 1 Nov 2022 14:14:58 +0000 (15:14 +0100)]
Merge "refactor(imx8mn): introduce BL31_SIZE" into integration

2 years agoMerge "refactor(imx8mn): make use of setup_page_tables()" into integration
Madhukar Pappireddy [Tue, 1 Nov 2022 14:14:53 +0000 (15:14 +0100)]
Merge "refactor(imx8mn): make use of setup_page_tables()" into integration

2 years agoMerge "refactor(imx8mn): cleanup the mmap region settings" into integration
Madhukar Pappireddy [Tue, 1 Nov 2022 14:14:48 +0000 (15:14 +0100)]
Merge "refactor(imx8mn): cleanup the mmap region settings" into integration

2 years agoMerge "feat(imx8mp): add BL31 PIE support" into integration
Madhukar Pappireddy [Tue, 1 Nov 2022 14:14:41 +0000 (15:14 +0100)]
Merge "feat(imx8mp): add BL31 PIE support" into integration

2 years agoMerge "refactor(imx8mp): introduce BL2_SIZE and BL31_SIZE" into integration
Madhukar Pappireddy [Tue, 1 Nov 2022 14:14:36 +0000 (15:14 +0100)]
Merge "refactor(imx8mp): introduce BL2_SIZE and BL31_SIZE" into integration

2 years agoMerge "refactor(imx8mp): make use of setup_page_tables()" into integration
Madhukar Pappireddy [Tue, 1 Nov 2022 14:14:30 +0000 (15:14 +0100)]
Merge "refactor(imx8mp): make use of setup_page_tables()" into integration

2 years agoMerge "refactor(imx8mp): cleanup the mmap region settings" into integration
Madhukar Pappireddy [Tue, 1 Nov 2022 14:14:25 +0000 (15:14 +0100)]
Merge "refactor(imx8mp): cleanup the mmap region settings" into integration

2 years agoMerge "feat(imx8m): make psci common code pie compatible" into integration
Madhukar Pappireddy [Tue, 1 Nov 2022 14:14:16 +0000 (15:14 +0100)]
Merge "feat(imx8m): make psci common code pie compatible" into integration

2 years agoMerge "fix(imx8m): fix dram retention fsp_table access" into integration
Madhukar Pappireddy [Tue, 1 Nov 2022 14:14:10 +0000 (15:14 +0100)]
Merge "fix(imx8m): fix dram retention fsp_table access" into integration

2 years agoMerge "fix(mediatek): switch console to runtime state before leaving BL31" into integ...
Manish Pandey [Tue, 1 Nov 2022 11:44:02 +0000 (12:44 +0100)]
Merge "fix(mediatek): switch console to runtime state before leaving BL31" into integration

2 years agochore(docs): update supported FVP models doc
laurenw-arm [Wed, 14 Sep 2022 20:44:42 +0000 (15:44 -0500)]
chore(docs): update supported FVP models doc

Update supported models list according to changes for v2.8 release in
ci/tf-a-ci-scripts repository

Signed-off-by: Lauren Wehrmeister <lauren.wehrmeister@arm.com>
Change-Id: Ica7e062db77237220bcd861837f392496db1653a

2 years agoMerge "build: deprecate Arm rdn1edge and sgi575 FVP platforms" into integration
Manish Pandey [Mon, 31 Oct 2022 10:23:45 +0000 (11:23 +0100)]
Merge "build: deprecate Arm rdn1edge and sgi575 FVP platforms" into integration

2 years agoMerge changes from topic "db/deps" into integration
Manish V Badarkhe [Fri, 28 Oct 2022 13:56:28 +0000 (15:56 +0200)]
Merge changes from topic "db/deps" into integration

* changes:
  feat(compiler-rt): update compiler-rt source files
  fix(deps): add missing aeabi_memcpy.S
  feat(zlib): update zlib source files
  docs(changelog): add zlib and compiler-rt scope
  feat(libfdt): upgrade libfdt source files
  docs(prerequisites): upgrade to Mbed TLS 2.28.1

2 years agoMerge changes from topic "ffa_el3_spmc" into integration
Olivier Deprez [Fri, 28 Oct 2022 08:22:39 +0000 (10:22 +0200)]
Merge changes from topic "ffa_el3_spmc" into integration

* changes:
  docs(spm): add threat model for el3 spmc
  docs(spm): add design documentation

2 years agoMerge "fix(aarch64): make AArch64 FGT feature detection more robust" into integration
Sandrine Bailleux [Fri, 28 Oct 2022 06:15:46 +0000 (08:15 +0200)]
Merge "fix(aarch64): make AArch64 FGT feature detection more robust" into integration

2 years agoMerge changes I7d3a97df,I5935b4bc,I9a325c5b,Ie29bd3a5,Iebb90cf2 into integration
Bipin Ravi [Thu, 27 Oct 2022 17:21:46 +0000 (19:21 +0200)]
Merge changes I7d3a97df,I5935b4bc,I9a325c5b,Ie29bd3a5,Iebb90cf2 into integration

* changes:
  fix(cpus): workaround for Cortex-A710 erratum 2291219
  fix(cpus): workaround for Cortex-X3 erratum 2313909
  fix(cpus): workaround for Neoverse-N2 erratum 2326639
  fix(rpi3): tighten platform pwr_domain_pwr_down_wfi behaviour
  chore: rename Makalu ELP to Cortex-X3

2 years agoMerge "fix(imx8m): update poweroff related SNVS_LPCR bits only" into integration
Madhukar Pappireddy [Thu, 27 Oct 2022 13:24:57 +0000 (15:24 +0200)]
Merge "fix(imx8m): update poweroff related SNVS_LPCR bits only" into integration

2 years agofix(cpus): workaround for Cortex-A710 erratum 2291219
Boyan Karatotev [Mon, 3 Oct 2022 13:21:28 +0000 (14:21 +0100)]
fix(cpus): workaround for Cortex-A710 erratum 2291219

Cortex-A710 erratum 2291219 is a Cat B erratum that applies to revisions
r0p0, r1p0, and r2p0, and is fixed in r2p1. The workaround is to set
CPUACTLR2_EL1[36] to 1 before the power down sequence that sets
CORE_PWRDN_EN. This allows the cpu to retry the power down and prevents
the deadlock. TF-A never clears this bit even if it wakes up from the
wfi in the sequence since it is not expected to do anything but retry to
power down after and the bit is cleared on reset.

SDEN can be found here:
https://developer.arm.com/documentation/SDEN1775101/latest

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

2 years agofix(cpus): workaround for Cortex-X3 erratum 2313909
Boyan Karatotev [Mon, 3 Oct 2022 13:18:28 +0000 (14:18 +0100)]
fix(cpus): workaround for Cortex-X3 erratum 2313909

Cortex-X3 erratum 2313909 is a Cat B erratum that applies to revisions
r0p0 and r1p0, and is fixed in r1p1. The workaround is to set
CPUACTLR2_EL1[36] to 1 before the power down sequence that sets
CORE_PWRDN_EN. This allows the cpu to retry the power down and prevents
the deadlock. TF-A never clears this bit even if it wakes up from the
wfi in the sequence since it is not expected to do anything but retry to
power down after and the bit is cleared on reset.

SDEN can be found here:
https://developer.arm.com/documentation/SDEN2055130/latest

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

2 years agofix(cpus): workaround for Neoverse-N2 erratum 2326639
Boyan Karatotev [Mon, 3 Oct 2022 13:07:08 +0000 (14:07 +0100)]
fix(cpus): workaround for Neoverse-N2 erratum 2326639

Neoverse-N2 erratum 2326639 is a Cat B erratum that applies to revision
r0p0 and is fixed in r0p1. The workaround is to set CPUACTLR2_EL1[36] to
1 before the power down sequence that sets CORE_PWRDN_EN. This allows
the cpu to retry the power down and prevents the deadlock. TF-A never
clears this bit even if it wakes up from the wfi in the sequence since
it is not expected to do anything but retry to power down after and the
bit is cleared on reset.

SDEN can be found here:
https://developer.arm.com/documentation/SDEN1982442/latest/

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

2 years agofix(rpi3): tighten platform pwr_domain_pwr_down_wfi behaviour
Boyan Karatotev [Wed, 5 Oct 2022 12:41:56 +0000 (13:41 +0100)]
fix(rpi3): tighten platform pwr_domain_pwr_down_wfi behaviour

Platforms which implement pwr_domain_pwr_down_wfi differ substantially
in behaviour. However, different cpus require similar sequences to power
down. This patch tightens the behaviour of these platforms to end on a
wfi loop after performing platform power down. This is required so that
platforms behave more consistently on power down, in cases where the wfi
can fall through.

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

2 years agodocs(spm): add threat model for el3 spmc
Shruti Gupta [Tue, 27 Sep 2022 13:21:13 +0000 (14:21 +0100)]
docs(spm): add threat model for el3 spmc

Threat model for EL3 SPMC.
The mitigations are based on the guidance
provided in FF-A v1.1 EAC0 spec.

Signed-off-by: Shruti Gupta <shruti.gupta@arm.com>
Change-Id: I7f4c9370b6eefe6d1a7d1afac27e8b3a7b476072

2 years agodocs(spm): add design documentation
Shruti Gupta [Tue, 20 Sep 2022 08:53:53 +0000 (09:53 +0100)]
docs(spm): add design documentation

Add documentation how to build EL3 SPMC,
briefly describes all FF-A interfaces,
SP boot flow, SP Manifest, Power Management,
Boot Info Protocol, Runtime model and state
transition and Interrupt Handling.

Signed-off-by: Shruti Gupta <shruti.gupta@arm.com>
Change-Id: I630df1d50a4621b344a09e462563eacc90109de4

2 years agochore: rename Makalu ELP to Cortex-X3
Boyan Karatotev [Tue, 25 Oct 2022 10:29:04 +0000 (11:29 +0100)]
chore: rename Makalu ELP to Cortex-X3

The Cortex-X3 cpu port was developed before its public release when it
was known as Makalu ELP. Now that it's released we can use the official
product name.

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

2 years agoMerge "fix(security): optimisations for CVE-2022-23960" into integration
Lauren Wehrmeister [Wed, 26 Oct 2022 22:00:11 +0000 (00:00 +0200)]
Merge "fix(security): optimisations for CVE-2022-23960" into integration

2 years agofix(security): optimisations for CVE-2022-23960
Bipin Ravi [Thu, 13 Oct 2022 22:25:51 +0000 (17:25 -0500)]
fix(security): optimisations for CVE-2022-23960

Optimised the loop workaround for Spectre_BHB mitigation:
1. use of speculation barrier for cores implementing SB instruction.
2. use str/ldr instead of stp/ldp as the loop uses only X2 register.

Signed-off-by: Bipin Ravi <bipin.ravi@arm.com>
Change-Id: I8ac53ea1e42407ad8004c1d59c05f791011f195d

2 years agofix(mediatek): switch console to runtime state before leaving BL31
Rex-BC Chen [Wed, 26 Oct 2022 09:26:05 +0000 (17:26 +0800)]
fix(mediatek): switch console to runtime state before leaving BL31

We should switch console to runtime state. If we don't do this, the
state will keep boot state even we exit from BL31.

Signed-off-by: Bo-Chen Chen <rex-bc.chen@mediatek.com>
Change-Id: Id2269ccf2fdc22e0fa088c3c0365836730172233

2 years agoMerge "fix(sme): add missing ISBs" into integration
Manish Pandey [Wed, 26 Oct 2022 12:27:43 +0000 (14:27 +0200)]
Merge "fix(sme): add missing ISBs" into integration

2 years agofix(imx8m): update poweroff related SNVS_LPCR bits only
Shawn Guo [Wed, 26 Oct 2022 08:38:53 +0000 (16:38 +0800)]
fix(imx8m): update poweroff related SNVS_LPCR bits only

Function imx_system_off() writes SNVS_LPCR register to power off the SoC
without bit masking.  This clears other bits like LPWUI_EN and breaks
the function of SoC wake-up using RTC alarm.  Fix it by updating poweroff
related bits only.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Change-Id: If641af4dc1103c67e1a645c03bb36a5f56665aef

2 years agoMerge "fix(gicv3/multichip): fix overflow caused by left shift" into integration
Manish V Badarkhe [Wed, 26 Oct 2022 07:45:24 +0000 (09:45 +0200)]
Merge "fix(gicv3/multichip): fix overflow caused by left shift" into integration

2 years agoMerge "fix(stm32mp13-fdts): correct PLL nodes name" into integration
Madhukar Pappireddy [Mon, 24 Oct 2022 19:41:31 +0000 (21:41 +0200)]
Merge "fix(stm32mp13-fdts): correct PLL nodes name" into integration

2 years agofeat(compiler-rt): update compiler-rt source files
Daniel Boulby [Fri, 21 Oct 2022 19:20:52 +0000 (20:20 +0100)]
feat(compiler-rt): update compiler-rt source files

Update the compiler-rt source files to the tip of the llvm-project [1].
To do this some new header files were pulled in from the freebsd-src
repo [2].

[1] https://github.com/llvm/llvm-project/commit/fae258e
[2] https://github.com/freebsd/freebsd-src/commit/243a0eda

Change-Id: I1a012b1fe04e127d35e208923877c98c5d999d00
Signed-off-by: Daniel Boulby <daniel.boulby@arm.com>
2 years agofix(deps): add missing aeabi_memcpy.S
Daniel Boulby [Fri, 21 Oct 2022 16:38:24 +0000 (17:38 +0100)]
fix(deps): add missing aeabi_memcpy.S

Add missing aeabi_memcpy.S file from llvm compiler-rt library [1]. This
is required for Aarch32 builds with clang.

[1] https://github.com/llvm/llvm-project.git

Change-Id: I7fd6ab1e81dd45d24afef49a3eb8fcdcbc5c082f
Signed-off-by: Daniel Boulby <daniel.boulby@arm.com>
2 years agofeat(zlib): update zlib source files
Daniel Boulby [Wed, 5 Oct 2022 10:05:22 +0000 (11:05 +0100)]
feat(zlib): update zlib source files

Upgrade the zlib source files to the ones present in the version 1.2.13
of zlib [1]. Since 1.2.11 the use of Arm crc32 instructions has been
introduced so update the files to make use of this.

[1] https://github.com/madler/zlib/tree/v1.2.13

Change-Id: Ideef78c56f05ae7daec390d00dcaa8f66b18729e
Signed-off-by: Daniel Boulby <daniel.boulby@arm.com>
2 years agodocs(changelog): add zlib and compiler-rt scope
Daniel Boulby [Wed, 5 Oct 2022 10:03:44 +0000 (11:03 +0100)]
docs(changelog): add zlib and compiler-rt scope

Change-Id: Id98ca7762fd17cb793b0ec9119d0b026195cf2c2
Signed-off-by: Daniel Boulby <daniel.boulby@arm.com>
2 years agoMerge "fix(rme): relax RME compiler requirements" into integration
Manish V Badarkhe [Fri, 21 Oct 2022 08:17:52 +0000 (10:17 +0200)]
Merge "fix(rme): relax RME compiler requirements" into integration

2 years agoMerge changes from topic "imx8m-hab-support" into integration
Sandrine Bailleux [Fri, 21 Oct 2022 07:35:32 +0000 (09:35 +0200)]
Merge changes from topic "imx8m-hab-support" into integration

* changes:
  docs(imx8m): update for high assurance boot
  feat(imx8m): add support for high assurance boot
  feat(imx8mp): add hab and map required memory blocks
  feat(imx8mn): add hab and map required memory blocks
  feat(imx8mm): add hab and map required memory blocks

2 years agobuild: deprecate Arm rdn1edge and sgi575 FVP platforms
Manish V Badarkhe [Wed, 19 Oct 2022 08:31:07 +0000 (09:31 +0100)]
build: deprecate Arm rdn1edge and sgi575 FVP platforms

Arm has decided to deprecate the sgi575 and rdn1edge platforms.
The development of software and fast models for these platforms
has been discontinued. rdn1edge platform has been superseded by the
rdn2 platform, which is already supported in TF-A and CI work is
underway for this platform.

Change-Id: If2228fb73549b244c3a5b0e5746617b3f24fe771
Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
2 years agofeat(imx8mm): add BL31 PIE support
Marco Felsch [Mon, 22 Aug 2022 10:39:01 +0000 (12:39 +0200)]
feat(imx8mm): add BL31 PIE support

Enable PIE support so the BL31 firmware can be loaded from anywhere
within the OCRAM (SRAM). For the PIE support we only need to replace the
BL31_BASE define by the BL31_START symbol which is a relocatable and we
need to enable it by setting ENABLE_PIE := 1.

Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
Change-Id: I52e654917167f0faf6aa437da233d8faf1f2bb26

2 years agorefactor(imx8mm): introduce BL2_SIZE and BL31_SIZE
Marco Felsch [Mon, 22 Aug 2022 10:30:11 +0000 (12:30 +0200)]
refactor(imx8mm): introduce BL2_SIZE and BL31_SIZE

No functional change.

Introduce BLx_SIZE defines and calculate the limits based on the
BLx_BASE and the BLx_SIZE define. Also make use of SZ_128K to make it
easier to read. This is required for later BL31 PIE support since it
drops the calculation based on the BL31_LIMIT and BL31_BASE.

Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
Change-Id: I8670faa5d5a572ef230011594f3d0d594fb257d9

2 years agorefactor(imx8mm): make use of setup_page_tables()
Marco Felsch [Mon, 22 Aug 2022 10:25:04 +0000 (12:25 +0200)]
refactor(imx8mm): make use of setup_page_tables()

No functional change. Use the setup_page_tables() helper function which
does the three calls for us. Also the function has some logging support
which will be nice during debugging.

Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
Change-Id: Ic465491ff5468e812e805de56be3b6b92d245080

2 years agorefactor(imx8mm): cleanup the mmap region settings
Marco Felsch [Mon, 22 Aug 2022 10:23:56 +0000 (12:23 +0200)]
refactor(imx8mm): cleanup the mmap region settings

No functional change.

Introduce the bl_regions array to gather all regions and make use of the
MAP_REGION_FLAT() macro. The array is than passed to mmap_add() to map
all regions. While on it introduce some defines so the addr, size and
flags can be read more easily.

Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
Change-Id: I9f0ae9fc89514db71bef734b867c46574833831c

2 years agofeat(imx8mn): add BL31 PIE support
Marco Felsch [Mon, 4 Jul 2022 10:18:34 +0000 (12:18 +0200)]
feat(imx8mn): add BL31 PIE support

Enable PIE support so the BL31 firmware can be loaded from anywhere
within the OCRAM (SRAM). For the PIE support we only need to replace the
BL31_BASE define by the BL31_START symbol which is a relocatable and we
need to enable it by setting ENABLE_PIE := 1.

Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
Change-Id: I33c8e35c35112d70d2725eebe484a853a8aad9e0

2 years agorefactor(imx8mn): introduce BL31_SIZE
Marco Felsch [Mon, 4 Jul 2022 10:14:54 +0000 (12:14 +0200)]
refactor(imx8mn): introduce BL31_SIZE

Introduce BL31_SIZE define and calculate the limit based on the
BL31_BASE and the BL31_SIZE define. Also make use of SZ_128K to make it
easier to read. This is required for later BL31 PIE support since it
drops the calculation based on the BL31_LIMIT and BL31_BASE.

While on it remove the duplicated <lib/utils_def.h> include.

Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
Change-Id: Ifca40bd5682ef993db986439115abd9e9a66a5b2

2 years agorefactor(imx8mn): make use of setup_page_tables()
Marco Felsch [Mon, 4 Jul 2022 10:11:01 +0000 (12:11 +0200)]
refactor(imx8mn): make use of setup_page_tables()

No functional change.

Use the setup_page_tables() helper function which does the three calls
for us. Also the function has some logging support which will be nice
during debugging.

Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
Change-Id: I2f0182f19300a3a57bbeb7e2107c5fb5525dd0c1

2 years agorefactor(imx8mn): cleanup the mmap region settings
Marco Felsch [Mon, 4 Jul 2022 10:07:59 +0000 (12:07 +0200)]
refactor(imx8mn): cleanup the mmap region settings

No functional change.

Introduce the bl_regions array to gather all regions and make use of the
MAP_REGION_FLAT() macro. The array is than passed to mmap_add() to map
all regions. While on it introduce some defines so the addr, size and
flags can be read more easily.

Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
Change-Id: Id5849d2a7326a943927f458f1c6abbc041f5be18

2 years agofeat(imx8mp): add BL31 PIE support
Marco Felsch [Fri, 1 Jul 2022 13:55:30 +0000 (15:55 +0200)]
feat(imx8mp): add BL31 PIE support

Enable PIE support so the BL31 firmware can be loaded from anywhere
within the OCRAM (SRAM). How important this is shows the back and forth
of the BL31_BASE address starting with TF-A v2.5. Since then the
BL31_BASE address wasn't stable and choosing the correct combination of
SPL version loadaddress and TF-A version loadaddr was tricky.

For the PIE support we only need to replace the BL31_BASE by the
BL31_START which is a relocatable symbol and to enable it by setting
ENABLE_PIE := 1.

Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
Change-Id: I4214db1f27120f9f9cd1413ccd7a5a7d095ff45d

2 years agorefactor(imx8mp): introduce BL2_SIZE and BL31_SIZE
Marco Felsch [Mon, 4 Jul 2022 09:09:46 +0000 (11:09 +0200)]
refactor(imx8mp): introduce BL2_SIZE and BL31_SIZE

No functional change.

Introduce BLx_SIZE defines and calculate the limits based on the
BLx_BASE and the BLx_SIZE define. Also make use of SZ_128K to make it
easier to read. This is required for later BL31 PIE support since it
drops the calculation based on the BL31_LIMIT and BL31_BASE.

Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
Change-Id: Idae34c1dfcedd35238fe083149080a199d50eed0

2 years agorefactor(imx8mp): make use of setup_page_tables()
Marco Felsch [Fri, 1 Jul 2022 13:50:05 +0000 (15:50 +0200)]
refactor(imx8mp): make use of setup_page_tables()

No functional change. Use the setup_page_tables() helper function which
does the three calls for us. Also the function has some logging support
which will be nice during debugging.

Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
Change-Id: I350965414939865220f745ef5b24d2cdc3095e7b

2 years agorefactor(imx8mp): cleanup the mmap region settings
Marco Felsch [Fri, 1 Jul 2022 13:44:09 +0000 (15:44 +0200)]
refactor(imx8mp): cleanup the mmap region settings

Introduce the bl_regions array to gather all regions and make use of the
MAP_REGION_FLAT() macro. The array is than passed to mmap_add() to map
all regions. While on it introduce some defines so the addr, size and
flags can be read more easily. No functional change done.

Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
Change-Id: I7f637beea61138a86d691cd78fba2dd17e4dc925

2 years agofeat(imx8m): make psci common code pie compatible
Marco Felsch [Tue, 5 Jul 2022 13:00:44 +0000 (15:00 +0200)]
feat(imx8m): make psci common code pie compatible

Swap the BL31_BASE define with the BL31_START symbol. This is required
for later added PIE support because the symbol location can be relocated
whereas the define can't be relocated. In case of disabled PIE support
BL31_START equals BL31_BASE and so we don't need a ifdef.

Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
Change-Id: Ic1bbf3af5b346898bfcbb207ffc27d9a5bdcaae7

2 years agofix(imx8m): fix dram retention fsp_table access
Marco Felsch [Wed, 21 Sep 2022 15:48:35 +0000 (17:48 +0200)]
fix(imx8m): fix dram retention fsp_table access

The fsp_table access by [i-1] can cause invalid memory access in case of
i=0. This can be the case if no fsp_table is available. Fix this by
adding the idx variable which tracks the correct index.

Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
Change-Id: If2285517eb9fe837f3ad54360307a77a658bf62c

2 years agofix(aarch64): make AArch64 FGT feature detection more robust
Andre Przywara [Fri, 7 Oct 2022 11:19:05 +0000 (12:19 +0100)]
fix(aarch64): make AArch64 FGT feature detection more robust

The ARMv8 ARM says about the values in the ID register scheme:

==== D17.1.3 Principles of the ID scheme for fields in ID registers ===
The ID fields, which are either signed or unsigned, use increasing
numerical values to indicate increases in functionality. Therefore,
if a value of 0x1 indicates the presence of some instructions, then
the value 0x2 will indicate the presence of those instructions plus
some additional instructions or functionality. This means software
can be written in the form:
     if (value >= number) {
         // do something that relies on the value of the feature
     }
=======================================================================

So to check for the presence of a certain architecture feature, we
should not check against a certain specific value, as it's done right
now in several cases.

Relax the test for Fine Grained Trapping (FGT) to just check against
the field being 0 or not.

This fixes TF-A crashing due to an unhandled exception, when running a
Linux kernel on an FVP enabling ARMv8.9 features. The value of
ID_AA64MMFR0_EL1.FGT went from 0b0001 to 0b0010 there.

Change-Id: Ic3f1625a7650306ed388a0660429ca8823c673c2
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
2 years agoMerge "fix(cpus): fix cpu version check for Neoverse N2, V1" into integration
Madhukar Pappireddy [Thu, 20 Oct 2022 13:56:57 +0000 (15:56 +0200)]
Merge "fix(cpus): fix cpu version check for Neoverse N2, V1" into integration

2 years agoMerge "fix(cpus): workaround for Cortex-A510 erratum 2666669" into integration
Madhukar Pappireddy [Thu, 20 Oct 2022 13:03:13 +0000 (15:03 +0200)]
Merge "fix(cpus): workaround for Cortex-A510 erratum 2666669" into integration

2 years agoMerge "feat(ethos-n)!: add support for SMMU streams" into integration
Joanna Farley [Thu, 20 Oct 2022 09:04:48 +0000 (11:04 +0200)]
Merge "feat(ethos-n)!: add support for SMMU streams" into integration

2 years agofix(cpus): fix cpu version check for Neoverse N2, V1
Bipin Ravi [Wed, 19 Oct 2022 15:29:16 +0000 (10:29 -0500)]
fix(cpus): fix cpu version check for Neoverse N2, V1

The CPU version check was moved wrongly down in N2 and missing in V1.
The patch fixes the issues.

Signed-off-by: Bipin Ravi <bipin.ravi@arm.com>
Change-Id: Icb6e5285d6cc97fbe416fe1f0b1ab7afbd8a8809

2 years agodocs(imx8m): update for high assurance boot
Andrey Zhizhikin [Mon, 26 Sep 2022 20:51:47 +0000 (22:51 +0200)]
docs(imx8m): update for high assurance boot

Add a section into documentation listing the support for High Assurance
Boot (HABv4), note on the DRAM mapping, and reference to the external
documentation.

Signed-off-by: Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com>
Change-Id: Iaca97f4ac2595e35de2664a880394519f96eca07

2 years agofeat(imx8m): add support for high assurance boot
Andrey Zhizhikin [Mon, 26 Sep 2022 20:25:33 +0000 (22:25 +0200)]
feat(imx8m): add support for high assurance boot

Introduce support for High Assurance Boot (HABv4), which is used to
establish and extend the Root-of-Trust during FW loading at any given
boot stage.

This commit introduces support for HAB ROM Vector Table (RVT) API, which
is normally used by post-ROM code to authenticate additional boot images
(Kernel, FDT, FIT, etc.) that are taking part in the Root-of-Trust.

Signed-off-by: Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com>
Change-Id: I780d308369824fa4850844eb9e91768e417166a0

2 years agofeat(imx8mp): add hab and map required memory blocks
Andrey Zhizhikin [Mon, 26 Sep 2022 20:48:56 +0000 (22:48 +0200)]
feat(imx8mp): add hab and map required memory blocks

In order for HAB to perform operations, memory regions has to be mapped
in TF-A, which HAB ROM code would use internally.

Include those memory blocks for i.MX8M+ SoC. Of a special note, the DRAM
block is mapped with complete size available on the platform and uses
MT_RW attributes, this is required to minimize the size of translation
tables and provide a possibility to exchange the execution results
between EL3 and EL1&2, see details in [1].

Link: [1]: https://review.trustedfirmware.org/c/TF-A/trusted-firmware-a/+/16880
Signed-off-by: Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com>
Change-Id: I986cdce434d1ec9ea8b3c0d5599edde55b9b30f8

2 years agofeat(imx8mn): add hab and map required memory blocks
Andrey Zhizhikin [Mon, 26 Sep 2022 20:47:12 +0000 (22:47 +0200)]
feat(imx8mn): add hab and map required memory blocks

In order for HAB to perform operations, memory regions has to be mapped
in TF-A, which HAB ROM code would use internally.

Include those memory blocks for i.MX8MN SoC. Of a special note, the DRAM
block is mapped with complete size available on the platform and uses
MT_RW attributes, this is required to minimize the size of translation
tables and provide a possibility to exchange the execution results
between EL3 and EL1&2, see details in [1].

Link: [1]: https://review.trustedfirmware.org/c/TF-A/trusted-firmware-a/+/16880
Signed-off-by: Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com>
Change-Id: If7a2b718658db452871e1ae56b71a4983e8ef2fe

2 years agofeat(imx8mm): add hab and map required memory blocks
Andrey Zhizhikin [Mon, 26 Sep 2022 20:41:08 +0000 (22:41 +0200)]
feat(imx8mm): add hab and map required memory blocks

In order for HAB to perform operations, memory regions has to be mapped
in TF-A, which HAB ROM code would use internally.

Include those memory blocks for i.MX8MM SoC. Of a special note, the DRAM
block is mapped with complete size available on the platform and uses
MT_RW attributes, this is required to minimize the size of translation
tables and provide a possibility to exchange the execution results
between EL3 and EL1&2, see details in [1].

Link: [1]: https://review.trustedfirmware.org/c/TF-A/trusted-firmware-a/+/16880
Signed-off-by: Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com>
Change-Id: I6a3a3d7105b85c2f4ab6ea6cfbca67c9a325eb11

2 years agofeat(libfdt): upgrade libfdt source files
Daniel Boulby [Fri, 23 Sep 2022 15:22:27 +0000 (16:22 +0100)]
feat(libfdt): upgrade libfdt source files

Update the libfdt source files to the upstream commit e37c256 [1].

[1] https://github.com/dgibson/dtc/commit/e37c256

Change-Id: I00e29b467ff6f8c094f68245232a7cedeaa14aef
Signed-off-by: Daniel Boulby <daniel.boulby@arm.com>
2 years agodocs(prerequisites): upgrade to Mbed TLS 2.28.1
Daniel Boulby [Fri, 23 Sep 2022 08:37:20 +0000 (09:37 +0100)]
docs(prerequisites): upgrade to Mbed TLS 2.28.1

In anticpation of the next Trusted Firmware release update the to newest
2.x Mbed TLS library [1].

Note that the Mbed TLS project published version 3.x some time ago.
However, as this is a major release with API breakages, upgrading to
this one might require some more involved changes in TF-A, which we are
not ready to do. We shall upgrade to Mbed TLS 3.x after the v2.8 release
of TF-A.

[1] https://github.com/Mbed-TLS/mbedtls/tree/v2.28.1

Change-Id: I7594ad062a693d2ecc3b1705e944dce2c3c43bb2
Signed-off-by: Daniel Boulby <daniel.boulby@arm.com>
2 years agoMerge "feat(fvp): build delegated attestation in BL31" into integration
Sandrine Bailleux [Tue, 18 Oct 2022 14:20:05 +0000 (16:20 +0200)]
Merge "feat(fvp): build delegated attestation in BL31" into integration

2 years agoMerge "chore(rpi3): remove redundant code" into integration
André Przywara [Mon, 17 Oct 2022 13:57:40 +0000 (15:57 +0200)]
Merge "chore(rpi3): remove redundant code" into integration

2 years agoMerge "docs(maintainers): add NPU driver owners" into integration
Manish V Badarkhe [Mon, 17 Oct 2022 13:20:19 +0000 (15:20 +0200)]
Merge "docs(maintainers): add NPU driver owners" into integration

2 years agodocs(maintainers): add NPU driver owners
Mikael Olsson [Fri, 14 Oct 2022 09:48:07 +0000 (11:48 +0200)]
docs(maintainers): add NPU driver owners

Code owners have been added for the Arm(R) Ethos(TM)-N NPU driver.

Change-Id: I0bda0d95151cdff5cd3a793c6c0e9ef6a9a5f50b
Signed-off-by: Mikael Olsson <mikael.olsson@arm.com>
2 years agoMerge "fix(versal_net): Enable a78 errata workarounds" into integration
Joanna Farley [Fri, 14 Oct 2022 17:58:35 +0000 (19:58 +0200)]
Merge "fix(versal_net): Enable a78 errata workarounds" into integration

2 years agofix(versal_net): Enable a78 errata workarounds
Akshay Belsare [Tue, 11 Oct 2022 09:42:02 +0000 (15:12 +0530)]
fix(versal_net): Enable a78 errata workarounds

TF-A is reporting that erratum are missing to be enabled.

Enable the Following errata workaround to Cortex-A78 AE CPU for versal_net
ERRATA_A78_AE_1941500
ERRATA_A78_AE_1951502
ERRATA_A78_AE_2376748
ERRATA_A78_AE_2395408

For further information refer to
https://developer.arm.com/documentation/SDEN1707912/1300/

Signed-off-by: Akshay Belsare <Akshay.Belsare@amd.com>
Change-Id: Ib7fc16e035feab1dfbd88c1f8ce128b057eee86d

2 years agofix(cpus): workaround for Cortex-A510 erratum 2666669
Akram Ahmad [Wed, 21 Sep 2022 12:59:56 +0000 (13:59 +0100)]
fix(cpus): workaround for Cortex-A510 erratum 2666669

Cortex-A510 erratum 2666669 applies to revisions r1p1 and lower,
and is fixed in r1p2. The errata is mitigated by setting
IMP_CPUACTLR_EL1[38] to 1.

SDEN documentation:
https://developer.arm.com/documentation/SDEN1873351/latest
https://developer.arm.com/documentation/SDEN1873361/latest

Signed-off-by: Akram Ahmad <Akram.Ahmad@arm.com>
Change-Id: Ief27e4a155e43e75f05f2710d0c7bd5da2dec43f

2 years agofeat(fvp): build delegated attestation in BL31
Sandrine Bailleux [Wed, 12 Oct 2022 12:46:56 +0000 (14:46 +0200)]
feat(fvp): build delegated attestation in BL31

Right now, the delegated attestation module is not used in TF-A. This
means it's not even getting built and so the CI system cannot detect
build regressions.

Eventually, delegated attestation will be involved in a new runtime
service exposed by BL31 to lower exception levels. We are not there
yet but let's already include it into BL31 image, so we get build
coverage and static analysis on the code. Note that we make sure to
cover both PLAT_RSS_NOT_SUPPORTED=0 and PLAT_RSS_NOT_SUPPORTED=1
configurations.

Delegated attestation is currently made dependent on measured boot
support. This dependency is not at the source code level (attestation
code does not invoke any measured boot interfaces) but it is rather a
logical dependency: attestation without boot measurements is not very
useful...

For now, this is good enough for our purpose but the conditions under
which the attestation code is included might change in the future.

Change-Id: I616715c3dd0418a1bbf1019df3ff9acd8461e705
Signed-off-by: Sandrine Bailleux <sandrine.bailleux@arm.com>
2 years agofix(sme): add missing ISBs
Boyan Karatotev [Thu, 13 Oct 2022 12:51:05 +0000 (13:51 +0100)]
fix(sme): add missing ISBs

EL3 is configured to trap accesses to SME registers (via
CPTR_EL3.ESM=0). To allow SME instructions, this needs to be temporarily
disabled before changing system registers. If the PE delays the effects
of writes to system registers then accessing the SME registers will trap
without an isb. This patch adds the isb to restore functionality.

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

2 years agoMerge "fix(versal): enable a72 erratum 859971 and 1319367" into integration
Joanna Farley [Thu, 13 Oct 2022 09:15:12 +0000 (11:15 +0200)]
Merge "fix(versal): enable a72 erratum 859971 and 1319367" into integration

2 years agofix(versal): enable a72 erratum 859971 and 1319367
Michal Simek [Fri, 7 Oct 2022 06:15:19 +0000 (08:15 +0200)]
fix(versal): enable a72 erratum 859971 and 1319367

TF-A is reporting that above two erratum are missing to be enabled that's
why enable them by default.

For futher information please refer to
https://developer.arm.com/documentation/epm012079/11/

where
859971 is "Speculative instruction prefetch to Execute-never (XN) memory
could cause deadlock or data integrity issue" and
1319367 is "Speculative AT instruction using out-of-context translation
regime could cause subsequent request to generate an incorrect
translation".

Change-Id: I408706713a169e53db63ac5657751b0b003e646d
Signed-off-by: Michal Simek <michal.simek@amd.com>
2 years agoMerge "fix(ufs): retry commands on unit attention" into integration
Madhukar Pappireddy [Wed, 12 Oct 2022 13:56:24 +0000 (15:56 +0200)]
Merge "fix(ufs): retry commands on unit attention" into integration

2 years agoMerge "fix(sptool): operators "is/is not" in sp_mk_gen.py" into integration
Manish Pandey [Wed, 12 Oct 2022 11:01:04 +0000 (13:01 +0200)]
Merge "fix(sptool): operators "is/is not" in sp_mk_gen.py" into integration

2 years agoMerge "fix(mt8186): fix EMI_MPU domain setting for DSP" into integration
Olivier Deprez [Wed, 12 Oct 2022 10:02:51 +0000 (12:02 +0200)]
Merge "fix(mt8186): fix EMI_MPU domain setting for DSP" into integration

2 years agoMerge "fix: backtrace stack unwind misses lr adjustment" into integration
Manish Pandey [Wed, 12 Oct 2022 09:32:08 +0000 (11:32 +0200)]
Merge "fix: backtrace stack unwind misses lr adjustment" into integration

2 years agoMerge "fix(rk3399): explicitly define the sys_sleep_flag_sram type" into integration
Olivier Deprez [Wed, 12 Oct 2022 09:30:54 +0000 (11:30 +0200)]
Merge "fix(rk3399): explicitly define the sys_sleep_flag_sram type" into integration

2 years agochore(rpi3): remove redundant code
Boyan Karatotev [Wed, 5 Oct 2022 13:43:54 +0000 (14:43 +0100)]
chore(rpi3): remove redundant code

The pwr_domain_pwr_down_wfi entry is overridden by a newer
implementation. This removes the last reference to
rpi3_pwr_domain_pwr_down_wfi. Remove both as they are not needed

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

2 years agofix(rk3399): explicitly define the sys_sleep_flag_sram type
Scott Parlane [Mon, 5 Sep 2022 22:59:57 +0000 (10:59 +1200)]
fix(rk3399): explicitly define the sys_sleep_flag_sram type

Recent GCC versions now do array-bounds checking which fails for
sys_sleep_flag_sram because the struct is larger than the 8-bytes
size that (void *) is

This variable is only used in one place as the struct,
so it can be defined with the struct type.

Resolves:
plat/rockchip/px30/drivers/pmu/pmu.c: In function 'rockchip_soc_sys_pwr_dm_suspend':
plat/rockchip/px30/drivers/pmu/pmu.c:977:23: error: array subscript 'struct psram_data_t[0]' is partly outside array bounds of 'void[8]' [-Werror=array-bounds]
  977 |         psram_boot_cfg->pm_flag &= ~PM_WARM_BOOT_BIT;

Change-Id: Ifbe42d11d0c7875f6cb23dc0b7ffb3f3f90c55a8
Signed-off-by: Scott Parlane <scott@parlanenz.com>
2 years agoMerge changes from topic "fvp_dts_rework" into integration
Manish V Badarkhe [Tue, 11 Oct 2022 17:33:35 +0000 (19:33 +0200)]
Merge changes from topic "fvp_dts_rework" into integration

* changes:
  fix(fvp_ve): fdts: Fix vexpress,config-bus subnode names
  fix(fvp): fdts: Fix idle-states entry method
  fix(fvp): fdts: fix memtimer subframe addressing
  feat(fvp): fdts: update rtsm_ve DT files from the Linux kernel
  refactor(fvp): fdts: consolidate GICv2 base FVP DT files
  refactor(fvp): fdts: consolidate GICv3 base FVP DT files
  feat(fvp): dts: drop 32-bit .dts files
  refactor(fvp): fdts: merge motherboard .dtsi files
  refactor(fvp_ve): fdts: prepare Cortex-A5 and A7 model DTs
  fix(fvp): fdts: unify and fix PSCI nodes

2 years agofix(gicv3/multichip): fix overflow caused by left shift
Vijayenthiran Subramaniam [Thu, 29 Sep 2022 10:03:50 +0000 (15:33 +0530)]
fix(gicv3/multichip): fix overflow caused by left shift

When spi_id_max is 5119, the expression `(spi_id_max - 4096U + 1U >> 5)`
evaluates to 32 leading to undefined behavior when using it to left
shift 1. Fix this undefined behavior.

Reported-by coverity scan:
https://lists.trustedfirmware.org/archives/list/tf-a@lists.trustedfirmware.org/thread/RMB4U7COL6IONZWEGF2FWXOQ6FPDIT4U/

```
    large_shift: In expression 1 << (spi_id_max - 4096U + 1U >> 5), left
    shifting by more than 31 bits has undefined behavior. The shift
    amount, spi_id_max - 4096U + 1U >> 5, is as much as 32.
```

Signed-off-by: Vijayenthiran Subramaniam <vijayenthiran.subramaniam@arm.com>
Change-Id: I5e77a78b81a6d0367875e7ea432a82b6ba0e587c

2 years agoMerge "feat(cpu): add library support for Hunter ELP" into integration
Bipin Ravi [Tue, 11 Oct 2022 15:23:56 +0000 (17:23 +0200)]
Merge "feat(cpu): add library support for Hunter ELP" into integration

2 years agofix(fvp_ve): fdts: Fix vexpress,config-bus subnode names
Andre Przywara [Tue, 23 Aug 2022 09:45:54 +0000 (10:45 +0100)]
fix(fvp_ve): fdts: Fix vexpress,config-bus subnode names

The arm,vexpress,config-bus DT binding restricts the possible (sub)node
names.
Adjust the current node names, to drop the unneeded address specifier,
and make the node names binding compliant.

Change-Id: Ic48c6969268c960ce92c8ec3a756ed1d89e61b08
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
2 years agofix(fvp): fdts: Fix idle-states entry method
Andre Przywara [Mon, 22 Aug 2022 14:54:26 +0000 (15:54 +0100)]
fix(fvp): fdts: Fix idle-states entry method

When firmware implements idle states via PSCI, the value of the DT
entry-method property must be "psci", not "arm,psci".

Fix this to make the CPU description binding compliant.

Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Change-Id: Icd1bf704d177368af9b7aab545f47e580791b8cc

2 years agofix(fvp): fdts: fix memtimer subframe addressing
Andre Przywara [Mon, 22 Aug 2022 14:50:22 +0000 (15:50 +0100)]
fix(fvp): fdts: fix memtimer subframe addressing

The arm,armv7-timer-mem DT binding documentation demands that the
 #size-cells property should be <1> only.

Adjust the value to be <1> and drop the now needless leading 0 in the
frame's reg property. Convert to #address-cell = <1> on the way.
Also adjust the interrupts property to use the proper GIC macros.

Change-Id: Ia2224663b1e6aaa7cf94af777473641de6a840d2
Signed-off-by: Andre Przywara <andre.przywara@arm.com>