]> git.baikalelectronics.ru Git - arm-tf.git/log
arm-tf.git
3 years agoti: k3: common: Enable A72 erratum 1319367
Nishanth Menon [Thu, 10 Dec 2020 22:57:35 +0000 (16:57 -0600)]
ti: k3: common: Enable A72 erratum 1319367

The CatB erratum ARM_ERRATA_A72_1319367 applies to all TI A72
platforms as well.

See the following for further information:
https://developer.arm.com/documentation/epm012079/11/

Signed-off-by: Nishanth Menon <nm@ti.com>
Change-Id: I80c6262b9cdadcb12f6dfd5a21272989ba257719

3 years agoti: k3: common: Enable A53 erratum 1530924
Nishanth Menon [Thu, 10 Dec 2020 22:49:42 +0000 (16:49 -0600)]
ti: k3: common: Enable A53 erratum 1530924

The CatB erratum ARM_ERRATA_A53_1530924 applies to all TI A53
platforms as well.

See the following for further information:
https://developer.arm.com/documentation/epm048406/2100

Signed-off-by: Nishanth Menon <nm@ti.com>
Change-Id: Ic095424ce510139e060b38cfb84509d2cc573cad

3 years agomaintainers: Update maintainers for TI port
Nishanth Menon [Thu, 10 Dec 2020 20:41:10 +0000 (14:41 -0600)]
maintainers: Update maintainers for TI port

Andrew is no longer with TI unfortunately, so stepping up to provide
maintainer for supported TI platforms.

Signed-off-by: Nishanth Menon <nm@ti.com>
Change-Id: Ia1be294631421913bcbc3d346947195cb442d437

3 years agoMerge changes from topic "zynqmp-update-pinctrl-api" into integration
Madhukar Pappireddy [Tue, 22 Dec 2020 17:54:47 +0000 (17:54 +0000)]
Merge changes from topic "zynqmp-update-pinctrl-api" into integration

* changes:
  zynqmp: pm: Reimplement pinctrl get/set config parameter EEMI API calls
  zynqmp: pm: Reimplement pinctrl set/get function EEMI API
  zynqmp: pm: Implement pinctrl request/release EEMI API
  zynqmp: pm: Update return type in query functions

3 years agoMerge "PSCI: fix limit of 256 CPUs caused by cast to unsigned char" into integration
Madhukar Pappireddy [Tue, 22 Dec 2020 17:20:42 +0000 (17:20 +0000)]
Merge "PSCI: fix limit of 256 CPUs caused by cast to unsigned char" into integration

3 years agoMerge changes I65450c63,I71d0aa82,Ia395eb32,I4aaed371 into integration
Madhukar Pappireddy [Tue, 22 Dec 2020 16:50:27 +0000 (16:50 +0000)]
Merge changes I65450c63,I71d0aa82,Ia395eb32,I4aaed371 into integration

* changes:
  mediatek: mt8192: add rtc power off sequence
  mediatek: mt8192: Fix non-MISRA compliant code
  mediatek: mt8192: Fix non-MISRA compliant code
  mediatek: mt8192: Add MPU support

3 years agoMerge changes I3703868b,Ie77476db into integration
André Przywara [Tue, 22 Dec 2020 15:51:24 +0000 (15:51 +0000)]
Merge changes I3703868b,Ie77476db into integration

* changes:
  allwinner: Add SPC security setup for H6
  allwinner: Add R_PRCM security setup for H6

3 years agoMerge "allwinner: Fix non-default PRELOADED_BL33_BASE" into integration
André Przywara [Tue, 22 Dec 2020 15:51:01 +0000 (15:51 +0000)]
Merge "allwinner: Fix non-default PRELOADED_BL33_BASE" into integration

3 years agoMerge "allwinner: Enable workaround for Cortex-A53 erratum 1530924" into integration
André Przywara [Tue, 22 Dec 2020 15:50:47 +0000 (15:50 +0000)]
Merge "allwinner: Enable workaround for Cortex-A53 erratum 1530924" into integration

3 years agoMerge changes I0c5f32e8,Id49c124c,Idcfe933d into integration
André Przywara [Tue, 22 Dec 2020 15:50:26 +0000 (15:50 +0000)]
Merge changes I0c5f32e8,Id49c124c,Idcfe933d into integration

* changes:
  allwinner: Use RSB for the PMIC connection on H6
  allwinner: Return the PMIC to I2C mode after use
  allwinner: Always use a 3MHz RSB bus clock

3 years agoPSCI: fix limit of 256 CPUs caused by cast to unsigned char
Graeme Gregory [Wed, 2 Dec 2020 16:24:32 +0000 (16:24 +0000)]
PSCI: fix limit of 256 CPUs caused by cast to unsigned char

In psci_setup.c psci_init_pwr_domain_node() takes an unsigned
char as node_idx which limits it to initialising only the first
256 CPUs. As the calling function does not check for a limit of
256 I think this is a bug so change the unsigned char to
uint16_t and change the cast from the calling site in
populate_power_domain_tree().

Also update the non_cpu_pwr_domain_node structure lock_index
to uint16_t and update the function signature for psci_lock_init()
appropriately.

Finally add a define PSCI_MAX_CPUS_INDEX to psci_private.h and add
a CASSERT to psci_setup.c to make sure PLATFORM_CORE_COUNT cannot
exceed the index value.

Signed-off-by: Graeme Gregory <graeme@nuviainc.com>
Change-Id: I9e26842277db7483fd698b46bbac62aa86e71b45

3 years agoMerge changes from topic "tc0_optee_sp" into integration
Madhukar Pappireddy [Mon, 21 Dec 2020 19:42:05 +0000 (19:42 +0000)]
Merge changes from topic "tc0_optee_sp" into integration

* changes:
  fdts: tc0: Add reserved-memory node for OP-TEE
  plat: tc0: OP-TEE as S-EL1 SP with SPMC at S-EL2
  docs: arm: Add OPTEE_SP_FW_CONFIG
  plat: tc0: enable opteed support
  plat: arm: Increase SP max size

3 years agoMerge "Workaround for Cortex A76 erratum 1946160" into integration
bipin.ravi [Fri, 18 Dec 2020 21:56:23 +0000 (21:56 +0000)]
Merge "Workaround for Cortex A76 erratum 1946160" into integration

3 years agoWorkaround for Cortex A76 erratum 1946160
johpow01 [Wed, 16 Dec 2020 01:02:18 +0000 (19:02 -0600)]
Workaround for Cortex A76 erratum 1946160

Cortex A76 erratum 1946160 is a Cat B erratum, present in some revisions
of the A76 processor core.  The workaround is to insert a DMB ST before
acquire atomic instructions without release semantics.  This issue is
present in revisions r0p0 - r4p1  but this workaround only applies to
revisions r3p0 - r4p1, there is no workaround for older versions.

SDEN can be found here:
https://documentation-service.arm.com/static/5fbb77d7d77dd807b9a80cc1

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

3 years agoMerge "plat/arm/rdn2: update gic redistributor base address" into integration
Madhukar Pappireddy [Wed, 16 Dec 2020 15:44:59 +0000 (15:44 +0000)]
Merge "plat/arm/rdn2: update gic redistributor base address" into integration

3 years agomediatek: mt8192: add rtc power off sequence
Yuchen Huang [Wed, 14 Oct 2020 12:14:37 +0000 (20:14 +0800)]
mediatek: mt8192: add rtc power off sequence

add mt6359p rtc power off sequence and enable k_eosc mode

Signed-off-by: Yuchen Huang <yuchen.huang@mediatek.com>
Change-Id: I65450c63c44ccb5082541dbbe28b8aa0a95ecc56

3 years agomediatek: mt8192: Fix non-MISRA compliant code
Yidi Lin [Tue, 15 Dec 2020 07:45:23 +0000 (15:45 +0800)]
mediatek: mt8192: Fix non-MISRA compliant code

CID 364146: Control flow issues (DEADCODE)

Since the value of PSTATE_PWR_LVL_MASK and the value the of PLAT_MAX_PWR_LVL
are equal on mt8192, the following equation never hold.

if (aff_lvl > PLAT_MAX_PWR_LVL) {
return PSCI_E_INVALID_PARAMS;
}

Remove the deadcode to comply with MISRA standard.

Signed-off-by: Yidi Lin <yidi.lin@mediatek.com>
Change-Id: I71d0aa826eded8c3b5af961e733167ae40699398

3 years agomediatek: mt8192: Fix non-MISRA compliant code
Yidi Lin [Thu, 10 Dec 2020 11:56:50 +0000 (19:56 +0800)]
mediatek: mt8192: Fix non-MISRA compliant code

CID 364144: Integer handling issues (NO_EFFECT)

The unsigned value is always greater-than-or-equal-to-zero.
Remove such check.

Change-Id: Ia395eb32f55a7098d2581ce7f548b7e1112beaa0
Signed-off-by: Yidi Lin <yidi.lin@mediatek.com>
3 years agomediatek: mt8192: Add MPU support
Xi Chen [Mon, 2 Nov 2020 02:45:34 +0000 (10:45 +0800)]
mediatek: mt8192: Add MPU support

1 Add Domain1(PCIe device) protect address: 0x80000000~0x83FF0000.
2 Add Domain2(SSPM/SPM/DPM/MCUPM) protect address: 0x40000000~0x1FFFF0000.

Signed-off-by: Xi Chen <xixi.chen@mediatek.com>
Change-Id: I4aaed37150076ae5943484c4adadac999a3d1762

3 years agoplat/arm/rdn2: update gic redistributor base address
Vijayenthiran Subramaniam [Tue, 15 Dec 2020 14:37:43 +0000 (20:07 +0530)]
plat/arm/rdn2: update gic redistributor base address

RD-N2 platform has been updated to use six GIC ITS blocks. This results
in change in base address of the GIC Redistributor to accomodate two
new GIC ITS blocks. Update the base address of GICR to reflect the same.

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

3 years agoMerge "Add support for FEAT_MTPMU for Armv8.6" into integration
Mark Dykes [Tue, 15 Dec 2020 19:33:40 +0000 (19:33 +0000)]
Merge "Add support for FEAT_MTPMU for Armv8.6" into integration

3 years agozynqmp: pm: Reimplement pinctrl get/set config parameter EEMI API calls
Mirela Simonovic [Mon, 23 Nov 2020 07:31:14 +0000 (23:31 -0800)]
zynqmp: pm: Reimplement pinctrl get/set config parameter EEMI API calls

Functions are reimplemented to issue system-level pinctrl EEMI calls
to the PMU-FW rather than using MMIO read/write. Macros and functions
that appear to be unused after the change is made are removed.

Signed-off-by: Mirela Simonovic <mirela.simonovic@aggios.com>
Signed-off-by: Rajan Vaja <rajan.vaja@xilinx.com>
Change-Id: I51f2285a79f202cb2ca9f031044002e16dd1e92f

3 years agozynqmp: pm: Reimplement pinctrl set/get function EEMI API
Mirela Simonovic [Thu, 13 Sep 2018 10:49:46 +0000 (12:49 +0200)]
zynqmp: pm: Reimplement pinctrl set/get function EEMI API

Functions are reimplemented to issue system-level pinctrl EEMI calls
to the PMU-FW rather than using MMIO read/write. Macros and functions
that appear to be unused after the change is made are removed.

Signed-off-by: Mirela Simonovic <mirela.simonovic@aggios.com>
Signed-off-by: Rajan Vaja <rajan.vaja@xilinx.com>
Change-Id: I21b8fda855aa69090b85d6aaf411e19560201cb5

3 years agozynqmp: pm: Implement pinctrl request/release EEMI API
Mirela Simonovic [Thu, 13 Sep 2018 10:49:45 +0000 (12:49 +0200)]
zynqmp: pm: Implement pinctrl request/release EEMI API

The calls are just passed through to the PMU-FW. Before issuing
other pinctrl functions the pin should be successfully requested.

Signed-off-by: Mirela Simonovic <mirela.simonovic@aggios.com>
Signed-off-by: Rajan Vaja <rajan.vaja@xilinx.com>
Change-Id: Ibce280edebedf779b3962009c274d0b3d928e0e4

3 years agozynqmp: pm: Update return type in query functions
Rajan Vaja [Tue, 24 Nov 2020 05:33:39 +0000 (21:33 -0800)]
zynqmp: pm: Update return type in query functions

In pm_query_data() function return type is stored in response so
there is no use of return type. Update return type of function
pm_query_data() from enum pm_ret_status to void. Similarly
update return type of pm_api_clock_get_name() and
pm_api_pinctrl_get_function_name() functions.

Signed-off-by: Rajan Vaja <rajan.vaja@xilinx.com>
Change-Id: Id811926f0b4ebcc472480bb94f3b88109eb036cd

3 years agofdts: tc0: Add reserved-memory node for OP-TEE
Arunachalam Ganapathy [Mon, 14 Dec 2020 12:31:32 +0000 (12:31 +0000)]
fdts: tc0: Add reserved-memory node for OP-TEE

Add reserved-memory region for OP-TEE and mark as no-map. This memory
region is used by OP-TEE as non-secure shared RAM.

Signed-off-by: Arunachalam Ganapathy <arunachalam.ganapathy@arm.com>
Change-Id: I5a22999a8c5550024d0f47e848d35924017df245

3 years agoplat: tc0: OP-TEE as S-EL1 SP with SPMC at S-EL2
Arunachalam Ganapathy [Tue, 17 Nov 2020 15:05:01 +0000 (15:05 +0000)]
plat: tc0: OP-TEE as S-EL1 SP with SPMC at S-EL2

This patch adds support to enable OP-TEE as S-EL1 SP with SPMC at S-EL2
     - create SPMC manifest file with OP-TEE as SP
     - add support for ARM_SPMC_MANIFEST_DTS build option
     - add optee entry with ffa as method in tc0.dts

Signed-off-by: Arunachalam Ganapathy <arunachalam.ganapathy@arm.com>
Change-Id: Ia9b5c22c6f605d3886914bbac8ac45e8365671cb

3 years agodocs: arm: Add OPTEE_SP_FW_CONFIG
Arunachalam Ganapathy [Tue, 8 Dec 2020 16:35:18 +0000 (16:35 +0000)]
docs: arm: Add OPTEE_SP_FW_CONFIG

This adds documentation for device tree build flag OPTEE_SP_FW_CONFIG.

Signed-off-by: Arunachalam Ganapathy <arunachalam.ganapathy@arm.com>
Change-Id: Ie45f075cf04182701007f87aa0c8912cd567157a

3 years agoplat: tc0: enable opteed support
Arunachalam Ganapathy [Tue, 17 Nov 2020 14:48:59 +0000 (14:48 +0000)]
plat: tc0: enable opteed support

Enable SPD=opteed support for tc0 platform.

Signed-off-by: Arunachalam Ganapathy <arunachalam.ganapathy@arm.com>
Change-Id: Ieb038d645c68fbe6b5a211c7279569e21b476fc3

3 years agoplat: arm: Increase SP max size
Arunachalam Ganapathy [Tue, 17 Nov 2020 14:56:39 +0000 (14:56 +0000)]
plat: arm: Increase SP max size

Increase SP max size for latest OP-TEE build with debug and
stats enabled.

Signed-off-by: Arunachalam Ganapathy <arunachalam.ganapathy@arm.com>
Change-Id: I4593884e0deb39ada10009f6876d815136f8ee65

3 years agoallwinner: Use RSB for the PMIC connection on H6
Samuel Holland [Mon, 14 Dec 2020 04:34:10 +0000 (22:34 -0600)]
allwinner: Use RSB for the PMIC connection on H6

RSB is faster and more efficient, and it has a simpler driver. As long
as the PMIC is returned to I2C mode after use, the rich OS can later use
either bus.

Change-Id: I0c5f32e88a090c8c5cccb81bd24596b301ab9da7
Signed-off-by: Samuel Holland <samuel@sholland.org>
3 years agoallwinner: Return the PMIC to I2C mode after use
Samuel Holland [Mon, 14 Dec 2020 04:43:15 +0000 (22:43 -0600)]
allwinner: Return the PMIC to I2C mode after use

This gives the rich OS the flexibility to choose between I2C and RSB
communication. Since a runtime address can only be assigned once after
entering RSB mode, it also lets the rich OS choose any runtime address.

Signed-off-by: Samuel Holland <samuel@sholland.org>
Change-Id: Id49c124c5e925985fc31c0ba38c7fb6c941aafa8

3 years agoallwinner: Always use a 3MHz RSB bus clock
Samuel Holland [Mon, 14 Dec 2020 04:53:02 +0000 (22:53 -0600)]
allwinner: Always use a 3MHz RSB bus clock

None of the other drivers (Linux, U-Boot, Crust) need to lower the bus
clock frequency to switch the PMIC to RSB mode. That logic is not needed
here, either. The hardware takes care of running this transaction at the
correct bus frequency.

Signed-off-by: Samuel Holland <samuel@sholland.org>
Change-Id: Idcfe933df4da75d5fd5a4f3e362da40ac26bdad1

3 years agoallwinner: Enable workaround for Cortex-A53 erratum 1530924
Samuel Holland [Mon, 14 Dec 2020 04:22:17 +0000 (22:22 -0600)]
allwinner: Enable workaround for Cortex-A53 erratum 1530924

BL31 reports the following warning during boot:

  WARNING: BL31: cortex_a53: CPU workaround for 1530924 was missing!

Resolve this by enabling the workaround on the affected platforms.

Change-Id: Ia1d5075370be5ae67b7bece96ec0069d9692b14c
Signed-off-by: Samuel Holland <samuel@sholland.org>
3 years agoallwinner: Fix non-default PRELOADED_BL33_BASE
Samuel Holland [Mon, 14 Dec 2020 02:05:11 +0000 (20:05 -0600)]
allwinner: Fix non-default PRELOADED_BL33_BASE

While the Allwinner platform code nominally supported a custom
PRELOADED_BL33_BASE, some references to the BL33 load address used
another constant: PLAT_SUNXI_NS_IMAGE_OFFSET. To allow the DTB search
code to work if a U-Boot BL33 is loaded to a custom address,
consistently use PRELOADED_BL33_BASE. And to avoid this confusion in
the future, remove the other constant.

Signed-off-by: Samuel Holland <samuel@sholland.org>
Change-Id: Ie6b97ae1fdec95d784676aef39200bef161471b0

3 years agoallwinner: Add SPC security setup for H6
Samuel Holland [Mon, 14 Dec 2020 03:56:15 +0000 (21:56 -0600)]
allwinner: Add SPC security setup for H6

The H6 has a "secure port controller" similar to the A64/H5, but with
more ports and a different register layout. Split the platform-specific
parts out into a header, and add the missing MMIO base address.

Signed-off-by: Samuel Holland <samuel@sholland.org>
Change-Id: I3703868bc595459ecf9568b9d1605cb1be014bf5

3 years agoallwinner: Add R_PRCM security setup for H6
Samuel Holland [Mon, 14 Dec 2020 03:44:54 +0000 (21:44 -0600)]
allwinner: Add R_PRCM security setup for H6

H6 has a reorganized R_PRCM compared to A64/H5, with the security switch
at a different offset. Until now, we did not notice, because the switch
has no effect unless the secure mode e-fuse is blown.

Since we are adding more platform-specific CCU registers, move them to
their own header, and out of the memory map (where they do not belong).

Signed-off-by: Samuel Holland <samuel@sholland.org>
Change-Id: Ie77476db0515080954eaa2e32bf6c3de657cda86

3 years agoMerge "TF-A: Add build option for Arm Feature Modifiers" into integration
Manish Pandey [Fri, 11 Dec 2020 17:19:14 +0000 (17:19 +0000)]
Merge "TF-A: Add build option for Arm Feature Modifiers" into integration

3 years agoMerge changes from topic "rdevans" into integration
Madhukar Pappireddy [Fri, 11 Dec 2020 15:21:54 +0000 (15:21 +0000)]
Merge changes from topic "rdevans" into integration

* changes:
  doc: Update list of supported FVP platforms
  board/rdn2: add board support for rdn2 platform
  plat/arm/sgi: adapt to changes in memory map
  plat/arm/sgi: add platform id value for rdn2 platform
  plat/arm/sgi: platform definitions for upcoming platforms
  plat/arm/sgi: refactor header file inclusions
  plat/arm/sgi: refactor the inclusion of memory mapping

3 years agoAdd support for FEAT_MTPMU for Armv8.6
Javier Almansa Sobrino [Mon, 23 Nov 2020 18:38:15 +0000 (18:38 +0000)]
Add support for FEAT_MTPMU for Armv8.6

If FEAT_PMUv3 is implemented and PMEVTYPER<n>(_EL0).MT bit is implemented
as well, it is possible to control whether PMU counters take into account
events happening on other threads.

If FEAT_MTPMU is implemented, EL3 (or EL2) can override the MT bit
leaving it to effective state of 0 regardless of any write to it.

This patch introduces the DISABLE_MTPMU flag, which allows to diable
multithread event count from EL3 (or EL2). The flag is disabled
by default so the behavior is consistent with those architectures
that do not implement FEAT_MTPMU.

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

3 years agoTF-A: Add build option for Arm Feature Modifiers
Alexei Fedorov [Mon, 7 Dec 2020 16:38:53 +0000 (16:38 +0000)]
TF-A: Add build option for Arm Feature Modifiers

This patch adds a new ARM_ARCH_FEATURE build option
to add support for compiler's feature modifiers.
It has the form '[no]feature+...' and defaults to
'none'. This option translates into compiler option
'-march=armvX[.Y]-a+[no]feature+...'.

Change-Id: I37742f270a898f5d6968e146cbcc04cbf53ef2ad
Signed-off-by: Alexei Fedorov <Alexei.Fedorov@arm.com>
3 years agoMerge "xilinx: versal: fix static failure" into integration
Madhukar Pappireddy [Thu, 10 Dec 2020 14:28:28 +0000 (14:28 +0000)]
Merge "xilinx: versal: fix static failure" into integration

3 years agoxilinx: versal: fix static failure
Manish Pandey [Thu, 10 Dec 2020 10:48:22 +0000 (10:48 +0000)]
xilinx: versal: fix static failure

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

3 years agoMerge changes from topic "versal-bug-fixes-and-new-apis" into integration
Manish Pandey [Wed, 9 Dec 2020 22:44:44 +0000 (22:44 +0000)]
Merge changes from topic "versal-bug-fixes-and-new-apis" into integration

* changes:
  plat: xilinx: versal: Add support of register notifier
  plat: xilinx: versal: Add support to get clock rate value
  plat: xilinx: versal: Add support of set max latency for the device
  plat: versal: Add InitFinalize API call
  xilinx: versal: Updated Response of QueryData API call
  plat:xilinx:versal: Use defaults when PDI is without sw partitions
  plat: xilinx: Mask unnecessary bytes of return error code
  xilinx: versal: Skip store/restore of GIC during CPU idle
  plat: versal: Update API list in feature check
  xilinx: versal: Do not pass ACPU0 always in set_wakeup_source()

3 years agoMerge changes from topic "secure_no_primary" into integration
Olivier Deprez [Wed, 9 Dec 2020 15:08:27 +0000 (15:08 +0000)]
Merge changes from topic "secure_no_primary" into integration

* changes:
  spm: provide number of vCPUs and VM size for first SP
  spm: remove chosen node from SPMC manifests
  spm: move OP-TEE SP manifest DTS to FVP platform
  spm: update OP-TEE SP manifest with device-regions node
  spm: remove device-memory node from SPMC manifests

3 years agoMerge "docs: Update the FIP generation process using SP images" into integration
Olivier Deprez [Wed, 9 Dec 2020 14:08:06 +0000 (14:08 +0000)]
Merge "docs: Update the FIP generation process using SP images" into integration

3 years agodocs: Update the FIP generation process using SP images
Manish V Badarkhe [Wed, 25 Nov 2020 21:08:40 +0000 (21:08 +0000)]
docs: Update the FIP generation process using SP images

Updated the documentation for the FIP generation process using
SP images.

Change-Id: I4df7f379f08f33adba6f5c82904291576972e106
Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
3 years agodoc: Update list of supported FVP platforms
Aditya Angadi [Tue, 8 Dec 2020 08:05:27 +0000 (13:35 +0530)]
doc: Update list of supported FVP platforms

Updated the list of supported FVP platforms with support for RD-N2 FVP.

Change-Id: I861bbb6d520c20e718f072e118c66dab61fe1386
Signed-off-by: Aditya Angadi <aditya.angadi@arm.com>
3 years agoboard/rdn2: add board support for rdn2 platform
Aditya Angadi [Thu, 19 Nov 2020 12:35:33 +0000 (18:05 +0530)]
board/rdn2: add board support for rdn2 platform

Add the initial board support for RD-N2 platform.

Change-Id: I8325885bf248dd92191d6fc92a2da91c23118f8c
Signed-off-by: Aditya Angadi <aditya.angadi@arm.com>
3 years agoplat/arm/sgi: adapt to changes in memory map
Aditya Angadi [Thu, 19 Nov 2020 12:02:41 +0000 (17:32 +0530)]
plat/arm/sgi: adapt to changes in memory map

Upcoming RD platforms will have an updated memory map for the various
pheripherals on the system. So, for the newer platforms, handle the
memory mapping and other platform specific functionality separately
from the existing platforms.

Change-Id: Iab1355a4c8ea1f6db4f79fcdd6eed907903b6a18
Signed-off-by: Aditya Angadi <aditya.angadi@arm.com>
3 years agoplat/arm/sgi: add platform id value for rdn2 platform
Aditya Angadi [Thu, 19 Nov 2020 11:48:21 +0000 (17:18 +0530)]
plat/arm/sgi: add platform id value for rdn2 platform

In preparation for adding the board support for RD-N2 platform, add
macros to define the platform id and the corresponding SCMI platform
info for the RD-N2 platform.

Change-Id: Ie764ae618732b39e316f7ed080421f5d79adab21
Signed-off-by: Aditya Angadi <aditya.angadi@arm.com>
3 years agoplat/arm/sgi: platform definitions for upcoming platforms
Aditya Angadi [Tue, 17 Nov 2020 15:47:58 +0000 (21:17 +0530)]
plat/arm/sgi: platform definitions for upcoming platforms

Upcoming RD platforms have changes in the SOC address map from that
of the existing platforms. As a prepartory step to add support for the
upcoming platforms, create platform definitions for those platforms.

Change-Id: Ic5df9fed02c44e65ec260bbb5efc1b8dbd919a56
Signed-off-by: Aditya Angadi <aditya.angadi@arm.com>
3 years agoplat/arm/sgi: refactor header file inclusions
Aditya Angadi [Wed, 18 Nov 2020 03:02:30 +0000 (08:32 +0530)]
plat/arm/sgi: refactor header file inclusions

Upcoming RD platforms have deviations in various definitions of
platform macros from that of the exisiting platforms. In preparation
for adding support for those upcoming RD platforms, refactor the
header file inclusion to allow newer platforms to use a different
set of platform macros.

Change-Id: Ic80283ddadafaa7f766f300652cb0d4e507efdb6
Signed-off-by: Aditya Angadi <aditya.angadi@arm.com>
3 years agoplat/arm/sgi: refactor the inclusion of memory mapping
Aditya Angadi [Wed, 18 Nov 2020 02:57:15 +0000 (08:27 +0530)]
plat/arm/sgi: refactor the inclusion of memory mapping

Upcoming RD platforms have a different memory map from those of the
existing platforms. So make the build of the existing mmap entries to be
usable only for existing platforms and let upcoming platforms define
a different set of mmap entries.

Change-Id: Id1ef0293efe8749c78a99237e78d32573c7233aa
Signed-off-by: Aditya Angadi <aditya.angadi@arm.com>
3 years agoMerge "rcar_gen3: drivers: console: Treat log as device memory" into integration
Manish Pandey [Tue, 8 Dec 2020 23:02:36 +0000 (23:02 +0000)]
Merge "rcar_gen3: drivers: console: Treat log as device memory" into integration

3 years agoMerge changes from topic "zynqmp-bug-fixes" into integration
Manish Pandey [Tue, 8 Dec 2020 22:53:13 +0000 (22:53 +0000)]
Merge changes from topic "zynqmp-bug-fixes" into integration

* changes:
  zynqmp: pm: Update flags in common clk divisor node
  zynqmp: pm_api_clock: Copy only the valid bytes

3 years agorcar_gen3: drivers: console: Treat log as device memory
Marek Vasut [Sun, 8 Nov 2020 18:13:32 +0000 (19:13 +0100)]
rcar_gen3: drivers: console: Treat log as device memory

The BL31 log driver is registered before the xlat tables are initialized,
at that point the log memory is configured as device memory and can only
be accessed with up-to-32bit aligned accesses. Adjust the driver to do
just that.

The memset() call has to be replaced by a loop of 32bit writes to the log,
the memcpy() is trivial to replace with a single 32bit write of the entire
TLOG word. In the end, this even simplifies the code.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Change-Id: Ie9152e782e67d93e7236069a294df812e2b873bf

3 years agozynqmp: pm: Update flags in common clk divisor node
Ravi Patel [Tue, 18 Sep 2018 09:14:12 +0000 (02:14 -0700)]
zynqmp: pm: Update flags in common clk divisor node

Current implementation doesn't support change of div1 value if clk
has 2 divisor because div1 clk is the parent of the div2 clk and div2
clk does not have SET_RATE_PARENT flag.
This causes div1 value to be fixed and only value of div2 will be
adjusted according to required clock rate.

Example:
 Consider a case of nand_ref clock which has 2 divisor and 1 mux.
 The frequency of mux clock is 1500MHz and default value of div1 and
 div2 is 15 and 1 respectively. So the final clock will be of 100MHz.
 When driver requests 80MHz for nand_ref clock, clock framework will
 adjust the div2 value to 1 (setting div2 value 2 results final clock
 to 50MHz which is more inaccurate compare to 100Mhz) which results
 final clock to 100MHz.
 Ideally the value of div1 and div2 should be updated to 19 and 1
 respectively so that final clock goes to around 78MHz.

This patch fixes above problem by allowing change in div1 value.

Signed-off-by: Ravi Patel <ravi.patel@xilinx.com>
Signed-off-by: Rajan Vaja <rajan.vaja@xilinx.com>
Change-Id: Ibb98f6748d28653fdd1e59bf433b6a37ce9c1a58

3 years agozynqmp: pm_api_clock: Copy only the valid bytes
Siva Durga Prasad Paladugu [Mon, 23 Nov 2020 06:10:12 +0000 (22:10 -0800)]
zynqmp: pm_api_clock: Copy only the valid bytes

This patches copies only the valid part of string and
avoids filling junk at the end.

Signed-off-by: Siva Durga Prasad Paladugu <siva.durga.paladugu@xilinx.com>
Signed-off-by: Rajan Vaja <rajan.vaja@xilinx.com>
Change-Id: If23772f31f9cf7f5042e8bfc474fbfe77dcd90e7

3 years agoMerge changes Ibbee37c8,Ic3a13c83,Ib7f2380a,I83b477fd,I284956d4, ... into integration
Manish Pandey [Tue, 8 Dec 2020 16:29:52 +0000 (16:29 +0000)]
Merge changes Ibbee37c8,Ic3a13c83,Ib7f2380a,I83b477fd,I284956d4, ... into integration

* changes:
  mediatek: mt8192: dcm: Add mcusys related dcm drivers
  mediatek: mt8192: add ptp3 driver
  mediatek: mt8192: Add SiP service
  mediatek: mt8192: add uart save and restore api
  mediatek: mt8192: modify sys_cirq driver
  mediatek: mt8192: add power-off support
  mediatek: mt8192: add pmic mt6359p driver
  mediatek: mt8192: Initialize delay_timer
  mediatek: mt8192: enable NS access for systimer
  mediatek: mt8192: Add CPU hotplug and MCDI support
  mediatek: mt8192: Add MCDI drivers
  mediatek: mt8192: Add SPMC driver

3 years agospm: provide number of vCPUs and VM size for first SP
Olivier Deprez [Wed, 25 Nov 2020 09:29:41 +0000 (10:29 +0100)]
spm: provide number of vCPUs and VM size for first SP

The primary VM concept is removed from the SPMC.
Update the SPMC manifests with number of Execution Contexts
and SP workspace size for the first Secure Partition (as it
is done for NWd secondary VMs and other SPs).

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

3 years agospm: remove chosen node from SPMC manifests
Olivier Deprez [Tue, 24 Nov 2020 16:32:43 +0000 (17:32 +0100)]
spm: remove chosen node from SPMC manifests

The chosen node is no longer required as the SPMC implements
a specific boot flow which no longer requires this node.

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

3 years agospm: move OP-TEE SP manifest DTS to FVP platform
Olivier Deprez [Thu, 3 Dec 2020 14:13:49 +0000 (15:13 +0100)]
spm: move OP-TEE SP manifest DTS to FVP platform

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

3 years agospm: update OP-TEE SP manifest with device-regions node
Olivier Deprez [Thu, 12 Nov 2020 17:14:22 +0000 (18:14 +0100)]
spm: update OP-TEE SP manifest with device-regions node

Specify peripherals accessed by OP-TEE as a Secure Partition
running as a VM managed by the SPMC.

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

3 years agospm: remove device-memory node from SPMC manifests
Olivier Deprez [Tue, 10 Nov 2020 16:50:43 +0000 (17:50 +0100)]
spm: remove device-memory node from SPMC manifests

The PVM concept is removed from the SPMC so the device-memory
node which is specifying the device memory range for the PVM
is no longer applicable.

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

3 years agomediatek: mt8192: dcm: Add mcusys related dcm drivers
Nina Wu [Tue, 8 Sep 2020 06:36:07 +0000 (14:36 +0800)]
mediatek: mt8192: dcm: Add mcusys related dcm drivers

1. Add mcusys related dcm drivers
2. Turn on mcusys-related dcm by default

Change-Id: Ibbee37c87cc38e7a6cd7c93c2fc0817aad6dbe95
Signed-off-by: Nina Wu <nina-cm.wu@mediatek.com>
3 years agomediatek: mt8192: add ptp3 driver
elly.chiang [Tue, 25 Aug 2020 14:31:14 +0000 (22:31 +0800)]
mediatek: mt8192: add ptp3 driver

enable PTP3 for protecting sysPi

Signed-off-by: elly.chiang <elly.chiang@mediatek.com>
Change-Id: Ic3a13c8314f829dca8547861b98639d1d9444eb2

3 years agomediatek: mt8192: Add SiP service
Nina Wu [Wed, 19 Aug 2020 09:20:15 +0000 (17:20 +0800)]
mediatek: mt8192: Add SiP service

Add the basic SiP service

Change-Id: Ib7f2380aab910adf8d33498a79ecd287273907c5
Signed-off-by: Nina Wu <nina-cm.wu@mediatek.com>
3 years agomediatek: mt8192: add uart save and restore api
Yuchen Huang [Sat, 1 Aug 2020 08:23:12 +0000 (16:23 +0800)]
mediatek: mt8192: add uart save and restore api

When system resume, we want to print log as soon as possible.
So we add uart save and restore api, and they will be called
when systtem suspend and resume.

Change-Id: I83b477fd2b39567c9c6b70534ef186993f7053ae
Signed-off-by: Yuchen Huang <yuchen.huang@mediatek.com>
Signed-off-by: Roger Lu <roger.lu@mediatek.com>
3 years agomediatek: mt8192: modify sys_cirq driver
G.Pangao [Fri, 6 Nov 2020 01:20:25 +0000 (09:20 +0800)]
mediatek: mt8192: modify sys_cirq driver

1.Modify this driver to make it more complete and more standard.
2.And makes this driver available for more IC services.
3.Solve some bugs in the software.

Signed-off-by: G.Pangao <gtk_pangao@mediatek.com>
Change-Id: I284956d47ebbbd550ec93767679181185e442348

3 years agomediatek: mt8192: add power-off support
Hsin-Hsiung Wang [Wed, 12 Aug 2020 08:32:10 +0000 (16:32 +0800)]
mediatek: mt8192: add power-off support

add power-off support

Signed-off-by: Hsin-Hsiung Wang <hsin-hsiung.wang@mediatek.com>
Change-Id: If19e99971515a8ae1ac9ae21046e4382adc18a69

3 years agomediatek: mt8192: add pmic mt6359p driver
Hsin-Hsiung Wang [Wed, 12 Aug 2020 08:31:06 +0000 (16:31 +0800)]
mediatek: mt8192: add pmic mt6359p driver

add pmic mt6359p driver

Signed-off-by: Hsin-Hsiung Wang <hsin-hsiung.wang@mediatek.com>
Change-Id: I20f2218f7d2087e8d2bf31258cf92a02e0dab77d

3 years agomediatek: mt8192: Initialize delay_timer
Nina Wu [Wed, 5 Aug 2020 05:53:59 +0000 (13:53 +0800)]
mediatek: mt8192: Initialize delay_timer

Init delay_timer for the use of delay functions

Change-Id: I35aefd7515bb9259634c8b6bc37d8c74da96e8f1
Signed-off-by: Nina Wu <nina-cm.wu@mediatek.com>
3 years agomediatek: mt8192: enable NS access for systimer
Dehui Sun [Mon, 6 Jul 2020 10:01:42 +0000 (18:01 +0800)]
mediatek: mt8192: enable NS access for systimer

Enable NS access for all systimers.

Signed-off-by: Dehui Sun <dehui.sun@mediatek.com>
Change-Id: I3693997082a1d6f09fef5a79b6cf5a91be46cb8a

3 years agomediatek: mt8192: Add CPU hotplug and MCDI support
James Liao [Tue, 16 Jun 2020 03:48:36 +0000 (11:48 +0800)]
mediatek: mt8192: Add CPU hotplug and MCDI support

Implement PSCI platform OPs to support CPU hotplug and MCDI.

Change-Id: I31abfc752b69ac40e70bc9e7a55163eb39776c44
Signed-off-by: James Liao <jamesjj.liao@mediatek.com>
3 years agomediatek: mt8192: Add MCDI drivers
James Liao [Mon, 15 Jun 2020 08:41:03 +0000 (16:41 +0800)]
mediatek: mt8192: Add MCDI drivers

Add MCDI related drivers to handle CPU powered on/off in CPU suspend.

Change-Id: I5110461e8eef86f8383b45f197ec5cb10dbfeb3e
Signed-off-by: James Liao <jamesjj.liao@mediatek.com>
3 years agomediatek: mt8192: Add SPMC driver
James Liao [Tue, 16 Jun 2020 05:28:28 +0000 (13:28 +0800)]
mediatek: mt8192: Add SPMC driver

Add SPMC driver for CPU power on/off.

Change-Id: I526b98d5885855efce019dd09cfd93b8816cbf19
Signed-off-by: James Liao <jamesjj.liao@mediatek.com>
3 years agoMerge changes from topic "zynqmp-misc-enhancement" into integration
Madhukar Pappireddy [Mon, 7 Dec 2020 18:13:50 +0000 (18:13 +0000)]
Merge changes from topic "zynqmp-misc-enhancement" into integration

* changes:
  plat: xilinx: zynqmp: Enable log messages for debug
  plat: zynqmp: Change macro name of PM_BOOT_HEALTH_STATUS_REG

3 years agoMerge changes from topic "marvell-a3k-makefile" into integration
Manish Pandey [Mon, 7 Dec 2020 11:29:46 +0000 (11:29 +0000)]
Merge changes from topic "marvell-a3k-makefile" into integration

* changes:
  plat: marvell: armada: a3k: Simplify check if WTP variable is defined
  plat: marvell: armada: a3k: Split building $(WTMI_MULTI_IMG) and $(TIMDDRTOOL)
  plat: marvell: armada: Maximal size of bl1 image in mrvl_bootimage is 128kB
  plat: marvell: armada: Add missing FORCE, .PHONY and clean targets
  plat: marvell: armada: a3k: Use make ifeq/endif syntax for $(MARVELL_SECURE_BOOT) code
  plat: marvell: armada: a3k: Build $(WTMI_ENC_IMG) in $(BUILD_PLAT) directory
  plat: marvell: armada: a3k: Do not remove external WTMI image files outside of TF-A repository
  plat: marvell: armada: a3k: Do not modify $(WTMI_MULTI_IMG)
  plat: marvell: armada: a3k: Do not modify $(WTMI_IMG)

3 years agoplat: xilinx: versal: Add support of register notifier
Tejas Patel [Wed, 25 Nov 2020 09:56:57 +0000 (01:56 -0800)]
plat: xilinx: versal: Add support of register notifier

Add support of register notifier.

Signed-off-by: Tejas Patel <tejas.patel@xilinx.com>
Signed-off-by: Rajan Vaja <rajan.vaja@xilinx.com>
Change-Id: I41ef4c63abcc9aee552790b843adb25a5fd0c23e

3 years agoplat: xilinx: versal: Add support to get clock rate value
Tejas Patel [Tue, 1 Sep 2020 11:43:53 +0000 (04:43 -0700)]
plat: xilinx: versal: Add support to get clock rate value

Add support to get clock's rate value.

Signed-off-by: Tejas Patel <tejas.patel@xilinx.com>
Signed-off-by: Rajan Vaja <rajan.vaja@xilinx.com>
Change-Id: I3ed881053ef323b2ca73e13edd0affda860d381d

3 years agoplat: xilinx: versal: Add support of set max latency for the device
Tejas Patel [Wed, 25 Nov 2020 09:53:12 +0000 (01:53 -0800)]
plat: xilinx: versal: Add support of set max latency for the device

Add support of set max latency, to change in the maximum powerup latency
requirements for a specific device currently used by Subsystem.

Signed-off-by: Tejas Patel <tejas.patel@xilinx.com>
Signed-off-by: Rajan Vaja <rajan.vaja@xilinx.com>
Change-Id: I8749886abb1a7884a42c4d156d89c9cd562a5b1a

3 years agoplat: versal: Add InitFinalize API call
Ravi Patel [Mon, 12 Aug 2019 10:10:10 +0000 (03:10 -0700)]
plat: versal: Add InitFinalize API call

Add support to call InitFinalize API in Versal which calls
corresponding LibPM API.

Signed-off-by: Ravi Patel <ravi.patel@xilinx.com>
Signed-off-by: Rajan Vaja <rajan.vaja@xilinx.com>
Change-Id: I3428b7245b4db1ef6db8a90b7ad20b6e484ed3b2

3 years agoxilinx: versal: Updated Response of QueryData API call
Rajan Vaja [Mon, 23 Nov 2020 12:13:54 +0000 (04:13 -0800)]
xilinx: versal: Updated Response of QueryData API call

For the current XilPM calls, The handler of IPI returns information
with 16 Bytes data.
So during QueryData API call for the ClockName and PinFunctionName,
response data(name of clock or function) response[0..3] are used to
return name. And status is not being returned for such API.

Updated XilPM calls reply in a consistent way and The handler of IPI
return information with 32Bytes data. Where response[0] always set
to status.
For the version-2 of QueryData API, during call for the ClockName
and PinFunctionName, response data(name of clock or function) get as
response[1...4].

To support both the version of QueryData API, added version based
compatibility by the use of feature check.

Signed-off-by: Venkatesh Yadav Abbarapu <venkatesh.abbarapu@xilinx.com>
Signed-off-by: Amit Sunil Dhamne <amit.sunil.dhamne@xilinx.com>
Signed-off-by: Rajan Vaja <rajan.vaja@xilinx.com>
Change-Id: I336128bff7bbe659903b0f8ce20ae6da7e3b51b4

3 years agoplat:xilinx:versal: Use defaults when PDI is without sw partitions
Venkatesh Yadav Abbarapu [Mon, 23 Nov 2020 11:29:51 +0000 (03:29 -0800)]
plat:xilinx:versal: Use defaults when PDI is without sw partitions

In JTAG mode check the ATF handoff structure, if the magic string
is not present then use bl32 and bl33 default values.

Signed-off-by: Venkatesh Yadav Abbarapu <venkatesh.abbarapu@xilinx.com>
Signed-off-by: Rajan Vaja <rajan.vaja@xilinx.com>
Change-Id: I1f2c4a2060d8a2e70d3b5fb2473124b685f257fc

3 years agoplat: xilinx: Mask unnecessary bytes of return error code
Ravi Patel [Mon, 23 Nov 2020 12:19:08 +0000 (04:19 -0800)]
plat: xilinx: Mask unnecessary bytes of return error code

Versal firmware adds extra error codes along with PM error codes
while sending response to driver. This makes incorrect error
identification at driver side.

To fix this, mask the unnecessary error bytes before sending the
error code to the driver.

Signed-off-by: Ravi Patel <ravi.patel@xilinx.com>
Signed-off-by: Rajan Vaja <rajan.vaja@xilinx.com>
Change-Id: I18c2f3bd2d067e91344852c2f0c1bafea0e6eb23

3 years agoxilinx: versal: Skip store/restore of GIC during CPU idle
Ravi Patel [Fri, 21 Jun 2019 12:00:49 +0000 (05:00 -0700)]
xilinx: versal: Skip store/restore of GIC during CPU idle

GIC registers needs to be stored/restored during system
suspend/resume only and not during CPU idle.
During CPU idle, minimum 1 CPU is in ON state.

Signed-off-by: Ravi Patel <ravi.patel@xilinx.com>
Signed-off-by: Rajan Vaja <rajan.vaja@xilinx.com>
Change-Id: I5de2ce3a61bf4260f9385349202b0f592a47aaba

3 years agoplat: versal: Update API list in feature check
Venkatesh Yadav Abbarapu [Wed, 11 Dec 2019 03:16:36 +0000 (22:16 -0500)]
plat: versal: Update API list in feature check

Add below API in feature check list which is actually present in
firmware:
- PM_GET_CHIPID

Signed-off-by: Venkatesh Yadav Abbarapu <venkatesh.abbarapu@xilinx.com>
Signed-off-by: Ravi Patel <ravi.patel@xilinx.com>
Signed-off-by: Rajan Vaja <rajan.vaja@xilinx.com>
Change-Id: I98b82da74164f065c8835861f74b0f2855e9bcbf

3 years agoxilinx: versal: Do not pass ACPU0 always in set_wakeup_source()
Ravi Patel [Tue, 30 Jul 2019 11:10:07 +0000 (04:10 -0700)]
xilinx: versal: Do not pass ACPU0 always in set_wakeup_source()

Existing code passes ACPU0 to LibPM as node_id in set_wakeup_source()
call because last suspending core will be ACPU0 in most of the case.

Now it may be possible that user may disable the ACPU0 using hot-plug
and after that it suspends Linux. So in that case ACPU0 will not be
last suspending core.

To overcome above scenario, pass the current running processor ID
while calling set_wakeup_source().

Signed-off-by: Ravi Patel <ravi.patel@xilinx.com>
Signed-off-by: Rajan Vaja <rajan.vaja@xilinx.com>
Change-Id: If15354c2150b5bb1305b5f93ca4e8c7a81d59f0a

3 years agoplat: marvell: armada: a3k: Simplify check if WTP variable is defined
Pali Rohár [Thu, 3 Dec 2020 11:00:47 +0000 (12:00 +0100)]
plat: marvell: armada: a3k: Simplify check if WTP variable is defined

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

3 years agoplat: marvell: armada: a3k: Split building $(WTMI_MULTI_IMG) and $(TIMDDRTOOL)
Pali Rohár [Mon, 23 Nov 2020 18:49:23 +0000 (19:49 +0100)]
plat: marvell: armada: a3k: Split building $(WTMI_MULTI_IMG) and $(TIMDDRTOOL)

These two targets are build by make subprocesses and are independent.
So splitting them into own targets allow make to build them in parallel.
$(TIMBUILD) script depends on $(TIMDDRTOOL) so specify it in Makefile.

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

3 years agoplat: marvell: armada: Maximal size of bl1 image in mrvl_bootimage is 128kB
Pali Rohár [Thu, 3 Dec 2020 10:59:53 +0000 (11:59 +0100)]
plat: marvell: armada: Maximal size of bl1 image in mrvl_bootimage is 128kB

Add check when building mrvl_bootimage that size of bl1 image is not bigger
than maximal size.

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

3 years agoplat: marvell: armada: Add missing FORCE, .PHONY and clean targets
Pali Rohár [Mon, 23 Nov 2020 18:45:28 +0000 (19:45 +0100)]
plat: marvell: armada: Add missing FORCE, .PHONY and clean targets

FORCE target is used as a dependency for other file targets which needs to
be always rebuilt. .PHONY target is standard Makefile target which specify
non-file targets and therefore needs to be always rebuilt.

Targets clean, realclean and distclean are .PHONY targets used to remove
built files. Correctly set that mrvl_clean target is prerequisite for these
clean targets to ensure that built files are removed.

Finally this change with usage of FORCE target allows to remove mrvl_clean
hack from the prerequisites of a8k ${DOIMAGETOOL} target which was used
just to ensure that ${DOIMAGETOOL} is always rebuilt via make subprocess.

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

3 years agoplat: marvell: armada: a3k: Use make ifeq/endif syntax for $(MARVELL_SECURE_BOOT...
Pali Rohár [Mon, 23 Nov 2020 18:37:28 +0000 (19:37 +0100)]
plat: marvell: armada: a3k: Use make ifeq/endif syntax for $(MARVELL_SECURE_BOOT) code

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

3 years agoplat: marvell: armada: a3k: Build $(WTMI_ENC_IMG) in $(BUILD_PLAT) directory
Pali Rohár [Mon, 23 Nov 2020 18:34:43 +0000 (19:34 +0100)]
plat: marvell: armada: a3k: Build $(WTMI_ENC_IMG) in $(BUILD_PLAT) directory

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

3 years agoplat: marvell: armada: a3k: Do not remove external WTMI image files outside of TF...
Pali Rohár [Mon, 23 Nov 2020 18:22:37 +0000 (19:22 +0100)]
plat: marvell: armada: a3k: Do not remove external WTMI image files outside of TF-A repository

Create copy of WTMI images instead of moving them into TF-A build directory.

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

3 years agoplat: marvell: armada: a3k: Do not modify $(WTMI_MULTI_IMG)
Pali Rohár [Mon, 23 Nov 2020 18:19:04 +0000 (19:19 +0100)]
plat: marvell: armada: a3k: Do not modify $(WTMI_MULTI_IMG)

Rather create a temporary copy in $(BUILD_PLAT) and modify only copy.

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

3 years agoplat: marvell: armada: a3k: Do not modify $(WTMI_IMG)
Pali Rohár [Mon, 23 Nov 2020 18:14:40 +0000 (19:14 +0100)]
plat: marvell: armada: a3k: Do not modify $(WTMI_IMG)

$(WTMI_IMG) is used only by $(MAKE) subprocess in $(DOIMAGEPATH) directory.
So calling truncate on $(WTMI_IMG) after $(MAKE) in $(DOIMAGEPATH) has no
effect and can just damage input file for future usage. Therefore remove
this truncate call.

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

3 years agoplat: xilinx: zynqmp: Enable log messages for debug
Venkatesh Yadav Abbarapu [Fri, 10 Jan 2020 10:01:35 +0000 (03:01 -0700)]
plat: xilinx: zynqmp: Enable log messages for debug

Save some space by enabling the log messages like bl33 address
only for debug builds. Also check the bl33 and bl32 address and
print only if this is not NULL.

Signed-off-by: Venkatesh Yadav Abbarapu <venkatesh.abbarapu@xilinx.com>
Signed-off-by: Rajan Vaja <rajan.vaja@xilinx.com>
Change-Id: I58d846bf69a75e839eb49abcbb9920af13296886

3 years agoplat: zynqmp: Change macro name of PM_BOOT_HEALTH_STATUS_REG
Tejas Patel [Mon, 23 Nov 2020 07:37:55 +0000 (23:37 -0800)]
plat: zynqmp: Change macro name of PM_BOOT_HEALTH_STATUS_REG

For boot health status PMU Global General Storage Register 4 is
used. GGS4 can be used for other purpose along with boot health
status. So, change its name from PM_BOOT_HEALTH_STATUS_REG
to PMU_GLOBAL_GEN_STORAGE4.

Signed-off-by: Tejas Patel <tejas.patel@xilinx.com>
Signed-off-by: Rajan Vaja <rajan.vaja@xilinx.com>
Change-Id: I2f5c4c6a161121e7cdb4b9f0f8711d0dad16c372