- Sep 13, 2023
-
-
Wen Ping Teh authored
Remove deprecated command and path. Update binary path. Signed-off-by:
Wen Ping Teh <wenping.teh@arm.com> Change-Id: I9a401d76d0b542122b530d01b0c5563c5ec5e101
-
- Sep 06, 2023
-
-
Katherine Vincent authored
Update the change log to summarise the changes included in this release. Signed-off-by:
Katherine Vincent <katherine.vincent@arm.com> Change-Id: I8d58f8fffa449ce25c6898f7e7c77bcc779076b8
-
Katherine Vincent authored
This patch updates the SCP-firmware version to 2.13.0. Signed-off-by:
Katherine Vincent <katherine.vincent@arm.com> Change-Id: I40c8018aee4f408c7625a70e8290a88195b6fff5
-
- Sep 05, 2023
-
-
Thomas Abraham authored
Peripherals could implement a smaller set of PID/CID registers for its identification and reading unimplemented registers could cause aborts. So allow modules to specify a valid set of PID/CID register values that have to be examined against a set of expected values. Signed-off-by:
Thomas Abraham <thomas.abraham@arm.com> Change-Id: Ic9655f8165bfbdd554318e947d599790d529a895
-
Thomas Abraham authored
For the supported platforms, allow the module configuration data to specify the valid set of PID/CID registers to be compared. The valid set of registers are represented as a bitmap. Signed-off-by:
Thomas Abraham <thomas.abraham@arm.com> Change-Id: Iecb9ef7dd9c70b1b6d71fcd89bb211118d60d9af
-
Thomas Abraham authored
Certain peripherals have only a partial set of valid PID and CID identification registers. On such peripherals, the PID and CID register address offsets remain the same even though only a partial set of registers are valid. Reading the invalid PID/CID registers lead to a implementation specific behaviour. For example, such reads could cause bus aborts. In preparation towards restricting the expected PID/CID register value comparison to only the valid registers, allow the modules to specify the list of PID/CID registers to be compared as a bit map. Signed-off-by:
Thomas Abraham <thomas.abraham@arm.com> Change-Id: Iec9e6e36e96ea429ad727ad53ffc17379395abc5
-
Thomas Abraham authored
The expected value for PID0 register of SID peripheral is incorrect. Fix this accordingly. Signed-off-by:
Thomas Abraham <thomas.abraham@arm.com> Change-Id: I5e935ed95f476e2a27458f624fb54f353698287f
-
Luke Starrett authored
During some refactoring, a2ab9889 introduced a logical bug in the sanity check of the integer and fractional divisors. This can be seen with the trivial case of int divisor = 2 and frac divisor = 0 causing an assert. Update the check to correctly reflect the comment, and HW spec/TRM. Signed-off-by:
Luke Starrett <lukes@xsightlabs.com>
-
Tarek El-Sherbiny authored
This patch adds unit tests for both mgi.c and mod_smcf.c. Each test is in a separate directory. The tests for mod_smcf.c requires mocking the mgi.c functions. The required mocks are generated using the mock generator script gm.rb in unit_test directory and saved under smcf/test/mocks directory. Signed-off-by:
Tarek El-Sherbiny <tarek.el-sherbiny@arm.com> Co-authored-by:
Abhishek Rawat <abhishek.rawat@arm.com> Change-Id: I33250e35b9c58fb26166084fbbf1ef0df4c4f4c2
-
- Sep 04, 2023
-
-
Nicola Mazzucato authored
Fix doxygen defgroup and title. Signed-off-by:
Nicola Mazzucato <nicola.mazzucato@arm.com> Change-Id: I6eb9be3a9a8e06ec676de4248ebb2480f85d8e28
-
Nicola Mazzucato authored
Doxygen labels are missing for the header file. Let's add them. That will help with grouping the module's documentation within the module group. Signed-off-by:
Nicola Mazzucato <nicola.mazzucato@arm.com> Change-Id: I69dcc17467bca796fe1751810ebc7e50a8ef1539
-
Nicola Mazzucato authored
defgroup is set to GroupAtu, while it should be SMCF's. Let's fix that and the title. Signed-off-by:
Nicola Mazzucato <nicola.mazzucato@arm.com> Change-Id: I14255e854a3db6f6015d4913d7671a4f5c0e40c6
-
Etienne Carriere authored
Fixes attribute of __fwk_slist_next() first argument (list reference) from FWK_UNTOUCHED to FWK_READ_ONLY1 as it is read by the function when built in debug mode. Before this change was GCC 12.2 to emit the below warning message when building in debug mode: framework/src/fwk_slist.c: In function ‘__fwk_slist_next’: framework/src/fwk_slist.c:111:16: warning: ‘list’ may be used uninitialized [-Wmaybe-uninitialized] 111 | fwk_assert(__fwk_slist_contains(list, node)); | ^~~~~~~~~~~~~~~~~~~~ framework/src/fwk_slist.c:105:29: note: accessing argument 1 of a function declared with attribute ‘access (none, 1)’ 105 | const struct fwk_slist *list, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~ Change-Id: I1a3f4911daf7c0539cd82a9a9011509bae180c49 Signed-off-by:
Etienne Carriere <etienne.carriere@foss.st.com>
-
Etienne Carriere authored
Fixes attribute of __fwk_dlist_remove() first argument (list reference) from FWK_UNTOUCHED to FWK_READ_ONLY1 as it is read by the function when built in debug mode. Before this change was GCC 12.2 to emit the below build warning when building in debug mode: framework/src/fwk_dlist.c: In function ‘__fwk_dlist_remove’: framework/src/fwk_dlist.c:76:12: warning: ‘list’ may be used uninitialized [-Wmaybe-uninitialized] 76 | assert(__fwk_slist_contains( | ^~~~~~~~~~~~~~~~~~~~ framework/src/fwk_dlist.c:67:23: note: accessing argument 1 of a function declared with attribute ‘access (none, 1)’ 67 | struct fwk_dlist *list, | ~~~~~~~~~~~~~~~~~~^~~~ Change-Id: I5027e1bfaaf8615784dbe963aca6ccb564e8f352 Signed-off-by:
Etienne Carriere <etienne.carriere@foss.st.com>
-
Etienne Carriere authored
Replaces 2 occurrences of assert() with calls to fwk_assert() for consistency in framework source files. Change-Id: I46cc604b426ec1337dd1666d98e33df55cddbe02 Signed-off-by:
Etienne Carriere <etienne.carriere@foss.st.com>
-
- Aug 31, 2023
-
-
Leandro Belli authored
`fwk_assert` calls were removed to minimize assertions in the framework code, since they can be easily replaced by error handling. The reasons to do that are that the framework should be reliable enough, the debugging process of the framework should not rely on the users and the error handling can facilitate the usage of the framework. Signed-off-by:
Leandro Belli <leandro.belli@arm.com> Change-Id: Ib9c71580cb0c489b50a63d9fb5957ecf9459d212
-
Sahil authored
This patch enables the following features in the morello_sensor driver: 1. Hardware driven periodic sampling of temperature and voltage sensors. 2. Alarm A and B for temperature sensor and interrupt handling for the same. Signed-off-by:
sahil <sahil@arm.com> Change-Id: I95bd916984c77bcb008d72bf9840d231988afb41
-
Md Golam Tanvir Zim authored
Juno has two PLATFORM_VARIANTS, i.e. `BOARD` and `FVP`. These are updated in the ci_cmake.py file. Change-Id: Idf62af14a2e7d536dc0e75d677a835532e845a35 Signed-off-by:
Md Golam Tanvir Zim <mdgolamtanvir.zim@arm.com>
-
- Aug 17, 2023
-
-
Nicola Mazzucato authored
A previous patch moved the statistics update to a separate function perf_prot_ops_update_stats(). This function returns an integer status which is not checked since and was not consumed either before the change. Remove the returned value from the function. Change-Id: Icd2dbcf08232a49ca02aa8ee0b33ff0ca8d8be31 Signed-off-by:
Nicola Mazzucato <nicola.mazzucato@arm.com>
-
Nicola Mazzucato authored
When there's coordination only, i.o.w. plugins-handler is used without plugins, the internal tables of aggretation values are not updated. Fix this by invoking plugins_policy_sync_level_limits() also for the case of no plugins, such that the coordination/aggregation of values can be correctly performed. Signed-off-by:
Nicola Mazzucato <nicola.mazzucato@arm.com> Change-Id: I6fb51d20ccf121fba850475c95380fce218d8a71
-
Nicola Mazzucato authored
get_dvfs_dependency_id() wrongly returns an element index that refers to the logical, not the physical domain. Fix the function by returning the respective dependency (physical) domain for the logical domain. Reported-by:
Ionela Voinescu <ionela.voinescu@arm.com> Signed-off-by:
Nicola Mazzucato <nicola.mazzucato@arm.com> Change-Id: I923a338beece05ffc4037d2913fdcbab5265aa45
-
Nicola Mazzucato authored
This will allow conditional inclusion of SCMI Performance commands operations. That way we can choose to have only the core Perf and FastChannels without the commands ops (for ACPI-based systems). Unit test updated accordingly. Change-Id: Ic2b915cdda46036b6431cca9cb44ea1960fbd28e Signed-off-by:
Nicola Mazzucato <nicola.mazzucato@arm.com>
-
Nicola Mazzucato authored
The use of goto is discouraged, thus in this patch they are removed from perf_fch_describe_fast_channels in place of a function helper. Signed-off-by:
Nicola Mazzucato <nicola.mazzucato@arm.com> Change-Id: I695a26e5cd8f34b7d8ad8b7e2a6b28de9110c24d
-
Nicola Mazzucato authored
Support for SCMI Performance FastChannels is placed to a separate file in the attempt to improve readability and subsequently being able to cherry-pick portions of SCMI-Performance that are required by each platform. Change-Id: Iae89126ed85f3033116068a4dbc922946fbeb0dd Signed-off-by:
Nicola Mazzucato <nicola.mazzucato@arm.com>
-
Nicola Mazzucato authored
Rearrange unit test files under separate directories to divide tests on different functionalities: main scmi-perf and the plugins handler extension. This will help to identify which tests belong to which source file in the tree. Signed-off-by:
Nicola Mazzucato <nicola.mazzucato@arm.com> Change-Id: Ib2fe8800cb642d3d1d707718c31ce970427bf3fe
-
- Aug 16, 2023
-
-
Abhishek Rawat authored
This change added Abhishek R(abhishek.rawat@arm.com) and Wen Ping Teh(WenPing.Teh@arm.com) to Core Maintainers list. Signed-off-by:
Abhishek Rawat <abhishek.rawat@arm.com> Change-Id: I83ef9d93b6f02b7742c7fca1036f6ab2187c60ff
-
- Aug 15, 2023
-
-
Tarek El-Sherbiny authored
Brief documentation to describe SMCF module. Signed-off-by:
Tarek El-Sherbiny <tarek.el-sherbiny@arm.com> Co-authored-by:
Abhishek Rawat <abhishek.rawat@arm.com> Change-Id: I8363fb22fa2ef46ae9a40b58a4ff905c15b9eafe
-
Tarek El-Sherbiny authored
This commit adds a new layer called smcf_data in a separate file. The layer provides two main features. The first feature provides all related functions to unpack, extract and copy the data. The second feature provides the data validation functions based on the sample identifiers provided, if any. Because all sample identifiers are optional, the patch adds functions to check if each identifier field is available in the sample header before performing the validation. In addition, to support data read from RAM and as well as from the MGI registers, pointers are used. The pointers are set at initialization to point at MGI or RAM according to the data configuration passed in. Signed-off-by:
Tarek El-Sherbiny <tarek.el-sherbiny@arm.com> Co-authored-by:
Abhishek Rawat <abhishek.rawat@arm.com> Change-Id: I76cac513a3dd96edfa779eb913c8b635ab6cf0d6
-
Tarek El-Sherbiny authored
This patch adds the main module structure and functions. It includes the module and element initialization and the hardware configuration. Also, add the API which contains two functions to interface with other modules. The first function to start sampling and the second to read the data. Signed-off-by:
Tarek El-Sherbiny <tarek.el-sherbiny@arm.com> Co-authored-by:
Abhishek Rawat <abhishek.rawat@arm.com> Change-Id: I2dea10aab526b26180117a7b3ccc6c8c65c23c89
-
Tarek El-Sherbiny authored
The System Monitoring Control Framework is designed to manage a large and diverse set of on-chip sensors and monitors. It does this by presenting software with a standard interface to control the monitors, regardless of type, and reducing software load of controlling the monitor sampling and data collection. The SMCF reduces the burden on monitor control by enabling sampling on multiple monitors to be controlled together and by various triggers either internal or external to the SMCF. The number of monitors that the SMCF supports can be configured. The SMCF eases data collection requirements by allowing the data from multiple monitors to be collated in a single location or writing out data to a memory-mapped location that is easier for the monitoring agent to access. The SMCF can also reduce the requirement on the monitoring agent to constantly monitor data by providing programmable alerts that can inform the monitoring agent when certain changes happen, or thresholds are crossed. This patch adds the initial support for SMCF. The patch provides register map and low level hardware functionality internal to this module. The next patch will provide the main module functionality and the interface to the rest of the firmware. Signed-off-by:
Tarek El-Sherbiny <tarek.el-sherbiny@arm.com> Change-Id: I98c6c5699c31aef1c91a7940e4e7c0e7bf697f73
-
- Aug 14, 2023
-
-
Alex Zusmanovich authored
Remove fwk_check that the element_count > 0, which prevents a system without PPUs from using the system_power module. Signed-off-by:
Alex Zusmanovich <alexz@hailo.ai> Signed-off-by:
Yaron Micher <yaronm@hailo.ai>
-
Katherine Vincent authored
This patch will add unit tests to cover the changes to process_event to include the new notification handler. Signed-off-by:
Katherine Vincent <katherine.vincent@arm.com> Change-Id: I2af7d4bcda4c2844c8b5e647b2bf3bfbee630e04
-
Katherine Vincent authored
Add a new message handler type to the scmi layer to handle receiving of notifications as well as command types. Signed-off-by:
Katherine Vincent <katherine.vincent@arm.com> Change-Id: Ibb1b05efd910b5f170510dd4435f8e95d4df1660
-
Katherine Vincent authored
refactored `scmi_sys_power_state_set_handler` This patch add unit tests for the refactored set_state function and all the new corresponding functions accordingly. Signed-off-by:
Katherine Vincent <katherine.vincent@arm.com> Change-Id: I37dbeb92d5fbf61867361271528bfa3a46f7c4a5
-
Katherine Vincent authored
Currently `scmi_sys_power_state_set_handler` is a fairly long function with multiple cases for various states and different actions and checks for each state. To simplify this and increase readability, this is a change to split some of the functionality up. The fundamental functionality of `scmi_sys_power_state_set_handler` should not be changing, just rearranging to make it easier to maintain. Signed-off-by:
Katherine Vincent <katherine.vincent@arm.com> Change-Id: I6afd1820b498b74ec4b48572fab55ef431053c08
-
Katherine Vincent authored
Currently when an SCMI message to set the state is sent to the `mod_scmi_system_power` module, if the state sent is one of shutdown, warm reset or cold reset, a notification will not be sent to subscribers. For the other cases, if a state transition was successful it will send a notification before going to exit. However, in this case regardless of whether or not it was successful, it will go straight to the exit section and miss sending a notification. This has been amended to now only proceed to the exit if it is an unsuccessful change instead, and will therefore include the call to notify subscribers if the state change was executed as expected. Signed-off-by:
Katherine Vincent <katherine.vincent@arm.com> Change-Id: I9c7b2602b2fd316408daec627abbf7781c5825e2
-
- Aug 08, 2023
-
-
Mohamed Omar Asaker authored
The unit test is based on the ut template stated in the user guide. Signed-off-by:
Mohamed Omar Asaker <mohamed.omarasaker@arm.com> Change-Id: I19dabe987a7a1b7dea3f98fe75cb3aded27da7a0
-
Mohamed Omar Asaker authored
Adding a note to explain the strategy of adding unit tests for modules depend on external header files. Signed-off-by:
Mohamed Omar Asaker <mohamed.omarasaker@arm.com> Change-Id: If9dc6fff7a944f7cc1fa9fcc91e70aaaf50293af
-
Mohamed Omar Asaker authored
It is possible to have similar modules under a directory. Hence, add to unit test related checks the possibility to have multiple levels under module folder Signed-off-by:
Mohamed Omar Asaker <mohamed.omarasaker@arm.com> Change-Id: I75513f75e9c28763abc21ce182e8d73cde0cd0b2
-
Katherine Vincent authored
A change to make some corrections to the user guide document, and update some documentation. Signed-off-by:
Katherine Vincent <katherine.vincent@arm.com> Change-Id: I69e760fad816a89dbeba2d876c5857d88fd645d6
-