]> git.baikalelectronics.ru Git - arm-tf.git/log
arm-tf.git
5 years agoMISRA cleanup in mem_region and semihosting files
johpow01 [Thu, 30 Jul 2020 22:11:03 +0000 (17:11 -0500)]
MISRA cleanup in mem_region and semihosting files

MISRA defect cleanup and general code cleanup in mem_region.c and
semihosting.c.  This task also called for cleanup of the ARM NOR flash
driver but that was removed at some point since the Jira task was
created.  This patch fixes all MISRA defects in these files except for a
few "Calling function "console_flush()" which returns error information
without testing the error information." errors which can't really be
avoided.

Defects Fixed

File                           Line Rule
lib/semihosting/semihosting.c  70   MISRA C-2012 Rule 14.4 (required)
lib/semihosting/semihosting.c  197  MISRA C-2012 Rule 14.3 (required)
lib/semihosting/semihosting.c  210  MISRA C-2012 Rule 14.4 (required)
lib/utils/mem_region.c         128  MISRA C-2012 Rule 12.1 (advisory)

Signed-off-by: John Powell <john.powell@arm.com>
Change-Id: I21a039d1cfccd6aa4301da09daec15e373305a80

5 years agoMerge "fdts: n1sdp: DTS file for single-chip and multi-chip environment." into integr...
Manish Pandey [Thu, 30 Jul 2020 13:41:16 +0000 (13:41 +0000)]
Merge "fdts: n1sdp: DTS file for single-chip and multi-chip environment." into integration

5 years agofdts: n1sdp: DTS file for single-chip and multi-chip environment.
Andre Przywara [Mon, 6 Jul 2020 05:49:41 +0000 (11:19 +0530)]
fdts: n1sdp: DTS file for single-chip and multi-chip environment.

N1SDP supports both single-chip and multi-chip environment.
Added  DTS file for both type of environment.
Enabled DTS files compilation for N1SDP platform.

Change-Id: I66af88dcfb841893eb6ed2ca18d3025de81236a0
Co-authored-by: Robin Murphy <Robin.Murphy@arm.com>
Co-authored-by: Sayanta Pattanayak <sayanta.pattanayak@arm.com>
Co-authored-by: Manoj Kumar <manoj.kumar3@arm.com>
Co-authored-by: Anurag Koul <anurag.koul@arm.com>
Signed-off-by: Sayanta Pattanayak <sayanta.pattanayak@arm.com>
5 years agoMerge "GIC-600: Fix MISRA-2012 defects" into integration
Mark Dykes [Wed, 29 Jul 2020 19:24:53 +0000 (19:24 +0000)]
Merge "GIC-600: Fix MISRA-2012 defects" into integration

5 years agoGIC-600: Fix MISRA-2012 defects
Alexei Fedorov [Wed, 29 Jul 2020 14:16:36 +0000 (15:16 +0100)]
GIC-600: Fix MISRA-2012 defects

This patch fixes violation of Rules 10.1, 10.4,
11.9 and 13.2 reported by MISRA-2012 scan.

Change-Id: Ibe9190cb0f26ae85d9a31db8e92fbd32f1740e25
Signed-off-by: Alexei Fedorov <Alexei.Fedorov@arm.com>
5 years agoMerge "docs/fvp: update SGI and RD FVP list" into integration
Madhukar Pappireddy [Wed, 29 Jul 2020 15:20:03 +0000 (15:20 +0000)]
Merge "docs/fvp: update SGI and RD FVP list" into integration

5 years agoMerge "doc: secure partition manager design" into integration
joanna.farley [Wed, 29 Jul 2020 10:34:09 +0000 (10:34 +0000)]
Merge "doc: secure partition manager design" into integration

5 years agoMerge "Fix broken link in documentation" into integration
Madhukar Pappireddy [Wed, 29 Jul 2020 00:07:42 +0000 (00:07 +0000)]
Merge "Fix broken link in documentation" into integration

5 years agoMerge "plat/nvidia: tegra: Enable SMCCC_ARCH_SOC_ID feature" into integration
Madhukar Pappireddy [Tue, 28 Jul 2020 18:31:59 +0000 (18:31 +0000)]
Merge "plat/nvidia: tegra: Enable SMCCC_ARCH_SOC_ID feature" into integration

5 years agoMerge "plat/arm: Disable SMCCC_ARCH_SOC_ID feature" into integration
Madhukar Pappireddy [Tue, 28 Jul 2020 18:31:52 +0000 (18:31 +0000)]
Merge "plat/arm: Disable SMCCC_ARCH_SOC_ID feature" into integration

5 years agoMerge "SMCCC: Introduce function to check SMCCC function availability" into integration
Madhukar Pappireddy [Tue, 28 Jul 2020 18:31:47 +0000 (18:31 +0000)]
Merge "SMCCC: Introduce function to check SMCCC function availability" into integration

5 years agoFix broken link in documentation
johpow01 [Tue, 28 Jul 2020 18:07:25 +0000 (13:07 -0500)]
Fix broken link in documentation

The link to the exception handling framework page on the System Design /
Firmware Design / Section 4.3 just links to itself, so I changed it to
link to the exception handling framework component document.

Signed-off-by: John Powell <john.powell@arm.com>
Change-Id: I6711b423a789b2b3d1921671e8497fffa8ba33d1

5 years agoMerge "doc: use docker to build documentation" into integration
Sandrine Bailleux [Tue, 28 Jul 2020 15:08:47 +0000 (15:08 +0000)]
Merge "doc: use docker to build documentation" into integration

5 years agoMerge "TZ DMC620 driver: Fix MISRA-2012 defects" into integration
Mark Dykes [Mon, 27 Jul 2020 21:30:29 +0000 (21:30 +0000)]
Merge "TZ DMC620 driver: Fix MISRA-2012 defects" into integration

5 years agoTZ DMC620 driver: Fix MISRA-2012 defects
Alexei Fedorov [Mon, 27 Jul 2020 14:04:14 +0000 (15:04 +0100)]
TZ DMC620 driver: Fix MISRA-2012 defects

This patch fixes defects 10.3, 10.4, 10.7, 20.7
reported by MISRA-2012 scan and adds braces for
conditional statements according to the TF-A
coding style.

Change-Id: If84ed31cdd55bc8e7cdd2a5f48c0dacc25792112
Signed-off-by: Alexei Fedorov <Alexei.Fedorov@arm.com>
5 years agoplat/nvidia: tegra: Enable SMCCC_ARCH_SOC_ID feature
Manish V Badarkhe [Fri, 24 Jul 2020 01:05:24 +0000 (02:05 +0100)]
plat/nvidia: tegra: Enable SMCCC_ARCH_SOC_ID feature

Enabled 'SMCCC_ARCH_SOC_ID' feature for Nvidia Tegra platforms.

Change-Id: If17415f42304c6518aeead8dfe5909c378aaa777
Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
5 years agoplat/arm: Disable SMCCC_ARCH_SOC_ID feature
Manish V Badarkhe [Fri, 24 Jul 2020 02:26:05 +0000 (03:26 +0100)]
plat/arm: Disable SMCCC_ARCH_SOC_ID feature

Currently, soc-revision information is not available for arm
platforms hence disabled 'SMCCC_ARCH_SOC_ID' feature for all arm
platforms.

Change-Id: I1ab878c6a4c8fecfff63bc6dde83e3ecefe20279
Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
5 years agoSMCCC: Introduce function to check SMCCC function availability
Manish V Badarkhe [Thu, 23 Jul 2020 19:23:01 +0000 (20:23 +0100)]
SMCCC: Introduce function to check SMCCC function availability

Currently, 'SMCCC_ARCH_FEATURES' SMC call handler unconditionally
returns 'SMC_OK' for 'SMCCC_ARCH_SOC_ID' function. This seems to
be not correct for the platform which doesn't implement soc-id
functionality i.e. functions to retrieve both soc-version and
soc-revision.
Hence introduced a platform function which will check whether SMCCC
feature is available for the platform.

Also, updated porting guide for the newly added platform function.

Change-Id: I389f0ef6b0837bb24c712aa995b7176117bc7961
Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
5 years agoMerge "plat/arm: spm: add support for RESET_TO_BL31" into integration
Madhukar Pappireddy [Fri, 24 Jul 2020 19:59:56 +0000 (19:59 +0000)]
Merge "plat/arm: spm: add support for RESET_TO_BL31" into integration

5 years agoplat/arm: spm: add support for RESET_TO_BL31
Manish Pandey [Wed, 15 Jul 2020 23:38:59 +0000 (00:38 +0100)]
plat/arm: spm: add support for RESET_TO_BL31

SPM(BL32) and hafnium(BL33) expect their manifest base address in x0
register, which is updated during BL2 stage by parsing fw_config.
In case of RESET_TO_BL31 it has to be updated while populating
entry point information.

Signed-off-by: Manish Pandey <manish.pandey2@arm.com>
Change-Id: I6f4a97f3405029bd6ba25f0935e2d1f74bb95517

5 years agoMerge "arm_fpga: Add support for topology self-discovery" into integration
André Przywara [Fri, 24 Jul 2020 14:45:11 +0000 (14:45 +0000)]
Merge "arm_fpga: Add support for topology self-discovery" into integration

5 years agoarm_fpga: Add support for topology self-discovery
Javier Almansa Sobrino [Wed, 13 May 2020 13:09:58 +0000 (14:09 +0100)]
arm_fpga: Add support for topology self-discovery

As secondary cores show up, they populate an array to
announce themselves so plat_core_pos_by_mpidr() can
return an invalid COREID code for any non-existing
MPIDR that it is queried about.

The Power Domain Tree Description is populated with
a topology based on the maximum harcoded values.

Signed-off-by: Javier Almansa Sobrino <javier.almansasobrino@arm.com>
Change-Id: I8fd64761a2296714ce0f37c46544f3e6f13b5f61

5 years agoMerge "Revert workaround for Neoverse N1 erratum 1800710" into integration
Lauren Wehrmeister [Thu, 23 Jul 2020 20:02:15 +0000 (20:02 +0000)]
Merge "Revert workaround for Neoverse N1 erratum 1800710" into integration

5 years agoRevert workaround for Neoverse N1 erratum 1800710
johpow01 [Thu, 23 Jul 2020 18:05:45 +0000 (13:05 -0500)]
Revert workaround for Neoverse N1 erratum 1800710

This reverts commit 11af40b6308ac75c83e874129bb79bc3a58060bf, reversing
changes made to 2afcf1d4b845272791b75c8285108c4dcd91e2b9.

This errata workaround did not work as intended so we are reverting this
change.  In the future, when the corrected workaround is published in an
SDEN, we will push a new workaround.

This is the patch being reverted:
https://review.trustedfirmware.org/c/TF-A/trusted-firmware-a/+/4750

Signed-off-by: John Powell <john.powell@arm.com>
Change-Id: I20aa064c1bac9671939e657bec269d32b9e75a97

5 years agoMerge "plat: imx: common: implement IMX_SIP_AARCH32" into integration
Madhukar Pappireddy [Thu, 23 Jul 2020 14:04:41 +0000 (14:04 +0000)]
Merge "plat: imx: common: implement IMX_SIP_AARCH32" into integration

5 years agoMerge changes from topic "tf-cleanup" into integration
Manish Pandey [Thu, 23 Jul 2020 13:16:34 +0000 (13:16 +0000)]
Merge changes from topic "tf-cleanup" into integration

* changes:
  plat/arm: Move fconf population after the enablement of MMU
  lib/fconf: Update 'set_fw_config_info' function
  lib/fconf: Update data type of config max size
  plat/arm: Check the need for firmware update only once
  plat/arm: sgm: Use consistent name for tb fw config node

5 years agoplat/arm: Move fconf population after the enablement of MMU
Manish V Badarkhe [Thu, 16 Jul 2020 04:45:25 +0000 (05:45 +0100)]
plat/arm: Move fconf population after the enablement of MMU

In BL2, fw_config's population happened before the cache gets
enabled.
Hence to boost the performance, moved fw_config's population
after cache gets enabled (i.e. after MMU gets enabled).

Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
Change-Id: I2e75cabd76b1cb7a660f6b72f409ab40d2877284

5 years agolib/fconf: Update 'set_fw_config_info' function
Manish V Badarkhe [Wed, 15 Jul 2020 04:08:37 +0000 (05:08 +0100)]
lib/fconf: Update 'set_fw_config_info' function

Updated the function 'set_fw_config_info' to make it generic
by doing below changes:

1. Rename function name from 'set_fw_config_info' to 'set_config_info'
2. Take image_id as an argument so that this function can set any
   config information.

Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
Change-Id: Icf29e19d3e9996d8154d84dbbbc76712fab0f0c1

5 years agolib/fconf: Update data type of config max size
Manish V Badarkhe [Wed, 15 Jul 2020 03:27:57 +0000 (04:27 +0100)]
lib/fconf: Update data type of config max size

Update the data type of the member 'config_max_size' present in the
structure 'dyn_cfg_dtb_info_t' to uint32_t.

This change is being done so that dyn_cfg_dtb_info_t and image_info
structure should use same data type for maximum size.

Change-Id: I9b5927a47eb8351bbf3664b8b1e047ae1ae5a260
Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
5 years agoplat/arm: Check the need for firmware update only once
Manish V Badarkhe [Tue, 14 Jul 2020 10:28:36 +0000 (11:28 +0100)]
plat/arm: Check the need for firmware update only once

Currently, the need for firmware update is being checked twice
in the code hence modifications are done to do this check only
once and set the global variable.
Then this global variable helps to decide whether to go for
normal boot or firmware update flow.

Change-Id: I8469284555a8039786f34670f9dc4830f87aecc1
Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
5 years agoplat/arm: sgm: Use consistent name for tb fw config node
Manish V Badarkhe [Tue, 14 Jul 2020 10:16:02 +0000 (11:16 +0100)]
plat/arm: sgm: Use consistent name for tb fw config node

Renamed node for trusted boot fw config from 'plat_arm_bl2' to
'tb_fw-config'.

Change-Id: I2e16b6f4d272292ec1855daafd014e851436dd9b
Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
5 years agodocs/fvp: update SGI and RD FVP list
Vijayenthiran Subramaniam [Wed, 22 Jul 2020 16:38:28 +0000 (22:08 +0530)]
docs/fvp: update SGI and RD FVP list

Update SGI-575, RD-E1-Edge and RD-N1-Edge FVP versions to 11.10/36 and
add RD-N1-Edge-Dual to the list of supported Arm Fixed Virtual
Platforms.

Change-Id: I9e7e5662324eeefc80d799ca5341b5bc4dc39cbb
Signed-off-by: Vijayenthiran Subramaniam <vijayenthiran.subramaniam@arm.com>
5 years agoMerge changes from topics "af/add_measured_boot_bl1_bl2", "af/add_measured_boot_drive...
joanna.farley [Wed, 22 Jul 2020 16:35:11 +0000 (16:35 +0000)]
Merge changes from topics "af/add_measured_boot_bl1_bl2", "af/add_measured_boot_driver", "af/add_measured_boot_driver_support", "af/add_measured_boot_fconf", "af/add_measured_boot_fvp" into integration

* changes:
  plat/arm/board/fvp: Add support for Measured Boot
  TF-A: Add support for Measured Boot driver to FCONF
  TF-A: Add support for Measured Boot driver in BL1 and BL2
  TF-A: Add Event Log for Measured Boot
  TF-A: Add support for Measured Boot driver

5 years agoMerge changes from topic "stm32-scmi" into integration
Manish Pandey [Wed, 22 Jul 2020 12:15:02 +0000 (12:15 +0000)]
Merge changes from topic "stm32-scmi" into integration

* changes:
  stm32mp1: SCMI clock and reset service in SP_MIN
  dts: bindings: stm32mp1: define SCMI clock and reset domain IDs

5 years agoplat/arm/board/fvp: Add support for Measured Boot
Alexei Fedorov [Mon, 13 Jul 2020 13:59:02 +0000 (14:59 +0100)]
plat/arm/board/fvp: Add support for Measured Boot

This patch adds support for Measured Boot functionality
to FVP platform code. It also defines new properties
in 'tpm_event_log' node to store Event Log address and
it size
'tpm_event_log_sm_addr'
'tpm_event_log_addr'
'tpm_event_log_size'
in 'event_log.dtsi' included in 'fvp_tsp_fw_config.dts'
and 'fvp_nt_fw_config.dts'. The node and its properties
are described in binding document
'docs\components\measured_boot\event_log.rst'.

Change-Id: I087e1423afcb269d6cfe79c1af9c348931991292
Signed-off-by: Alexei Fedorov <Alexei.Fedorov@arm.com>
5 years agoplat: imx: common: implement IMX_SIP_AARCH32
Peng Fan [Fri, 10 Jul 2020 06:18:01 +0000 (14:18 +0800)]
plat: imx: common: implement IMX_SIP_AARCH32

Implement IMX_SIP_AARCH32 to let AArch64 Bootloader could issue
SIP call to switch to AArch32 mode to run OS.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Change-Id: I38b04ef909a6dbfba5ded12a7bb6e799a3935a66

5 years agoMerge "FVP Doc: Update list of supported FVP platforms" into integration
Manish Pandey [Tue, 21 Jul 2020 22:07:11 +0000 (22:07 +0000)]
Merge "FVP Doc: Update list of supported FVP platforms" into integration

5 years agoMerge changes I0826ef8b,I9b4659a1 into integration
Manish Pandey [Tue, 21 Jul 2020 21:49:09 +0000 (21:49 +0000)]
Merge changes I0826ef8b,I9b4659a1 into integration

* changes:
  plat: marvell: armada: a8k: Add support for iEi Puzzle-M801 board
  plat: marvell: armada: a8k: common: Fix a8k_common.mk to use BOARD_DIR variable

5 years agoMerge "io_fip: return -ENFILE when a file is already open" into integration
Manish Pandey [Tue, 21 Jul 2020 21:41:51 +0000 (21:41 +0000)]
Merge "io_fip: return -ENFILE when a file is already open" into integration

5 years agoMerge "gicv3: Do power management on Arm GIC-Clayton as well" into integration
Manish Pandey [Tue, 21 Jul 2020 21:34:52 +0000 (21:34 +0000)]
Merge "gicv3: Do power management on Arm GIC-Clayton as well" into integration

5 years agoTF-A: Add support for Measured Boot driver to FCONF
Alexei Fedorov [Mon, 13 Jul 2020 13:10:00 +0000 (14:10 +0100)]
TF-A: Add support for Measured Boot driver to FCONF

This patch adds support for Measured Boot driver functionality
to FCONF library code.

Change-Id: I81cdb06f1950f7e6e58f938a1b9c2f74f7cfdf88
Signed-off-by: Alexei Fedorov <Alexei.Fedorov@arm.com>
5 years agoTF-A: Add support for Measured Boot driver in BL1 and BL2
Alexei Fedorov [Mon, 13 Jul 2020 13:06:47 +0000 (14:06 +0100)]
TF-A: Add support for Measured Boot driver in BL1 and BL2

This patch adds support for Measured Boot driver functionality
in BL1 and BL2 code.

Change-Id: I7239a94c3e32b0a3e9e73768a0140e0b52ab0361
Signed-off-by: Alexei Fedorov <Alexei.Fedorov@arm.com>
5 years agoTF-A: Add Event Log for Measured Boot
Alexei Fedorov [Mon, 13 Jul 2020 12:58:06 +0000 (13:58 +0100)]
TF-A: Add Event Log for Measured Boot

This patch adds support for Event Log generation required
for Measured Boot functionality.

Change-Id: I34f05a33565e6659e78499d62cc6fb00b7d6c2dc
Signed-off-by: Alexei Fedorov <Alexei.Fedorov@arm.com>
5 years agoTF-A: Add support for Measured Boot driver
Alexei Fedorov [Mon, 13 Jul 2020 11:11:05 +0000 (12:11 +0100)]
TF-A: Add support for Measured Boot driver

This patch adds support for Measured Boot driver functionality
in common Arm platform code.

Change-Id: If049dcf8d847c39023b77c0d805a8cf5b8bcaa3e
Signed-off-by: Alexei Fedorov <Alexei.Fedorov@arm.com>
5 years agoMerge "Add myself and Jack Bond-Preston as code owners for the CMake build definition...
Madhukar Pappireddy [Tue, 21 Jul 2020 16:00:23 +0000 (16:00 +0000)]
Merge "Add myself and Jack Bond-Preston as code owners for the CMake build definitions" into integration

5 years agoMerge "Add myself and Alexei Fedorov as Measured Boot code owners" into integration
Madhukar Pappireddy [Tue, 21 Jul 2020 15:54:36 +0000 (15:54 +0000)]
Merge "Add myself and Alexei Fedorov as Measured Boot code owners" into integration

5 years agoAdd myself and Jack Bond-Preston as code owners for the CMake build
Javier Almansa Sobrino [Fri, 10 Jul 2020 10:00:03 +0000 (11:00 +0100)]
Add myself and Jack Bond-Preston as code owners for the CMake build
definitions

Signed-off-by: Javier Almansa Sobrino <javier.almansasobrino@arm.com>
Change-Id: I1c5cc8af34c02a6294ffc44a26152fb8984927fc

5 years agodoc: secure partition manager design
Olivier Deprez [Thu, 2 Apr 2020 13:38:02 +0000 (15:38 +0200)]
doc: secure partition manager design

Former EL3 Secure Partition Manager using MM protocol is renamed
Secure Partition Manager (MM).
A new Secure Partition Manager document covers TF-A support for the
PSA FF-A compliant implementation.

Signed-off-by: Olivier Deprez <olivier.deprez@arm.com>
Change-Id: I9763359c2e96181e1726c8ad72738de293b80eb4

5 years agoAdd myself and Alexei Fedorov as Measured Boot code owners
Javier Almansa Sobrino [Mon, 20 Jul 2020 12:17:45 +0000 (13:17 +0100)]
Add myself and Alexei Fedorov as Measured Boot code owners

Signed-off-by: Javier Almansa Sobrino <javier.almansasobrino@arm.com>
Change-Id: Ib327bda239bb5163c60764bae90b0739589dcf66

5 years agoMerge changes from topic "rddaniel_rotpk" into integration
Manish Pandey [Tue, 21 Jul 2020 14:45:39 +0000 (14:45 +0000)]
Merge changes from topic "rddaniel_rotpk" into integration

* changes:
  plat/arm/rddanielxlr: add platform function to return ROTPK
  plat/arm/rddaniel: add platform function to return ROTPK

5 years agoMerge "TF-A GICv2 driver: Introduce makefile" into integration
joanna.farley [Tue, 21 Jul 2020 14:35:00 +0000 (14:35 +0000)]
Merge "TF-A GICv2 driver: Introduce makefile" into integration

5 years agoplat/arm/rddanielxlr: add platform function to return ROTPK
Vijayenthiran Subramaniam [Tue, 14 Jul 2020 10:21:37 +0000 (15:51 +0530)]
plat/arm/rddanielxlr: add platform function to return ROTPK

TBBR authentication framework depends on the plat_get_rotpk_info()
function to return the pointer to the Root of Trust Public Key (ROTPK)
stored in the platform along with its length. Add this function for
RD-Daniel Config-XLR platform to support Trusted Board Boot. The
function makes use of the wrapper function provided by the arm common
trusted board boot function to get the ROTPK hash.

Change-Id: I509e2f7e88cc2167e1732a971d71dc131d3d4b01
Signed-off-by: Vijayenthiran Subramaniam <vijayenthiran.subramaniam@arm.com>
5 years agoplat/arm/rddaniel: add platform function to return ROTPK
Vijayenthiran Subramaniam [Tue, 14 Jul 2020 09:52:14 +0000 (15:22 +0530)]
plat/arm/rddaniel: add platform function to return ROTPK

TBBR authentication framework depends on the plat_get_rotpk_info()
function to return the pointer to the Root of Trust Public Key (ROTPK)
stored in the platform along with its length. Add this function for
RD-Daniel platform to support Trusted Board Boot. The function makes use
of the wrapper function provided by the arm common trusted board boot
function to get the ROTPK hash.

Change-Id: I6c2826a7898664afea19fd62432684cfddd9319a
Signed-off-by: Vijayenthiran Subramaniam <vijayenthiran.subramaniam@arm.com>
5 years agogicv3: Do power management on Arm GIC-Clayton as well
Andre Przywara [Fri, 26 Jun 2020 09:30:33 +0000 (10:30 +0100)]
gicv3: Do power management on Arm GIC-Clayton as well

The Arm GIC-Clayton IP has the same power management requirements as
the GIC-600, when it comes to powering up the redistributors before
using them.

Add the IIDR value to the existing list of implementations requiring
the power sequence.

Change-Id: Ib965dfe278c40a4fff94f65a8d445c27a2ae6fd2
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
5 years agoFVP Doc: Update list of supported FVP platforms
Alexei Fedorov [Mon, 20 Jul 2020 12:26:49 +0000 (13:26 +0100)]
FVP Doc: Update list of supported FVP platforms

This patch adds the following models
 FVP_Base_Neoverse-E1x1
 FVP_Base_Neoverse-E1x2
 FVP_Base_Neoverse-E1x4
to the list of supported FVP platforms.

Change-Id: Ib526a2a735f17724af3a874b06bf69b4ca85d0dd
Signed-off-by: Alexei Fedorov <Alexei.Fedorov@arm.com>
5 years agoTF-A GICv2 driver: Introduce makefile
Alexei Fedorov [Tue, 14 Jul 2020 09:47:25 +0000 (10:47 +0100)]
TF-A GICv2 driver: Introduce makefile

This patch moves all GICv2 driver files into new added
'gicv2.mk' makefile for the benefit of the generic driver
which can evolve in the future without affecting platforms.

NOTE: Usage of 'drivers/arm/gic/common/gic_common.c' file
is now deprecated and platforms with GICv2 driver need to
be modified to include 'drivers/arm/gic/v2/gicv2.mk' in
their makefiles.

Change-Id: Ib10e71bdda0e5c7e80a049ddce2de1dd839602d1
Signed-off-by: Alexei Fedorov <Alexei.Fedorov@arm.com>
5 years agoMerge "TF-A: Redefine true/false definitions" into integration
Madhukar Pappireddy [Mon, 20 Jul 2020 16:03:36 +0000 (16:03 +0000)]
Merge "TF-A: Redefine true/false definitions" into integration

5 years agoMerge "rpi4/fdt: Move dtb_size() function to fdt_wrappers.h" into integration
Madhukar Pappireddy [Fri, 17 Jul 2020 16:56:09 +0000 (16:56 +0000)]
Merge "rpi4/fdt: Move dtb_size() function to fdt_wrappers.h" into integration

5 years agoMerge changes from topic "brcm_rng_driver" into integration
Madhukar Pappireddy [Fri, 17 Jul 2020 15:31:26 +0000 (15:31 +0000)]
Merge changes from topic "brcm_rng_driver" into integration

* changes:
  driver: brcm: add RNG driver
  plat/brcm: Define RNG base address

5 years agodoc: use docker to build documentation
Leonardo Sandoval [Wed, 10 Jun 2020 23:26:28 +0000 (18:26 -0500)]
doc: use docker to build documentation

docker (container) is another way to build the documentation and fortunately
there is already a docker image (sphinxdoc/sphinx) with sphinx so we can use
it to generate the documentation.

Change-Id: I06b0621cd7509a8279655e828680b92241b9fde4
Signed-off-by: Leonardo Sandoval <leonardo.sandoval@linaro.org>
5 years agorpi4/fdt: Move dtb_size() function to fdt_wrappers.h
Andre Przywara [Thu, 9 Jul 2020 11:33:17 +0000 (12:33 +0100)]
rpi4/fdt: Move dtb_size() function to fdt_wrappers.h

Getting the actual size of a DTB blob is useful beyond the Raspberry Pi
port, so let's move this helper to a common header.

Change-Id: Ia5be46e9353ca859a1e5ad9e3c057a322dfe22e2
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
5 years agoMerge changes from topic "imx8mp_basic_support" into integration
Manish Pandey [Thu, 16 Jul 2020 23:21:50 +0000 (23:21 +0000)]
Merge changes from topic "imx8mp_basic_support" into integration

* changes:
  plat: imx8mp: Add the basic support for i.MX8MP
  plat: imx8m: Move the gpc hw reg to a separate header file

5 years agoMerge "uniphier: increase BL33 max size and GZIP temporary buffer size" into integration
Manish Pandey [Thu, 16 Jul 2020 22:44:12 +0000 (22:44 +0000)]
Merge "uniphier: increase BL33 max size and GZIP temporary buffer size" into integration

5 years agoMerge "IO Driver Misra Cleanup" into integration
Manish Pandey [Thu, 16 Jul 2020 22:43:12 +0000 (22:43 +0000)]
Merge "IO Driver Misra Cleanup" into integration

5 years agoIO Driver Misra Cleanup
johpow01 [Wed, 1 Jul 2020 22:09:57 +0000 (17:09 -0500)]
IO Driver Misra Cleanup

This patch cleans up MISRA C violations in the IO driver files.  Some
things did not make sense to fix or would require sweeping changes
but the simple issues have been resolved.

Defects Fixed

File                        Line Rule
drivers/io/io_fip.c         39   MISRA C-2012 Rule 5.6 (required)
drivers/io/io_fip.c         52   MISRA C-2012 Rule 8.9 (advisory)
drivers/io/io_fip.c         60   MISRA C-2012 Rule 5.9 (advisory)
drivers/io/io_fip.c         285  MISRA C-2012 Rule 8.9 (advisory)
drivers/io/io_fip.c         336  MISRA C-2012 Rule 15.4 (advisory)
drivers/io/io_fip.c         340  MISRA C-2012 Rule 15.4 (advisory)
drivers/io/io_fip.c         342  MISRA C-2012 Rule 15.4 (advisory)
drivers/io/io_memmap.c      30   MISRA C-2012 Rule 5.6 (required)
drivers/io/io_memmap.c      32   MISRA C-2012 Rule 5.9 (advisory)
drivers/io/io_memmap.c      85   MISRA C-2012 Rule 11.8 (required)
drivers/io/io_semihosting.c 66   MISRA C-2012 Rule 11.8 (required)
drivers/io/io_storage.c     73   MISRA C-2012 Rule 5.9 (advisory)
drivers/io/io_storage.c     116  MISRA C-2012 Rule 13.4 (advisory)

Signed-off-by: John Powell <john.powell@arm.com>
Change-Id: Id9b1b2b684588d4eaab674ed4ed04f3950dd21f4

5 years agostm32mp1: SCMI clock and reset service in SP_MIN
Etienne Carriere [Thu, 16 Jul 2020 15:36:18 +0000 (17:36 +0200)]
stm32mp1: SCMI clock and reset service in SP_MIN

This change implements platform services for stm32mp1 to expose clock
and reset controllers over SCMI clock and reset domain protocols
in sp_min firmware.

Requests execution use a fastcall SMC context using a SiP function ID.
The setup allows the create SCMI channels by assigning a specific
SiP SMC function ID for each channel/agent identifier defined. In this
change, stm32mp1 exposes a single channel and hence expects single
agent at a time.

The input payload in copied in secure memory before the message
in passed through the SCMI server drivers. BL32/sp_min is invoked
for a single SCMI message processing and always returns with a
synchronous response message passed back to the caller agent.

This change fixes and updates STM32_COMMON_SIP_NUM_CALLS that was
previously wrongly set 4 whereas only 1 SiP SMC function ID was to
be counted. STM32_COMMON_SIP_NUM_CALLS is now set to 3 since the
2 added SiP SMC function IDs for SCMI services.

Change-Id: Icb428775856b9aec00538172aea4cf11e609b033
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
5 years agodts: bindings: stm32mp1: define SCMI clock and reset domain IDs
Etienne Carriere [Sun, 8 Dec 2019 07:12:52 +0000 (08:12 +0100)]
dts: bindings: stm32mp1: define SCMI clock and reset domain IDs

Define the platform SCMI clocks and reset domains for stm32mp1 family.
SCMI agent 0 accesses clock/reset controllers under RCC TZEN hardening.
SCMI agent 1 accesses clock controllers under RCC MCKPROT hardening.

Change-Id: I52e906f846d445a3e6850e5f2e1584da14692553
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
5 years agoMerge "drivers/stm32_hash: register resources as secure or not" into integration
Madhukar Pappireddy [Thu, 16 Jul 2020 14:40:29 +0000 (14:40 +0000)]
Merge "drivers/stm32_hash: register resources as secure or not" into integration

5 years agoMerge "drivers/stm32_gpio: register GPIO resources as secure or not" into integration
Madhukar Pappireddy [Thu, 16 Jul 2020 14:40:23 +0000 (14:40 +0000)]
Merge "drivers/stm32_gpio: register GPIO resources as secure or not" into integration

5 years agoMerge "drivers/stm32_iwdg: register IWDG resources as secure or not" into integration
Madhukar Pappireddy [Thu, 16 Jul 2020 14:40:18 +0000 (14:40 +0000)]
Merge "drivers/stm32_iwdg: register IWDG resources as secure or not" into integration

5 years agoMerge "drivers/stm32mp_pmic: register PMIC resources as secure or not" into integration
Madhukar Pappireddy [Thu, 16 Jul 2020 14:40:13 +0000 (14:40 +0000)]
Merge "drivers/stm32mp_pmic: register PMIC resources as secure or not" into integration

5 years agoMerge "stm32mp1: register shared resource per GPIO bank/pin" into integration
Madhukar Pappireddy [Thu, 16 Jul 2020 14:40:07 +0000 (14:40 +0000)]
Merge "stm32mp1: register shared resource per GPIO bank/pin" into integration

5 years agoMerge "stm32mp1: register shared resource per IOMEM address" into integration
Madhukar Pappireddy [Thu, 16 Jul 2020 14:39:13 +0000 (14:39 +0000)]
Merge "stm32mp1: register shared resource per IOMEM address" into integration

5 years agoMerge "stm32mp1: allow non-secure access to reset upon periph registration" into...
Madhukar Pappireddy [Thu, 16 Jul 2020 14:39:03 +0000 (14:39 +0000)]
Merge "stm32mp1: allow non-secure access to reset upon periph registration" into integration

5 years agoMerge "stm32mp1: allow non-secure access to clocks upon periph registration" into...
Madhukar Pappireddy [Thu, 16 Jul 2020 14:38:58 +0000 (14:38 +0000)]
Merge "stm32mp1: allow non-secure access to clocks upon periph registration" into integration

5 years agoMerge "stm32mp1: shared resources: peripheral registering" into integration
Madhukar Pappireddy [Thu, 16 Jul 2020 14:38:52 +0000 (14:38 +0000)]
Merge "stm32mp1: shared resources: peripheral registering" into integration

5 years agoMerge "drivers: st: clock: register parent of secure clocks" into integration
Madhukar Pappireddy [Thu, 16 Jul 2020 14:38:46 +0000 (14:38 +0000)]
Merge "drivers: st: clock: register parent of secure clocks" into integration

5 years agoMerge "stm32mp1: shared resources: add trace messages" into integration
Madhukar Pappireddy [Thu, 16 Jul 2020 14:38:41 +0000 (14:38 +0000)]
Merge "stm32mp1: shared resources: add trace messages" into integration

5 years agoMerge "fiptool: return zero status on help and help <command>" into integration
joanna.farley [Thu, 16 Jul 2020 14:02:16 +0000 (14:02 +0000)]
Merge "fiptool: return zero status on help and help <command>" into integration

5 years agoMerge changes from topic "fpga_cmdline" into integration
André Przywara [Wed, 15 Jul 2020 22:07:00 +0000 (22:07 +0000)]
Merge changes from topic "fpga_cmdline" into integration

* changes:
  arm_fpga: Predefine DTB and BL33 load addresses
  arm_fpga: Add Klein and Matterhorn support
  arm_fpga: Support more CPU clusters

5 years agoTF-A: Redefine true/false definitions
Alexei Fedorov [Tue, 14 Jul 2020 11:26:19 +0000 (12:26 +0100)]
TF-A: Redefine true/false definitions

This patch redefines 'true' and 'false' definitions in
'include/lib/libc/stdbool.h' to fix defect reported by
MISRA C-2012 Rule 10.1
"The expression \"0\" of non-boolean essential type is
being interpreted as a boolean value for the operator \"? :\"."

Change-Id: Ie1b16e5826e5427cc272bd753e15d4d283e1ee4c
Signed-off-by: Alexei Fedorov <Alexei.Fedorov@arm.com>
5 years agoMerge "io_storage: remove redundant assigments" into integration
Manish Pandey [Tue, 14 Jul 2020 14:11:14 +0000 (14:11 +0000)]
Merge "io_storage: remove redundant assigments" into integration

5 years agoMerge "SPMD: fix boundary check if manifest is page aligned" into integration
Manish Pandey [Tue, 14 Jul 2020 10:23:56 +0000 (10:23 +0000)]
Merge "SPMD: fix boundary check if manifest is page aligned" into integration

5 years agoSPMD: fix boundary check if manifest is page aligned
Manish Pandey [Wed, 8 Jul 2020 23:39:16 +0000 (00:39 +0100)]
SPMD: fix boundary check if manifest is page aligned

while mapping SPMC manifest page in the SPMD translation regime the
mapped size was resolved to zero if SPMC manifest base address is PAGE
aligned, causing SPMD to abort.

To fix the problem change mapped size to PAGE_SIZE if manifest base is
PAGE aligned.

Signed-off-by: Manish Pandey <manish.pandey2@arm.com>
Change-Id: I06cd39dbefaf492682d9bbb0c82b950dd31fb416

5 years agoMerge "Add myself and Andre Przywara as code owners for the Arm FPGA platform port...
Madhukar Pappireddy [Mon, 13 Jul 2020 17:11:42 +0000 (17:11 +0000)]
Merge "Add myself and Andre Przywara as code owners for the Arm FPGA platform port" into integration

5 years agoMerge "plat/arm: Fix build failure due to increase in BL2 size" into integration
Madhukar Pappireddy [Mon, 13 Jul 2020 14:38:40 +0000 (14:38 +0000)]
Merge "plat/arm: Fix build failure due to increase in BL2 size" into integration

5 years agodriver: brcm: add RNG driver
Bharat Gooty [Mon, 13 Jul 2020 12:28:29 +0000 (17:58 +0530)]
driver: brcm: add RNG driver

Signed-off-by: Bharat Gooty <bharat.gooty@broadcom.com>
Change-Id: I490d7e4d49bd9f5a62d343a264a1e14c2066ceca

5 years agoplat/brcm: Define RNG base address
Roman Bacik [Mon, 6 Jul 2020 22:31:29 +0000 (15:31 -0700)]
plat/brcm: Define RNG base address

Change-Id: I4f5efcd7638a25c317382b51f05e6b9aa283d068
Signed-off-by: Roman Bacik <roman.bacik@broadcom.com>
Signed-off-by: Bharat Gooty <bharat.gooty@broadcom.com>
5 years agoio_fip: return -ENFILE when a file is already open
Masahiro Yamada [Thu, 9 Jul 2020 14:05:45 +0000 (23:05 +0900)]
io_fip: return -ENFILE when a file is already open

The cause of failure is not memory shortage.

The comment for ENFILE in include/lib/libc/errno.h

  /* Too many open files in system */

... is a better match to the warning message here.

Change-Id: I45a1740995d464edd8b3e32b93f1f92ba17e5874
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
5 years agoMerge changes I9feae1fc,I5cbe7192,I1867ece3,I85c2434a,If8edeeec, ... into integration
Manish Pandey [Fri, 10 Jul 2020 14:40:29 +0000 (14:40 +0000)]
Merge changes I9feae1fc,I5cbe7192,I1867ece3,I85c2434a,If8edeeec, ... into integration

* changes:
  plat: marvell: armada: mcbin: squash several IO windows into one
  plat: marvell: armada: fix BL32 extra parameters usage
  drivers: marvell: Fix the LLC SRAM driver
  plat: marvell: armada: a8k: change CCU LLC SRAM mapping
  plat: marvell: armada: adjust trusted DRAM size to match OP-TEE OS
  drivers: marvell: mg_conf_cm3: pass comphy lane number to AP FW
  plat: marvell: armada: move mg conf related code to appropriate driver
  marvell: comphy: start AP FW when comphy AP mode selected
  drivers: marvell: mg_conf_cm3: add basic driver
  tools: doimage: change the binary image alignment to 16
  tools: doimage: migrate to mbedtls v2.8 APIs

5 years agoAdd myself and Andre Przywara as code owners for the Arm FPGA platform port
Javier Almansa Sobrino [Fri, 10 Jul 2020 09:34:04 +0000 (10:34 +0100)]
Add myself and Andre Przywara as code owners for the Arm FPGA platform port

Signed-off-by: Javier Almansa Sobrino <javier.almansasobrino@arm.com>
Change-Id: I6d3949a971fada5a086b788dbe274f8451fcfc0d

5 years agoplat/arm: Fix build failure due to increase in BL2 size
Manish V Badarkhe [Fri, 10 Jul 2020 08:44:21 +0000 (09:44 +0100)]
plat/arm: Fix build failure due to increase in BL2 size

BL2 size gets increased due to the libfdt library update and
that eventually cause no-optimization build failure for BL2 as below:
aarch64-none-elf-ld.bfd: BL2 image has exceeded its limit.
aarch64-none-elf-ld.bfd: region `RAM' overflowed by 4096 bytes
Makefile:1070: recipe for target 'build/fvp/debug/bl2/bl2.elf' failed
make: *** [build/fvp/debug/bl2/bl2.elf] Error 1

Fixed build failure by increasing BL2 image size limit by 4Kb.

Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
Change-Id: I92a57eb4db601561a98e254b64994bb921a88db3

5 years agoplat: marvell: armada: mcbin: squash several IO windows into one
Grzegorz Jaszczyk [Mon, 10 Jun 2019 15:01:05 +0000 (17:01 +0200)]
plat: marvell: armada: mcbin: squash several IO windows into one

There is no need to open tree different IO window when there is
possibility of having one covering required range.

Change-Id: I9feae1fc583df1f7d97d28161cf7601f43513856
Signed-off-by: Grzegorz Jaszczyk <jaz@semihalf.com>
5 years agoplat: marvell: armada: fix BL32 extra parameters usage
Marcin Wojtas [Wed, 13 Nov 2019 12:31:48 +0000 (13:31 +0100)]
plat: marvell: armada: fix BL32 extra parameters usage

Update missing code releated to the BL32 payload.

Change-Id: I5cbe71921467c53c45be5510f950cefdacc110e1
Signed-off-by: Marcin Wojtas <mw@semihalf.com>
5 years agodrivers: marvell: Fix the LLC SRAM driver
Konstantin Porotchkin [Thu, 4 Apr 2019 07:02:20 +0000 (10:02 +0300)]
drivers: marvell: Fix the LLC SRAM driver

- Fix the line address macro
- LLC invalidate and enable before ways lock for allocation
- Add support for limited SRAM size allocation
- Add SRAM RW test function

Change-Id: I1867ece3047566ddd7931bd7472e1f47fb42c8d4
Signed-off-by: Konstantin Porotchkin <kostap@marvell.com>
5 years agoplat: marvell: armada: a8k: change CCU LLC SRAM mapping
Konstantin Porotchkin [Mon, 15 Apr 2019 13:32:59 +0000 (16:32 +0300)]
plat: marvell: armada: a8k: change CCU LLC SRAM mapping

The LLC SRAM will be enabled in OP-TEE OS for usage as secure storage.
The CCU have to prepare SRAM window, but point to the DRAM-0 target
until the SRAM is actually enabled.
This patch changes CCU SRAM window target to DRAM-0
Remove dependence between LLC_SRAM and LLC_ENABLE and update the
build documentation.
The SRAМ base moved to follow the OP-TEE SHMEM area (0x05400000)

Change-Id: I85c2434a3d515ec37da5ae8eb729e3280f91c456
Signed-off-by: Konstantin Porotchkin <kostap@marvell.com>
5 years agoplat: marvell: armada: adjust trusted DRAM size to match OP-TEE OS
Konstantin Porotchkin [Mon, 15 Apr 2019 13:25:59 +0000 (16:25 +0300)]
plat: marvell: armada: adjust trusted DRAM size to match OP-TEE OS

Area used as trusted DRAM is 12MB in Marvell OP-TEE OS module.
It is followed by 4MB of shared memory.

Change-Id: If8edeeec5861b529408baca25f78c06a0a440d8c
Signed-off-by: Konstantin Porotchkin <kostap@marvell.com>
5 years agodrivers: marvell: mg_conf_cm3: pass comphy lane number to AP FW
Grzegorz Jaszczyk [Tue, 18 Jun 2019 12:43:02 +0000 (14:43 +0200)]
drivers: marvell: mg_conf_cm3: pass comphy lane number to AP FW

Since the AP process can be enabled on different setups, the information
about used comphy lane should be passed to AP FW. For instance:
- A8K development board uses comphy lane 2 for eth 0
- cn913x development board uses comphy lane 4 for eth 0

Change-Id: Icf001fb3eea4d9c24c09384e49844ecaf8655ad2
Signed-off-by: Grzegorz Jaszczyk <jaz@semihalf.com>
5 years agoplat: marvell: armada: move mg conf related code to appropriate driver
Grzegorz Jaszczyk [Wed, 17 Apr 2019 09:24:43 +0000 (11:24 +0200)]
plat: marvell: armada: move mg conf related code to appropriate driver

Now when mg_conf_cm3 driver is present - move all relevant code there.

Change-Id: I444d9e877c450d6ee69ca3a49b547e4c3aeac0be
Signed-off-by: Grzegorz Jaszczyk <jaz@semihalf.com>
5 years agomarvell: comphy: start AP FW when comphy AP mode selected
Grzegorz Jaszczyk [Fri, 12 Apr 2019 14:57:14 +0000 (16:57 +0200)]
marvell: comphy: start AP FW when comphy AP mode selected

After configuring comphy to AP mode also start AP FW.

Change-Id: Ib28977d7ee643575a818ba17f69dea0b7e8e0df4
Signed-off-by: Grzegorz Jaszczyk <jaz@semihalf.com>