- Jun 22, 2022
-
-
Sudeep Holla authored
Some compilers complain the return type error as below. | arch/none/host/include/arch_helpers.h: In function ‘arch_interrupts_disable’: | arch/none/host/include/arch_helpers.h:25:1: error: no return statement in | function returning non-void [-Werror=return-type] Fix the same. Change-Id: Ia3343fbbea57ae783b272f0c4db05a7060256f85 Signed-off-by:
Sudeep Holla <sudeep.holla@arm.com>
-
Katherine Vincent authored
The changes in this patch are to introduce a typedef, which will allow either signed or unsigned sensor values. This new typedef is used to be able to conditionally support int64, allowing the introduction of negative value sensors. It will be automatically enabled with SCMI-sensor-v2, however it can also be enabled on its own using with the cmake tag SCP_ENABLE_SENSOR_SIGNED_VALUE. Existing platforms that cannot handle signed values will return FWK_E_SUPPORT when the above build options are set. Signed-off-by:
Katherine Vincent <katherine.vincent@arm.com> Change-Id: I0f24e31d4bc3861b1724d814e866ef97f09c4b88
-
- Jun 06, 2022
-
-
Sahil authored
N1SDP SoC platform specific build option, SCP_N1SDP_SENSOR_LIB_PATH has been added which imports the n1sdp sensor library. Also, added a readme.md file which describes this option. Signed-off-by:
sahil <sahil@arm.com> Change-Id: Ie99d738a54d881bcb315e36efad5cb0b58d5a847
-
Sahil authored
Replace Sensor Library with dummy Interface Implementation, allowing relocation of closed source IP outside SCP codebase. Signed-off-by:
sahil <sahil@arm.com> Change-Id: I6041f903e75dfaa804c2c299e033de6ae8b3ad65
-
- May 25, 2022
-
-
Ahmed Gadallah authored
Adding rdfremont along with an LCP target consisting of armv8m MPU configuration example. Signed-off-by:
Ahmed Gadallah <ahmed.gadallah@arm.com> Change-Id: Ibe77e1a62ded74caca6b1bfa04cee51e565127b7
-
Ahmed Gadallah authored
The ARMv8-M architecture comes with a different MPU than the previous ARMv7-M architecture. Hence a new MPU module is added in this change to support it. Signed-off-by:
Ahmed Gadallah <ahmed.gadallah@arm.com> Change-Id: Ie8d4ff62c05186ec141114ac2508799f0f81a867
-
Ahmed Gadallah authored
ARMv7-M support arch directory is modified to support both ARMv7-M and ARMv8-M. The modified directory is renamed from armv7-m to arm-m. This in turn affects the SCP_ARCHITECTURE cmake flag which was previuosly set to armv7-m for armv7m targets and now would be set by arm-m. The ARMv8-M support does not include the security extension. This ARMv8-M support includes support for ARMv8-M Mainline and ARMv8.1-M Mainline. ARMv8.1-M Mainline is supported by GCC ver 10.1 onwards, the latest version can be found here: https://developer.arm.com/tools-and-software/open-source-software /developer-tools/gnu-toolchain/gnu-rm/downloads in addition to LLVM ver 13.0.0 onwards and ArmClang ver 6.14 onwards. Signed-off-by:
Ahmed Gadallah <ahmed.gadallah@arm.com> Change-Id: I7bdac6c80efbb56a0874daad794111376866a46c
-
Ahmed Gadallah authored
Update to CMSIS pack 5.8.0 is done as it supports cortex-m55 where the current version 5.2.0 doesn't. Additionally __VTOR_PRESENT macro is defined for all platforms that use cortex-m3/7 as it is required by the new cmsis pack. Signed-off-by:
Ahmed Gadallah <ahmed.gadallah@arm.com> Change-Id: Id7f4119c04b04bbedc0c5e4b5a5b9fa8832bc357
-
- May 23, 2022
-
-
Vincent Guittot authored
When the scp is running as an application or sub-system, there is a need to terminate the process gracefully. Let introduce the deinit and stop sequence to allow the modules and their elements to cleanup and release resources before terminating the process Add a new fwk_arch_deinit() to loop on modules and stop them. Signed-off-by:
Vincent Guittot <vincent.guittot@linaro.org> Signed-off-by:
Tarek El-Sherbiny <tarek.el-sherbiny@arm.com> Change-Id: I9da1486b8096043f94845c06980d3e7ae373b9e0
-
Tarek El-Sherbiny authored
Update the interface of fwk_interrupt_global_{enable|disable} functions to save and restore the current interrupt state. Add a new framework interface to get current interrupt context state: - fwk_is_interrupt_context() No functional change expected to current arch. Signed-off-by:
Vincent Guittot <vincent.guittot@linaro.org> Signed-off-by:
Tarek El-Sherbiny <tarek.el-sherbiny@arm.com> Change-Id: I61569d1ff21bbc7d7bcc82eee32fc6d7d28b8469
-
Tarek El-Sherbiny authored
Some architectures don't want to loop indefinitly in the same context of the initialization. Let architecture decides if it wants to stay in the initialization context or finish processing the events raised during init and return. No functional changes expected for current arch. fwk_process_event_queue() can then be called to process the pending events. Signed-off-by:
Vincent Guittot <vincent.guittot@linaro.org> Signed-off-by:
Tarek El-Sherbiny <tarek.el-sherbiny@arm.com> Change-Id: I626c0159e3bde38c4ed4d2931ed993cc5a5821dc
-
- May 19, 2022
-
-
Nicola Mazzucato authored
The inclusion of the notification_id member is now dependent on whether or not BUILD_HAS_SCMI_NOTIFICATIONS build flag is set. But in the reset_domain implementation, the functionality associated with that identifier is conditional to the availability of framework notifications BUILD_HAS_NOTIFICATION. This creates a misalignment of build option for the correct use of the reset domain features. Replace BUILD_HAS_SCMI_NOTIFICATIONS with BUILD_HAS_NOTIFICATION for the inclusion of the notification_id. Change-Id: If596761faae827a9a7b3fe4101b36039b0fb2720 Signed-off-by:
Nicola Mazzucato <nicola.mazzucato@arm.com>
-
Nicola Mazzucato authored
The HAL API type that should be returned by whoever binds to the reset module should be `mod_reset_domain_api` and not `mod_reset_domain_drv_api`. Fix the type. Change-Id: Ice6690c575db43af42e2c2ca014968aeb3c7bd96 Signed-off-by:
Nicola Mazzucato <nicola.mazzucato@arm.com>
-
- May 18, 2022
-
-
Morikawa, Masanobu authored
This patch adds a documentation "what options are available and how to build example" on SynQuacer platform. Signed-off-by:
Masanobu Morikawa <morikawa.masanobu@socionext.com> Signed-off-by:
Masahisa Kojima <masahisa.kojima@linaro.org> Change-Id: Ib9db696d7cd665ae2fd10fbddb28c1e0cd7791e8
-
Morikawa, Masanobu authored
This patch adds a new make option to select UART port in make and CMake build on SynQuacer platform. The following 3 UART ports are selectable. uart0 : A standard UART on the 40 pin expansion connector (used as default for SCP console) uart1 : A second standard UART on the 40 pin expansion connector debug_uart : A debug UART via the micro-B USB connector To select UART port, set SYNQUACER_UART value as below when executing make commnad. In make build system, make CC=$CC PRODUCT=synquacer MODE=$MODE \ [SYNQUACER_UART=uart0|uart1|debug_uart] e.g. make CC=$CC PRODUCT=synquacer MODE=$MODE SYNQUACER_UART=uart1 In CMake build system, make -f Makefile.cmake CC=$CC PRODUCT=synquacer MODE=$MODE \ [EXTRA_CONFIG_ARGS="-DSYNQUACER_UART=uart0|uart1|debug_uart"] e.g. make -f Makefile.cmake CC=$CC PRODUCT=synquacer MODE=$MODE \ EXTRA_CONFIG_ARGS="-DSYNQUACER_UART=uart1" If SYNQUACER_UART value is not set, uart0 is selected as defalut. Change-Id: I9390a178c4685d5e4aa88d1eb1174aa9a26fd00f Signed-off-by:
Masahisa Kojima <masahisa.kojima@linaro.org> Signed-off-by:
Masanobu Morikawa <morikawa.masanobu@socionext.com>
-
Leandro Belli authored
This patch moves power allocation functions to a separate file. It will allow to encapsulate this functionality. Signed-off-by:
Leandro Belli <leandro.belli@arm.com> Change-Id: I27e1fcd7c4780196f93bcb8388d1c77035923d1c
-
Leandro Belli authored
This patch moves FastChannels tick process to event context, reducing the time consumed during a ISR. It avoids holding up the entire system for a possible long time. Signed-off-by:
Leandro Belli <leandro.belli@arm.com> Change-Id: Ic3f9af1fa530a22f433bf9deea8cf963db6fb9cc
-
Sahil authored
In current boot flow, the SCP RAM firmware copies TF-BL31 from SCP QSPI memory to SRAM, and the AP core starts the execution from it. With TBBR boot flow enabled SCP RAM firmware will instead copy TF-BL1 to trusted SRAM. This patch also removes BL33 info SDS structure as it is no longer needed with the TBBR based boot. Signed-off-by:
sahil <sahil@arm.com> Change-Id: I802a99fc7da6da5f5ba5ca5f7cb13a08c06146d0
-
Sahil authored
fiptool allows packaging images as a blob with custom UUID but fip module in SCP does not allow platform to use custom UUIDs for images. Current workaround that is being used is to add a custom entry in fip.h and make appropriate changes elsewhere in common fip module. This approach is not scalable and requires changes in common code. This patch adds changes to support platforms to use custom UUIDs through config_fip.c file. Platforms can add any number of custom entries through config which is then parsed by fip module. Signed-off-by:
sahil <sahil@arm.com> Change-Id: I4c0770f9d053e3bbcafa959a1bc83c4175f32c06
-
Tarek El-Sherbiny authored
Update packages versions to avoid an security issues. Signed-off-by:
Tarek El-Sherbiny <tarek.el-sherbiny@arm.com> Change-Id: I8e0cd24fff48be4172e4fbf7b45f40c6611c83c7
-
- May 05, 2022
-
-
Tomás Agustín González Orlando authored
Move all SCMI Base Protocol related functions to separate files. Add the posibility to include (or not) the SCMI Base Protocol related functionality. This will improve memory usage in those cases where the SCMI Base Protocol is unnecessary, and will avoid adding the overhead caused by creating a new module for the SCMI Base Protocol. The CMake variable SCP_TARGET_EXCLUDE_BASE_PROTOCOL is introduced to avoid including the SCMI Base Protocol functionality in the code. In order to avoid the inclusion, just use the command set(SCP_TARGET_EXCLUDE_BASE_PROTOCOL TRUE) in the Firmware.cmake file of the specific target. Signed-off-by:
Tomás Agustín González Orlando <tomasagustin.gonzalezorlando@arm.com> Change-Id: I90a81c55a6c22e8f4f4b699b9e4c4139065db4bc
-
Tomás Agustín González Orlando authored
The variable agent_count for several protocols was inconsistent in type, in some modules being signed and in some modules being unsigned. Make all agent_count variables of unsigned type. Change-Id: I02957315f9a5048ab12c0f5d848dd0e402c3382a Signed-off-by:
Tomás Agustín González Orlando <tomasagustin.gonzalezorlando@arm.com>
-
Yaron authored
The debugger cli uses an alarm that periodically read a character from UART to check if ctrl+E was pressed. However, the alarm is still being called when the CLI is opened - which causes the CLI to occasionally lose characters. Signed-off-by:
Yaron Micher <yaronm@hailo.ai>
-
- May 04, 2022
-
-
Manoj Kumar authored
The generic timer instance is not hooked to the framework time driver which makes the timestamp to be printed as zeros all the time. This patch fixes the gap to let framework print correct timestamps during debug logs. Signed-off-by:
Manoj Kumar <manoj.kumar3@arm.com> Change-Id: Iacab58a01999be8f71358d13e48c1517dba02b64
-
- Apr 26, 2022
-
-
Ahmed Gadallah authored
Images generated for cortex-m7 targets are not booting. This is because hardware floating point initialization modules are added by ArmClang linker. These modules add floating point instructions that cause exceptions. This patch adds the linker option to omit including the floating point initialization modules and the compiler option to avoid using floating point instructions. Signed-off-by:
Ahmed Gadallah <ahmed.gadallah@arm.com> Change-Id: I7e0f868227587c0a167d29974608ddb2a21b018f
-
- Apr 21, 2022
-
-
Leandro Belli authored
`--skip-container` inline argument is introduced to skip container execution when it is set. This could be useful for developers who run locally the script but wish to skip the container spawning to speed-up developing and testing. Signed-off-by:
Leandro Belli <leandro.belli@arm.com> Change-Id: Ib44aea5953d6017a4bac4ac6dd5fd9fe91c21d2a
-
- Apr 20, 2022
-
-
Masahisa Kojima authored
The new synquacer hsspi driver fixes all the cppcheck errors. Let's update the suppress list. Signed-off-by:
Masahisa Kojima <masahisa.kojima@linaro.org> Change-Id: Ia986d6b866b066677e7cb1251dc94041de911ff3
-
Masahisa Kojima authored
This commit supports the Winbond SPI NOR flash device. Signed-off-by:
Masashi Morimoto <morimoto.masashi@socionext.com> Signed-off-by:
Masahisa Kojima <masahisa.kojima@linaro.org> Change-Id: If7cdbc67cc92779b18ba3694255205ed95912fdf
-
Masahisa Kojima authored
This commit supports the Infineon SPI NOR flash device. Signed-off-by:
Masashi Morimoto <morimoto.masashi@socionext.com> Signed-off-by:
Masahisa Kojima <masahisa.kojima@linaro.org> Change-Id: Id482d2e6a8c1780f1a641f92f7bbe58a790f46a1
-
Masahisa Kojima authored
This commit supports the Micron SPI NOR flash device. Signed-off-by:
Masashi Morimoto <morimoto.masashi@socionext.com> Signed-off-by:
Masahisa Kojima <masahisa.kojima@linaro.org> Change-Id: If4dbdba600a492b8c43cc353940d73ceaf6a94fd
-
Masahisa Kojima authored
This commit fully replaces the existing HSSPI NOR flash driver to newly designed driver. The new driver implements NOR flash read/program/erase/reset APIs, and separates off the HSSPI controller specific module(hsspi) and NOR flash specific module(nor). With that, we can add the support of other devices such as NAND flash device. This commit supports the Macronix SPI NOR flash device. Signed-off-by:
Masashi Morimoto <morimoto.masashi@socionext.com> Signed-off-by:
Masahisa Kojima <masahisa.kojima@linaro.org> Change-Id: Id8e50a6f6f6cd864a34eeed1d32814441c9da274
-
Shriram authored
Add a new function to handle the completion of response message processing by protocol modules. This function will in-turn call the release_channel_lock function from the mod_scmi_to_transport api. This will be used in a scenario where the scmi module has received a response message for a previously initiated SCMI message. It is assumed that this response message does not require a further response. So once the corresponding protocol handles the response message it can call the response_message_handler() from scmi module to mark the completion. Without this, we won't be able to process a subsequent scmi message on the same transport channel since channel context lock would not have been released for the message for which smt_respond() was not called. Signed-off-by:
Shriram K <shriram.k@arm.com> Change-Id: Ibcba5d114ac0f0ad809f12feb2173f6894fd1a54
-
Shriram authored
Add a new function smt_release_channel_lock() that will set the smt channel context lock to false. This function is intended to be used by the scmi module when it has received and processed a response message which does not require a further response and hence smt_respond() won't be called. This will lead to channel context lock not being released since smt_respond() doesn't get called. Hence add a function to release the channel lock without having to respond back. Signed-off-by:
Shriram K <shriram.k@arm.com> Change-Id: I0b6e3006c105398f40a918ae99c54bf16d9a78d4
-
Shriram authored
Add new handler for requester type smt channels and refactor requester and completer smt channel handlers. The requester type smt channels send requests and receive the response. Hence, requester type smt channels assume the role of caller and the completer type smt channels are considered to be the callee. Also, add new parameter in smt_transmit() function to determine if acknowledgement interrupt is required for the message that we send. Signed-off-by:
Shriram K <shriram.k@arm.com> Change-Id: Ib34e35d8ed239f543573cd17c3b933a437bc5fde
-
Shriram authored
Add new function that sends an SCMI message given the message parameters, scmi service id, etc. Also expose this function as a part of mod_scmi_from_protocol_api. Any module that wants to initiate SCMI communication can bind to this API and provide appropriate SCMI message handler function pointers back to scmi module. Signed-off-by:
Shriram K <shriram.k@arm.com> Change-Id: I9c51894891c74fca34b5cd9049c5a55063f995e5
-
Shriram authored
This patch enables smt mailbox to be initialized without the power domain module included in the firmware. This can be used by mcp ramfw which does not include power domain module but uses smt module. Hence BUILD_HAS_MOD_POWER_DOMAIN macro is used to conditionally compile the code that subscribes to power domain state transition notifications and initializes the mailbox based on the notification from power domain module. Also add a condition such that the shared mailbox can be initialized by the completer type smt channels only. If the power domain module is not included in the firmware build then the smt module initializes the smt mailbox during the start phase. Signed-off-by:
Shriram K <shriram.k@arm.com> Change-Id: I56531f635c55f1414be548594778f0c9c6a2deb9
-
- Apr 13, 2022
-
-
Nicola Mazzucato authored
Update list with core & platform maintainers. Change-Id: I7e492ab98b9972671d8e9a6afafdce94c2076734 Signed-off-by:
Nicola Mazzucato <nicola.mazzucato@arm.com>
-
- Apr 08, 2022
-
-
Tomás Agustín González Orlando authored
The CI is indicating whether the build failed or passed, but is not printing the output of the build, which is making it difficult to debug any problems that arise when running the cmake-ci tests. Generate files with the information of each build's output. Store those files in the path given by the parameter -bod (build output directory) or under the default folder /tmp/scp/build-output. Signed-off-by:
Tomás Agustín González Orlando <tomasagustin.gonzalezorlando@arm.com> Change-Id: I1b45cee047a23e54e4fe2f24414001b583c706bc
-
- Apr 07, 2022
-
-
Tomás Agustín González Orlando authored
The CI will now check whether any text files are missing newlines at the EOF as this would make them incorrect text files under Unix and hence some Unix utilities would have an undesired behaviour on those files. Signed-off-by:
Tomás Agustín González Orlando <tomasagustin.gonzalezorlando@arm.com> Change-Id: If9477d49b1b8543bb30bdd128b091a437ca92f69
-
Tomás Agustín González Orlando authored
Under unix, text files should end with newlines, and not having a newline at the EOF may cause some utilities to process these files incorrectly. Add the missing newlines to some of the text files in the codebase. Signed-off-by:
Tomás Agustín González Orlando <tomasagustin.gonzalezorlando@arm.com> Change-Id: If88f7790cedb455cd3ad6d598197ebb276d57503
-