Commit graph

3284 commits

Author SHA1 Message Date
Ghennadi Procopciuc
65739db28b feat(nxp-clk): set rate for clock fixed divider
Add set rate support for fixed divider clock modules of whose role is to
reduce the source frequency by a factor.

Change-Id: I8a29a2c5b1a829db0c396407c3517c9e66caaa93
Signed-off-by: Ghennadi Procopciuc <ghennadi.procopciuc@nxp.com>
2024-07-16 16:52:34 +03:00
Ghennadi Procopciuc
44e2130ab9 feat(nxp-clk): add A53 clock objects
These objects are needed to allow early enablement of the A53 core
clock.

Change-Id: I44d81975c8eba8cc6cfd18aeb6c9b324edaa3f01
Signed-off-by: Ghennadi Procopciuc <ghennadi.procopciuc@nxp.com>
2024-07-16 16:52:34 +03:00
Ghennadi Procopciuc
de950ef04f feat(nxp-clk): set rate for PLL divider objects
Add implementation for ARM PLL divider rate set mechanism.

Change-Id: I78f4418bcbb5ea0a6ef64675e44bd074d2230ea3
Signed-off-by: Ghennadi Procopciuc <ghennadi.procopciuc@nxp.com>
2024-07-16 16:52:34 +03:00
Ghennadi Procopciuc
7ad4e2312f feat(nxp-clk): set rate for PLL objects
Add implementation for ARM PLL rate set mechanism.

Change-Id: Ic859567bd67747f173d425158cdc581801f7446c
Signed-off-by: Ghennadi Procopciuc <ghennadi.procopciuc@nxp.com>
2024-07-16 16:52:34 +03:00
Madhukar Pappireddy
c970c1c38f Merge changes from topic "add_s32cc_pll" into integration
* changes:
  feat(nxp-clk): set parent for ARM PLL and MC_CGM muxes
  feat(nxp-clk): add MC_CGM clock objects
  feat(nxp-clk): add set_parent callback
  feat(nxp-clk): add clock objects for ARM PLL
  feat(nxp-clk): add FXOSC clock enablement
2024-07-11 18:10:59 +02:00
Manish V Badarkhe
a29f3605f6 Merge "fix(arm): correct RSE_CRYPTO_EXPORT_PUBLIC_KEY_SID" into integration 2024-07-11 10:57:01 +02:00
Madhukar Pappireddy
f3eaa1bb12 Merge changes from topic "st_mp2_clk_reset" into integration
* changes:
  feat(st-reset): add stm32mp2_reset driver
  feat(st-clock): add STM32MP2 clock driver
  fix(dt-bindings): update STM32MP2 clock and reset bindings
  feat(st-reset): add system reset management
2024-07-11 04:27:32 +02:00
Leo Yan
759994aa3b fix(arm): correct RSE_CRYPTO_EXPORT_PUBLIC_KEY_SID
The RSE_CRYPTO_EXPORT_PUBLIC_KEY_SID macro does not match the definition
in RSE. A paired macro, TFM_CRYPTO_EXPORT_PUBLIC_KEY, in the RSE's
header (located in interface/include/tfm_crypto_defs.h) is defined as
0x206. This causes the TF-A test PLATFORM_TEST=rse-rotpk to fail.

Correct the definition of RSE_CRYPTO_EXPORT_PUBLIC_KEY_SID to make the
test pass.

Change-Id: I0bc24ed6dd23f2718e1edea5ec464545dab06983
Signed-off-by: Leo Yan <leo.yan@arm.com>
2024-07-10 16:25:49 +02:00
Ghennadi Procopciuc
3fa91a9450 feat(nxp-clk): add MC_CGM clock objects
The MC_CGM1 clock objects will participate in A53 clocking.

Change-Id: I7309b630d72ac0ad66df7c299b678454220e0581
Signed-off-by: Ghennadi Procopciuc <ghennadi.procopciuc@nxp.com>
2024-07-08 12:03:16 +03:00
Ghennadi Procopciuc
12e7a2cd2f feat(nxp-clk): add set_parent callback
On S32CC SoCs, the set_parent operation will be used on clock modules
that are mux instances in order to establish the clock source. This will
be used for PLLs and MC_CGM muxes.

Change-Id: I7228d379500ea790459b858da8fc0bdcbed4fd62
Signed-off-by: Ghennadi Procopciuc <ghennadi.procopciuc@nxp.com>
2024-07-08 12:03:16 +03:00
Ghennadi Procopciuc
a8be748a28 feat(nxp-clk): add clock objects for ARM PLL
Add all the clock objects needed to describe the ARM PLL, which can be
powered by either FXOSC or FIRC oscillators.

Change-Id: I2585ed38178ca1d5c5485adb38af1b3b8d94f1f6
Signed-off-by: Ghennadi Procopciuc <ghennadi.procopciuc@nxp.com>
2024-07-08 12:03:16 +03:00
Madhukar Pappireddy
638e3aa5a2 Merge changes from topic "add_s32cc_fxosc_clk" into integration
* changes:
  feat(s32g274a): enable BL2 early clocks
  feat(nxp-clk): implement set_rate for oscillators
  feat(nxp-clk): add oscillator clock objects
  feat(nxp-clk): add minimal set of S32CC clock ids
2024-07-05 16:41:27 +02:00
Tamas Ban
3201faf356 feat(tc): provide target_locality info of AP FW components
The target_locality attribute is meant to specify that
a certain SW component is expected to run and thereby
send DPE commands from a given security domain. The DPE
service must be capable of determining the locality of
a client on his own. RSE determines the client's locality
based on the MHU channel used for communication.

If the expected locality (specified by the parent component)
is not matching with the determined locality by DPE
service then command fails.

The goal is to protect against spoofing when a
context_handle is stolen and used by a component
that should not have access.

Signed-off-by: Tamas Ban <tamas.ban@arm.com>
Change-Id: I96d255de231611cfed10eef4335a47b91c2c94de
2024-07-03 15:03:20 +02:00
Ghennadi Procopciuc
66af5425a6 feat(s32g274a): enable BL2 early clocks
s32cc_init_early_clks will be used to increase the frequency of the
clocks which have a performance impact on BL2 boot. This set includes
A53, XBAR, DDR and Linflex clocks. For now, it will only contain the
frequency set for FXOSC. More clock management will be added in the next
commits.

Change-Id: Ie85465884de02f5082185f91749f190f40249c2e
Signed-off-by: Ghennadi Procopciuc <ghennadi.procopciuc@nxp.com>
2024-07-02 19:41:59 +03:00
Ghennadi Procopciuc
d937351987 feat(nxp-clk): implement set_rate for oscillators
The set_rate callback will now be applied to FIRC, FXOSC, and SIRC
oscillators. It is a prerequisite for the upcoming commits that will
utilize this capability.

Change-Id: I82d1545c63b3e15497c1c002ff9ec0d7bf990aa0
Signed-off-by: Ciprian Costea <ciprianmarian.costea@nxp.com>
Signed-off-by: Ghennadi Procopciuc <ghennadi.procopciuc@nxp.com>
2024-07-02 17:02:49 +03:00
Ghennadi Procopciuc
7c36209b29 feat(nxp-clk): add oscillator clock objects
The oscillator clock objects will be used to describe the FIRC, FXOSC,
and SIRC clocks, all of which are oscillators on S32CC SoCs.

Change-Id: Icf235cc9b8f1d95d2c0051ce9a7655fd120289b8
Signed-off-by: Ghennadi Procopciuc <ghennadi.procopciuc@nxp.com>
2024-07-01 21:24:56 +03:00
Ghennadi Procopciuc
086ee20fe7 feat(nxp-clk): add minimal set of S32CC clock ids
The clock IDs are organized into categories, which are determined based
on the first 2 MSB bits for each ID. Currently, there are two big
categories: hardware and software-defined clocks.

The first category refers to clock IDs understood by the S32CC PLL muxes
and MC_CGM module muxes and is immutable. The last category of the
clocks includes software-defined IDs for clocks to allow an easy
representation of the hierarchy.

Change-Id: Idc079feb3ca5f92d8bf337ef09efad006e267088
Signed-off-by: Ghennadi Procopciuc <ghennadi.procopciuc@nxp.com>
2024-07-01 21:24:56 +03:00
Manish Pandey
2e0efb3f40 Merge "feat(cm): context switch MDCR_EL3 register" into integration 2024-06-27 23:18:27 +02:00
Gabriel Fernandez
615f31fe40 feat(st-clock): add STM32MP2 clock driver
This driver manages the clocks on STM32MP2 platforms.
It uses a dedicated RCC (Reset and Clock Control) peripheral.

Change-Id: I6ba2173e73222269a2dfca4c6897229276a150c0
Signed-off-by: Yann Gautier <yann.gautier@st.com>
Signed-off-by: Gabriel Fernandez <gabriel.fernandez@st.com>
2024-06-27 18:27:17 +02:00
Gabriel Fernandez
85229098ab fix(dt-bindings): update STM32MP2 clock and reset bindings
Fix some clocks and reset binding values.

Change-Id: Ibe480aa77cd0abb63d08bbee08ad4ec9d5d2a397
Signed-off-by: Gabriel Fernandez <gabriel.fernandez@foss.st.com>
2024-06-27 17:17:35 +02:00
Lionel Debieve
d91d10ab39 feat(st-reset): add system reset management
Add the system reset management into the stm32mp
reset driver.

Signed-off-by: Lionel Debieve <lionel.debieve@st.com>
Change-Id: I748f10de2398e1323160f479f99e92abd2f65dca
2024-06-27 17:17:35 +02:00
Ghennadi Procopciuc
8f375e4607 refactor(lib): rename GENMASK parameters
Rename GENMASK parameters for better readability to avoid
misinterpreting the 'l' as '1' in BIT(l) usage.

Change-Id: I9a85c750607e098939d70c61c2e29f4788b99016
Signed-off-by: Ghennadi Procopciuc <ghennadi.procopciuc@nxp.com>
2024-06-26 20:54:47 +03:00
Ghennadi Procopciuc
1f0b6e756a fix(lib): avoid CWE-190 for GENMASK macros
Redefine GENMASK_32 and GENMASK_64 to avoid the impact of CWE-190, which
applies due to (~0 << (l)) syntax, where a wraparound occurs.

Change-Id: I8d08911664db7052351312d310566bb546dfb486
Signed-off-by: Ghennadi Procopciuc <ghennadi.procopciuc@nxp.com>
2024-06-26 19:54:48 +03:00
Ghennadi Procopciuc
0605b7e8af fix(lib): fix MISRA 12.2 violations for BIT32 and BIT64 macros
MISRA interprets all unsigned integer literals as UTLR, which has the
lowest rank required to represent a value. In this specific case, the
value 1U was interpreted as an unsigned char. As a result, explicit
casts are necessary to avoid issues with MISRA 12.2.

Change-Id: I4c1231ffabb27442c6a48dabd96942574d27c719
Signed-off-by: Ghennadi Procopciuc <ghennadi.procopciuc@nxp.com>
2024-06-26 19:54:48 +03:00
Ghennadi Procopciuc
7985aded70 fix(intel): remove redundant BIT_32 macro
BIT_32 macro is already defined as part of the utils_def.h and included
through mmc.h

Suggested-by: Yann Gautier <yann.gautier@st.com>
Change-Id: I7921681ee9af7d65e8eab5a0bf1d5236ecfed1a4
Signed-off-by: Ghennadi Procopciuc <ghennadi.procopciuc@nxp.com>
2024-06-26 19:54:48 +03:00
Jayanth Dodderi Chidanand
123002f917 feat(cm): context switch MDCR_EL3 register
Currently MDCR_EL3 register value is same for all the
worlds(Non-secure, Secure, Realm and Root).

With this approach, features enable/disable settings
remain same across all the worlds. This is not ideal as
there must be flexibility in controlling feature as per
the requirements for individual world.

The patch addresses this by providing MDCR_EL3 a per world
value. Features with identical values for all the worlds are
grouped under ``manage_extensions_common`` API.

Change-Id: Ibc068d985fe165d8cb6d0ffb84119bffd743b3d1
Signed-off-by: Jayanth Dodderi Chidanand <jayanthdodderi.chidanand@arm.com>
2024-06-25 13:50:32 +01:00
Andre Przywara
515d2d46a3 feat(cpufeat): upgrade PMU to v8 (FEATURE_DETECTION)
The ARMv8 ARM J.a describes the ID_AA64DFR0_EL1.PMUver field as allowing
a maximum version number of 8 now. The added features extend the Common
event number space and clarify on some UNPREDICTABLE behaviour.

None of this affects TF-A or any system registers, so just increase the
maximum known version number to let the FEATURE_DETECTION test pass on
ARMv8.8 implementations.

Change-Id: Icab48630c1635bcd78a710b443f0db01b8ff7c9b
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
2024-06-21 13:52:44 +01:00
Madhukar Pappireddy
0567eca0b9 Merge changes from topic "add_clk_callbacks" into integration
* changes:
  feat(clk): add set_rate callback
  feat(clk): add set_parent callback
2024-06-20 15:42:03 +02:00
Ghennadi Procopciuc
19f9e2e657 feat(clk): add set_rate callback
This callback will be used to set a clock's rate if the underlying clock
driver supports this option. The function's last parameter is an output
parameter, storing the actual frequency set by the clock driver, as it
may not precisely match the requested rate in some cases.

Change-Id: I6a399bf6f64407d5fbff36407561e4bf18104cf1
Signed-off-by: Ghennadi Procopciuc <ghennadi.procopciuc@nxp.com>
2024-06-18 17:18:31 +03:00
Manish V Badarkhe
1c4f9b9583 Merge "refactor(dice): save parent context handle" into integration 2024-06-18 14:46:20 +02:00
Ghennadi Procopciuc
a2c6016f92 feat(clk): add set_parent callback
This callback will be used to set a clock's parent if the underlying
clock driver supports this option.

Change-Id: Ie8a77d17dd3cc867bd520217b481cd188317a9c9
Signed-off-by: Ghennadi Procopciuc <ghennadi.procopciuc@nxp.com>
2024-06-18 14:20:49 +03:00
Manish Pandey
ef5181975e Merge "feat(fvp): add cpu power control" into integration 2024-06-18 00:02:46 +02:00
Manish V Badarkhe
08fc380ab3 Merge changes from topic "st-nand-backup-fwu" into integration
* changes:
  refactor(st): rename plat_set_image_source
  feat(st): add FWU with boot from NAND
  feat(st): manage backup partitions for NAND devices
  feat(bl): add plat handler for image loading
  refactor(bl)!: remove unused plat_try_next_boot_source
2024-06-17 20:05:05 +02:00
Manish V Badarkhe
aba583498e Merge changes from topic "st_gpio_update" into integration
* changes:
  fix(st-gpio): configure each GPIO mux as secure for STM32MP2
  feat(st-gpio): add set GPIO config API
  fix(stm32mp1): remove unnecessary assert on GPIO_BANK_A value
  refactor(st): use GPIO banks definition from bindings
  feat(dt-bindings): describe ST GPIO banks and config
2024-06-17 14:45:56 +02:00
Manish V Badarkhe
9be048a96d Merge "fix(tc): add SCP_BL2 to RSE measured boot" into integration 2024-06-17 14:28:41 +02:00
Pascal Paillet
bfa5f61b57 feat(st-gpio): add set GPIO config API
Add get and set GPIO level from bank and pin value.
Add functions to set a pad in GPIO configuration
and to apply some settings.

Change-Id: I5e3acb5c95cd03f3e130e1a263b221b956cb3c8d
Signed-off-by: Pascal Paillet <p.paillet@st.com>
2024-06-17 11:24:09 +02:00
Pascal Paillet
deb9c864ea feat(dt-bindings): describe ST GPIO banks and config
Describe GPIO banks configs so that it can be used in
an STM32MP device-tree file.

Signed-off-by: Pascal Paillet <p.paillet@st.com>
Change-Id: If5dd05aae314cbb3189eb02c9fe555b832ac2bdb
2024-06-17 11:24:09 +02:00
Govindraj Raja
d38c64d246 feat(fvp): add cpu power control
Most newer CPU's have DSU and CPU power control core-off bit which
means before turning off CPUs from base power controller we need to
turn individual cores off from CPU Power control.

However there are certain older CPU's that don't have DSU and
don't support CPUPWRCTRL_EL1, so populate them as a list
and ignore setting core-off bit for those older CPU's as all newer
CPU's have them.

Note: unfortunately there is no mechanism to identify if a DSU is
present and CPUPWRCTRL_EL1 is supported through any CPU control
registers and CPUPWRCTRL_EL1 is supported only for ARM64 platforms
and not available in ARM32 platforms.

Change-Id: Iba6c3c8db60dbeb177cead7ebc65df8265860da7
Signed-off-by: Govindraj Raja <govindraj.raja@arm.com>
2024-06-14 17:26:29 -05:00
Manish Pandey
a6e01be250 Merge "fix(spm-mm): carve out NS buffer TZC400 region" into integration 2024-06-14 19:09:58 +02:00
Madhukar Pappireddy
78ff36192f Merge changes from topic "st_clk_update" into integration
* changes:
  feat(st-clock): use early traces
  fix(st-clock): adapt order of CSS on LSE and HSE
  refactor(st-clock): remove unused struct
  feat(stm32mp1-fdts): remove RTC clock configuration
  refactor(st-clock): move stm32mp1_clk_rcc_regs_*lock
  refactor(st-clock): driver size optimization
  refactor(st-clock): remove BL32 support on STM32MP13
  feat(st-clock): don't gate/ungate an oscillator if it is not wired
  feat(dt-bindings): add missing SPIx bus clocks
  feat(stm32mp1-fdts): remove PLL1 settings
  feat(st-clock): update with new bindings
  feat(stm32mp1-fdts): new RCC DT bindings for STM32MP1
  feat(dt-bindings): new RCC DT bindings
  feat(stm32mp1): always boot at 650MHz
  refactor(st-clock): remove LSEDRV_MEDIUM_HIGH for STM32MP13
  fix(st-clock): display proper PLL number for STM32MP13
  fix(st-clock): do not reconfigure LSE
  feat(stm32mp1-fdts): move RNG1 to CSI to improve random generation
  refactor(st-clock): remove unused clk function in API
  refactor(st-clock): support deactivated STGEN in stm32mp_stgen_config
  feat(st-clock): add function to restore generic timer rate
2024-06-14 15:20:22 +02:00
Tamas Ban
8e0fd0bfb0 refactor(dice): save parent context handle
Improve the restart handling of DPE. In the case of a restart
scenario where only that core is restarted which executes
the DPE client, but the core executes the DPE service
remains up and running. In this case, client needs to save
a valid context handle to be able to send commands again
to the DPE service during the new boot sequence.

BL1 saves a valid parent context handle to SDS
before passing the execution to BL2. This handle
can be used in case of a restart scenario when AP
is restarted but RSE is not. Because in that case
RSE does not save an initial context handle to SDS,
which meant to be used by AP during the boot process.

By then the very first initial context handle is
invalidated because it was already used in the
previous boot cycle by BL1.

BL2 does not need to do this, because the cold
boot starts with BL1.

Signed-off-by: Tamas Ban <tamas.ban@arm.com>
Change-Id: Id14eefd2ec758f89f672af176e4f5386a397fa35
2024-06-14 11:08:31 +02:00
Manish V Badarkhe
378025e20c Merge changes from topic "nrd3_support" into integration
* changes:
  feat(rdfremont): add support for measured boot at BL1 and BL2
  feat(arm): mock support for CCA NV ctr
  feat(rdfremont): fetch attestation key and token from RSE
  feat(psa): introduce generic library for CCA attestation
  feat(rdfremont): initialize the rse comms driver
  feat(rdfremont): helper to initialize rse-comms with AP-RSE MHUv3
  fix(rse): include lib-psa to resolve build
  feat(neoverse-rd): add MHUv3 channels on third gen multichip platforms
  feat(neoverse-rd): add MHUv3 doorbell channels on third gen platforms
  feat(rdfremont): initialize GPT on GPC SMMU block
  feat(rdfremont): update Root registers page offset for SMMUv3
  feat(rdfremont): enable MTE2 if present on the platform
  feat(rdfremont): enable SVE for SWD and NS
  feat(rdfremont): enable AMU if present on the platform
  feat(rdfremont): enable MPAM if present on the platform
  feat(rdfremont): add DRAM pas entries in pas table for multichip
  feat(rdfremont): add implementation for GPT setup
  feat(rdfremont): integrate DTS files for RD-Fremont variants
  feat(rdfremont): add support for RD-Fremont-Cfg2
  feat(rdfremont): add support for RD-Fremont-Cfg1
  feat(rdfremont): add support for RD-Fremont
  feat(neoverse-rd): add scope for RD-Fremont variants
  feat(neoverse-rd): add multichip pas entries
  feat(neoverse-rd): add pas definitions for third gen platforms
  feat(neoverse-rd): add DRAM layout for third gen platforms
  feat(neoverse-rd): add SRAM layout for third gen platforms
  feat(neoverse-rd): add firmware definitions for third gen platforms
  feat(neoverse-rd): add RoS definitions for third gen platforms
  feat(neoverse-rd): add CSS definitions for third gen platforms
2024-06-14 10:09:02 +02:00
Tamas Ban
79841546a2 fix(tc): add SCP_BL2 to RSE measured boot
SCP_BL2 is part of CCA's TCB. The SCP_BL1 is loaded
by RSE. It has already added to the platform
attestation token. SCP_BL2 was missed, so it is
fixed now.

Signed-off-by: Tamas Ban <tamas.ban@arm.com>
Change-Id: Ic87743564136f03a901c90ff1ec614f5965b9a47
2024-06-13 15:53:10 +02:00
Yann Gautier
a03dafe516 feat(bl): add plat handler for image loading
In case of load error, platform may need to try another instance, either
from another storage, or from the same storage in case of PSA FWU. On
MTD devices such as NAND, it is required to define backup partitions.
A new function plat_setup_try_img_ops() should be called by platform
code to register handlers (plat_try_images_ops) to manage loading
other images.

Signed-off-by: Yann Gautier <yann.gautier@st.com>
Signed-off-by: Lionel Debieve <lionel.debieve@foss.st.com>
Change-Id: Ideaecaf296c0037a26fb4e6680f33e507111378a
2024-06-13 11:30:29 +02:00
Yann Gautier
2c303e393b refactor(bl)!: remove unused plat_try_next_boot_source
The plat_try_next_boot_source() API is not used by any upstream platform
and not used by platforms that asked for this API. It is then removed.
It will be replaced with a more generic interface in next patch.

Signed-off-by: Yann Gautier <yann.gautier@st.com>
Change-Id: I298c7acace8c5efb3c66422d8d9280ecd08e5ade
2024-06-13 10:48:02 +02:00
Olivier Deprez
1922875233 fix(spm-mm): carve out NS buffer TZC400 region
SPM-MM defines AP TZC-400 regions as such:

1: 0xff000000  0xffffffff   S
2: 0x80000000  0xfeffffff   NS
3: 0x880000000 0xfffffffff  NS
4: 0xff600000  0xff60ffff   NS

Region 4 (using filter 0) defines the SPM NS shared buffer between
normal world and secure world.
However region 4 overlaps with region 1 (using filter 0) defined as
secure.
It is forbidden to define overlapping regions beyond region 0 for the
same filter. This is reported as a violation in the TZC-400 controller.

With FVP models < 11.25 the error is latent but not reported to the PE
(reason for this behavior is unclear).
With greater FVP model version the error is reported as an asynchronous
external abort (SError exception).

By carving out the SPM NS shared region (with regions as defined below),
the violation is no longer reported and test passed with recent FVP
models:

1: 0x80000000  0xfeffffff   NS
2: 0xff000000  0xff5fffff   S
3: 0xff600000  0xff60ffff   NS
4: 0xff610000  0xffffffff   S
5: 0x880000000 0xfffffffff  NS

Signed-off-by: Olivier Deprez <olivier.deprez@arm.com>
Change-Id: Idc3370803ad204ac29efeded77305e52e17cc1c1
2024-06-11 17:13:38 +02:00
Gabriel Fernandez
c6d50c9f93 feat(dt-bindings): add missing SPIx bus clocks
Add SPI1, SPI2, SPI3, SPI4, SPI5 bus clocks.

Change-Id: I075447adc63944cdd97862f836c22e4210bdb047
Signed-off-by: Gabriel Fernandez <gabriel.fernandez@foss.st.com>
2024-06-11 14:02:10 +02:00
Gabriel Fernandez
52b253bfa2 feat(dt-bindings): new RCC DT bindings
RCC bindings alignment with MP13 RCC bindings:
- merge of 'st,clksrc' and 'st,pkcs' nodes into 'st,clksrc'
- no ordering requirements on 'st,clksrc' node
- use DIV() macro for 'st,clkdiv' node
- no ordering requirements on 'st,clkdiv' node
- new pll binding

Change-Id: Id3ca30608dde2091145123512c42c6958a378d91
Signed-off-by: Gabriel Fernandez <gabriel.fernandez@foss.st.com>
2024-06-11 14:02:10 +02:00
Patrick Delaunay
caa1295779 refactor(st-clock): remove unused clk function in API
Remove the unused functions in stm32mp clk API:
- stm32mp_stgen_get_counter (change to static, no more exported)
- stm32mp_stgen_restore_counter

Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com>
Change-Id: Ib6ca72723eac3e133f1ca0dee504ef344c72e0bf
2024-06-11 11:45:38 +02:00
Pascal Paillet
bfe8a12eea feat(st-clock): add function to restore generic timer rate
Add a function to restore the CPU generic timer rate from STGEN content.
After wake-up from LPLV-Stop2, STGEN content is not lost, but generic timer
has been reset.

Signed-off-by: Pascal Paillet <p.paillet@st.com>
Change-Id: I6f91dbd051f76383e9ff1d6bb86225d373dbf33a
2024-06-11 11:45:38 +02:00