| 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 ...
|
| 39234622 | 19-Sep-2023 |
Prasad Kummari <prasad.kummari@amd.com> |
feat(zynqmp): retrieval of console information from dtb
Introduces functionality to retrieve console information from the device tree (DTB) and use it in TF-A code.
With fdt_get_stdout_node_offset(
feat(zynqmp): retrieval of console information from dtb
Introduces functionality to retrieve console information from the device tree (DTB) and use it in TF-A code.
With fdt_get_stdout_node_offset() function, which reads the 'secure-chosen' first,'chosen' and 'stdout-path' properties from the DTB, providing a convenient and standardized way to access serial console information.
Implemented a comparison mechanism between early console information and the data populated from the DTB. In case of a mismatch, the commit 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: I857042fc0fb8f070bbc11f6b47aa57a72fbe5392
show more ...
|
| 10f8a397 | 27-Sep-2023 |
Amit Nagal <amit.nagal@amd.com> |
refactor(zynqmp): use common code for prepare_dtb
use common code definition and remove zynqmp local definition for prepare_dtb in dtb flows.
Change-Id: I362b90b96852e9afccc8a2e23d3b7f709280fba7 Si
refactor(zynqmp): use common code for prepare_dtb
use common code definition and remove zynqmp local definition for prepare_dtb in dtb flows.
Change-Id: I362b90b96852e9afccc8a2e23d3b7f709280fba7 Signed-off-by: Amit Nagal <amit.nagal@amd.com>
show more ...
|
| 1a5b58e7 | 27-Sep-2023 |
Amit Nagal <amit.nagal@amd.com> |
refactor(xilinx): remove multiple return paths in prepare_dtb
presence of multiple return path in prepare_dtb results in misra c violation 15.5: this return statement is not the final statement in t
refactor(xilinx): remove multiple return paths in prepare_dtb
presence of multiple return path in prepare_dtb results in misra c violation 15.5: this return statement is not the final statement in the compound statement that forms the body of the function. prepare_dtb is refactored to address the same.
Change-Id: I17ca4314202d6ca8d6fb0c4ea2ed9d31a152371b Signed-off-by: Amit Nagal <amit.nagal@amd.com>
show more ...
|
| e2ef1dfc | 04-Oct-2023 |
Prasad Kummari <prasad.kummari@amd.com> |
fix(versal-net): use correct macro name for uart baudrate
Address an issue where incorrect macro name is being used for setting the UART buad rate. Updated the code to use the appropriate macro name
fix(versal-net): use correct macro name for uart baudrate
Address an issue where incorrect macro name is being used for setting the UART buad rate. Updated the code to use the appropriate macro name, ensuring that baud rate name is proper.
Fixes: 04a483359fef ("feat(xilinx): sync macro names") Signed-off-by: Prasad Kummari <prasad.kummari@amd.com> Change-Id: I27dd8b1559beb0cf7b872de037adc95a948ecc2f
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 ...
|
| 6a14246a | 18-Sep-2023 |
Michal Simek <michal.simek@amd.com> |
feat(versal-net): remove empty crash console setup
Private plat_crash_console_init() has all the setup commented that's why it was never been tested. pl011 uart is supposed to be used as crash conso
feat(versal-net): remove empty crash console setup
Private plat_crash_console_init() has all the setup commented that's why it was never been tested. pl011 uart is supposed to be used as crash console and it should be enought to add CONSOLE_FLAG_CRASH and remove platform specific implementation and use generic one. Early console can't be used for early ASM debugging but that's expected and not required.
Change-Id: I1267fd78c0d6532a0baddbcad8a5b2a7dfc7750b Signed-off-by: Michal Simek <michal.simek@amd.com>
show more ...
|
| 93ed1380 | 05-Sep-2023 |
Amit Nagal <amit.nagal@amd.com> |
fix(xilinx): dcache flush for dtb region
flush dcache region for dtb so that dtb cache entries are first written to disk and are invalidated afterwards to avoid presence of any stale dtb related ent
fix(xilinx): dcache flush for dtb region
flush dcache region for dtb so that dtb cache entries are first written to disk and are invalidated afterwards to avoid presence of any stale dtb related entry in the dcache.
Change-Id: Ide0ed58f799b35b690ed790c7498ecdc334e02f5 Signed-off-by: Amit Nagal <amit.nagal@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 ...
|
| bf2fa7e3 | 07-Sep-2023 |
Joanna Farley <joanna.farley@arm.com> |
Merge "fix(xilinx): don't reserve 1 more byte" into integration |
| c3b69bf1 | 05-Sep-2023 |
Michal Simek <michal.simek@amd.com> |
fix(xilinx): don't reserve 1 more byte
The commit f123b91fddfc ("fix(versal): fix BLXX memory limits for user defined values") and commit a80da3899a5e ("fix(versal-net): fix BLXX memory limits for u
fix(xilinx): don't reserve 1 more byte
The commit f123b91fddfc ("fix(versal): fix BLXX memory limits for user defined values") and commit a80da3899a5e ("fix(versal-net): fix BLXX memory limits for user defined values") fixed issue regarding linker alignment section. But removing -1 logic is not reflected in plat_fdt() memory reservation code. That's why remove +1 from prepare_dtb() not to generate a reserved memory node with bigger size which ends up with reserving more space than actually requested by a full featured bootloader or OS.
Change-Id: I0a646cee7d5a55157a6eb1b672c2edbe89e6a57f Signed-off-by: Michal Simek <michal.simek@amd.com>
show more ...
|
| fdf8f929 | 29-Aug-2023 |
Amit Nagal <amit.nagal@amd.com> |
fix(xilinx): update dtb when dtb address and tf-a ddr flow is used
Memory reservation in dtb will be done only when TF-A runs from ddr and dtb load address is provided. Otherwise prepare_dtb will si
fix(xilinx): update dtb when dtb address and tf-a ddr flow is used
Memory reservation in dtb will be done only when TF-A runs from ddr and dtb load address is provided. Otherwise prepare_dtb will simply return. Empty definition of prepare_dtb is removed.
Signed-off-by: Amit Nagal <amit.nagal@amd.com> Change-Id: Ie8a3ec51d60a7389831cfe6a112f722777930623
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 ...
|
| c89d5912 | 21-Aug-2023 |
Joanna Farley <joanna.farley@arm.com> |
Merge "fix(versal-net): don't clear pending interrupts" into integration |
| fb73ea6c | 15-Aug-2023 |
Saeed Nowshadi <saeed.nowshadi@amd.com> |
fix(versal-net): don't clear pending interrupts
All pending interrupts should be handled by their interrupt handlers. CPU cores remain in suspend state if pending interrupts are cleared.
Signed-of
fix(versal-net): don't clear pending interrupts
All pending interrupts should be handled by their interrupt handlers. CPU cores remain in suspend state if pending interrupts are cleared.
Signed-off-by: Saeed Nowshadi <saeed.nowshadi@amd.com> Change-Id: Id8ddf36cbcc07484f232c477277c4da106985c8f
show more ...
|
| abc79c27 | 16-Aug-2023 |
Naman Trivedi Manojbhai <naman.trivedimanojbhai@amd.com> |
fix(zynqmp): validate clock_id to avoid OOB variable access
The input argument clock_id in pm_api_clock_get_name function is not validated against the maximum allowed number. This can lead to OOB ac
fix(zynqmp): validate clock_id to avoid OOB variable access
The input argument clock_id in pm_api_clock_get_name function is not validated against the maximum allowed number. This can lead to OOB access for ext_clocks variable.
Add check in the pm_api_clock_get_name() to validate clock_id against CLK_MAX.
Signed-off-by: Naman Trivedi Manojbhai <naman.trivedimanojbhai@amd.com> Change-Id: Ifa0033d2c557efd6a87b40e366560bc3ba8c602b
show more ...
|
| 2c65b79e | 31-Jul-2023 |
Jay Buddhabhatti <jay.buddhabhatti@amd.com> |
fix(versal-net): make pmc ipi channel as secure
Make PMC IPI channel for Versal NET as secure so that NS systems cannot directly access or modify secure systems.
Signed-off-by: Jay Buddhabhatti <ja
fix(versal-net): make pmc ipi channel as secure
Make PMC IPI channel for Versal NET as secure so that NS systems cannot directly access or modify secure systems.
Signed-off-by: Jay Buddhabhatti <jay.buddhabhatti@amd.com> Change-Id: I75ba8796859dcb35644f3e144d7dc5926755ef78
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 ...
|
| cebb7cc1 | 31-Jul-2023 |
Jay Buddhabhatti <jay.buddhabhatti@amd.com> |
fix(versal-net): add redundant call to avoid glitches
Add redundant macro call to increase security by making code glitch immune as security operations might be called with the IPI command.
Signed-
fix(versal-net): add redundant call to avoid glitches
Add redundant macro call to increase security by making code glitch immune as security operations might be called with the IPI command.
Signed-off-by: Jay Buddhabhatti <jay.buddhabhatti@amd.com> Change-Id: I84d84cca258b7cd981f62816c51032341e19095c
show more ...
|
| e8efb65a | 31-Jul-2023 |
Jay Buddhabhatti <jay.buddhabhatti@amd.com> |
fix(versal-net): change flag to increase security
Currently security flag is set to SECURE by default and is changed to NON_SECURE if NS system is detected. In this case NS system may access secure
fix(versal-net): change flag to increase security
Currently security flag is set to SECURE by default and is changed to NON_SECURE if NS system is detected. In this case NS system may access secure system if condition check gets skipped due to glitches.
So, initialize security_flag to NON_SECURE_FLAG and switch to SECURE_FLAG if the TrustZone bit is detected to be in more secure state.
Signed-off-by: Jay Buddhabhatti <jay.buddhabhatti@amd.com> Change-Id: I7af54465bd8744ba97a58c02607631ee23619d47
show more ...
|
| 96eb2dc4 | 07-Aug-2023 |
Manish V Badarkhe <manish.badarkhe@arm.com> |
Merge "chore(xilinx): reorder headers in assembly files" into integration |