| #
0cffa1df |
| 25-Nov-2024 |
Pascal Paillet <p.paillet@foss.st.com> |
plat-stm32mp1: SCMI performance domain for CPU DVFS
Implement scmi-msg perf protocol platform handlers to drive CPU voltage/frequency scaling support.
Co-developed-by: Etienne Carriere <etienne.car
plat-stm32mp1: SCMI performance domain for CPU DVFS
Implement scmi-msg perf protocol platform handlers to drive CPU voltage/frequency scaling support.
Co-developed-by: Etienne Carriere <etienne.carriere@linaro.org> Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Signed-off-by: Pascal Paillet <p.paillet@foss.st.com> Reviewed-by: Etienne Carriere <etienne.carriere@foss.st.com>
show more ...
|
| #
b18ace9b |
| 22-Oct-2024 |
Etienne Carriere <etienne.carriere@foss.st.com> |
plat-stm32mp1: scmi_server: test reset/clock access against ETZPC config
Check whether or not an SCMI clock or SCMI reset domain can be accessed using the firewall API instead of relying on shared_r
plat-stm32mp1: scmi_server: test reset/clock access against ETZPC config
Check whether or not an SCMI clock or SCMI reset domain can be accessed using the firewall API instead of relying on shared_resources.c driver. This latter is not useless since integration of the firewall framework and will be soon removed.
Remove also the buggy tests on SCMI reset being exposed that relied on wrong API function stm32mp_nsec_can_access_clock(). Test on reset domain being accessible or not is now dynamically handled with nsec_can_access_resource().
Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com> Reviewed-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Acked-by: Gatien Chevallier <gatien.chevallier@foss.st.com>
show more ...
|
| #
da41b14d |
| 22-Oct-2024 |
Etienne Carriere <etienne.carriere@foss.st.com> |
plat-stm32mp1: scmi_server: remove useless assertion on rstctrl
Remove useless assertion on reset controller handle value.
Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com> Reviewed-by
plat-stm32mp1: scmi_server: remove useless assertion on rstctrl
Remove useless assertion on reset controller handle value.
Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com> Reviewed-by: Gatien Chevallier <gatien.chevallier@foss.st.com> Reviewed-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
show more ...
|
| #
cfd9e05e |
| 11-Oct-2024 |
Etienne Carriere <etienne.carriere@foss.st.com> |
plat-stm32mp1: scmi_server: permit MCU reset upon remoteproc security
Forbid SCMI accesses to MCU reset controllers when remote processor is to be managed through OP-TEE remoteproc services.
Signed
plat-stm32mp1: scmi_server: permit MCU reset upon remoteproc security
Forbid SCMI accesses to MCU reset controllers when remote processor is to be managed through OP-TEE remoteproc services.
Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com> Reviewed-by: Gatien Chevallier <gatien.chevallier@foss.st.com> Reviewed-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
show more ...
|
| #
297b2ca9 |
| 30-Nov-2023 |
Etienne Carriere <etienne.carriere@foss.st.com> |
plat-stm32mp1: scmi_server: remove useless bounding of voltage levels
Remove bounding of regulators supported voltage levels according to mix/max levels now that drivers take care of that.
Acked-by
plat-stm32mp1: scmi_server: remove useless bounding of voltage levels
Remove bounding of regulators supported voltage levels according to mix/max levels now that drivers take care of that.
Acked-by: Jens Wiklander <jens.wiklander@linaro.org> Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
show more ...
|
| #
ace929f0 |
| 23-Nov-2023 |
Etienne Carriere <etienne.carriere@foss.st.com> |
drivers: regulator: fix variable sized voltages fallback
Fix build issue reported by Clang on variable size field desc not being located at the end of struct voltages_fallback. The error was reporte
drivers: regulator: fix variable sized voltages fallback
Fix build issue reported by Clang on variable size field desc not being located at the end of struct voltages_fallback. The error was reported with a trace message like below:
core/include/drivers/regulator.h:118:4: warning: field 'voltages_fallback' with variable sized type 'struct voltages_fallback' not at the end of a struct or class is a GNU extension [-Wgnu-variable-sized-type-not-at-end] } voltages_fallback; ^ core/drivers/regulator/regulator_fixed.c:27:19: warning: field 'regulator' with variable sized type 'struct regulator' not at the end of a struct or class is a GNU extension [-Wgnu-variable-sized-type-not-at-end] struct regulator regulator; ^ 2 warnings generated.
To achieve this the variable size field entries is removed from struct regulator_voltages that is renamed struct regulator_voltages_desc. API function regulator_supported_voltages() and regulator drivers handler function ::supported_voltages are updated the get 2 input arguments the second being the levels arrays which size is defined by the description argument.
Impacted sources files are updated accordingly.
Fixes: 43c155ba111d ("drivers: regulator: list supported levels") Acked-by: Jens Wiklander <jens.wiklander@linaro.org> Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
show more ...
|
| #
26e4d95e |
| 03-Nov-2023 |
Etienne Carriere <etienne.carriere@foss.st.com> |
plat-stm32mp1: scmi_server: expose IOD regulators
Replace stubs with recently introduced IO domain regulators in SCMI server for STM32MP13 variants.
Acked-by: Patrick Delaunay <patrick.delaunay@fos
plat-stm32mp1: scmi_server: expose IOD regulators
Replace stubs with recently introduced IO domain regulators in SCMI server for STM32MP13 variants.
Acked-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Acked-by: Gatien Chevallier <gatien.chevallier@foss.st.com> Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
show more ...
|
| #
6767c66b |
| 07-Nov-2023 |
Etienne Carriere <etienne.carriere@foss.st.com> |
plat-stm32mp1: scmi_server: simplify regulators identification
Explicitly use a name ID of PMIC regulators identification and a numerical ID for PWR and stubbed regulators identification while there
plat-stm32mp1: scmi_server: simplify regulators identification
Explicitly use a name ID of PMIC regulators identification and a numerical ID for PWR and stubbed regulators identification while there is only 1 VREFBUF regulator that doesn't need such ID.
Remove string comparison from name to ID conversion for PWR in order to simplify later use of SDMMC IO domain regulators on STM32MP13 variants.
Acked-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Acked-by: Gatien Chevallier <gatien.chevallier@foss.st.com> Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
show more ...
|
| #
305e38d9 |
| 16-Nov-2023 |
Etienne Carriere <etienne.carriere@foss.st.com> |
plat-stm32mp1: scmi_server: report invalid regulator state request
Changes the SCMI return code from SCMI_GENERIC_ERROR to SCMI_INVALID_PARAMETERS when the requested state is not one of the 2 suppor
plat-stm32mp1: scmi_server: report invalid regulator state request
Changes the SCMI return code from SCMI_GENERIC_ERROR to SCMI_INVALID_PARAMETERS when the requested state is not one of the 2 supported SCMI voltage domain states (SCMI_VOLTAGE_DOMAIN_CONFIG_ARCH_ON or SCMI_VOLTAGE_DOMAIN_CONFIG_ARCH_OFF).
Acked-by: Jerome Forissier <jerome.forissier@linaro.org> Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
show more ...
|
| #
021eda8b |
| 15-Nov-2023 |
Etienne Carriere <etienne.carriere@foss.st.com> |
plat-stm32mp1: scmi_server: fix regulator framework integration
Fixes the return value when an SCMI regulator is already in the expected state. Prior this change the implementation returned SCMI_GEN
plat-stm32mp1: scmi_server: fix regulator framework integration
Fixes the return value when an SCMI regulator is already in the expected state. Prior this change the implementation returned SCMI_GENERIC_ERROR instead of SCMI_SUCCESS.
Fixes: 23e200628dad ("plat-stm32mp1: scmi_server: use registered regulators") Acked-by: Jerome Forissier <jerome.forissier@linaro.org> Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
show more ...
|
| #
117fe695 |
| 11-Oct-2023 |
Etienne Carriere <etienne.carriere@foss.st.com> |
plat-stm32mp1: scmi_server: enable boot on regulators
During SCMI server initialization, enable regulators that have a boot-on property enabled.
Acked-by: Gatien Chevallier <gatien.chevallier@foss.
plat-stm32mp1: scmi_server: enable boot on regulators
During SCMI server initialization, enable regulators that have a boot-on property enabled.
Acked-by: Gatien Chevallier <gatien.chevallier@foss.st.com> Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
show more ...
|
| #
7ee4daa9 |
| 13-Sep-2023 |
Etienne Carriere <etienne.carriere@foss.st.com> |
plat-stm32mp1: scmi_server: deny access to regulators not probed
SCMI server denies access to regulators that are not initialized hence cannot be exposed.
Acked-by: Gatien Chevallier <gatien.cheval
plat-stm32mp1: scmi_server: deny access to regulators not probed
SCMI server denies access to regulators that are not initialized hence cannot be exposed.
Acked-by: Gatien Chevallier <gatien.chevallier@foss.st.com> Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
show more ...
|
| #
8f99d932 |
| 06-Sep-2023 |
Etienne Carriere <etienne.carriere@foss.st.com> |
plat-stm32mp1: scmi_server: regulator supported levels
Implements stm32mp1 platform SCMI voltage domain level list based on regulator_supported_voltages().
Acked-by: Gatien Chevallier <gatien.cheva
plat-stm32mp1: scmi_server: regulator supported levels
Implements stm32mp1 platform SCMI voltage domain level list based on regulator_supported_voltages().
Acked-by: Gatien Chevallier <gatien.chevallier@foss.st.com> Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
show more ...
|
| #
23e20062 |
| 27-Jun-2023 |
Etienne Carriere <etienne.carriere@foss.st.com> |
plat-stm32mp1: scmi_server: use registered regulators
Changes stm32mp1 platform SCMI server to use regulators registered in the regulator framework instead of local handlers. Getting the supported v
plat-stm32mp1: scmi_server: use registered regulators
Changes stm32mp1 platform SCMI server to use regulators registered in the regulator framework instead of local handlers. Getting the supported voltage list still uses a local function until the regulator framework provides a suitable API function for that purpose.
Stubbed regulators are still handled locally until their driver is implemented.
Acked-by: Gatien Chevallier <gatien.chevallier@foss.st.com> Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
show more ...
|
| #
f1fc3324 |
| 22-Jun-2023 |
Etienne Carriere <etienne.carriere@foss.st.com> |
plat-stm32mp1: stub stm32mp13 regulators
Implements stubs for SCMI regulators that are to be exposed by STM32MP13 SCMI server but are not implemented yet in OP-TEE core. The drivers for these regula
plat-stm32mp1: stub stm32mp13 regulators
Implements stubs for SCMI regulators that are to be exposed by STM32MP13 SCMI server but are not implemented yet in OP-TEE core. The drivers for these regulators (IOD SDMMC1/2 and VREFBUF) will be implemented once there is a regulator framework in OP-TEE. In the meantime, stubbing those allows to use the platform.
Reviewed-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
show more ...
|
| #
98c094e4 |
| 29-Jun-2023 |
Thomas Bourgoin <thomas.bourgoin@foss.st.com> |
plat-stm32mp1: change log level in SCMI server
The SCMI server prints debug messages when handling some SCMI services. At runtime this leads to a lot of traces and debug log level is too verbose. Th
plat-stm32mp1: change log level in SCMI server
The SCMI server prints debug messages when handling some SCMI services. At runtime this leads to a lot of traces and debug log level is too verbose. Therefore change all debug traces to flow level for that source file.
Reviewed-by: Etienne Carriere <etienne.carriere@foss.st.com> Signed-off-by: Thomas Bourgoin <thomas.bourgoin@foss.st.com>
show more ...
|
| #
47801aeb |
| 31-May-2023 |
Etienne Carriere <etienne.carriere@foss.st.com> |
plat-stm32mp1: scmi_server: support use of OP-TEE shared memory
Updates scmi_server configuration and implementation for the platform to use OP-TEE native shared memory instead of device memory mapp
plat-stm32mp1: scmi_server: support use of OP-TEE shared memory
Updates scmi_server configuration and implementation for the platform to use OP-TEE native shared memory instead of device memory mapped SRAM for SCMI messages transfer. With this change, configuring CFG_STM32MP1_SCMI_SHM_BASE to 0 allows such setup.
This change moves registration of CFG_STM32MP1_SCMI_SHM_BASE as non-secure mapped device memory from main.c to scmi_server.c to have all SCMI related platform resources defined from that source file.
Acked-by: Gatien Chevallier <gatien.chevallier@foss.st.com> Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
show more ...
|
| #
b831e57b |
| 16-Jan-2023 |
Etienne Carriere <etienne.carriere@linaro.org> |
plat-stm32mp1: don't register SYSRAM twice when scmi-msg are enabled
Fixes stm32mp1 platform to not register the SCMI shared memory twice when scmi-msg drivers are enable (CFG_SCMI_MSG_DRIVERS=y) an
plat-stm32mp1: don't register SYSRAM twice when scmi-msg are enabled
Fixes stm32mp1 platform to not register the SCMI shared memory twice when scmi-msg drivers are enable (CFG_SCMI_MSG_DRIVERS=y) and SCP firmware SCMI library disabled (CFG_SCMI_SCPFW=n). The faulty fixed referenced commit introduced this duplicated device memory registration when adding support for SCP firmware SCMI library where this registration was added in main.c but not removed from plat-stm32mp1/scmi-server.c.
Before this fix, the debug trace below was printed: D/TC:0 add_phys_mem:649 Physical mem map overlaps 0x2ffff000
Fixes: 986fccc8150b ("plat-stm32mp1: support building with CFG_SCMI_SCPFW=y") Acked-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Gatien Chevallier <gatien.chevallier@foss.st.com> Acked-by: Jens Wiklander <jens.wiklander@linaro.org> Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| #
4afbdbdd |
| 01-Aug-2022 |
Anton Eliasson <anton.eliasson@axis.com> |
drivers: scmi-msg: Propagate errors from platform voltd_get_level
plat_scmi_voltd_get_level is refactored to return an SCMI error code and retrieve the voltage via an out parameter. This allows erro
drivers: scmi-msg: Propagate errors from platform voltd_get_level
plat_scmi_voltd_get_level is refactored to return an SCMI error code and retrieve the voltage via an out parameter. This allows errors from the platform SCMI server implementation to be propagated to the REE.
The implementation for stm32mp1 is updated to handle at least some possible errors.
Acked-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org> Signed-off-by: Anton Eliasson <anton.eliasson@axis.com>
show more ...
|
| #
dc357ecd |
| 06-Jul-2022 |
Gatien Chevallier <gatien.chevallier@foss.st.com> |
plat-stm32mp1: scmi_server update for STM32MP13
Update the SCMI server to support STM32MP13 and its SCMI domains: clock, reset and voltage.
This change also remove the '0' index to the SCMI domains
plat-stm32mp1: scmi_server update for STM32MP13
Update the SCMI server to support STM32MP13 and its SCMI domains: clock, reset and voltage.
This change also remove the '0' index to the SCMI domains in order to align with Linux kernel.
Signed-off-by: Gatien Chevallier <gatien.chevallier@foss.st.com> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| #
3a5e9803 |
| 07-Jun-2022 |
Gatien Chevallier <gatien.chevallier@foss.st.com> |
plat-stm32mp1: remove SCMI0 channel index
Removes index 0 from SCMI DT binding ID macros and driver labels to synchronize with Linux kernel 5.18 that considers a single SCMI channel, see [1] and [2]
plat-stm32mp1: remove SCMI0 channel index
Removes index 0 from SCMI DT binding ID macros and driver labels to synchronize with Linux kernel 5.18 that considers a single SCMI channel, see [1] and [2].
Link: [1] https://lore.kernel.org/linux-arm-kernel/20220422150952.20587-4-alexandre.torgue@foss.st.com Link: [2] https://lore.kernel.org/linux-arm-kernel/20220422150952.20587-5-alexandre.torgue@foss.st.com Signed-off-by: Gatien Chevallier <gatien.chevallier@foss.st.com> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| #
b12fd496 |
| 13-Jun-2022 |
Gatien Chevallier <gatien.chevallier@foss.st.com> |
plat-stm32mp1: scmi_server: removed unused channel SCMI1
Remove this SCMI channel from DT bindings and platform driver as it is unused.
Signed-off-by: Gatien Chevallier <gatien.chevallier@foss.st.c
plat-stm32mp1: scmi_server: removed unused channel SCMI1
Remove this SCMI channel from DT bindings and platform driver as it is unused.
Signed-off-by: Gatien Chevallier <gatien.chevallier@foss.st.com> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| #
37010ab7 |
| 07-Jun-2022 |
Gatien Chevallier <gatien.chevallier@foss.st.com> |
plat-stm32mp1: use helper header file stm32mp_dt_bindings.h
Changes plat-stm32mp1 and its drivers to rely on stm32mp_dt_bindings.h which simplifies support of both variants STM32MP15 and STM32MP13 t
plat-stm32mp1: use helper header file stm32mp_dt_bindings.h
Changes plat-stm32mp1 and its drivers to rely on stm32mp_dt_bindings.h which simplifies support of both variants STM32MP15 and STM32MP13 that will use each specific DT bindings.
Signed-off-by: Gatien Chevallier <gatien.chevallier@foss.st.com> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| #
6685948b |
| 10-May-2022 |
Etienne Carriere <etienne.carriere@linaro.org> |
plat-stm32mp1: SCMI reset domains require rstctrl exclusivity
Changes platform to forbid access to SCMI reset domains for which reset controller exclusivity was not acquired.
Acked-by: Jens Wikland
plat-stm32mp1: SCMI reset domains require rstctrl exclusivity
Changes platform to forbid access to SCMI reset domains for which reset controller exclusivity was not acquired.
Acked-by: Jens Wiklander <jens.wiklander@linaro.org> Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| #
5f2a35e4 |
| 19-Nov-2020 |
Etienne Carriere <etienne.carriere@linaro.org> |
plat-stm32mp1: scmi: export some STPMIC1 regulators as voltage domains
Exposes STPMIC1 regulators through agent channel SCMI for platform stm32mp1.
Acked-by: Jens Wiklander <jens.wiklander@linaro.o
plat-stm32mp1: scmi: export some STPMIC1 regulators as voltage domains
Exposes STPMIC1 regulators through agent channel SCMI for platform stm32mp1.
Acked-by: Jens Wiklander <jens.wiklander@linaro.org> Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|