- 17 Mar, 2020 1 commit
-
-
Manish Pandey authored
-
- 16 Mar, 2020 1 commit
-
-
Mark Dykes authored
-
- 13 Mar, 2020 3 commits
-
-
Sandrine Bailleux authored
-
Sandrine Bailleux authored
-
Sandrine Bailleux authored
-
- 12 Mar, 2020 14 commits
-
-
Mark Dykes authored
-
Mark Dykes authored
-
Max Shvetsov authored
This patch introduces the `SPCI_ID_GET` interface which will return the ID of the calling SPCI component. Returns 0 for requests from the non-secure world and the SPCI component ID as specified in the manifest for secure world requests. Change-Id: Icf81eb1d0e1d7d5c521571e04972b6e2d356e0d1 Signed-off-by: Max Shvetsov <maksims.svecovs@arm.com> Signed-off-by: Marc Bonnici <marc.bonnici@arm.com>
-
Sandrine Bailleux authored
Since commit 3bff910d ("Introduce COT build option"), it is now possible to select a different Chain of Trust than the TBBR-Client one. Make a few adjustments in the documentation to reflect that. Also make some minor improvements (fixing typos, better formatting, ...) along the way. Change-Id: I3bbadc441557e1e13311b6fd053fdab6b10b1ba2 Signed-off-by: Sandrine Bailleux <sandrine.bailleux@arm.com>
-
Sandrine Bailleux authored
The TBBR documentation has been written along with an early implementation of the code. At that time, the range of supported encryption and hash algorithms was failry limited. Since then, support for other algorithms has been added in TF-A but the documentation has not been updated. Instead of listing them all, which would clutter this document while still leaving it at risk of going stale in the future, remove specific references to the original algorithms and point the reader at the relevant comprehensive document for further details. Change-Id: I29dc50bc1d53b728091a1fbaa1c3970fb999f7d5 Signed-off-by: Sandrine Bailleux <sandrine.bailleux@arm.com>
-
Mark Dykes authored
* changes: plat/arm/fvp: populate pwr domain descriptor dynamically fconf: Extract topology node properties from HW_CONFIG dtb fconf: necessary modifications to support fconf in BL31 & SP_MIN fconf: enhancements to firmware configuration framework
-
Chris Kay authored
To accommodate the increasing size of the SCP_BL2 binary, the base address of the memory region allocated to SCP_BL2 has been moved downwards from its current (mostly) arbitrary address to the beginning of the non-shared trusted SRAM. Change-Id: I086a3765bf3ea88f45525223d765dc0dbad6b434 Signed-off-by: Chris Kay <chris.kay@arm.com>
-
Mark Dykes authored
-
Soby Mathew authored
-
Aditya Angadi authored
Add CLCD, HDLCD, PCI and VIRTIO devices as source interfaces for TZC filter unit to enable DMA for these devices. Change-Id: Ifad2e56b18605311936e03cfcccda573cac7e60a Signed-off-by: Aditya Angadi <aditya.angadi@arm.com>
-
Manish Pandey authored
-
Sandrine Bailleux authored
-
Sandrine Bailleux authored
* changes: Tegra210: Remove "unsupported func ID" error msg Tegra210: support for secure physical timer spd: tlkd: secure timer interrupt handler Tegra: smmu: export handlers to read/write SMMU registers Tegra: smmu: remove context save sequence Tegra: bpmp: fixup TEGRA_CLK_SE values for Tegra186/Tegra194 Tegra194: memctrl: lock some more MC SID security configs Tegra194: add SE support to generate SHA256 of TZRAM Tegra194: store TZDRAM base/size to scratch registers Tegra194: fix warnings for extra parentheses
-
Madhukar Pappireddy authored
The motivation behind this patch and following patches is to extract information about the platform in runtime rather than depending on compile time macros such as FVP_CLUSTER_COUNT. This partially enables us to use a single binary for a family of platforms which all have similar hardware capabilities but differ in configurations. we populate the data structure describing the power domain hierarchy of the platform dynamically by querying the number of clusters and cpus using fconf getter APIs. Compile time macro such as FVP_CLUSTER_COUNT is still needed as it determines the size of related data structures. Note that the cpu-map node in HW_CONFIG dts represents a logical hierarchy of power domains of CPU. However, in reality, the power domains may not have been physically built in such hierarchy. Change-Id: Ibcbb5ca7b2c969f8ad03ab2eab289725245af7a9 Signed-off-by: Madhukar Pappireddy <madhukar.pappireddy@arm.com>
-
- 11 Mar, 2020 21 commits
-
-
Kalyani Chidambaram authored
The platform sip is reporting a "unsupported function ID" if the smc function id is not pmc command. When actually the smc function id could be specific to the tegra sip handler. This patch removes the error reported. Change-Id: Ia3c8545d345746c5eea6d75b9e6957ca23ae9ca3 Signed-off-by: Kalyani Chidambaram <kalyanic@nvidia.com>
-
Varun Wadekar authored
This patch enables on-chip timer1 interrupts for Tegra210 platforms. Change-Id: Ic7417dc0e69264d7c28aa012fe2322cd30838f3e Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
-
Varun Wadekar authored
This patch adds an interrupt handler for TLK. On receiving an interrupt, the source of the interrupt is determined and the interrupt is marked complete. The IRQ number is passed to TLK along with a special SMC function ID. TLK issues an SMC to notify completion of the interrupt handler in the S-EL1 world. Change-Id: I76f28cee6537245c5e448d2078f86312219cea1a Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
-
Varun Wadekar authored
This patch exports the SMMU register read/write handlers for platforms. Change-Id: If92f0d3ce820e4997c090b48be7614407bb582da Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
-
Pritesh Raithatha authored
SMMU and MC registers are saved as part of the System Suspend sequence. The register list includes some NS world SMMU registers that need to be saved by NS world software instead. All that remains as a result are the MC registers. This patch moves code to MC file as a result and renames all the variables and defines to use the MC prefix instead of SMMU. The Tegra186 and Tegra194 platform ports are updated to provide the MC context register list to the parent driver. The memory required for context save is reduced due to removal of the SMMU registers. Change-Id: I83a05079039f52f9ce91c938ada6cd6dfd9c843f Signed-off-by: Pritesh Raithatha <praithatha@nvidia.com>
-
Varun Wadekar authored
This patch fixes the SE clock ID being used for Tegra186 and Tegra194 SoCs. Previous assumption, that both SoCs use the same clock ID, was incorrect. Change-Id: I1ef0da5547ff2e14151b53968cad9cc78fee63bd Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
-
Pritesh Raithatha authored
The platform code already contains the initial set of MC SID security configs to be locked during boot. This patch adds some more configs to the list. Since the reset value of these registers is already as per expectations, there is no need to change it. MC SID security configs - PTCR, - MIU6R, MIU6W, MIU7R, MIU7W, - MPCORER, MPCOREW, - NVDEC1SRD, NVDEC1SRD1, NVDEC1SWR. Change-Id: Ia9a1f6a6b6d34fb2787298651f7a4792a40b88ab Signed-off-by: Pritesh Raithatha <praithatha@nvidia.com>
-
Jeetesh Burman authored
The BL3-1 firmware code is stored in TZSRAM on Tegra194 platforms. This memory loses power when we enter System Suspend and so its contents are stored to TZDRAM, before entry. This opens up an attack vector where the TZDRAM contents might be tampered with when we are in the System Suspend mode. To mitigate this attack the SE engine calculates the hash of entire TZSRAM and stores it in PMC scratch, before we copy data to TZDRAM. The WB0 code will validate the TZDRAM and match the hash with the one in PMC scratch. This patch adds driver for the SE engine, with APIs to calculate the hash and store to PMC scratch registers. Change-Id: I04cc0eb7f54c69d64b6c34fc2ff62e4cfbdd43b2 Signed-off-by: Jeetesh Burman <jburman@nvidia.com>
-
Jeetesh Burman authored
This patch saves the TZDRAM base and size values to secure scratch registers, for the WB0. The WB0 reads these values and uses them to verify integrity of the TZDRAM aperture. Change-Id: I2f5fd11c87804d20e2698de33be977991c9f6f33 Signed-off-by: Jeetesh Burman <jburman@nvidia.com>
-
kalyani chidambaram authored
armclang displays warnings for extra parentheses, leading to build failures as warnings are treated as errors. This patch removes the extra parentheses to fix this issue. Change-Id: Id2fd6a3086590436eecabc55502f40752a018131 Signed-off-by: Kalyani Chidambaram <kalyanic@nvidia.com>
-
Madhukar Pappireddy authored
Create, register( and implicitly invoke) fconf_populate_topology() function which extracts the topology related properties from dtb into the newly created fconf based configuration structure 'soc_topology'. Appropriate libfdt APIs are added to jmptbl.i file for use with USE_ROMLIB build feature. A new property which describes the power domain levels is added to the HW_CONFIG device tree source files. This patch also fixes a minor bug in the common device tree file fvp-base-gicv3-psci-dynamiq-common.dtsi As this file includes fvp-base-gicv3-psci-common.dtsi, it is necessary to delete all previous cluster node definitons because DynamIQ based models have upto 8 CPUs in each cluster. If not deleted, the final dts would have an inaccurate description of SoC topology, i.e., cluster0 with 8 or more core nodes and cluster1 with 4 core nodes. Change-Id: I9eb406da3ba4732008a66c01afec7c9fa8ef59bf Signed-off-by: Madhukar Pappireddy <madhukar.pappireddy@arm.com>
-
Madhukar Pappireddy authored
Necessary infrastructure added to integrate fconf framework in BL31 & SP_MIN. Created few populator() functions which parse HW_CONFIG device tree and registered them with fconf framework. Many of the changes are only applicable for fvp platform. This patch: 1. Adds necessary symbols and sections in BL31, SP_MIN linker script 2. Adds necessary memory map entry for translation in BL31, SP_MIN 3. Creates an abstraction layer for hardware configuration based on fconf framework 4. Adds necessary changes to build flow (makefiles) 5. Minimal callback to read hw_config dtb for capturing properties related to GIC(interrupt-controller node) 6. updates the fconf documentation Change-Id: Ib6292071f674ef093962b9e8ba0d322b7bf919af Signed-off-by: Madhukar Pappireddy <madhukar.pappireddy@arm.com>
-
Madhukar Pappireddy authored
Change-Id: Ie1018bfbae2fe95c699e58648665baa75e862000 Signed-off-by: Madhukar Pappireddy <madhukar.pappireddy@arm.com>
-
Mark Dykes authored
-
Mark Dykes authored
-
Madhukar Pappireddy authored
A populate() function essentially captures the value of a property, defined by a platform, into a fconf related c structure. Such a callback is usually platform specific and is associated to a specific configuration source. For example, a populate() function which captures the hardware topology of the platform can only parse HW_CONFIG DTB. Hence each populator function must be registered with a specific 'config_type' identifier. It broadly represents a logical grouping of configuration properties which is usually a device tree source file. Example: > TB_FW: properties related to trusted firmware such as IO policies, base address of other DTBs, mbedtls heap info etc. > HW_CONFIG: properties related to hardware configuration of the SoC such as topology, GIC controller, PSCI hooks, CPU ID etc. This patch modifies FCONF_REGISTER_POPULATOR macro and fconf_populate() to register and invoke the appropriate callbacks selectively based on configuration type. Change-Id: I6f63b1fd7a8729c6c9137d5b63270af1857bb44a Signed-off-by: Madhukar Pappireddy <madhukar.pappireddy@arm.com>
-
György Szing authored
-
Balint Dobszay authored
Change-Id: I9b69f2731b0d43ead4cacfa9844c6137c57f5aec Signed-off-by: Balint Dobszay <balint.dobszay@arm.com>
-
Louis Mayencourt authored
Change-Id: I50707d1836c7f5e4ef162c00256624a1f278baef Signed-off-by: Louis Mayencourt <louis.mayencourt@arm.com>
-
Chandni Cherukuri authored
Since N1SDP has a system level cache which is an external LLC enable the NEOVERSE_N1_EXTERNAL_LLC flag. Change-Id: Idb34274e61e7fd9db5485862a0caa497f3e290c7 Signed-off-by: Chandni Cherukuri <chandni.cherukuri@arm.com>
-
Sandrine Bailleux authored
* changes: stm32mp1: platform.mk: support generating multiple images in one build stm32mp1: platform.mk: migrate to implicit rules stm32mp1: platform.mk: derive map file name from target name stm32mp1: platform.mk: generate linker script with fixed name stm32mp1: platform.mk: use PHONY for the appropriate targets
-