| abe6ce1d | 25-Jan-2021 |
Heyi Guo <guoheyi@linux.alibaba.com> |
plat/arm/arm_image_load: refine plat_add_sp_images_load_info
Refine the function plat_add_sp_images_load_info() by saving the previous node and only setting its next link when the current node is va
plat/arm/arm_image_load: refine plat_add_sp_images_load_info
Refine the function plat_add_sp_images_load_info() by saving the previous node and only setting its next link when the current node is valid. This can reduce the check for the next node and simply the total logic.
Signed-off-by: Heyi Guo <guoheyi@linux.alibaba.com> Change-Id: I4061428bf49ef0c3816ac22aaeb2e50315531f88
show more ...
|
| 47fe4c4f | 25-Jan-2021 |
Heyi Guo <guoheyi@linux.alibaba.com> |
plat/arm/arm_image_load: fix bug of overriding the last node
The traverse flow in function plat_add_sp_images_load_info() will find the last node in the main load info list, with its next_load_info=
plat/arm/arm_image_load: fix bug of overriding the last node
The traverse flow in function plat_add_sp_images_load_info() will find the last node in the main load info list, with its next_load_info==NULL. However this node is still useful and should not be overridden with SP node info.
The bug will cause below error on RDN2 for spmd enabled:
ERROR: Invalid NT_FW_CONFIG DTB passed
Fix the bug by only setting the next_load_info of the last node in the original main node list.
Signed-off-by: Heyi Guo <guoheyi@linux.alibaba.com> Change-Id: Icaee5da1f2d53b29fdd6085a8cc507446186fd57
show more ...
|
| 0b25f404 | 27-Nov-2020 |
Venkatesh Yadav Abbarapu <venkatesh.abbarapu@xilinx.com> |
plat:xilinx:versal: Add JTAG DCC support
As per the new multi-console framework, updating the JTAG DCC support.
Signed-off-by: Venkatesh Yadav Abbarapu <venkatesh.abbarapu@xilinx.com> Acked-by: Mic
plat:xilinx:versal: Add JTAG DCC support
As per the new multi-console framework, updating the JTAG DCC support.
Signed-off-by: Venkatesh Yadav Abbarapu <venkatesh.abbarapu@xilinx.com> Acked-by: Michal Simek <michal.simek@xilinx.com> Change-Id: I77994ce387caf0d695986df3d01d414a920978d0
show more ...
|
| c00baeec | 27-Nov-2020 |
Venkatesh Yadav Abbarapu <venkatesh.abbarapu@xilinx.com> |
plat:xilinx:zynqmp: Add JTAG DCC support
As per the new multi-console framework, updating the JTAG DCC support.
Signed-off-by: Venkatesh Yadav Abbarapu <venkatesh.abbarapu@xilinx.com> Acked-by: Mic
plat:xilinx:zynqmp: Add JTAG DCC support
As per the new multi-console framework, updating the JTAG DCC support.
Signed-off-by: Venkatesh Yadav Abbarapu <venkatesh.abbarapu@xilinx.com> Acked-by: Michal Simek <michal.simek@xilinx.com> Change-Id: I62cfbb57ae7e454fbc91d1c54aafa6e99f9a35c8
show more ...
|
| 0a144dd4 | 16-Mar-2021 |
Bipin Ravi <bipin.ravi@arm.com> |
Add Cortex_A78C CPU lib
Add basic support for Cortex_A78C CPU.
Signed-off-by: Bipin Ravi <bipin.ravi@arm.com> Change-Id: Id9e41cbe0580a68c6412d194a5ee67940e8dae56 |
| 8078b5c5 | 30-Mar-2021 |
André Przywara <andre.przywara@arm.com> |
Merge changes from topic "allwinner_h616" into integration
* changes: allwinner: H616: Add reserved-memory node to DT allwinner: Add Allwinner H616 SoC support allwinner: Add H616 SoC ID all
Merge changes from topic "allwinner_h616" into integration
* changes: allwinner: H616: Add reserved-memory node to DT allwinner: Add Allwinner H616 SoC support allwinner: Add H616 SoC ID allwinner: Express memmap more dynamically allwinner: Move sunxi_cpu_power_off_self() into platforms allwinner: Move SEPARATE_NOBITS_REGION to platforms doc: allwinner: Reorder sections, document memory mapping
show more ...
|
| e5fa7459 | 29-Mar-2021 |
bipin.ravi <bipin.ravi@arm.com> |
Merge "Add Makalu ELP CPU lib" into integration |
| cba9c0c2 | 29-Mar-2021 |
Madhukar Pappireddy <madhukar.pappireddy@arm.com> |
Merge changes from topic "rd_updates" into integration
* changes: plat/sgi: allow usage of secure partions on rdn2 platform board/rdv1mc: initialize tzc400 controllers plat/sgi: allow access t
Merge changes from topic "rd_updates" into integration
* changes: plat/sgi: allow usage of secure partions on rdn2 platform board/rdv1mc: initialize tzc400 controllers plat/sgi: allow access to TZC controller on all chips plat/sgi: define memory regions for multi-chip platforms plat/sgi: allow access to nor2 flash and system registers from s-el0 plat/sgi: define default list of memory regions for dmc620 tzc plat/sgi: improve macros defining cper buffer memory region plat/sgi: refactor DMC-620 error handling SMC function id plat/sgi: refactor SDEI specific macros
show more ...
|
| 59c2a027 | 25-Aug-2020 |
Omkar Anand Kulkarni <omkar.kulkarni@arm.com> |
plat/sgi: tag dmc620 MM communicate messages with a guid
Define a GUID that should be used in the header of MM communicate message originating due to a dmc620 ECC error interrupt. So the use of SMC
plat/sgi: tag dmc620 MM communicate messages with a guid
Define a GUID that should be used in the header of MM communicate message originating due to a dmc620 ECC error interrupt. So the use of SMC ID in 'sgi_ras_ev_map' to represent the interrupt event is removed.
In addition to this, update the dmc620 error record data structure to use aux_data to indicate the dmc620 instance number on which the ECC error interrupt occurred.
Signed-off-by: Omkar Anand Kulkarni <omkar.kulkarni@arm.com> Change-Id: I18c8ef5ba6483bb1bce6464ee9be0c2aabec4baa
show more ...
|
| c0d55ef7 | 22-Jan-2021 |
Omkar Anand Kulkarni <omkar.kulkarni@arm.com> |
plat/sgi: allow usage of secure partions on rdn2 platform
Add the secure partition mmap table and the secure partition boot information to support secure partitions on RD-N2 platform. In addition to
plat/sgi: allow usage of secure partions on rdn2 platform
Add the secure partition mmap table and the secure partition boot information to support secure partitions on RD-N2 platform. In addition to this, add the required memory region mapping for accessing the SoC peripherals from the secure partition.
Signed-off-by: Omkar Anand Kulkarni <omkar.kulkarni@arm.com> Change-Id: I2c75760d6c8c3da3ff4885599be420e924aeaf3c
show more ...
|
| 27d593ad | 29-Mar-2021 |
Sandrine Bailleux <sandrine.bailleux@arm.com> |
Merge changes from topic "tzc400_stm32mp" into integration
* changes: stm32mp1: add TZC400 interrupt management stm32mp1: use TZC400 macro to describe filters tzc400: add support for interrupts |
| f97b5795 | 17-Feb-2021 |
Aditya Angadi <aditya.angadi@arm.com> |
board/rdv1mc: initialize tzc400 controllers
A TZC400 controller is placed inline on DRAM channels and regulates the secure and non-secure accesses to both secure and non-secure regions of the DRAM m
board/rdv1mc: initialize tzc400 controllers
A TZC400 controller is placed inline on DRAM channels and regulates the secure and non-secure accesses to both secure and non-secure regions of the DRAM memory. Configure each of the TZC controllers across the Chips.
For use by secure software, configure the first chip's trustzone controller to protect the upper 16MB of the memory of the first DRAM block for secure accesses only. The other regions are configured for non-secure read write access. For all the remote chips, all the DRAM regions are allowed for non-secure read and write access.
Signed-off-by: Aditya Angadi <aditya.angadi@arm.com> Change-Id: I809f27eccadfc23ea0ef64e2fd87f95eb8f195c1
show more ...
|
| 21803491 | 17-Feb-2021 |
Aditya Angadi <aditya.angadi@arm.com> |
plat/sgi: allow access to TZC controller on all chips
On a multi-chip platform, the boot CPU on the first chip programs the TZC controllers on all the remote chips. Define a memory region map for th
plat/sgi: allow access to TZC controller on all chips
On a multi-chip platform, the boot CPU on the first chip programs the TZC controllers on all the remote chips. Define a memory region map for the TZC controllers for all the remote chips and include it in the BL2 memory map table.
In addition to this, for SPM_MM enabled multi-chip platforms, increase the number of mmap entries and xlat table counts for EL3 execution context as well because the shared RAM regions and GIC address space of remote chips are accessed.
Signed-off-by: Aditya Angadi <aditya.angadi@arm.com> Change-Id: I6f0b5fd22f9f28046451e382eef7f1f9258d88f7
show more ...
|
| 05b5c417 | 14-May-2020 |
Aditya Angadi <aditya.angadi@arm.com> |
plat/sgi: define memory regions for multi-chip platforms
For multi-chip platforms, add a macro to define the memory regions on chip numbers >1 and its associated access permissions. These memory reg
plat/sgi: define memory regions for multi-chip platforms
For multi-chip platforms, add a macro to define the memory regions on chip numbers >1 and its associated access permissions. These memory regions are marked with non-secure access.
Signed-off-by: Aditya Angadi <aditya.angadi@arm.com> Change-Id: If3d6180fd8ea61f45147c39d3140d694abf06617
show more ...
|
| 5dae6bc7 | 15-Feb-2021 |
Thomas Abraham <thomas.abraham@arm.com> |
plat/sgi: allow access to nor2 flash and system registers from s-el0
Allow the access of system registers and nor2 flash memory region from s-el0. This allows the secure parititions residing at s-el
plat/sgi: allow access to nor2 flash and system registers from s-el0
Allow the access of system registers and nor2 flash memory region from s-el0. This allows the secure parititions residing at s-el0 to access these memory regions.
Signed-off-by: Thomas Abraham <thomas.abraham@arm.com> Change-Id: I3887a86770de806323fbde0d20fdc96eec6e0c3c
show more ...
|
| b4d548f1 | 16-Feb-2021 |
Thomas Abraham <thomas.abraham@arm.com> |
plat/sgi: define default list of memory regions for dmc620 tzc
Define a default DMC-620 TZC memory region configuration and use it to specify the TZC memory regions on sgi575, rdn1edge and rde1edge
plat/sgi: define default list of memory regions for dmc620 tzc
Define a default DMC-620 TZC memory region configuration and use it to specify the TZC memory regions on sgi575, rdn1edge and rde1edge platforms. The default DMC-620 TZC memory regions are defined considering the support for secure paritition as well.
Signed-off-by: Thomas Abraham <thomas.abraham@arm.com> Change-Id: Iedee3e57d0d3de5b65321444da51ec990d3702db
show more ...
|
| d306eb80 | 16-Feb-2021 |
Thomas Abraham <thomas.abraham@arm.com> |
plat/sgi: improve macros defining cper buffer memory region
Remove the 'ARM_' prefix from the macros defining the CPER buffer memory and replace it with 'CSS_SGI_' prefix. These macros are applicabl
plat/sgi: improve macros defining cper buffer memory region
Remove the 'ARM_' prefix from the macros defining the CPER buffer memory and replace it with 'CSS_SGI_' prefix. These macros are applicable only for platforms supported within plat/sgi. In addition to this, ensure that these macros are defined only if the RAS_EXTENSION build option is enabled.
Signed-off-by: Thomas Abraham <thomas.abraham@arm.com> Change-Id: I44df42cded18d9d3a4cb13e5c990e9ab3194daee
show more ...
|
| 513ba5c9 | 16-Feb-2021 |
Thomas Abraham <thomas.abraham@arm.com> |
plat/sgi: refactor DMC-620 error handling SMC function id
The macros defining the SMC function ids for DMC-620 error handling are listed in the sgi_base_platform_def.h header file. But these macros
plat/sgi: refactor DMC-620 error handling SMC function id
The macros defining the SMC function ids for DMC-620 error handling are listed in the sgi_base_platform_def.h header file. But these macros are not applicable for all platforms supported under plat/sgi. So move these macro definitions to sgi_ras.c file in which these are consumed. While at it, remove the AArch32 and error injection function ids as these are unused.
Signed-off-by: Thomas Abraham <thomas.abraham@arm.com> Change-Id: I249b54bf4c1b1694188a1e3b297345b942f16bc9
show more ...
|
| a8834474 | 16-Feb-2021 |
Thomas Abraham <thomas.abraham@arm.com> |
plat/sgi: refactor SDEI specific macros
The macros specific to SDEI defined in the sgi_base_platform_def.h are not applicable for all the platforms supported by plat/sgi. So refactor the SDEI specif
plat/sgi: refactor SDEI specific macros
The macros specific to SDEI defined in the sgi_base_platform_def.h are not applicable for all the platforms supported by plat/sgi. So refactor the SDEI specific macros into a new header file and include this file on only on platforms it is applicable on.
Signed-off-by: Thomas Abraham <thomas.abraham@arm.com> Change-Id: I0cb7125334f02a21cae1837cdfd765c16ab50bf5
show more ...
|
| 48c6a6b6 | 24-Sep-2020 |
Bharat Gooty <bharat.gooty@broadcom.com> |
driver: brcm: add i2c driver
Broadcom I2C controller driver. Follwoing API's are supported:- - i2c_init() Intialize ethe I2C controller - i2c_probe() - i2c_set_bus_speed() Set the I2C bus speed - i2
driver: brcm: add i2c driver
Broadcom I2C controller driver. Follwoing API's are supported:- - i2c_init() Intialize ethe I2C controller - i2c_probe() - i2c_set_bus_speed() Set the I2C bus speed - i2c_get_bus_speed() Get the current bus speed - i2c_recv_byte() Receive one byte of data. - i2c_send_byte() Send one byteof data - i2c_read_byte() Read single byte of data - i2c_read() Read multiple bytes of data - i2c_write_byte Write single byte of data - i2c_write() Write multiple bytes of data
This driver is verified by reading the DDR SPD data.
Signed-off-by: Bharat Gooty <bharat.gooty@broadcom.com> Change-Id: I2d7fe53950e8b12fab19d0293020523ff8b74e13
show more ...
|
| 0be10ee3 | 14-Dec-2020 |
Andre Przywara <andre.przywara@arm.com> |
allwinner: H616: Add reserved-memory node to DT
When the BL31 for the Allwinner H616 runs in DRAM, we need to make sure we tell the non-secure world about the memory region it uses.
Add a reserved-
allwinner: H616: Add reserved-memory node to DT
When the BL31 for the Allwinner H616 runs in DRAM, we need to make sure we tell the non-secure world about the memory region it uses.
Add a reserved-memory node to the DT, which covers the area that BL31 could occupy. The "no-map" property will prevent OSes from mapping the area, so there would be no speculative accesses.
Change-Id: I808f3e1a8089da53bbe4fc6435a808e9159831e1 Signed-off-by: Andre Przywara <andre.przywara@arm.com>
show more ...
|
| 3dd87efb | 26-Mar-2021 |
Nishanth Menon <nm@ti.com> |
plat: ti: k3: board: Let explicitly map our SEC_SRAM_BASE to 0x0
ENABLE_PIE (position independent executable) is default on K3 platform to handle variant RAM configurations in the system. This, unfo
plat: ti: k3: board: Let explicitly map our SEC_SRAM_BASE to 0x0
ENABLE_PIE (position independent executable) is default on K3 platform to handle variant RAM configurations in the system. This, unfortunately does cause confusion while reading the code, so, lets make things explicit by selecting 0x0 as the "SEC_SRAM_BASE" out of which we compute the BL31_BASE depending on usage.
Lets also document a warning while at it to help folks copying code over to a custom K3 platform and optimizing size by disabling PIE to modify the defaults.
Signed-off-by: Nishanth Menon <nm@ti.com> Change-Id: I8e67a9210e907e266ff6a78ba4d02e3259bb2b21
show more ...
|
| f5872a00 | 26-Mar-2021 |
Nishanth Menon <nm@ti.com> |
plat: ti: k3: board: Lets cast our macros
Lets cast our macros to the right types and reduce a few MISRA warnings.
Signed-off-by: Nishanth Menon <nm@ti.com> Change-Id: I0dc06072713fe7c9440eca063509
plat: ti: k3: board: Lets cast our macros
Lets cast our macros to the right types and reduce a few MISRA warnings.
Signed-off-by: Nishanth Menon <nm@ti.com> Change-Id: I0dc06072713fe7c9440eca0635094c5f3ceb7f1c
show more ...
|
| a2b56476 | 26-Mar-2021 |
Nishanth Menon <nm@ti.com> |
plat: ti: k3: common: bl31_setup: Use BL31_SIZE instead of computing
We compute BL31_END - BL31_START on the fly, which is basically BL31_SIZE. Lets just use the BL31_SIZE directly so that we dont c
plat: ti: k3: common: bl31_setup: Use BL31_SIZE instead of computing
We compute BL31_END - BL31_START on the fly, which is basically BL31_SIZE. Lets just use the BL31_SIZE directly so that we dont complicate PIE relocations when actual address is +ve and -ve offsets relative to link address.
Signed-off-by: Nishanth Menon <nm@ti.com> Change-Id: I5e14906381d2d059163800d39798eb39c42da4ec
show more ...
|
| c9f887d8 | 26-Mar-2021 |
Nishanth Menon <nm@ti.com> |
plat: ti: k3: platform_def.h: Define the correct number of max table entries
Since we are using static xlat tables, we need to account for exact count of table entries we are actually using. periphe
plat: ti: k3: platform_def.h: Define the correct number of max table entries
Since we are using static xlat tables, we need to account for exact count of table entries we are actually using. peripherals usart, gic, gtc, sec_proxy_rt, scfg and data account for 6 entries and are constant, however, we also need to account for: bl31 full range, codebase, ro_data as additional 3 region
With USE_COHERENT_MEM we do add in 1 extra region as well.
This implies that we will have upto 9 or 10 regions based on USE_COHERENT_MEM usage. Vs we currently define 8 regions.
This gets exposed with DEBUG=1 and assert checks trigger, which for some reason completely escaped testing previously.
ASSERT: lib/xlat_tables_v2/xlat_tables_core.c:97 BACKTRACE: START: assert
Signed-off-by: Nishanth Menon <nm@ti.com> Change-Id: I962cdfc779b4eb3b914fe1c46023d50bc289e6bc
show more ...
|