aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2 daysMerge "feat(plat/qti/sc7280): add support for pmk7325" into integrationHEADmasterJulius Werner
2 daysMerge "build(plat/marvell): do not print comments on stdout" into integrationMadhukar Pappireddy
2 daysMerge "fix(lib/optee): correct signedness comparison" into integrationManish Pandey
3 daysbuild(plat/marvell): do not print comments on stdoutPali Rohár
'#' needs to be before TAB, otherwise comment is printed on stdout during build. Signed-off-by: Pali Rohár <pali@kernel.org> Change-Id: I502374ef35d91e194dc35b78d31d6884a466fab2
3 daysMerge "fix(cc-713): fix a build failure with CC-713 library" into integrationManish Pandey
3 daysMerge changes I6daaed9a,I3ef31047 into integrationOlivier Deprez
* changes: feat(plat/arm): Add DRAM2 to TZC non-secure region fix(plat/arm): remove unused memory node
3 daysMerge "fix(scmi): relax requirement for exact protocol version" into integrationAndré Przywara
3 daysMerge "feat(psci): require validate_power_state to expose CPU_SUSPEND" into ↵Manish Pandey
integration
3 daysMerge "fix(errata_report): correct typo" into integrationManish Pandey
4 daysMerge "feat(plat/mdeiatek/mt8195): remove adsp event from wakeup source" ↵Madhukar Pappireddy
into integration
4 daysMerge changes from topic "ufs_patches" into integrationManish Pandey
* changes: fix(ufs): add reset before DME_LINKSTARTUP refactor(ufs): add retry logic to ufshc_reset refactor(ufs): reuse ufshc_send_uic_cmd
4 daysMerge changes I684d54a7,I61339fc5,Ic0dabf3e,Ief09a841 into integrationJoanna Farley
* changes: feat(plat/rcar): change process for Suspend To RAM fix(plat/rcar): change process that copy code to system ram fix(plat/rcar): fix cache maintenance process of reading cert header fix(plat/rcar): fix to load image when option BL2_DCACHE_ENABLE is enabled
4 daysMerge changes Id7d4f5df,If82542cc,I0ba80057,I75a443db,Ifa18b4fc, ... into ↵Joanna Farley
integration * changes: feat(nxp/common/ocram): add driver for OCRAM initialization feat(plat/nxp/common): add EESR register definition fix(plat/nxp/ls1028a): fix compile error when enable fuse provision fix(drivers/nxp/sfp): fix compile warning fix(plat/nxp/ls1028a): define endianness of scfg and gpio fix(nxp/scfg): fix endianness checking
6 daysfeat(plat/rcar): change process for Suspend To RAMToshiyuki Ogasahara
- Added the function rcar_pwr_domain_pwr_down_wfi() for power down process. And change the sequence to power down. - Removed clearing the count of psci_locks (PSCI exclusive lock) during Warm Boot. Signed-off-by: Koichi Yamaguchi <koichi.yamaguchi.zb@hitachi.com> Signed-off-by: Toshiyuki Ogasahara <toshiyuki.ogasahara.bo@hitachi.com> Signed-off-by: Yoshifumi Hosoya <yoshifumi.hosoya.wj@renesas.com> Change-Id: I684d54a798a6dccde15fbebe16c6e104cbb470ed
6 daysfix(plat/rcar): change process that copy code to system ramToshiyuki Ogasahara
Change processing of invalidate instruction cache to after changing the RAM attribute. Signed-off-by: Koichi Yamaguchi <koichi.yamaguchi.zb@hitachi.com> Signed-off-by: Toshiyuki Ogasahara <toshiyuki.ogasahara.bo@hitachi.com> Signed-off-by: Yoshifumi Hosoya <yoshifumi.hosoya.wj@renesas.com> Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com> # squash with rcar_gen3: drivers: Disable data cache while Suspend To RAM Change-Id: I61339fc5415b26074b1e0753da4c4a432e8f83d9
6 daysfix(plat/rcar): fix cache maintenance process of reading cert headerToshiyuki Ogasahara
Move calling inv_dcache_range from before io_read to after that. Signed-off-by: Hideyuki Nitta <hideyuki.nitta.jf@hitachi.com> Signed-off-by: Toshiyuki Ogasahara <toshiyuki.ogasahara.bo@hitachi.com> Signed-off-by: Yoshifumi Hosoya <yoshifumi.hosoya.wj@renesas.com> Change-Id: Ic0dabf3eb94eeeb04099ed5127cdfda79bbac9b3
6 daysfix(plat/rcar): fix to load image when option BL2_DCACHE_ENABLE is enabledToshiyuki Ogasahara
- Modify load destination variable of the Cert Header to static. - Modify the return value to error (IO_FAIL) when failed to check the Cert Header. Signed-off-by: Koichi Yamaguchi <koichi.yamaguchi.zb@hitachi.com> Signed-off-by: Toshiyuki Ogasahara <toshiyuki.ogasahara.bo@hitachi.com> Signed-off-by: Yoshifumi Hosoya <yoshifumi.hosoya.wj@renesas.com> Change-Id: Ief09a841ec8d2ae236de82d04855e6a47cfb43f0
6 daysfix(ufs): add reset before DME_LINKSTARTUPJorge Troncoso
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
6 daysrefactor(ufs): add retry logic to ufshc_resetJorge Troncoso
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
6 daysrefactor(ufs): reuse ufshc_send_uic_cmdJorge Troncoso
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
6 daysMerge changes from topic "st_dt_match_instance" into integrationMark Dykes
* changes: refactor(stm32_sdmmc2): use DT helpers feat(plat/st): create new helper for DT access
7 daysfeat(psci): require validate_power_state to expose CPU_SUSPENDSamuel Holland
psci_cpu_suspend unconditionally calls psci_validate_power_state, which asserts that the platform implements ops->validate_power_state. To avoid a failure at runtime, do not expose CPU_SUSPEND unless that callback is implemented. This also allows a platform to provide SYSTEM_SUSPEND without providing CPU_SUSPEND. Signed-off-by: Samuel Holland <samuel@sholland.org> Change-Id: I5dafb7845f482ab3af03a9de562def41dd70189e
7 daysMerge "fix(plat/st): only check header major when booting" into integrationManish Pandey
7 daysfix(cc-713): fix a build failure with CC-713 libraryManish V Badarkhe
Fixed a below build failure with CC-713 library error: implicit declaration of function ‘mbedtls_x509_get_rsassa_pss_params’ [-Werror=implicit-function-declaration] Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com> Change-Id: If298ec16d133cf54413c299327b2c007ec4117b2
7 daysMerge "fix(plat/st): correct signedness comparison issue" into integrationMark Dykes
7 daysMerge changes from topic "st_fixes" into integrationMark Dykes
* 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
7 daysMerge "fix(stm32mp1_clk): fix MPU clock rate" into integrationMark Dykes
7 daysMerge "fix(stm32mp1_clk): fix MCU/AXI parent clock" into integrationMark Dykes
7 daysMerge "refactor(stm32mp_clk): keep RCC node offset" into integrationMark Dykes
7 daysMerge "fix(drivers/marvell/comphy-3700): configure phy selector also for ↵Manish Pandey
PCIe" into integration
8 daysfeat(plat/mdeiatek/mt8195): remove adsp event from wakeup sourceEdward-JW Yang
Audio DSP is power-off when system suspend. Remove it from wakeup source list to prevent unnecessary wakeup. Signed-off-by: Edward-JW Yang <edward-jw.yang@mediatek.corp-partner.google.com> Change-Id: Id7251de9c8b9c9a4a4b2c41a310168d336035b9a
8 daysMerge "fix(stm32mp1): add bl prefix for internal linker script" into integrationMadhukar Pappireddy
9 daysfix(scmi): relax requirement for exact protocol versionNicola Mazzucato
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
9 daysMerge "build(plat/marvell): add descriptions why some checks are required" ↵Manish Pandey
into integration
9 daysMerge "fix(fvp_r): fix compilation error in release mode" into integrationManish Pandey
9 daysfix(fvp_r): fix compilation error in release modeManish Pandey
assert() is not used in release mode and complaining about unused variable "desc". Signed-off-by: Manish Pandey <manish.pandey2@arm.com> Change-Id: Ib919eb27532344a25be0b6ece7e239efa87be744
9 daysbuild(plat/marvell): add descriptions why some checks are requiredPali Rohár
This change adds just comments why some checks are required. They check that ENV variables and external repos are correctly set for TF-A builds. Signed-off-by: Pali Rohár <pali@kernel.org> Change-Id: I2f8af5061411c0c92d3875917f4d97b60dc2cf10
9 daysMerge changes from topic "refactor-mb" into integrationSandrine Bailleux
* changes: docs(measured boot): add measured boot platform functions refactor(measured boot): make measurement strings compliant with SBSG feat(plat/fvp): pass Event Log addr and size from BL1 to BL2 feat(measured_boot): update tb_fw_config with event log properties feat(measured_boot): image hash measurement and recording in BL1 refactor(measured boot): remove platform calls from Event Log driver refactor(measured_boot): remove passing of BL2 hash via device tree refactor(measured boot): move BL2 measurement to platform layer refactor(measured boot): rename add_event2() refactor(measured boot): move image measurement to generic layer build(measured boot): rename measured boot makefile feat(measured boot): move init and teardown functions to platform layer refactor(measured boot): rename tpm_record_measurement()
9 daysfeat(plat/qti/sc7280): add support for pmk7325Shelley Chen
The qti sc7280 platform uses the pmk7325 PMIC, which has the same functionality as the pm8998 driver, with the exception of the LC PON register offsets, which are defined as: Since it is nearly identical to the pm8998 driver, moving the above register offset definitions to platform_def.h for the respective SoC and reusing the rest of the functions defined in the pm8998 driver. Renaming pm8998 driver to pm_ps_hold to make it more generic. Change-Id: I0dda3a54579e0bbdd42c247405362a86d0607478 Signed-off-by: Shelley Chen <shchen@chromium.org>
9 daysdocs(measured boot): add measured boot platform functionsManish V Badarkhe
Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com> Change-Id: I411ee37cfeec32925849042689e8fdc7a26b7b13
9 daysrefactor(measured boot): make measurement strings compliant with SBSGManish V Badarkhe
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>
9 daysfeat(plat/fvp): pass Event Log addr and size from BL1 to BL2Manish V Badarkhe
Introduced functions to set and get Event log information (tpm_event_log address and its size). In FVP platform case, measured boot with Event Log backend flow work as below 1. event_log_init function called by BL1 to initialize Event Log module 2. arm_set_tb_fw_info function called by BL1 to set the 'tpm_event_log_addr' and 'tpm_event_log_size' properties in tb_fw_config 3. arm_get_tb_fw_info function called by BL2 to get tpm Event Log parameters set by BL1. These parameters used by the BL2 to extend the tpm Event Log records, and use these parameters to initialize Event Log using event_log_init function 4. arm_set_nt_fw_info and arm_set_tos_fw_info function called by BL2 to set 'tpm_event_log' address and its size properties in nt_fw_config and tos_fw_config respectively Alongside, this patch created a separate instances of plat_mboot_init and plat_mboot_finish APIs for BL1 and BL2. This patch is tested using the existing measured boot test configuration in jenkins CI. Change-Id: Ib9eca092afe580df014541c937868f921dff9c37 Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
9 daysfeat(measured_boot): update tb_fw_config with event log propertiesManish V Badarkhe
Making tb_fw_config ready to pass the Event Log base address and size information to BL2. Change-Id: I5dd0e79007e3848b5d6d0e69275a46c2e9807a98 Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
9 daysfeat(measured_boot): image hash measurement and recording in BL1Manish V Badarkhe
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>
9 daysrefactor(measured boot): remove platform calls from Event Log driverManish V Badarkhe
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>
9 daysrefactor(measured_boot): remove passing of BL2 hash via device treeManish V Badarkhe
Subsequent patches will provide a solution to do the BL2 hash measurement and recording in BL1 itself, hence in preparation to adopt that solution remove the logic of passing BL2 hash measurement to BL2 component via TB_FW config. Change-Id: Iff9b3d4c6a236a33b942898fcdf799cbab89b724 Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
9 daysrefactor(measured boot): move BL2 measurement to platform layerSandrine Bailleux
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>
9 daysrefactor(measured boot): rename add_event2()Sandrine Bailleux
To a layman in TCG linguo, add_event2() is not straight forward to understand. Rename the function into event_log_record(). Change-Id: I75d53a656425cd78a41ebf2c4c4e4e57687adc0d Signed-off-by: Sandrine Bailleux <sandrine.bailleux@arm.com>
9 daysrefactor(measured boot): move image measurement to generic layerManish V Badarkhe
Right now, the assumption is that the platform post-load hook takes care of measuring the image that just got loaded. This is how it's implemented on FVP. This patch moves the measurement into the generic code instead. load_auth_image() now calls plat_mboot_measure_image(), which is a new platform interface introduced in this patch to measure an image. This is called just after authenticating the image. Implement plat_mboot_measure_image() for the Arm FVP platform. The code is copied straight from the post-load hook. As a result, the FVP specific implementation of arm_bl2_plat_handle_post_image_load() is no longer needed. We can go back to using the Arm generic implementation of it. Change-Id: I7b4b8d28941a865e10af9d0eadaf2e4850942090 Signed-off-by: Sandrine Bailleux <sandrine.bailleux@arm.com> Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
9 daysbuild(measured boot): rename measured boot makefileSandrine Bailleux
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>