| 0375188a | 30-Oct-2023 |
Amit Nagal <amit.nagal@amd.com> |
feat(versal): enable assertion
Retain assertions in release builds by building TF-A with ENABLE_ASSERTIONS=1. It helps to catch programming errors (e.g. bad argument provided by platform porting fun
feat(versal): enable assertion
Retain assertions in release builds by building TF-A with ENABLE_ASSERTIONS=1. It helps to catch programming errors (e.g. bad argument provided by platform porting function) in release builds as well. code size change is 4k. For debug builds, assertions are enabled by default. The same change is done by Tegra: plat/nvidia/tegra/platform.mk.
Change-Id: Ie801fa9a326596ebef71be870b95a3cf9077ad20 Signed-off-by: Amit Nagal <amit.nagal@amd.com>
show more ...
|
| bfe82cff | 30-Oct-2023 |
Prasad Kummari <prasad.kummari@amd.com> |
fix(versal): type cast addresses to fix integer overflow
Typecast the base and size arguments for build time as unsigned integers and the limit derived from these two as an unsigned long to prevent
fix(versal): type cast addresses to fix integer overflow
Typecast the base and size arguments for build time as unsigned integers and the limit derived from these two as an unsigned long to prevent size integer overflow issues during the build.
Signed-off-by: Prasad Kummari <prasad.kummari@amd.com> Change-Id: Iefc148e0091e8c8a4ca505691036c79528a558a4
show more ...
|
| 9c1c8f01 | 13-Oct-2023 |
Michal Simek <michal.simek@amd.com> |
feat(xilinx): switch boot console to runtime
Switch boot console to runtime at bl31_plat_runtime_setup() for all Xilinx SOCs to follow default behavior. Till now boot console is used for the whole l
feat(xilinx): switch boot console to runtime
Switch boot console to runtime at bl31_plat_runtime_setup() for all Xilinx SOCs to follow default behavior. Till now boot console is used for the whole lifecycle of TF-A. On the other hand there is no option to configure different boot and run time console that's why this isn't really a issue.
Documentation is describing default behavior like this: " Function : bl31_plat_runtime_setup() [optional] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
::
Argument : void Return : void
The purpose of this function is allow the platform to perform any BL31 runtime setup just prior to BL31 exit during cold boot. The default weak implementation of this function will invoke ``console_switch_state()`` to switch console output to consoles marked for use in the ``runtime`` state. "
Change-Id: I08baa722dfd8b37b4440e84accf3baaeb01a686f Signed-off-by: Michal Simek <michal.simek@amd.com>
show more ...
|
| 7c36fbcc | 19-Sep-2023 |
Prasad Kummari <prasad.kummari@amd.com> |
feat(versal): retrieval of console information from dtb
Introduces functionality to retrieve console information from the device tree (DTB) and use it in TF-A code.
Comparing early console informat
feat(versal): retrieval of console information from dtb
Introduces functionality to retrieve console information from the device tree (DTB) and use it in TF-A code.
Comparing early console information and the data populated from the DTB. In case of a mistmatch, the changes takes care of unregistering the build time console configuration and registering the DTB-based console.
Reorganizes the console configuration setup in BL31 by moving it to a dedicated function called setup_console() in the plat_console.c file. This change improves code readability by isolating console-related settings, making it easier to manage and extend the console configuration in the future.
Signed-off-by: Prasad Kummari <prasad.kummari@amd.com> Change-Id: I617c846d753e73d2433edf15b3286f1a650f01b3
show more ...
|
| c1e84aca | 04-Oct-2023 |
Prasad Kummari <prasad.kummari@amd.com> |
refactor(xilinx): create generic function for clock retrieval
Refactors the code in the AMD-Xilinx platform for Versal and Versal NET to create a more generic function for obtaining clock signals fr
refactor(xilinx): create generic function for clock retrieval
Refactors the code in the AMD-Xilinx platform for Versal and Versal NET to create a more generic function for obtaining clock signals from the platform. The new function get_uart_clk is specific to each platform and providing greater flexibility for clock signal retrieval in various parts of the codebase.
Signed-off-by: Prasad Kummari <prasad.kummari@amd.com> Change-Id: Iff67315339b2651c9bea73af0d89fcbad2bb332a
show more ...
|
| f9820f21 | 27-Sep-2023 |
Michal Simek <michal.simek@amd.com> |
fix(xilinx): remove console error message
If console is not found there is no way where to print information about it. Currently only cdns/dcc/pl011 uarts are supported that's why remove the message
fix(xilinx): remove console error message
If console is not found there is no way where to print information about it. Currently only cdns/dcc/pl011 uarts are supported that's why remove the message which none can see anyway. But keep "else" part with comment to avoid misra c rule 15.7 violation which is also missing in Versal NET implementation.
Change-Id: I78e3baffd2288d2a4673099bf193f22029912840 Signed-off-by: Michal Simek <michal.simek@amd.com>
show more ...
|
| 04a48335 | 27-Sep-2023 |
Michal Simek <michal.simek@amd.com> |
feat(xilinx): sync macro names
There is no reason to have platform specific macros where generic macros can be used. This is pretty much preparation step for moving console code to single location w
feat(xilinx): sync macro names
There is no reason to have platform specific macros where generic macros can be used. This is pretty much preparation step for moving console code to single location where multiple combinations can be easier to handle.
Change-Id: I4d85ddef29f5870a9ea9590d4d1564469c6eb87e Signed-off-by: Michal Simek <michal.simek@amd.com>
show more ...
|
| 473ada6b | 27-Sep-2023 |
Michal Simek <michal.simek@amd.com> |
feat(xilinx): remove crash console unused macros
Macros are not used that's why remove them.
Change-Id: I4519ea0b9e30b757ab8a6ee3bb56af45dddc0d96 Signed-off-by: Michal Simek <michal.simek@amd.com> |
| 3e6b96e8 | 20-Sep-2023 |
Michal Simek <michal.simek@amd.com> |
feat(xilinx): used console also as crash console
CONSOLE_FLAG_CRASH should be also setup to get crash logs on the same console. Both platforms are using crash console implementation from plat/common
feat(xilinx): used console also as crash console
CONSOLE_FLAG_CRASH should be also setup to get crash logs on the same console. Both platforms are using crash console implementation from plat/common/aarch64/crash_console_helpers.S that's why there is necessary to setup CONSOLE_FLAG_CRASH. plat_crash_console_putc() implementation is saying: "int plat_crash_console_putc(char c) Prints the character on all consoles registered with the console framework that have CONSOLE_FLAG_CRASH set. Note that this is only helpful for crashes that occur after the platform intialization code has registered a console. Platforms using this implementation need to ensure that all console drivers they use that have the CRASH flag set support this (i.e. are written in assembly and comply to the register clobber requirements of plat_crash_console_putc()."
Change-Id: I314cacbcb0bfcc85fe734882e38718f2763cdbf4 Signed-off-by: Michal Simek <michal.simek@amd.com>
show more ...
|
| 7ca7fb1b | 05-Sep-2023 |
Amit Nagal <amit.nagal@amd.com> |
fix(xilinx): dynamic mmap region for dtb
mmap dtb region before usage and unmap it after usage. overall size(text,data,bss) of dtb gets reduced by 16 bytes in normal flow and 80 bytes in ddr flow.
fix(xilinx): dynamic mmap region for dtb
mmap dtb region before usage and unmap it after usage. overall size(text,data,bss) of dtb gets reduced by 16 bytes in normal flow and 80 bytes in ddr flow.
Signed-off-by: Amit Nagal <amit.nagal@amd.com> Change-Id: I411deff57ab141fc2978a2e916aec2d988cb8f9c
show more ...
|
| 56afab73 | 29-Aug-2023 |
Amit Nagal <amit.nagal@amd.com> |
fix(versal): use correct macro name for ocm base address
In absence of definition, PLAT_OCM_BASE is always 0 and IS_TFA_IN_OCM(x) always returns true irrespective of address passed to it. Reasoning
fix(versal): use correct macro name for ocm base address
In absence of definition, PLAT_OCM_BASE is always 0 and IS_TFA_IN_OCM(x) always returns true irrespective of address passed to it. Reasoning is as mentioned in Refer section 4.2.3 in https://gcc.gnu.org/onlinedocs/gcc-3.0.2/cpp_4.html Due to this,functionality for reservation of TF-A DDR memory in dtb is never executed.
Signed-off-by: Amit Nagal <amit.nagal@amd.com> Change-Id: Iafb6b7c6aec29bba22f8f7a8395f9caf97548157
show more ...
|
| 96eaafa3 | 31-Jul-2023 |
Jay Buddhabhatti <jay.buddhabhatti@amd.com> |
fix(versal): make pmc ipi channel as secure
Make PMC IPI channel for Versal as secure so that NS systems cannot directly access or modify secure systems.
Signed-off-by: Jay Buddhabhatti <jay.buddha
fix(versal): make pmc ipi channel as secure
Make PMC IPI channel for Versal as secure so that NS systems cannot directly access or modify secure systems.
Signed-off-by: Jay Buddhabhatti <jay.buddhabhatti@amd.com> Change-Id: I22148653fa2d27941cb3031ac790892cee0d1796
show more ...
|
| 6304759a | 19-Jul-2023 |
Prasad Kummari <prasad.kummari@amd.com> |
chore(xilinx): reorder headers in assembly files
In tf-a-ci-scripts repo, change commit 8ffa3d571b(ci(static-checks): correct include order for *.S macro headers) provides a fix related to header fi
chore(xilinx): reorder headers in assembly files
In tf-a-ci-scripts repo, change commit 8ffa3d571b(ci(static-checks): correct include order for *.S macro headers) provides a fix related to header file include order in assembly files. With the above fix, improper header order in assembly files has been detected.
Reorder the header includes in assembly files as per the update in tf-a-ci-scripts.
Signed-off-by: Prasad Kummari <prasad.kummari@amd.com> Change-Id: I4a4f3c5bb73886dae234160b893470443f1424fc
show more ...
|
| 56d1857e | 10-Jul-2023 |
Amit Nagal <amit.nagal@amd.com> |
feat(versal): ddr address reservation in dtb at runtime
When the TF-A is placed in DDR memory range, the DDR memory range needs to be explicitly reserved in the default device tree.
A new build tim
feat(versal): ddr address reservation in dtb at runtime
When the TF-A is placed in DDR memory range, the DDR memory range needs to be explicitly reserved in the default device tree.
A new build time parameter, XILINX_OF_BOARD_DTB_ADDR, is introduced. The TF-A will reserve the DDR memory only when a valid DTB address is provided to XILINX_OF_BOARD_DTB_ADDR during build.
Now the user has options, either manually reserve the desired DDR address range for TF-A in device tree or let TF-A access and modify the device tree, to reserve the DDR address range, in runtime using the build parameter.
Change-Id: I4442a90e1cab5a3a115f4eeb8a7e09e247189ff0 Signed-off-by: Amit Nagal <amit.nagal@amd.com> Signed-off-by: Akshay Belsare <akshay.belsare@amd.com>
show more ...
|
| e7644eb6 | 04-Jul-2023 |
Manish Pandey <manish.pandey2@arm.com> |
Merge "chore(xilinx): reorder include files as per TF-A guidelines" into integration |
| b9d26cd3 | 08-Jun-2023 |
Prasad Kummari <prasad.kummari@amd.com> |
chore(xilinx): replace fsbl with xbl
The handoff functionality is common between platforms and all platforms do not use fsbl terminology. Renaming handoff related code to generic naming.
Signed-off
chore(xilinx): replace fsbl with xbl
The handoff functionality is common between platforms and all platforms do not use fsbl terminology. Renaming handoff related code to generic naming.
Signed-off-by: Prasad Kummari <prasad.kummari@amd.com> Change-Id: Ic250af927f33c4fecbc2e6bab01b83a6dd2aab52 Signed-off-by: Akshay Belsare <akshay.belsare@amd.com>
show more ...
|
| 01a326ab | 22-Jun-2023 |
Prasad Kummari <prasad.kummari@amd.com> |
chore(xilinx): reorder include files as per TF-A guidelines
This commit reorders the include files in accordance with the guidelines provided by Trusted Firmware-A (TF-A). The include files are rear
chore(xilinx): reorder include files as per TF-A guidelines
This commit reorders the include files in accordance with the guidelines provided by Trusted Firmware-A (TF-A). The include files are rearranged to ensure a consistent and organized structure in the codebase, facilitating better readability and maintainability.
https: //trustedfirmware-a.readthedocs.io/en/latest/process/coding-style.html#headers-and-inclusion https://git.trustedfirmware.org/ci/tf-a-ci-scripts.git/tree/script/static-checks/
For example, to run header check: /tf-a-ci-scripts/script/static-checks/check-include-order.py --tree ${PWD} > Includefileorder.txt
Signed-off-by: Prasad Kummari <prasad.kummari@amd.com> Change-Id: Ia5802722e69859596b94f31ec40755adbf7d865b
show more ...
|
| de7ed953 | 09-Jun-2023 |
Prasad Kummari <prasad.kummari@amd.com> |
chore(xilinx): follow kernel doc format for functional documentation
For TF-A, there is no format specified for functional documentation. For AMD-Xilinx platforms, following kernel-doc format for th
chore(xilinx): follow kernel doc format for functional documentation
For TF-A, there is no format specified for functional documentation. For AMD-Xilinx platforms, following kernel-doc format for the functional documentation to make sure AMD-xilinx documentation is align with actual code.
For example use kernel-doc from linux to call: <linux>/scripts/kernel-doc -man -v 1 >/dev/null file...
Signed-off-by: Prasad Kummari <prasad.kummari@amd.com> Change-Id: Idcc9def408b6c8da35b36f67ef82fc00890e998c
show more ...
|
| 06b9c4c8 | 12-Jun-2023 |
Jay Buddhabhatti <jay.buddhabhatti@amd.com> |
fix(versal): add missing irq mapping for wakeup src
The commit 0ec6c31320c6 provides irq to device index mapping which is required to check for IRQs and set peripheral as a wake source if IRQ is ena
fix(versal): add missing irq mapping for wakeup src
The commit 0ec6c31320c6 provides irq to device index mapping which is required to check for IRQs and set peripheral as a wake source if IRQ is enabled. But in that commit some IRQ numbers are missed. Because of that, wakeup using some peripheral interrupts will not work. Add those missing IRQ numbers.
Fixes: 0ec6c31320c6 ("feat(versal): replace irq array with switch case") Signed-off-by: Jay Buddhabhatti <jay.buddhabhatti@amd.com> Change-Id: Icbc773050c328be253702e63e7cf8450c7dee133
show more ...
|
| f1a32f49 | 07-Jun-2023 |
Manish Pandey <manish.pandey2@arm.com> |
Merge "chore(xilinx): replace ATF with TFA" into integration |
| c8be2240 | 26-Apr-2023 |
Prasad Kummari <prasad.kummari@amd.com> |
chore(xilinx): replace ATF with TFA
Since the Arm Trusted Firmware(ATF) has been renamed to Trusted Firmware-A (TF-A), replace all the instances of ATF from code comments, macros, variables and func
chore(xilinx): replace ATF with TFA
Since the Arm Trusted Firmware(ATF) has been renamed to Trusted Firmware-A (TF-A), replace all the instances of ATF from code comments, macros, variables and functions to TF-A.
Change-Id: Iab448d96158612a3effb4e49943f8d6cb43aaad5 Signed-off-by: Prasad Kummari <prasad.kummari@amd.com> Signed-off-by: Akshay Belsare <akshay.belsare@amd.com>
show more ...
|
| 16cb3be8 | 24-May-2023 |
Joanna Farley <joanna.farley@arm.com> |
Merge changes from topic "xlnx_smcc_soc_id" into integration
* changes: feat(versal-net): add support for SMCC ARCH SOC ID feat(versal): add support for SMCC ARCH SOC ID refactor(versal-net):
Merge changes from topic "xlnx_smcc_soc_id" into integration
* changes: feat(versal-net): add support for SMCC ARCH SOC ID feat(versal): add support for SMCC ARCH SOC ID refactor(versal-net): move macros to common header feat(xilinx): add support to get chipid
show more ...
|
| e8077044 | 24-May-2023 |
Joanna Farley <joanna.farley@arm.com> |
Merge changes from topic "xilinx-ipi" into integration
* changes: feat(xilinx): fix IPI calculation for Versal/NET feat(xilinx): setup local/remote id in header feat(xilinx): clean macro names
Merge changes from topic "xilinx-ipi" into integration
* changes: feat(xilinx): fix IPI calculation for Versal/NET feat(xilinx): setup local/remote id in header feat(xilinx): clean macro names fix(zynqmp): do not export apu_ipi fix(zynqmp): remove unused headers feat(xilinx): move IPI related macros to plat_ipi.h
show more ...
|
| 079c6e24 | 08-May-2023 |
Akshay Belsare <akshay.belsare@amd.com> |
feat(versal): add support for SMCC ARCH SOC ID
Add support for SMCCC_ARCH_SOC_ID as per SMC Calling Convention for Versal platform. The SMCC ARCH SOC ID call is used by system software to obtain the
feat(versal): add support for SMCC ARCH SOC ID
Add support for SMCCC_ARCH_SOC_ID as per SMC Calling Convention for Versal platform. The SMCC ARCH SOC ID call is used by system software to obtain the SiP defined SoC identification details.
Change-Id: I1466a9ad1bc8dde1cda516ddd3edbaa6a5941237 Signed-off-by: Akshay Belsare <akshay.belsare@amd.com>
show more ...
|
| f123b91f | 23-May-2023 |
Ilias Apalodimas <ilias.apalodimas@linaro.org> |
fix(versal): fix BLXX memory limits for user defined values
When compiling with user defined areas of memory the platform code calculates the size with (base + size - 1). However, the linker file a
fix(versal): fix BLXX memory limits for user defined values
When compiling with user defined areas of memory the platform code calculates the size with (base + size - 1). However, the linker file aligns section on a page boundary. So having the -1 in the size calculations leads to an error message looking like this:
bl31.elf section `coherent_ram' will not fit in region `RAM' aarch64-buildroot-linux-uclibc-ld: region `RAM' overflowed by 1 byte
While at it fix all other occurences of predefined values that were calculated with -1
Fixes: commit f91c3cb1df7d4 ("arm64: versal: Add support for new Xilinx Versal ACAPs") Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Change-Id: Ica1f97867b701e7fcd60ea8ea07d2ae96c485443
show more ...
|