| 905635d5 | 06-Oct-2021 |
Jorge Troncoso <jatron@google.com> |
fix(ufs): add reset before DME_LINKSTARTUP
This change aims to make the UFS code more robust by performing a controller reset if linkstartup fails. This idea was borrowed from Linux's ufshcd_link_st
fix(ufs): add reset before DME_LINKSTARTUP
This change aims to make the UFS code more robust by performing a controller reset if linkstartup fails. This idea was borrowed from Linux's ufshcd_link_startup function.
Signed-off-by: Jorge Troncoso <jatron@google.com> Change-Id: I6b52148d1bf155b11198dc82a39b1120057adaaf
show more ...
|
| 99ff1a35 | 30-Sep-2021 |
Jorge Troncoso <jatron@google.com> |
refactor(ufs): add retry logic to ufshc_reset
This change aims to make the UFS code more robust by adding retry logic and timeouts to ufshc_reset. We also define a new function ufshc_hce_enable for
refactor(ufs): add retry logic to ufshc_reset
This change aims to make the UFS code more robust by adding retry logic and timeouts to ufshc_reset. We also define a new function ufshc_hce_enable for Host Controller Enable (HCE). The inner and outer retry pattern is based on Linux's ufshcd_hba_execute_hce function.
Signed-off-by: Jorge Troncoso <jatron@google.com> Change-Id: I9403a5a25d3ca50af5f2f9a65b774f6a2d7a9626
show more ...
|
| d68d163d | 24-Sep-2021 |
Jorge Troncoso <jatron@google.com> |
refactor(ufs): reuse ufshc_send_uic_cmd
This change aims to make the UFS code more robust by removing asserts and adding retry logic. We also reduce repetition by reusing ufshc_send_uic_cmd for DME_
refactor(ufs): reuse ufshc_send_uic_cmd
This change aims to make the UFS code more robust by removing asserts and adding retry logic. We also reduce repetition by reusing ufshc_send_uic_cmd for DME_GET and DME_SET commands.
Signed-off-by: Jorge Troncoso <jatron@google.com> Change-Id: Id70aa1687d5ca78dc7d47234372255ac5a04a612
show more ...
|
| 7b97cf37 | 14-Oct-2021 |
Mark Dykes <mark.dykes@arm.com> |
Merge changes from topic "st_fixes" into integration
* changes: fix(stpmic1): fix power switches activation fix(stpmic1): update error cases return refactor(stpmic1): use BIT and GENMASK helpe
Merge changes from topic "st_fixes" into integration
* changes: fix(stpmic1): fix power switches activation fix(stpmic1): update error cases return refactor(stpmic1): use BIT and GENMASK helpers fix(stm32mp1_clk): keep RTC clock always on fix(stm32mp1_clk): set other clocks as always on
show more ...
|
| 125868c9 | 07-Jun-2021 |
Nicola Mazzucato <nicola.mazzucato@arm.com> |
fix(scmi): relax requirement for exact protocol version
Currently, for the supported SCMI protocols, the version returned by the SCMI platform agent must be exactly matching the driver's version (ma
fix(scmi): relax requirement for exact protocol version
Currently, for the supported SCMI protocols, the version returned by the SCMI platform agent must be exactly matching the driver's version (major version).
The recent change for the required version of Power Domain protocol means that the platform must return version 2.0. This can be however a limitation in some cases, where a SCMI-v1.0 platform can still be considered compatible with the driver supported in firmware.
Relax the protocol version requirement such that any version older than the one supported by the drivers can still be compatible.
Note: For now this has effect only on Power Domain protocol, as the other drivers still require the "base" version 1.0.
Signed-off-by: Nicola Mazzucato <nicola.mazzucato@arm.com> Change-Id: I310ae1869c2e952991a8d733f394029ab64087bf
show more ...
|
| 8a89e189 | 08-Sep-2021 |
Manish V Badarkhe <Manish.Badarkhe@arm.com> |
refactor(measured boot): make measurement strings compliant with SBSG
Made measurement strings compliant to Server Base Security Guide (SBSG, Arm DEN 0086) hence updated measurement strings for BL32
refactor(measured boot): make measurement strings compliant with SBSG
Made measurement strings compliant to Server Base Security Guide (SBSG, Arm DEN 0086) hence updated measurement strings for BL32, BL31, and SCP_BL2 images. As the GPT image is not get measured by BL2 so removed its measurement string. Also, namespaced measurement string defines that were looking quite generic.
Change-Id: Iaa17c0cfeee3d06dc822eff2bd553da23bd99b76 Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
show more ...
|
| 48ba0345 | 14-Sep-2021 |
Manish V Badarkhe <Manish.Badarkhe@arm.com> |
feat(measured_boot): image hash measurement and recording in BL1
It looks safer and cleaner approach to record the measurement taken by BL1 straightaway in TCG Event Log instead of deferring these r
feat(measured_boot): image hash measurement and recording in BL1
It looks safer and cleaner approach to record the measurement taken by BL1 straightaway in TCG Event Log instead of deferring these recordings to BL2. Hence pull in the full-fledged measured boot driver into BL1 that replaces the former ad-hoc platform interfaces i.e. bl1_plat_set_bl2_hash, bl2_plat_get_hash.
As a result of this change the BL1 of Arm FVP platform now do the measurements and recordings of below images: 1. FW_CONFIG 2. TB_FW_CONFIG 3. BL2
Change-Id: I798c20336308b5e91b547da4f8ed57c24d490731 Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
show more ...
|
| efa65218 | 14-Sep-2021 |
Manish V Badarkhe <Manish.Badarkhe@arm.com> |
refactor(measured boot): remove platform calls from Event Log driver
Currently, the Event Log driver does platform layer work by invoking a few platform functions in the 'event_log_finalise' call. D
refactor(measured boot): remove platform calls from Event Log driver
Currently, the Event Log driver does platform layer work by invoking a few platform functions in the 'event_log_finalise' call. Doing platform work does not seem to be the driver's responsibility, hence moved 'event_log_finalise' function's implementation to the platform layer.
Alongside, introduced few Event Log driver functions and done some cosmetic changes.
Change-Id: I486160e17e5b0677c734fd202af7ccd85476a551 Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
show more ...
|
| 8cd09cfc | 17-Jun-2021 |
Sandrine Bailleux <sandrine.bailleux@arm.com> |
refactor(measured boot): move BL2 measurement to platform layer
Right now, event_log_init() does 2 things: 1) It writes all the necessary TCG data structures in the event log buffer. 2) It writes th
refactor(measured boot): move BL2 measurement to platform layer
Right now, event_log_init() does 2 things: 1) It writes all the necessary TCG data structures in the event log buffer. 2) It writes the first measurement (BL2's).
Step 2) introduces in the TCG event log driver an assumption on what is getting measured and in what order. Ideally, the driver should only be concerned about generic operations, such as initializing the event log or recording a measurement in it. As much as possible, we should design the driver such that it could be reused in another project that has a different measure boot flow.
For these reasons, move step 2) up to the caller, plat_mboot_init() in this case. Make event_log_record() a public function for this purpose.
This refactoring will also help when we make BL1 record BL2's measurement into the event log (instead of BL2). Both BL1 and BL2 will need to call the driver's init function but only BL1 will need recording BL2's measurement. We can handle this through different implementations of plat_mboot_init() for BL1 and BL2, leaving the TCG event log driver unchanged.
Change-Id: I358e097c1eedb54f82b866548dfc6bcade83d519 Signed-off-by: Sandrine Bailleux <sandrine.bailleux@arm.com>
show more ...
|
| d89bec83 | 07-Jul-2021 |
Sandrine Bailleux <sandrine.bailleux@arm.com> |
build(measured boot): rename measured boot makefile
With the removal of the generic functions measured_boot_init()/finish(), measured_boot.mk becomes specific to the TCG event log backend. Change it
build(measured boot): rename measured boot makefile
With the removal of the generic functions measured_boot_init()/finish(), measured_boot.mk becomes specific to the TCG event log backend. Change its file name to event_log.mk. Also, the Event Log driver is one of the backend of measured boot hence created a separate folder for it under the measured_boot directory.
Alongside done some cosmetic changes (adding a comment and fixing identation).
Change-Id: I4ce3300e6958728dc15ca5cced09eaa01510606c Signed-off-by: Sandrine Bailleux <sandrine.bailleux@arm.com>
show more ...
|
| 47bf3ac3 | 06-Aug-2021 |
Manish V Badarkhe <Manish.Badarkhe@arm.com> |
feat(measured boot): move init and teardown functions to platform layer
Right now, the measured boot driver is strongly coupled with the TCG event log driver. It would not be possible to push the me
feat(measured boot): move init and teardown functions to platform layer
Right now, the measured boot driver is strongly coupled with the TCG event log driver. It would not be possible to push the measurements somewhere else, for instance to a physical TPM.
To enable this latter use case, turn the driver's init and teardown functions into platform hooks. Call them bl2_plat_mboot_init()/finish(). This allows each platform to implement them appropriately, depending on the type of measured boot backend they use. For example, on a platform with a physical TPM, the plat_mboot_init() hook would startup the TPM and setup it underlying bus (e.g. SPI).
Move the current implementation of the init and teardown function to the FVP platform layer.
Finally move the conditional compilation logic (#if MEASURED_BOOT) out of bl2_main() to improve its readability. Provide a dummy implementation in the case measured boot is not included in the build.
Change-Id: Ib6474cb5a9c1e3d4a30c7f228431b22d1a6e85e3 Signed-off-by: Sandrine Bailleux <sandrine.bailleux@arm.com> Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
show more ...
|
| 4a24707f | 01-Jul-2021 |
Sandrine Bailleux <sandrine.bailleux@arm.com> |
refactor(measured boot): rename tpm_record_measurement()
tpm_record_measurement() function name suggests that:
- It only records a measurement but does not compute it. This is not the case, the
refactor(measured boot): rename tpm_record_measurement()
tpm_record_measurement() function name suggests that:
- It only records a measurement but does not compute it. This is not the case, the function does both.
- It stores this measurement into a TPM (discrete chip or fTPM). This is not the case either, the measurement is just stored into the event log, which is a data structure hold in memory, there is no TPM involvement here.
To better convey the intent of the function, rename it into event_log_measure_and_record().
Change-Id: I0102eeda477d6c6761151ac96759b31b6997e9fb Signed-off-by: Sandrine Bailleux <sandrine.bailleux@arm.com>
show more ...
|
| fb90cfd4 | 26-Sep-2021 |
Jiafei Pan <Jiafei.Pan@nxp.com> |
fix(nxp/scfg): fix endianness checking
It is a typo to check NXP_GUR_LE in scfg driver.
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com> Change-Id: I4b952bf4136dd626d88fc4797dba2be445395801 |
| 1ff7e46b | 06-Oct-2021 |
Pankaj Gupta <pankaj.gupta@nxp.com> |
fix(include/drivers/flexspi): fix warm boot wait time for MT35XU512A
Now lx2 which use MT35XU512A supports warm boot, fix the macro define caused by the commit: feat(driver/nxp/xspi): add MT35XU02G
fix(include/drivers/flexspi): fix warm boot wait time for MT35XU512A
Now lx2 which use MT35XU512A supports warm boot, fix the macro define caused by the commit: feat(driver/nxp/xspi): add MT35XU02G flash info
Signed-off-by: Pankaj Gupta <pankaj.gupta@nxp.com> Change-Id: I83eb8cb9a30ac7c7efd5a010acbd03eddebed52b
show more ...
|
| 4bafa3da | 14-Sep-2021 |
Yann Gautier <yann.gautier@foss.st.com> |
refactor(stpmic1): use BIT and GENMASK helpers
Use BIT and GENMASK macros to ease stpmic1.h reading.
Change-Id: I808a62818d4188bb2f3686ab37518d369b6c41cb Signed-off-by: Yann Gautier <yann.gautier@f
refactor(stpmic1): use BIT and GENMASK helpers
Use BIT and GENMASK macros to ease stpmic1.h reading.
Change-Id: I808a62818d4188bb2f3686ab37518d369b6c41cb Signed-off-by: Yann Gautier <yann.gautier@foss.st.com>
show more ...
|
| 078925be | 06-Oct-2021 |
Sandrine Bailleux <sandrine.bailleux@arm.com> |
Merge "refactor(measured boot): remove unused extern" into integration |
| d7fe4cb0 | 05-Oct-2021 |
Madhukar Pappireddy <madhukar.pappireddy@arm.com> |
Merge changes from topic "ethosn-multi-device" into integration
* changes: feat(drivers/arm/ethosn)!: multi-device support feat(fdt): add for_each_compatible_node macro |
| 7feb4350 | 04-Oct-2021 |
Manish Pandey <manish.pandey2@arm.com> |
Merge "refactor(drivers/st/clk): change fdt_get_rcc_node as static" into integration |
| 83ad3819 | 05-Aug-2021 |
Manish V Badarkhe <Manish.Badarkhe@arm.com> |
refactor(measured boot): remove unused extern
Change-Id: I4fb7a79c2f31973a3cd181feaface9a42bc3246f Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com> |
| 1c65989e | 16-Sep-2021 |
Laurent Carlier <laurent.carlier@arm.com> |
feat(drivers/arm/ethosn)!: multi-device support
Add support for Arm Ethos-N NPU multi-device.
The device tree parsing currently only supports one NPU device with multiple cores. To be able to suppo
feat(drivers/arm/ethosn)!: multi-device support
Add support for Arm Ethos-N NPU multi-device.
The device tree parsing currently only supports one NPU device with multiple cores. To be able to support multi-device NPU configurations this patch adds support for having multiple NPU devices in the device tree.
To be able to support multiple NPU devices in the SMC API, it has been changed in an incompatible way so the API version has been bumped.
Signed-off-by: Laurent Carlier <laurent.carlier@arm.com> Change-Id: Ide279ce949bd06e8939268b9601c267e45f3edc3
show more ...
|
| 890ee3e8 | 30-Sep-2021 |
Madhukar Pappireddy <madhukar.pappireddy@arm.com> |
Merge changes from topic "st_fixes" into integration
* changes: fix(stm32_console): do not skip init for crash console fix(plat/st): add UART reset in crash console init refactor(stm32mp1_clk)
Merge changes from topic "st_fixes" into integration
* changes: fix(stm32_console): do not skip init for crash console fix(plat/st): add UART reset in crash console init refactor(stm32mp1_clk): update RCC registers file fix(stm32mp1_clk): keep RTCAPB clock always on fix(stm32mp1_clk): fix RTC clock rating fix(stm32mp1_clk): correctly manage RTC clock source fix(spi_nand): check correct manufacturer id fix(spi_nand): check that parameters have been set
show more ...
|
| ff18c4cd | 06-Oct-2020 |
Patrick Delaunay <patrick.delaunay@st.com> |
refactor(drivers/st/clk): change fdt_get_rcc_node as static
Change the fdt_get_rcc_node function to static, as it is used only in stm32mp_clkfunc.c file; it is only a cleanup change without function
refactor(drivers/st/clk): change fdt_get_rcc_node as static
Change the fdt_get_rcc_node function to static, as it is used only in stm32mp_clkfunc.c file; it is only a cleanup change without functional modification.
Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com> Change-Id: Ib4ef110f6f1b16dbaa727a065e40275d3cf58a73
show more ...
|
| 288f5cf2 | 31-Aug-2021 |
Yann Gautier <yann.gautier@foss.st.com> |
refactor(stm32mp1_clk): update RCC registers file
The file is first generated with the peripheral spirit XML file. And then we add some common definition, to ease driver development.
Change-Id: I4c
refactor(stm32mp1_clk): update RCC registers file
The file is first generated with the peripheral spirit XML file. And then we add some common definition, to ease driver development.
Change-Id: I4c222cf006caf27cda6da044eaf184ce66bb1442 Signed-off-by: Yann Gautier <yann.gautier@foss.st.com>
show more ...
|
| a4f5015a | 10-Sep-2021 |
Jiafei Pan <Jiafei.Pan@nxp.com> |
feat(driver/nxp/xspi): add MT35XU02G flash info
Add MT35XU02G flash info.
Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com> Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com> Change-Id: I2dbbdcb454fae4befef
feat(driver/nxp/xspi): add MT35XU02G flash info
Add MT35XU02G flash info.
Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com> Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com> Change-Id: I2dbbdcb454fae4befef71769f9646c077d72a057
show more ...
|
| 6c5d140e | 10-Sep-2021 |
Jiafei Pan <Jiafei.Pan@nxp.com> |
feat(driver/nxp/dcfg): define RSTCR_RESET_REQ
Define RSTCR_RESET_REQ for Chassis V3.
Signed-off-by: Biwen Li <biwen.li@nxp.com> Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com> Change-Id: I5cb7019baa
feat(driver/nxp/dcfg): define RSTCR_RESET_REQ
Define RSTCR_RESET_REQ for Chassis V3.
Signed-off-by: Biwen Li <biwen.li@nxp.com> Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com> Change-Id: I5cb7019baae5fe0d06b3d5e65f185f87ee16ad3a
show more ...
|