summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMasahisa Kojima <masahisa.kojima@linaro.org>2021-11-19 05:46:00 +0000
committerMasahisa Kojima <masahisa.kojima@linaro.org>2021-11-20 00:36:26 +0900
commit8df6d40a734d5219e2347025f73d85c9b7a51e7d (patch)
tree05821d8fb5266475f95d07e2c2889b8b51323648
parent599dece3e940991aa173c89b3a2adaf07d16d8d2 (diff)
ledge-synquacer: update tf-a and scp-firmware base versionHEADmaster
SCP-firmware version in meta-arm is relatively old(v2.6.0). Instead of adding required patch for synquacer, this commit updates the scp-firmware version to v2.9.0. Trusted firmware-a also needs to be v2.5 or later, to keep consistency of SCMI version with SCP-firmware. Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org>
-rw-r--r--recipes-bsp/scp-firmware/scp-firmware_%.bbappend12
-rw-r--r--recipes-bsp/trusted-firmware-a/files/0002-fix-plat-synquacer-update-scmi-power-domain-off-hand.patch41
-rw-r--r--recipes-bsp/trusted-firmware-a/trusted-firmware-a-ledge_git.bb5
3 files changed, 53 insertions, 5 deletions
diff --git a/recipes-bsp/scp-firmware/scp-firmware_%.bbappend b/recipes-bsp/scp-firmware/scp-firmware_%.bbappend
index 7cbe44e..cf759a9 100644
--- a/recipes-bsp/scp-firmware/scp-firmware_%.bbappend
+++ b/recipes-bsp/scp-firmware/scp-firmware_%.bbappend
@@ -1,12 +1,18 @@
-#SRCREV = "7a025658d8318e95dbab4259a8ff7834ae6d8061"
+SRCREV = "77ffab90a9f6071850475087cc5d40610c621126"
+
+LIC_FILES_CHKSUM = "file://license.md;beginline=5;md5=9db9e3d2fb8d9300a6c3d15101b19731 \
+ file://contrib/cmsis/git/LICENSE.txt;md5=e3fc50a88d0a364313df4b21ef20c29e"
+
SCP_PLATFORM = "synquacer"
FW_TARGETS = "scp"
-SCP_LOG_LEVEL = "INFO"
+SCP_LOG_LEVEL = "WARN"
COMPATIBLE_MACHINE_ledge-synquacer = "ledge-synquacer"
ROMRAMFW_FILE = "scp_romramfw_${SCP_BUILD_STR}.bin"
+SRC_URI_remove = "file://0001-tools-gen_module_code-atomically-rewrite-the-generat.patch"
+
do_deploy_append_ledge-synquacer() {
cd ${DEPLOYDIR}
tr "\000" "\377" < /dev/zero | dd of=${ROMRAMFW_FILE} bs=1 count=196608
@@ -14,5 +20,5 @@ do_deploy_append_ledge-synquacer() {
dd if=scp_ramfw.bin of=${ROMRAMFW_FILE} bs=1 seek=65536
}
-PV = "2.6.0+git${SRCPV}"
+PV = "2.9.0"
diff --git a/recipes-bsp/trusted-firmware-a/files/0002-fix-plat-synquacer-update-scmi-power-domain-off-hand.patch b/recipes-bsp/trusted-firmware-a/files/0002-fix-plat-synquacer-update-scmi-power-domain-off-hand.patch
new file mode 100644
index 0000000..b0e8db4
--- /dev/null
+++ b/recipes-bsp/trusted-firmware-a/files/0002-fix-plat-synquacer-update-scmi-power-domain-off-hand.patch
@@ -0,0 +1,41 @@
+From f7f5d2c4cd209c2d21244da4fa442050eb4531ab Mon Sep 17 00:00:00 2001
+From: Masahisa Kojima <masahisa.kojima@linaro.org>
+Date: Tue, 3 Aug 2021 16:48:53 +0900
+Subject: [PATCH] fix(plat/synquacer): update scmi power domain off handling
+
+In the SCMI power domain off handling, configure GIC
+to prevent interrupt toward to the core to be turned off,
+and configure CCN to disable coherency when the cluster is turned off.
+The same operation is done in SCPI power domain off processing.
+
+This commit adds the missing operation in SCMI power domain
+off handling.
+
+Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org>
+Change-Id: Ib3523de488500c2e8bdc74e4cb8772a1442d9781
+---
+ plat/socionext/synquacer/sq_psci.c | 8 ++++++++
+ 1 file changed, 8 insertions(+)
+
+diff --git a/plat/socionext/synquacer/sq_psci.c b/plat/socionext/synquacer/sq_psci.c
+index 0c97fcf79..4168df9da 100644
+--- a/plat/socionext/synquacer/sq_psci.c
++++ b/plat/socionext/synquacer/sq_psci.c
+@@ -97,6 +97,14 @@ static void sq_power_down_common(const psci_power_state_t *target_state)
+ void sq_pwr_domain_off(const psci_power_state_t *target_state)
+ {
+ #if SQ_USE_SCMI_DRIVER
++ /* Prevent interrupts from spuriously waking up this cpu */
++ sq_gic_cpuif_disable();
++
++ /* Cluster is to be turned off, so disable coherency */
++ if (SQ_CLUSTER_PWR_STATE(target_state) == SQ_LOCAL_STATE_OFF) {
++ plat_sq_interconnect_exit_coherency();
++ }
++
+ sq_scmi_off(target_state);
+ #else
+ sq_power_down_common(target_state);
+--
+2.17.1
+
diff --git a/recipes-bsp/trusted-firmware-a/trusted-firmware-a-ledge_git.bb b/recipes-bsp/trusted-firmware-a/trusted-firmware-a-ledge_git.bb
index 3ba3af3..76c7e94 100644
--- a/recipes-bsp/trusted-firmware-a/trusted-firmware-a-ledge_git.bb
+++ b/recipes-bsp/trusted-firmware-a/trusted-firmware-a-ledge_git.bb
@@ -11,12 +11,13 @@ LIC_FILES_CHKSUM = "file://license.rst;md5=1dd070c98a281d18d9eefd938729b031"
PACKAGE_ARCH = "${MACHINE_ARCH}"
-PV = "2.4"
+PV = "2.5"
SRC_URI = "git://github.com/ARM-software/arm-trusted-firmware.git;protocol=https;nobranch=1"
-SRCREV = "e2c509a39c6cc4dda8734e6509cdbe6e3603cdfc"
+SRCREV = "c158878249f1bd930906ebd744b90d3f2a8265f1"
SRC_URI_append_ledge-synquacer = " file://0001-fiptool-Accept-fixed-offset-for-image.patch"
+SRC_URI_append_ledge-synquacer = " file://0002-fix-plat-synquacer-update-scmi-power-domain-off-hand.patch"
SRC_URI_append_ledge-synquacer = " file://dummy.bin"
ALLOW_EMPTY_${PN} = "1"