]> git.baikalelectronics.ru Git - arm-tf.git/log
arm-tf.git
3 years agofix(layerscape): fix coverity issue
Jiafei Pan [Tue, 29 Mar 2022 07:01:09 +0000 (15:01 +0800)]
fix(layerscape): fix coverity issue

Check return value of mmap_add_dynamic_region().

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Change-Id: I84e257b3052371e18af158c3254f42a1bae0da10

3 years agofix(nxp-ddr): fix coverity issue
Jiafei Pan [Tue, 29 Mar 2022 06:43:12 +0000 (14:43 +0800)]
fix(nxp-ddr): fix coverity issue

Check return value of mmap_add_dynamic_region().

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Change-Id: I1317e4822f3da329185d54005f08047872b5cdce

3 years agoMerge changes Ic1796898,I93bd392a into integration
Joanna Farley [Mon, 28 Mar 2022 22:21:37 +0000 (00:21 +0200)]
Merge changes Ic1796898,I93bd392a into integration

* changes:
  fix(errata): workaround for Cortex A78 AE erratum 2395408
  fix(errata): workaround for Cortex A78 AE erratum 2376748

3 years agoMerge changes from topic "rme-attest" into integration
Soby Mathew [Mon, 28 Mar 2022 16:32:27 +0000 (18:32 +0200)]
Merge changes from topic "rme-attest" into integration

* changes:
  feat(rme): add dummy realm attestation key to RMMD
  feat(rme): add dummy platform token to RMMD

3 years agoMerge changes from topics "ls1088a", "ls1088a-prepare" into integration
Joanna Farley [Mon, 28 Mar 2022 15:40:59 +0000 (17:40 +0200)]
Merge changes from topics "ls1088a", "ls1088a-prepare" into integration

* changes:
  docs(layerscape): add ls1088a soc and board support
  feat(ls1088aqds): add ls1088aqds board support
  feat(ls1088ardb): add ls1088ardb board support
  feat(ls1088a): add new SoC platform ls1088a
  build(changelog): add new scopes for ls1088a
  feat(bl2): add support to separate no-loadable sections
  refactor(layerscape): refine comparison of inerconnection
  feat(layerscape): add soc helper macro definition for chassis 3
  feat(nxp-gic): add some macros definition for gicv3
  feat(layerscape): add CHASSIS 3 support for tbbr
  feat(layerscape): define more chassis 3 hardware address
  feat(nxp-crypto): add chassis 3 support
  feat(nxp-dcfg): add Chassis 3 support
  feat(lx2): enable DDR erratas for lx2 platforms
  feat(layerscape): print DDR errata information
  feat(nxp-ddr): add workaround for errata A050958
  feat(layerscape): add new soc errata a010539 support
  feat(layerscape): add new soc errata a009660 support
  feat(nxp-ddr): add rawcard 1F support
  fix(layerscape): fix build issue of mmap_add_ddr_region_dynamically
  fix(nxp-tools): fix create_pbl print log
  build(changelog): add new scopes for NXP driver

3 years agofeat(rme): add dummy realm attestation key to RMMD
Soby Mathew [Tue, 22 Mar 2022 16:21:19 +0000 (16:21 +0000)]
feat(rme): add dummy realm attestation key to RMMD

Add a dummy realm attestation key to RMMD, and return it on request.
The realm attestation key is requested with an SMC with the following
parameters:
    * Fid (0xC400001B2).
    * Attestation key buffer PA (the realm attestation key is copied
      at this address by the monitor).
    * Attestation key buffer length as input and size of realm
      attesation key as output.
    * Type of elliptic curve.

Signed-off-by: Tamas Ban <tamas.ban@arm.com>
Signed-off-by: Subhasish Ghosh <subhasish.ghosh@arm.com>
Signed-off-by: Soby Mathew <soby.mathew@arm.com>
Change-Id: I12d8d98fd221f4638ef225c9383374ddf6e65eac

3 years agoMerge "fix(fwu): rename is_fwu_initialized" into integration
Manish Pandey [Mon, 28 Mar 2022 11:59:23 +0000 (13:59 +0200)]
Merge "fix(fwu): rename is_fwu_initialized" into integration

3 years agoMerge "docs(maintainers): add the new maintainer for MediaTek SoCs" into integration
Manish Pandey [Mon, 28 Mar 2022 10:41:46 +0000 (12:41 +0200)]
Merge "docs(maintainers): add the new maintainer for MediaTek SoCs" into integration

3 years agodocs(maintainers): add the new maintainer for MediaTek SoCs
Rex-BC Chen [Mon, 28 Mar 2022 03:06:21 +0000 (11:06 +0800)]
docs(maintainers): add the new maintainer for MediaTek SoCs

Signed-off-by: Rex-BC Chen <rex-bc.chen@mediatek.com>
Change-Id: Ia9409127e91e55726db0856e3f13f009d3c7c866

3 years agofix(fwu): rename is_fwu_initialized
Sebastien Pasdeloup [Tue, 1 Mar 2022 13:13:21 +0000 (14:13 +0100)]
fix(fwu): rename is_fwu_initialized

The variable is_fwu_initialized was initialized after
plat_fwu_set_images_source() is called.
But some functions called by plat_fwu_set_images_source() for STM32MP1
implementation expect is_fwu_initialized is set to true with asserts.
Rename is_fwu_initialized to is_metadata_initialized, and set it before
plat_fwu_set_images_source() is called.

Change-Id: I17c6ee6293dfa55385b0c859db442647f0bebaed
Signed-off-by: Sebastien Pasdeloup <sebastien.pasdeloup-ext@st.com>
Signed-off-by: Yann Gautier <yann.gautier@st.com>
3 years agodocs(layerscape): add ls1088a soc and board support
Jiafei Pan [Thu, 24 Feb 2022 08:18:21 +0000 (16:18 +0800)]
docs(layerscape): add ls1088a soc and board support

Update document for nxp-layerscape to add ls1088a SoC and ls1088ardb,
update maintainer of ls1088a platforms.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Change-Id: Ic7fdc7b1bbf22e50646991093366a88ee523ffe3

3 years agofeat(ls1088aqds): add ls1088aqds board support
Jiafei Pan [Fri, 18 Feb 2022 07:27:45 +0000 (15:27 +0800)]
feat(ls1088aqds): add ls1088aqds board support

Add QDS support for ls1088a.

Signed-off-by: Ruchika Gupta <ruchika.gupta@nxp.com>
Signed-off-by: York Sun <york.sun@nxp.com>
Signed-off-by: Pankaj Gupta <pankaj.gupta@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Change-Id: I6c7a7a23fa6b9ba01c011a7e6237f8063d45e261

3 years agofeat(ls1088ardb): add ls1088ardb board support
Jiafei Pan [Fri, 18 Feb 2022 07:27:01 +0000 (15:27 +0800)]
feat(ls1088ardb): add ls1088ardb board support

The LS1088A reference design board provides a comprehensive platform
that enables design and evaluation of the product (LS1088A processor).

Signed-off-by: Ruchika Gupta <ruchika.gupta@nxp.com>
Signed-off-by: York Sun <york.sun@nxp.com>
Signed-off-by: Pankaj Gupta <pankaj.gupta@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Change-Id: If4ca24fcee7a4c2c514303853955f1b00298c0e5

3 years agofeat(ls1088a): add new SoC platform ls1088a
Jiafei Pan [Fri, 18 Feb 2022 07:26:08 +0000 (15:26 +0800)]
feat(ls1088a): add new SoC platform ls1088a

LS1088A is a cost-effective, powerefficient, and highly integrated
SoC device featuring eight extremely power-efficient 64-bit ARM
Cortex-A53 cores with ECC-protected L1 and L2 cache memories for
high reliability, running up to 1.6 GHz.

This patch is to add ls1088a SoC support in TF-A.

Signed-off-by: Ruchika Gupta <ruchika.gupta@nxp.com>
Signed-off-by: rocket <rod.dorris@nxp.com>
Signed-off-by: Pankaj Gupta <pankaj.gupta@nxp.com>
Signed-off-by: Biwen Li <biwen.li@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Change-Id: Id9ebcdad1beab07ea81a41955edd4f471d6cf090

3 years agobuild(changelog): add new scopes for ls1088a
Jiafei Pan [Thu, 24 Feb 2022 08:00:35 +0000 (16:00 +0800)]
build(changelog): add new scopes for ls1088a

Add new scopes for ls1088a SoC, RDB and QDS boards.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Change-Id: I7c0018ecee3c590253cf258851a28c4dd7f9c1a1

3 years agofeat(bl2): add support to separate no-loadable sections
Jiafei Pan [Thu, 24 Feb 2022 02:47:33 +0000 (10:47 +0800)]
feat(bl2): add support to separate no-loadable sections

Add new options SEPARATE_BL2_NOLOAD_REGION to separate no-loadable
sections (.bss, stack, page tables) to a ram region specified
by BL2_NOLOAD_START and BL2_NOLOAD_LIMIT.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Change-Id: I844ee0fc405474af0aff978d292c826fbe0a82fd

3 years agorefactor(layerscape): refine comparison of inerconnection
Biwen Li [Mon, 8 Mar 2021 03:42:11 +0000 (11:42 +0800)]
refactor(layerscape): refine comparison of inerconnection

Refine the code to be compatible with new CCN504 which is used
by ls2088a.

Signed-off-by: Biwen Li <biwen.li@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Change-Id: I2e2b3bbb9392862b04bf8a89dfb9575bf4be974a

3 years agofeat(layerscape): add soc helper macro definition for chassis 3
Jiafei Pan [Fri, 18 Feb 2022 07:29:47 +0000 (15:29 +0800)]
feat(layerscape): add soc helper macro definition for chassis 3

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Change-Id: I27b3a1f597de84dc2a007798e54eb919c877281a

3 years agofeat(nxp-gic): add some macros definition for gicv3
Biwen Li [Sun, 17 Jan 2021 06:30:33 +0000 (14:30 +0800)]
feat(nxp-gic): add some macros definition for gicv3

Add macros as follows,
    - GICD_ISENABLER_1
    - GICD_ISENABLER_3
    - GICD_ICENABLER_1
    - GICD_ICENABLER_3

Signed-off-by: Biwen Li <biwen.li@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Change-Id: Ia522ab4bc496d9a47613a49829b65db96e2b1279

3 years agofeat(layerscape): add CHASSIS 3 support for tbbr
Biwen Li [Tue, 5 Jan 2021 10:15:48 +0000 (18:15 +0800)]
feat(layerscape): add CHASSIS 3 support for tbbr

Support CHASSIS 3.0(such as SoC LS1088A).

Signed-off-by: Biwen Li <biwen.li@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Change-Id: I60843bc4d604f0de1d91c6d3ad5eb4921cdcc91a

3 years agofeat(layerscape): define more chassis 3 hardware address
Jiafei Pan [Fri, 18 Feb 2022 07:24:27 +0000 (15:24 +0800)]
feat(layerscape): define more chassis 3 hardware address

Add base address definiton for Chassis 3 platforms.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Change-Id: I6041b93c9e9bb49af60743bd277ac7cc6f1b9da8

3 years agofeat(nxp-crypto): add chassis 3 support
Jiafei Pan [Fri, 18 Feb 2022 07:22:37 +0000 (15:22 +0800)]
feat(nxp-crypto): add chassis 3 support

Add Chassis 3 support for CAAM driver.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Change-Id: Ied26dd3881489a03017a45966888a61a0813492c

3 years agofeat(nxp-dcfg): add Chassis 3 support
Biwen Li [Tue, 5 Jan 2021 06:58:57 +0000 (14:58 +0800)]
feat(nxp-dcfg): add Chassis 3 support

Add support for Chassis 3.

Signed-off-by: Biwen Li <biwen.li@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Change-Id: I85cf68d4f1db81bf344e34dce13799ae173aa23a

3 years agofeat(lx2): enable DDR erratas for lx2 platforms
Jiafei Pan [Fri, 18 Feb 2022 10:43:44 +0000 (18:43 +0800)]
feat(lx2): enable DDR erratas for lx2 platforms

Enable DDR erratas for lx2 platforms.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Change-Id: Ia2cf6ed077acf81882247153ec38bda708a6f007

3 years agofeat(layerscape): print DDR errata information
Jiafei Pan [Fri, 18 Feb 2022 10:45:37 +0000 (18:45 +0800)]
feat(layerscape): print DDR errata information

Print Errata information in debug mode.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Change-Id: I70d6baa4dc3ffd79fedbc827555268d8f06605c7

3 years agofeat(nxp-ddr): add workaround for errata A050958
Pankit Garg [Tue, 13 Jul 2021 08:10:06 +0000 (13:40 +0530)]
feat(nxp-ddr): add workaround for errata A050958

Set the receiver gain to max value to recover
cold temp marginality issue for phy-gen2

Signed-off-by: Pankit Garg <pankit.garg@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Change-Id: If639fa3ed404cf6e1b8abcc2b7137db1fdd0b2c2

3 years agofeat(layerscape): add new soc errata a010539 support
Jiafei Pan [Fri, 18 Feb 2022 10:32:18 +0000 (18:32 +0800)]
feat(layerscape): add new soc errata a010539 support

Add new soc errata a010539 support.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Change-Id: Idbd8caaac12da8ab4f39dc0019cb656bcf4f3401

3 years agofeat(layerscape): add new soc errata a009660 support
Jiafei Pan [Fri, 18 Feb 2022 10:30:05 +0000 (18:30 +0800)]
feat(layerscape): add new soc errata a009660 support

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Change-Id: Ice37155d971dec5c610026043e34b64f761fc1b7

3 years agofeat(nxp-ddr): add rawcard 1F support
Maninder Singh [Tue, 15 Jun 2021 05:36:38 +0000 (22:36 -0700)]
feat(nxp-ddr): add rawcard 1F support

New UDIMM 18ADF2G72AZ-2G6E1 has raw card ID = 0x1F

Also, changing mask for raw card ID from - 0x8f -> 0x9f

Changing the mask need the raw card to changed from 0x0f -> 0x1f

Signed-off-by: Maninder Singh <maninder.singh_1@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Change-Id: Iee8e732ebc5e09cdca6917be608f1597c7edd9f9

3 years agofix(layerscape): fix build issue of mmap_add_ddr_region_dynamically
Biwen Li [Mon, 11 Jan 2021 03:11:44 +0000 (11:11 +0800)]
fix(layerscape): fix build issue of mmap_add_ddr_region_dynamically

Fix build issue of mmap_add_ddr_region_dynamically():
ls_bl2_el3_setup.c:(.text.bl2_plat_preload_setup+0x28): undefined
reference to mmap_add_ddr_region_dynamically

Signed-off-by: Biwen Li <biwen.li@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Change-Id: I74a8b4c2337fc0646d6acb16ce61755c5efbdf38

3 years agofix(nxp-tools): fix create_pbl print log
Biwen Li [Wed, 6 Jan 2021 05:56:58 +0000 (13:56 +0800)]
fix(nxp-tools): fix create_pbl print log

Replace bl2_offset with bl2_loc, and fix byte-swapping for
Chassis2 SoC(s) only.

Signed-off-by: Biwen Li <biwen.li@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Change-Id: Ieb5fd6468178325bfb6fb89b6c31c75cd9030363

3 years agobuild(changelog): add new scopes for NXP driver
Jiafei Pan [Tue, 22 Feb 2022 03:05:00 +0000 (11:05 +0800)]
build(changelog): add new scopes for NXP driver

Add new scope for NXP DDR drivers and GIC drivers.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Change-Id: I8ff4d203c474593fe2cff846e0040fc8651b20b6

3 years agofeat(rme): add dummy platform token to RMMD
Soby Mathew [Tue, 22 Mar 2022 16:19:39 +0000 (16:19 +0000)]
feat(rme): add dummy platform token to RMMD

Add a dummy platform token to RMMD and return it on request. The
platform token is requested with an SMC with the following parameters:
    * Fid (0xC40001B3).
    * Platform token PA (the platform token is copied at this address by
      the monitor). The challenge object needs to be passed by
      the caller in this buffer.
    * Platform token len.
    * Challenge object len.

When calling the SMC, the platform token buffer received by EL3 contains
the challenge object. It is not used on the FVP and is only printed to
the log.

Signed-off-by: Mate Toth-Pal <mate.toth-pal@arm.com>
Signed-off-by: Subhasish Ghosh <subhasish.ghosh@arm.com>
Change-Id: I8b2f1d54426c04e76d7a3baa6b0fbc40b0116348

3 years agoMerge "refactor(rme): reorg existing RMMD EL3 service FIDs" into integration
Soby Mathew [Fri, 25 Mar 2022 16:45:54 +0000 (17:45 +0100)]
Merge "refactor(rme): reorg existing RMMD EL3 service FIDs" into integration

3 years agorefactor(rme): reorg existing RMMD EL3 service FIDs
Soby Mathew [Tue, 22 Mar 2022 13:58:52 +0000 (13:58 +0000)]
refactor(rme): reorg existing RMMD EL3 service FIDs

This patch reworks the GTSI service implementation in RMMD
such that it is made internal to RMMD. This rework also
lays the ground work for additional RMMD services which
can be invoked from RMM.

The rework renames some of the FID macros to make it
more suited for adding more RMMD services. All the RMM-EL31
service SMCs are now routed via rmmd_rmm_el3_handler().

Signed-off-by: Soby Mathew <soby.mathew@arm.com>
Change-Id: Ic52ca0f33b79a1fd1deefa8136f9586b088b2e07

3 years agofix(errata): workaround for Cortex A78 AE erratum 2395408
Varun Wadekar [Wed, 9 Mar 2022 22:20:32 +0000 (22:20 +0000)]
fix(errata): workaround for Cortex A78 AE erratum 2395408

Cortex A78 AE erratum 2395408 is a Cat B erratum that applies
to revisions <= r0p1. It is still open.

This erratum states, "A translation table walk that matches an
existing L1 prefetch with a read request outstanding on CHI might
fold into the prefetch, which might lead to data corruption for
a future instruction fetch"

This erratum is avoided by setting CPUACTLR2_EL1[40] to 1 to
disable folding of demand requests into older prefetches with
L2 miss requests outstanding.

SDEN is available at https://developer.arm.com/documentation/SDEN-1707912

Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
Change-Id: Ic17968987ca3c67fa7f64211bcde6dfcb35ed5d6

3 years agofix(errata): workaround for Cortex A78 AE erratum 2376748
Varun Wadekar [Wed, 9 Mar 2022 22:04:00 +0000 (22:04 +0000)]
fix(errata): workaround for Cortex A78 AE erratum 2376748

Cortex A78 AE erratum 2376748 is a Cat B erratum that applies
to revisions <= r0p1. It is still open.

The erratum states, "A PE executing a PLDW or PRFM PST instruction
that lies on a mispredicted branch path might cause a second PE
executing a store exclusive to the same cache line address to fail
continuously."

The erratum is avoided by setting CPUACTLR2_EL1[0] to 1 to force
PLDW/PFRM ST to behave like PLD/PRFM LD and not cause invalidations
to other PE caches. There might be a small performance degradation
to this workaround for certain workloads that share data.

SDEN is available at https://developer.arm.com/documentation/SDEN-1707912

Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
Change-Id: I93bd392a870d4584f3e12c8e4626dbe5a3a40a4d

3 years agoMerge "build(sptool): handle uuid field in SP layout file" into integration
Joanna Farley [Wed, 23 Mar 2022 13:31:31 +0000 (14:31 +0100)]
Merge "build(sptool): handle uuid field in SP layout file" into integration

3 years agoMerge "fix(security): workaround for CVE-2022-23960 for A76AE, A78AE, A78C" into...
Joanna Farley [Wed, 23 Mar 2022 09:05:10 +0000 (10:05 +0100)]
Merge "fix(security): workaround for CVE-2022-23960 for A76AE, A78AE, A78C" into integration

3 years agoMerge "fix(tegra194/ras): remove incorrect erxctlr assert" into integration
Manish Pandey [Tue, 22 Mar 2022 22:02:24 +0000 (23:02 +0100)]
Merge "fix(tegra194/ras): remove incorrect erxctlr assert" into integration

3 years agoMerge changes from topic "stm32mp13" into integration
Manish Pandey [Tue, 22 Mar 2022 15:42:16 +0000 (16:42 +0100)]
Merge changes from topic "stm32mp13" into integration

* changes:
  feat(stm32mp1): select platform compilation either by flag or DT
  feat(stm32mp1-fdts): add support for STM32MP13 DK board
  feat(stm32mp1-fdts): add DDR support for STM32MP13
  feat(stm32mp1-fdts): add st-io_policies node for STM32MP13
  feat(stm32mp1): updates for STM32MP13 device tree compilation
  feat(stm32mp1-fdts): add DT files for STM32MP13
  feat(dt-bindings): add TZC400 bindings for STM32MP13
  feat(stm32mp1): add "Boot mode" management for STM32MP13
  feat(stm32mp1): manage HSLV on STM32MP13
  feat(stm32mp1): add sdmmc compatible in platform define
  feat(st-sdmmc2): allow compatible to be defined in platform code
  feat(stm32mp1): update IO compensation on STM32MP13
  feat(stm32mp1): call pmic_voltages_init() in platform init
  feat(st-pmic): add pmic_voltages_init() function
  feat(stm32mp1): update CFG0 OTP for STM32MP13
  feat(stm32mp1): usb descriptor update for STM32MP13
  feat(st-clock): add clock driver for STM32MP13
  feat(dt-bindings): add bindings for STM32MP13
  feat(stm32mp1): get CPU info from SYSCFG on STM32MP13
  feat(stm32mp1): use only one filter for TZC400 on STM32MP13
  feat(stm32mp1): add a second fixed regulator
  feat(stm32mp1): adaptations for STM32MP13 image header
  feat(stm32mp1): update boot API for header v2.0
  feat(stm32mp1): update IP addresses for STM32MP13
  feat(stm32mp1): add part numbers for STM32MP13
  feat(stm32mp1): chip rev. Z is 0x1001 on STM32MP13
  feat(stm32mp1): update BACKUP_BOOT_MODE for STM32MP13
  feat(stm32mp1): stm32mp_is_single_core() for STM32MP13
  feat(stm32mp1): remove unsupported features on STM32MP13
  feat(stm32mp1): update memory mapping for STM32MP13
  feat(stm32mp1): introduce new flag for STM32MP13
  feat(st): update stm32image tool for header v2

3 years agoMerge "docs(a3k): update documentation about DEBUG mode for UART" into integration
Manish Pandey [Tue, 22 Mar 2022 11:51:02 +0000 (12:51 +0100)]
Merge "docs(a3k): update documentation about DEBUG mode for UART" into integration

3 years agoMerge "fix(plat/arm): fix SP count limit without dual root CoT" into integration
Manish Pandey [Tue, 22 Mar 2022 10:40:17 +0000 (11:40 +0100)]
Merge "fix(plat/arm): fix SP count limit without dual root CoT" into integration

3 years agoMerge changes I1517b69c,Ie01f36ff into integration
Manish Pandey [Tue, 22 Mar 2022 10:21:30 +0000 (11:21 +0100)]
Merge changes I1517b69c,Ie01f36ff into integration

* changes:
  fix(ufs): move nutrs assignment to ufs_init
  refactor(ufs): adds a function for sending command

3 years agofeat(stm32mp1): select platform compilation either by flag or DT
Yann Gautier [Thu, 1 Apr 2021 17:31:46 +0000 (19:31 +0200)]
feat(stm32mp1): select platform compilation either by flag or DT

To choose either STM32MP13 or STM32MP15, one of the two flags can be
set to 1 in the make command line. Or the platform selection can be
done with device tree name, if it begins with stm32mp13 or stm32mp15.

Change-Id: I72f42665c105b71a84b4952ef3fcd6c06ae4598c
Signed-off-by: Lionel Debieve <lionel.debieve@foss.st.com>
Signed-off-by: Yann Gautier <yann.gautier@st.com>
3 years agofeat(stm32mp1-fdts): add support for STM32MP13 DK board
Yann Gautier [Wed, 8 Sep 2021 15:14:21 +0000 (17:14 +0200)]
feat(stm32mp1-fdts): add support for STM32MP13 DK board

This stm32mp135f-dk board embeds a STM32MP135F SoC (900MHz / crypto
capabilities) and following peripherals: STPMIC (power delivery), 512MB
DDR3L memory, SDcard, dual RMII Ethernet, display H7, RPI connector,
wifi/BT murata combo, USBOTG/STM32G0/TypeC, STMIPID02/CSI OV5640.
Add board DT file taken from kernel.
Add fw-config files for this new board.

Change-Id: I7cce1f8eb39815d7d1df79311bd7ad41061524b8
Signed-off-by: Yann Gautier <yann.gautier@st.com>
3 years agofeat(stm32mp1-fdts): add DDR support for STM32MP13
Nicolas Le Bayon [Tue, 12 Jan 2021 17:18:27 +0000 (18:18 +0100)]
feat(stm32mp1-fdts): add DDR support for STM32MP13

Add dedicated device tree files for STM32MP13.
Add new DDR compatible for STM32MP13x.

Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com>
Signed-off-by: Nicolas Le Bayon <nicolas.le.bayon@st.com>
Change-Id: Ib1bb9ad8cb2ab9f5f81549635d6604093aeb99d3

3 years agofeat(stm32mp1-fdts): add st-io_policies node for STM32MP13
Yann Gautier [Wed, 21 Oct 2020 15:57:51 +0000 (17:57 +0200)]
feat(stm32mp1-fdts): add st-io_policies node for STM32MP13

To be able to load images with FIP and FCONF on STM32MP13,
the st-io_policies has to be filled.
It is a copy of the node in stm32mp15_bl2.dtsi .

Change-Id: Ia15f50d1179e9b8aefe621dc5e0070ea845d6aac
Signed-off-by: Yann Gautier <yann.gautier@st.com>
3 years agofeat(stm32mp1): updates for STM32MP13 device tree compilation
Yann Gautier [Tue, 25 Feb 2020 16:08:10 +0000 (17:08 +0100)]
feat(stm32mp1): updates for STM32MP13 device tree compilation

Add stm32mp13_bl2.dtsi files.
Update compilation variables for STM32MP13.

Change-Id: Ia3aa3abfe09c04c1a57541e565c212aa094e285c
Signed-off-by: Yann Gautier <yann.gautier@st.com>
3 years agofeat(stm32mp1-fdts): add DT files for STM32MP13
Yann Gautier [Tue, 25 Feb 2020 14:14:52 +0000 (15:14 +0100)]
feat(stm32mp1-fdts): add DT files for STM32MP13

STM32MP13 is a single Cortex-A7 CPU, without co-processor.
As for STM32MP15x SoC family, STM32MP15x SoCs come with different
features, depending on SoC version. Each peripheral node is created.
Some are left empty for the moment , and will be filled later on.

Change-Id: I0166bb70dfa7f717e89e89883b059a5b873c4ef7
Signed-off-by: Yann Gautier <yann.gautier@st.com>
3 years agofeat(dt-bindings): add TZC400 bindings for STM32MP13
Yann Gautier [Fri, 16 Oct 2020 16:59:33 +0000 (18:59 +0200)]
feat(dt-bindings): add TZC400 bindings for STM32MP13

And new file stm32mp13-tzc400.h is created for STM32MP13.

Change-Id: I18d6aa443d07dc42c0fff56fefb2a47632a2c0e6
Signed-off-by: Yann Gautier <yann.gautier@st.com>
3 years agofeat(stm32mp1): add "Boot mode" management for STM32MP13
Nicolas Toromanoff [Wed, 3 Feb 2021 15:52:03 +0000 (16:52 +0100)]
feat(stm32mp1): add "Boot mode" management for STM32MP13

Add new APIs to enter and exit "boot mode".

In this mode a potential tamper won't block access or reset
the secure IPs needed while boot, without this mode a dead
lock may occurs.

Change-Id: Iad60d4a0420ec125b842a285f73a20eb54cd1828
Signed-off-by: Nicolas Toromanoff <nicolas.toromanoff@st.com>
3 years agofeat(stm32mp1): manage HSLV on STM32MP13
Yann Gautier [Tue, 12 Jan 2021 14:52:19 +0000 (15:52 +0100)]
feat(stm32mp1): manage HSLV on STM32MP13

On STM32MP13, the high speed mode for pads in low voltage is different
from STM32MP15. Each peripheral supporting the feature has its own
register.
Special care is taken for SDMMC peripherals. The HSLV mode is enabled
only if the max voltage for the pads is lower or equal to 1.8V.

Change-Id: Id94d2cca17dd4aca4d764230a643b2bb9a5f3342
Signed-off-by: Yann Gautier <yann.gautier@st.com>
3 years agofeat(stm32mp1): add sdmmc compatible in platform define
Yann Gautier [Wed, 20 Jan 2021 13:10:57 +0000 (14:10 +0100)]
feat(stm32mp1): add sdmmc compatible in platform define

Add DT_SDMMC2_COMPAT define in stm32mp1_def.h file in platform.
It allows the use of the compatible in platform code.

Change-Id: I535ad67dd133bab59cf81881adaef42d8e88632c
Signed-off-by: Yann Gautier <yann.gautier@st.com>
3 years agofeat(st-sdmmc2): allow compatible to be defined in platform code
Yann Gautier [Wed, 20 Jan 2021 13:08:32 +0000 (14:08 +0100)]
feat(st-sdmmc2): allow compatible to be defined in platform code

Put DT_SDMMC2_COMPAT under #ifndef. Keep the default value if it is not
defined in platform code.

Change-Id: I611baaf1fc622d33e655ee2c78d9c287baaa6a67
Signed-off-by: Yann Gautier <yann.gautier@st.com>
3 years agofeat(stm32mp1): update IO compensation on STM32MP13
Yann Gautier [Tue, 17 Nov 2020 14:27:58 +0000 (15:27 +0100)]
feat(stm32mp1): update IO compensation on STM32MP13

On STM32MP13, two new SD1 and SD2 IO compensations cells are added,
for SDMMC1 and SDMMC2. They have to be managed the same way as the
main compensation cell.

Change-Id: Ib7aa648d65fc98e1613bfb46b0e7dd568fd21002
Signed-off-by: Yann Gautier <yann.gautier@st.com>
3 years agofeat(stm32mp1): call pmic_voltages_init() in platform init
Yann Gautier [Tue, 18 Jan 2022 09:39:52 +0000 (10:39 +0100)]
feat(stm32mp1): call pmic_voltages_init() in platform init

The nominal voltage for VDDCPU when Cortex-A7 runs at 650MHz is 1.25V
on STM32MP13. VDDCORE should be set at 1.25V as well.
This is necessary, as the PMIC values in its NVMEM are 1.2V.

Signed-off-by: Yann Gautier <yann.gautier@st.com>
Change-Id: I3c24fe4cd68c7bf143cf9318ab38a15d6d41b5d2

3 years agofeat(st-pmic): add pmic_voltages_init() function
Yann Gautier [Tue, 18 Jan 2022 14:49:42 +0000 (15:49 +0100)]
feat(st-pmic): add pmic_voltages_init() function

This new function pmic_voltages_init() is used to set the minimum value
for STM32MP13 VDDCPU and VDDCORE regulators. This value is retrieved
from device tree.

Signed-off-by: Yann Gautier <yann.gautier@st.com>
Change-Id: Ibbe237cb5dccc1fddf92e07ffd3955048ff82075

3 years agofeat(stm32mp1): update CFG0 OTP for STM32MP13
Nicolas Le Bayon [Thu, 26 Nov 2020 08:57:09 +0000 (09:57 +0100)]
feat(stm32mp1): update CFG0 OTP for STM32MP13

This field is now declared on the 10 LSB bits on STM32MP13.
Several possible values are specified in the Reference Manual, and
indicate an open or closed device. Other values lead to a system panic.

Change-Id: I697124a21db66a56e7e223d601aa7cf44bb183c4
Signed-off-by: Nicolas Le Bayon <nicolas.le.bayon@st.com>
3 years agofeat(stm32mp1): usb descriptor update for STM32MP13
Patrick Delaunay [Mon, 14 Sep 2020 12:50:40 +0000 (14:50 +0200)]
feat(stm32mp1): usb descriptor update for STM32MP13

Update USB and DFU descriptor used for STM32MP13x

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
Change-Id: I6e8111d279f49400a72baa12ff39f140d97e1c70

3 years agofeat(st-clock): add clock driver for STM32MP13
Gabriel Fernandez [Wed, 11 Mar 2020 10:30:34 +0000 (11:30 +0100)]
feat(st-clock): add clock driver for STM32MP13

Add new clock driver for STM32MP13. Split the include file to manage
either STM32MP13 or STM32MP15.

Change-Id: Ia568cd12b1d5538809204f0fd2224d51e5d1e985
Signed-off-by: Gabriel Fernandez <gabriel.fernandez@st.com>
3 years agofeat(dt-bindings): add bindings for STM32MP13
Yann Gautier [Thu, 10 Mar 2022 10:33:13 +0000 (11:33 +0100)]
feat(dt-bindings): add bindings for STM32MP13

Add dedicated clock and reset dt-bindings include files. The former
files are renamed with stm32mp15, and the stm32mp1 file just
determine through STM32MP13 or STM32MP15 flag which file to include.

Signed-off-by: Yann Gautier <yann.gautier@st.com>
Change-Id: I0db23996a3ba25f7c3ea920f16230b11cf051208

3 years agofeat(stm32mp1): get CPU info from SYSCFG on STM32MP13
Yann Gautier [Tue, 21 Apr 2020 13:03:59 +0000 (15:03 +0200)]
feat(stm32mp1): get CPU info from SYSCFG on STM32MP13

The IDC register from DBGMCU is duplicated in SYSCFG. As SYSCFG is
always accessible, get chip ID and revision ID from there on STM32MP13.

Change-Id: Ib0b6e8f68a2934a45ec0012f69db6c12a60adb17
Signed-off-by: Yann Gautier <yann.gautier@st.com>
3 years agofix(tegra194/ras): remove incorrect erxctlr assert
Varun Wadekar [Fri, 23 Jul 2021 14:47:34 +0000 (07:47 -0700)]
fix(tegra194/ras): remove incorrect erxctlr assert

The ERXCTLR_EL1 register reads are RES0 for some error records
leading to a false assert on a read back.

This patch removes the assert on reading back the ERXCTLR_EL1
register to fix this issue.

Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
Change-Id: I0cab30b12656a800ba87b8bb94b4c67a2331dee6

3 years agoMerge "fix(layerscape): update WA for Errata A-050426" into integration
Madhukar Pappireddy [Mon, 21 Mar 2022 14:10:56 +0000 (15:10 +0100)]
Merge "fix(layerscape): update WA for Errata A-050426" into integration

3 years agofix(security): workaround for CVE-2022-23960 for A76AE, A78AE, A78C
Bipin Ravi [Sat, 12 Mar 2022 07:58:02 +0000 (01:58 -0600)]
fix(security): workaround for CVE-2022-23960 for A76AE, A78AE, A78C

Implements the loop workaround for Cortex-A76AE, Cortex-A78AE and
Cortex-A78C.

Signed-off-by: Bipin Ravi <bipin.ravi@arm.com>
Signed-off-by: Madhukar Pappireddy <madhukar.pappireddy@arm.com>
Change-Id: I5c838f5b9d595ed3c461a7452bd465bd54acc548

3 years agofeat(stm32mp1): use only one filter for TZC400 on STM32MP13
Yann Gautier [Wed, 21 Oct 2020 16:15:12 +0000 (18:15 +0200)]
feat(stm32mp1): use only one filter for TZC400 on STM32MP13

On STM32MP13, there is only 1 DDR port, hence only 1 TZC400 filter.

Change-Id: I4f6750022cdaf658cd209a4bf48a6cdb0717020e
Signed-off-by: Yann Gautier <yann.gautier@st.com>
3 years agofeat(stm32mp1): add a second fixed regulator
Lionel Debieve [Thu, 15 Apr 2021 06:27:28 +0000 (08:27 +0200)]
feat(stm32mp1): add a second fixed regulator

Increase the fixed regulator number that needs to be
2 for STM32MP13.

Signed-off-by: Lionel Debieve <lionel.debieve@foss.st.com>
Change-Id: Ica990fe9a6494b76aed763d2d353f5234fed7cea

3 years agofeat(stm32mp1): adaptations for STM32MP13 image header
Yann Gautier [Tue, 14 Apr 2020 16:08:50 +0000 (18:08 +0200)]
feat(stm32mp1): adaptations for STM32MP13 image header

The header must now include by default at least an extra padding
header, increasing the size of the header to 512 bytes (0x200).
This header will be placed at the end of SRAM3 by BootROM, letting
the whole SYSRAM to TF-A.
The boot context is now placed in SRAM2, hence this memory has to be
mapped in BL2 MMU. This mapping is done for all SRAMs in a 2MB area.

Change-Id: I50fcd43ecd0ba2076292b057566efe6809b9971a
Signed-off-by: Yann Gautier <yann.gautier@st.com>
3 years agofeat(stm32mp1): update boot API for header v2.0
Lionel Debieve [Wed, 8 Apr 2020 10:08:55 +0000 (12:08 +0200)]
feat(stm32mp1): update boot API for header v2.0

Add the new field for the new header v2.0.
Force MP13 platform to use v2.0.
Removing unused fields in boot_api_context_t for STM32MP13.

Signed-off-by: Lionel Debieve <lionel.debieve@st.com>
Change-Id: Iac81aad9a939c1f305184e335e0a907ac69071df

3 years agofeat(stm32mp1): update IP addresses for STM32MP13
Yann Gautier [Tue, 23 Mar 2021 14:25:04 +0000 (15:25 +0100)]
feat(stm32mp1): update IP addresses for STM32MP13

Add the IP addresses that are STM32MP13 and update the ones for
which the base address has changed.

Signed-off-by: Yann Gautier <yann.gautier@st.com>
Change-Id: Iea71a491da36f721bfd3fbfb010177e2a6a57281

3 years agofeat(stm32mp1): add part numbers for STM32MP13
Yann Gautier [Wed, 12 Feb 2020 14:38:34 +0000 (15:38 +0100)]
feat(stm32mp1): add part numbers for STM32MP13

Add the new part numbers and adapt the functions that use them.
There is no package number in OTP as they all share the same GPIO
banks.
This part is then stubbed for STM32MP13.

Change-Id: I13414326b140119aece662bf8d82b387dece0dcc
Signed-off-by: Yann Gautier <yann.gautier@st.com>
3 years agofeat(stm32mp1): chip rev. Z is 0x1001 on STM32MP13
Yann Gautier [Wed, 25 Aug 2021 12:40:12 +0000 (14:40 +0200)]
feat(stm32mp1): chip rev. Z is 0x1001 on STM32MP13

On STM32MP13, the chip revision Z is 0x1001, contrary to STM32MP15,
for which it was 0x2001.

Signed-off-by: Yann Gautier <yann.gautier@st.com>
Change-Id: If65482e824b169282abb5e26ca91e16ef7640b52

3 years agofeat(stm32mp1): update BACKUP_BOOT_MODE for STM32MP13
Yann Gautier [Wed, 5 Feb 2020 15:24:21 +0000 (16:24 +0100)]
feat(stm32mp1): update BACKUP_BOOT_MODE for STM32MP13

The backup register used on STM32MP15 to save the boot interface for
the next boot stage was 20. It is now saved in backup register 30
on STM32MP13.

Change-Id: Ibd051ff2eca7202184fa428ed57ecd4ae7388bd8
Signed-off-by: Yann Gautier <yann.gautier@st.com>
3 years agofeat(stm32mp1): stm32mp_is_single_core() for STM32MP13
Yann Gautier [Thu, 6 Feb 2020 14:34:16 +0000 (15:34 +0100)]
feat(stm32mp1): stm32mp_is_single_core() for STM32MP13

STM32MP13 is a single Cortex-A7 CPU, always return true in
stm32mp_is_single_core() function.

Change-Id: Icf36eaa887bdf314137eda07c5751cea8c950143
Signed-off-by: Yann Gautier <yann.gautier@st.com>
3 years agofeat(stm32mp1): remove unsupported features on STM32MP13
Yann Gautier [Wed, 12 Feb 2020 08:36:23 +0000 (09:36 +0100)]
feat(stm32mp1): remove unsupported features on STM32MP13

* GPIO: On STM32MP13, there are no banks GPIOJ, GPIOK and GPIOZ.
* STM32MP13 is a single Cortex-A7 CPU: remove reset from MPU1
  and reset from MCU traces
* There is no MCU on STM32MP13. Put MCU security management
  under STM32MP15 flag.
* The authentication feature is not supported yet on STM32MP13,
  put the code under SPM32MP15 flag.
* On STM32MP13, the monotonic counter is managed in ROM code, keep
  the monotonic counter update just for STM32MP15.
* SYSCFG: put registers not present on STM32MP13 under STM32MP15
  flag, as the code that manages them.
* PMIC: use ldo3 during DDR configuration only for STM32MP15
* Reset UART pins on USB boot is no more required.

Change-Id: Iceba59484a9bb02828fe7e99f3ecafe69c837bc7
Signed-off-by: Yann Gautier <yann.gautier@st.com>
Signed-off-by: Gabriel Fernandez <gabriel.fernandez@st.com>
3 years agofeat(stm32mp1): update memory mapping for STM32MP13
Yann Gautier [Mon, 3 Feb 2020 16:48:07 +0000 (17:48 +0100)]
feat(stm32mp1): update memory mapping for STM32MP13

SYSRAM is only 128KB and starts at 0x2FFE0000.
SRAMs are added.
BL2 code and DTB sizes are also reduced to fit in 128KB.

Change-Id: I25da99ef5c08f8008ff00d38248d61b6045adad4
Signed-off-by: Yann Gautier <yann.gautier@st.com>
3 years agofeat(stm32mp1): introduce new flag for STM32MP13
Sebastien Pasdeloup [Fri, 18 Dec 2020 10:50:40 +0000 (11:50 +0100)]
feat(stm32mp1): introduce new flag for STM32MP13

STM32MP13 is a variant of STM32MP1, with a single Cortex-A7, and no
Cortex-M4.
There is only one DDR port.
SP_min is not supported, only OP-TEE can be used as monitor.
STM32MP13 uses the header v2.0 format for stm32image generation
for BL2.

Change-Id: Ie5b0e3230c5e064fe96f3561fc5b3208914dea53
Signed-off-by: Yann Gautier <yann.gautier@st.com>
3 years agofeat(st): update stm32image tool for header v2
Nicolas Le Bayon [Mon, 18 Nov 2019 16:13:42 +0000 (17:13 +0100)]
feat(st): update stm32image tool for header v2

The stm32image tool is updated to manage new header v2.0 for BL2
images.
Add new structure for the header v2.0 management.
Adapt to keep compatibility with v1.0.
Add the header version major and minor in the command line
when executing the tool, as well as binary type (0x10 for BL2).

Change-Id: I70c187e8e7e95b57ab7cfad63df314307a78f1d6
Signed-off-by: Yann Gautier <yann.gautier@st.com>
Signed-off-by: Lionel Debieve <lionel.debieve@st.com>
3 years agoMerge changes from topic "spectre_bhb" into integration
Madhukar Pappireddy [Fri, 18 Mar 2022 14:55:39 +0000 (15:55 +0100)]
Merge changes from topic "spectre_bhb" into integration

* changes:
  fix(security): apply SMCCC_ARCH_WORKAROUND_3 to A73/A75/A72/A57
  fix(security): workaround for CVE-2022-23960 for Cortex-A57, Cortex-A72
  fix(fvp): disable reclaiming init code by default

3 years agofix(security): apply SMCCC_ARCH_WORKAROUND_3 to A73/A75/A72/A57
Bipin Ravi [Thu, 24 Feb 2022 05:45:50 +0000 (23:45 -0600)]
fix(security): apply SMCCC_ARCH_WORKAROUND_3 to A73/A75/A72/A57

This patch applies CVE-2022-23960 workarounds for Cortex-A75,
Cortex-A73, Cortex-A72 & Cortex-A57. This patch also implements
the new SMCCC_ARCH_WORKAROUND_3 and enables necessary discovery
hooks for Coxtex-A72, Cortex-A57, Cortex-A73 and Cortex-A75 to
enable discovery of this SMC via SMC_FEATURES. SMCCC_ARCH_WORKAROUND_3
is implemented for A57/A72 because some revisions are affected by both
CVE-2022-23960 and CVE-2017-5715 and this allows callers to replace
SMCCC_ARCH_WORKAROUND_1 calls with SMCCC_ARCH_WORKAROUND_3. For details
of SMCCC_ARCH_WORKAROUND_3, please refer SMCCCv1.4 specification.

Signed-off-by: Bipin Ravi <bipin.ravi@arm.com>
Signed-off-by: John Powell <john.powell@arm.com>
Change-Id: Ifa6d9c7baa6764924638efe3c70468f98d60ed7c

3 years agofix(layerscape): update WA for Errata A-050426
Wasim Khan [Wed, 23 Feb 2022 11:03:48 +0000 (12:03 +0100)]
fix(layerscape): update WA for Errata A-050426

Update WA for Errata A-050426 as Commands for
PEX (PEX1..PEX6) , lnx1_e1000#0, lnx1_xfi and
lnx2_xfi has been moved to PBI phase.

This patch requires RCW to include PBI commands
to write commands in BIST mode for PEX, lnx1_e1000,
lnx1_xfi and lnx2_xfi IP blocks.

Signed-off-by: Wasim Khan <wasim.khan@nxp.com>
Change-Id: I27c2b055c82c0b58df83449f9082bfbfdeb65115

3 years agofix(security): workaround for CVE-2022-23960 for Cortex-A57, Cortex-A72
Bipin Ravi [Wed, 16 Feb 2022 05:24:51 +0000 (23:24 -0600)]
fix(security): workaround for CVE-2022-23960 for Cortex-A57, Cortex-A72

Implements mitigation for Cortex-A72 CPU versions that support
the CSV2 feature(from r1p0). It also applies the mitigation for
Cortex-A57 CPU.

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

3 years agofix(fvp): disable reclaiming init code by default
Madhukar Pappireddy [Wed, 16 Mar 2022 19:20:48 +0000 (14:20 -0500)]
fix(fvp): disable reclaiming init code by default

In anticipation of Spectre BHB workaround mitigation patches, we
disable the RECLAIM_INIT_CODE for FVP platform. Since the spectre
BHB mitigation workarounds inevitably increase the size of the various
segments due to additional instructions and/or macros, these segments
cannot be fit in the existing memory layout designated for BL31 image.
The issue is specifically seen in complex build configs for FVP
platform. One such config has TBB with Dual CoT and test secure
payload dispatcher(TSPD) enabled. Even a small increase in individual
segment size in order of few bytes might lead to build fails due to
alignment requirements(PAGE_ALIGN to 4KB).

This is needed to workaround the following build failures observed
across multiple build configs:

aarch64-none-elf-ld.bfd: BL31 init has exceeded progbits limit.

aarch64-none-elf-ld.bfd: /work/workspace/workspace/tf-worker_ws_2/trusted_firmware/build/fvp/debug/bl31/bl31.elf section coherent_ram will not fit in region RAM
aarch64-none-elf-ld.bfd: BL31 image has exceeded its limit.
aarch64-none-elf-ld.bfd: region RAM overflowed by 4096 bytes

Change-Id: Idfab539e9a40f4346ee11eea1e618c97e93e19a1
Signed-off-by: Madhukar Pappireddy <madhukar.pappireddy@arm.com>
3 years agoMerge "fix(xilinx): fix coding style violations" into integration
Madhukar Pappireddy [Wed, 16 Mar 2022 14:41:31 +0000 (15:41 +0100)]
Merge "fix(xilinx): fix coding style violations" into integration

3 years agoMerge "feat(mt8186): add DFD control in SiP service" into integration
Manish Pandey [Wed, 16 Mar 2022 11:55:03 +0000 (12:55 +0100)]
Merge "feat(mt8186): add DFD control in SiP service" into integration

3 years agodocs(a3k): update documentation about DEBUG mode for UART
Pali Rohár [Wed, 16 Mar 2022 11:38:43 +0000 (12:38 +0100)]
docs(a3k): update documentation about DEBUG mode for UART

DEBUG mode can be enabled without any issue for Armada 37xx and also for
other A7K/A8K/CN913x. There is no incompatibility with Xmodem protocol
like it was written before, because Armada 37xx UART images do not print
anything on UART during image transfer and A7K/A8K/CN913x BLE image
automatically turn off debugging output when booting over UART. Looks
like this incorrect information is some relict from the past.

Signed-off-by: Pali Rohár <pali@kernel.org>
Change-Id: I85adc3c21036656b4620c4692e04330cad11ea2f

3 years agoMerge "fix(a3k): change fatal error to warning when CM3 reset is not implemented...
Manish Pandey [Wed, 16 Mar 2022 11:37:17 +0000 (12:37 +0100)]
Merge "fix(a3k): change fatal error to warning when CM3 reset is not implemented" into integration

3 years agofix(a3k): change fatal error to warning when CM3 reset is not implemented
Pali Rohár [Sat, 12 Mar 2022 11:45:56 +0000 (12:45 +0100)]
fix(a3k): change fatal error to warning when CM3 reset is not implemented

This allows TF-A's a3700_system_reset() function to try Warm reset
method when CM3 reset method is not implemented by WTMI firmware.

Signed-off-by: Pali Rohár <pali@kernel.org>
Change-Id: I7303197373e1a8ca5a44ba0b1e90b48855d6c0c3

3 years agofix(ufs): move nutrs assignment to ufs_init
anans [Tue, 15 Mar 2022 08:07:37 +0000 (13:37 +0530)]
fix(ufs): move nutrs assignment to ufs_init

nutrs is set in ufs_enum (used by get_empty_slot), this will not
be assigned if UFS_FLAGS_SKIPINIT is set in flags during init and
might end up crashing read/write commands

Change-Id: I1517b69c56741fd5bf4ef0ebc1fc8738746233d7
Signed-off-by: anans <anans@google.com>
3 years agoMerge changes from topic "spectre_bhb" into integration
Madhukar Pappireddy [Tue, 15 Mar 2022 17:29:55 +0000 (18:29 +0100)]
Merge changes from topic "spectre_bhb" into integration

* changes:
  fix(security): loop workaround for CVE-2022-23960 for Cortex-A76
  refactor(el3-runtime): change Cortex-A76 implementation of CVE-2018-3639

3 years agoMerge changes from topic "revert-14286-uart_segregation-VURJFOWMTM" into integration
Madhukar Pappireddy [Tue, 15 Mar 2022 13:39:49 +0000 (14:39 +0100)]
Merge changes from topic "revert-14286-uart_segregation-VURJFOWMTM" into integration

* changes:
  Revert "feat(sgi): deviate from arm css common uart related defi..."
  Revert "feat(sgi): route TF-A logs via secure uart"
  Revert "feat(sgi): add page table translation entry for secure uart"

3 years agorefactor(ufs): adds a function for sending command
anans [Fri, 11 Mar 2022 14:37:39 +0000 (20:07 +0530)]
refactor(ufs): adds a function for sending command

new function for sending commands and reuses that function in the
driver, this can also be used to have retries for specific
commands in the future

Signed-off-by: anans <anans@google.com>
Change-Id: Ie01f36ff8e2df072db4d97929d293b80ed24f04b

3 years agoMerge "fix(security): workaround for CVE-2022-23960" into integration
Madhukar Pappireddy [Sat, 12 Mar 2022 00:39:37 +0000 (01:39 +0100)]
Merge "fix(security): workaround for CVE-2022-23960" into integration

3 years agoRevert "feat(sgi): deviate from arm css common uart related defi..."
Madhukar Pappireddy [Fri, 11 Mar 2022 19:49:20 +0000 (20:49 +0100)]
Revert "feat(sgi): deviate from arm css common uart related defi..."

Revert submission 14286-uart_segregation

Reason for revert: Need to wait for companion patches in CI and UEFI/Linux to be upstreamed.

Reverted Changes:
I8574b31d5:feat(sgi): add page table translation entry for se...
I8896ae05e:feat(sgi): route TF-A logs via secure uart
I39170848e:feat(sgi): deviate from arm css common uart relate...

Change-Id: I28a370dd8b3a37087da621460eccc1acd7a30287

3 years agoRevert "feat(sgi): route TF-A logs via secure uart"
Madhukar Pappireddy [Fri, 11 Mar 2022 19:49:20 +0000 (20:49 +0100)]
Revert "feat(sgi): route TF-A logs via secure uart"

Revert submission 14286-uart_segregation

Reason for revert: Need to wait for companion patches in CI and UEFI/Linux to be upstreamed.

Reverted Changes:
I8574b31d5:feat(sgi): add page table translation entry for se...
I8896ae05e:feat(sgi): route TF-A logs via secure uart
I39170848e:feat(sgi): deviate from arm css common uart relate...

Change-Id: I7c488aed9fcb70c55686d705431b3fe017b8927d

3 years agoRevert "feat(sgi): add page table translation entry for secure uart"
Madhukar Pappireddy [Fri, 11 Mar 2022 19:49:20 +0000 (20:49 +0100)]
Revert "feat(sgi): add page table translation entry for secure uart"

Revert submission 14286-uart_segregation

Reason for revert: Need to wait for companion patches in CI and UEFI/Linux to be upstreamed.

Reverted Changes:
I8574b31d5:feat(sgi): add page table translation entry for se...
I8896ae05e:feat(sgi): route TF-A logs via secure uart
I39170848e:feat(sgi): deviate from arm css common uart relate...

Change-Id: I9bec02496f826e184c6efa643f869b2eb3b52539

3 years agoMerge "fix(st): don't try to read boot partition on SD cards" into integration
Madhukar Pappireddy [Fri, 11 Mar 2022 17:00:38 +0000 (18:00 +0100)]
Merge "fix(st): don't try to read boot partition on SD cards" into integration

3 years agofeat(mt8186): add DFD control in SiP service
Rex-BC Chen [Thu, 2 Dec 2021 06:03:44 +0000 (14:03 +0800)]
feat(mt8186): add DFD control in SiP service

DFD (Design for Debug) is a debugging tool, which scans flip-flops and
dumps to internal RAM on the WDT reset. After system reboots, those
values could be showed for debugging.

BUG=b:222217317
TEST=build pass

Signed-off-by: Rex-BC Chen <rex-bc.chen@mediatek.com>
Change-Id: I659ea1e0789cf135a71a13b752edaa35123e0941

3 years agofix(st): don't try to read boot partition on SD cards
Uwe Kleine-König [Thu, 10 Mar 2022 21:21:55 +0000 (22:21 +0100)]
fix(st): don't try to read boot partition on SD cards

When trying to boot from an SD card with STM32MP_EMMC_BOOT enabled,
booting fails with:

ERROR:   Got unexpected value for active boot partition, 0
ASSERT: plat/st/common/bl2_stm32_io_storage.c:285

because SD cards don't provide a boot partition. So only try reading
from such a partition when booting from eMMC.

Fixes: 214c8a8d08b2 ("feat(plat/st): add STM32MP_EMMC_BOOT option")
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Change-Id: I354b737a3ae3ea577e83dfeb7096df22275d852d