<feed xmlns='http://www.w3.org/2005/Atom'>
<title>bcm63xx/atf/bl2/aarch32, branch master</title>
<subtitle>Broadcom-s Trusted Firmware A</subtitle>
<id>https://git.openwrt.org/project/bcm63xx/atf/atom?h=master</id>
<link rel='self' href='https://git.openwrt.org/project/bcm63xx/atf/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/bcm63xx/atf/'/>
<updated>2019-03-13T15:32:00Z</updated>
<entry>
<title>Merge pull request #1878 from jts-arm/sctlr</title>
<updated>2019-03-13T15:32:00Z</updated>
<author>
<name>Soby Mathew</name>
</author>
<published>2019-03-13T15:32:00Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/bcm63xx/atf/commit/?id=c0ce16fba3365315fe2742f8fa96c0c259b42341'/>
<id>urn:sha1:c0ce16fba3365315fe2742f8fa96c0c259b42341</id>
<content type='text'>
Apply stricter speculative load restriction</content>
</entry>
<entry>
<title>bl2-el3: Fix exit to bl32 by ensuring a more complete write to SPSR</title>
<updated>2019-03-13T10:08:21Z</updated>
<author>
<name>Bryan O'Donoghue</name>
</author>
<published>2019-03-11T15:36:07Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/bcm63xx/atf/commit/?id=eb20f04ef362d13fe6c230f308783bb1a9fa7b77'/>
<id>urn:sha1:eb20f04ef362d13fe6c230f308783bb1a9fa7b77</id>
<content type='text'>
Prior to entry into BL32 we set the SPSR by way of msr spsr, r1.
This unfortunately only writes the bits f-&gt;[31:24] and c-&gt;[7:0].

This patch updates the bl2 exit path to write the x-&gt;[15:8] and c-&gt;[7:0]
fields of the SPSR. For the purposes of initial setup of the SPSR the x and
c fields should be sufficient and importantly will capture the necessary
lower-order control bits that f:c alone do not.

This is important to do to ensure the SPSR is set to the mode the platform
intends prior to performing an eret.

Fixes: b1d27b484f41 ("bl2-el3: Add BL2_EL3 image")

Signed-off-by: Bryan O'Donoghue &lt;bryan.odonoghue@linaro.org&gt;
</content>
</entry>
<entry>
<title>Apply stricter speculative load restriction</title>
<updated>2019-03-12T11:30:33Z</updated>
<author>
<name>John Tsichritzis</name>
</author>
<published>2019-03-04T16:42:54Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/bcm63xx/atf/commit/?id=02b57943965c89887170604e8eb801e17fd8cb99'/>
<id>urn:sha1:02b57943965c89887170604e8eb801e17fd8cb99</id>
<content type='text'>
The SCTLR.DSSBS bit is zero by default thus disabling speculative loads.
However, we also explicitly set it to zero for BL2 and TSP images when
each image initialises its context. This is done to ensure that the
image environment is initialised in a safe state, regardless of the
reset value of the bit.

Change-Id: If25a8396641edb640f7f298b8d3309d5cba3cd79
Signed-off-by: John Tsichritzis &lt;john.tsichritzis@arm.com&gt;
</content>
</entry>
<entry>
<title>BL2_AT_EL3: Enable pointer authentication support</title>
<updated>2019-02-27T11:58:09Z</updated>
<author>
<name>Antonio Nino Diaz</name>
</author>
<published>2019-01-31T17:40:44Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/bcm63xx/atf/commit/?id=dcbfa11bd96af98dbb93df3410008f025a131d59'/>
<id>urn:sha1:dcbfa11bd96af98dbb93df3410008f025a131d59</id>
<content type='text'>
The size increase after enabling options related to ARMv8.3-PAuth is:

+----------------------------+-------+-------+-------+--------+
|                            |  text |  bss  |  data | rodata |
+----------------------------+-------+-------+-------+--------+
| CTX_INCLUDE_PAUTH_REGS = 1 |   +44 |   +0  |   +0  |   +0   |
|                            |  0.2% |       |       |        |
+----------------------------+-------+-------+-------+--------+
| ENABLE_PAUTH = 1           |  +712 |   +0  |  +16  |   +0   |
|                            |  3.1% |       |  0.9% |        |
+----------------------------+-------+-------+-------+--------+

The results are valid for the following build configuration:

    make PLAT=fvp SPD=tspd DEBUG=1 \
    BL2_AT_EL3=1                   \
    CTX_INCLUDE_PAUTH_REGS=1       \
    ENABLE_PAUTH=1

Change-Id: I1c0616e7dea30962a92b4fd113428bc30a018320
Signed-off-by: Antonio Nino Diaz &lt;antonio.ninodiaz@arm.com&gt;
</content>
</entry>
<entry>
<title>BL2: Enable pointer authentication support</title>
<updated>2019-02-27T11:58:09Z</updated>
<author>
<name>Antonio Nino Diaz</name>
</author>
<published>2019-01-31T10:48:47Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/bcm63xx/atf/commit/?id=9d93fc2f89a00e104bfe6be31f87861c26ba2bf0'/>
<id>urn:sha1:9d93fc2f89a00e104bfe6be31f87861c26ba2bf0</id>
<content type='text'>
The size increase after enabling options related to ARMv8.3-PAuth is:

+----------------------------+-------+-------+-------+--------+
|                            |  text |  bss  |  data | rodata |
+----------------------------+-------+-------+-------+--------+
| CTX_INCLUDE_PAUTH_REGS = 1 |   +40 |   +0  |   +0  |   +0   |
|                            |  0.2% |       |       |        |
+----------------------------+-------+-------+-------+--------+
| ENABLE_PAUTH = 1           |  +664 |   +0  |  +16  |   +0   |
|                            |  3.1% |       |  0.9% |        |
+----------------------------+-------+-------+-------+--------+

Results calculated with the following build configuration:

    make PLAT=fvp SPD=tspd DEBUG=1 \
    SDEI_SUPPORT=1                 \
    EL3_EXCEPTION_HANDLING=1       \
    TSP_NS_INTR_ASYNC_PREEMPT=1    \
    CTX_INCLUDE_PAUTH_REGS=1       \
    ENABLE_PAUTH=1

The changes for BL2_AT_EL3 aren't done in this commit.

Change-Id: I8c803b40c7160525a06173bc6cdca21c4505837d
Signed-off-by: Antonio Nino Diaz &lt;antonio.ninodiaz@arm.com&gt;
</content>
</entry>
<entry>
<title>Sanitise includes across codebase</title>
<updated>2019-01-04T10:43:17Z</updated>
<author>
<name>Antonio Nino Diaz</name>
</author>
<published>2018-12-14T00:18:21Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/bcm63xx/atf/commit/?id=09d40e0e08283a249e7dce0e106c07c5141f9b7e'/>
<id>urn:sha1:09d40e0e08283a249e7dce0e106c07c5141f9b7e</id>
<content type='text'>
Enforce full include path for includes. Deprecate old paths.

The following folders inside include/lib have been left unchanged:

- include/lib/cpus/${ARCH}
- include/lib/el3_runtime/${ARCH}

The reason for this change is that having a global namespace for
includes isn't a good idea. It defeats one of the advantages of having
folders and it introduces problems that are sometimes subtle (because
you may not know the header you are actually including if there are two
of them).

For example, this patch had to be created because two headers were
called the same way: e0ea0928d5b7 ("Fix gpio includes of mt8173 platform
to avoid collision."). More recently, this patch has had similar
problems: 46f9b2c3a282 ("drivers: add tzc380 support").

This problem was introduced in commit 4ecca33988b9 ("Move include and
source files to logical locations"). At that time, there weren't too
many headers so it wasn't a real issue. However, time has shown that
this creates problems.

Platforms that want to preserve the way they include headers may add the
removed paths to PLAT_INCLUDES, but this is discouraged.

Change-Id: I39dc53ed98f9e297a5966e723d1936d6ccf2fc8f
Signed-off-by: Antonio Nino Diaz &lt;antonio.ninodiaz@arm.com&gt;
</content>
</entry>
<entry>
<title>correct some missing-prototype warnings</title>
<updated>2018-12-10T17:09:49Z</updated>
<author>
<name>Yann Gautier</name>
</author>
<published>2018-12-10T09:41:03Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/bcm63xx/atf/commit/?id=1b18c6c47185fd83682c77de510c43d8d5d200df'/>
<id>urn:sha1:1b18c6c47185fd83682c77de510c43d8d5d200df</id>
<content type='text'>
This avoids the following warnings:
no previous prototype for 'bl2_arch_setup' [-Wmissing-prototypes]
no previous prototype for 'plat_log_get_prefix' [-Wmissing-prototypes]

Also correct a compilation issue if BL2_IN_XIP_MEM is enabled:
uintptr_t is not defined.

Signed-off-by: Lionel Debieve &lt;lionel.debieve@st.com&gt;
Signed-off-by: Yann Gautier &lt;yann.gautier@st.com&gt;
</content>
</entry>
<entry>
<title>bl2-el3: Fix bl32 lr_svc used for bl33 entry address</title>
<updated>2018-03-05T16:34:25Z</updated>
<author>
<name>Lionel Debieve</name>
</author>
<published>2018-03-05T14:21:59Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/bcm63xx/atf/commit/?id=a24dbdcc12990c085f55795b5c0c9d6746bb0433'/>
<id>urn:sha1:a24dbdcc12990c085f55795b5c0c9d6746bb0433</id>
<content type='text'>
When using BL2_EL3, we need to ensure that lr_svc is
properly given to bl32 as it was previously made by bl1.

Fixes ARM-Software/tf-issues#562

Signed-off-by: Lionel Debieve &lt;lionel.debieve@st.com&gt;
</content>
</entry>
<entry>
<title>Introduce the new BL handover interface</title>
<updated>2018-02-26T16:31:10Z</updated>
<author>
<name>Soby Mathew</name>
</author>
<published>2018-01-09T14:36:14Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/bcm63xx/atf/commit/?id=a6f340fe58b991882d075eed6916288fe4fa40c5'/>
<id>urn:sha1:a6f340fe58b991882d075eed6916288fe4fa40c5</id>
<content type='text'>
This patch introduces a new BL handover interface. It essentially allows
passing 4 arguments between the different BL stages. Effort has been made
so as to be compatible with the previous handover interface. The previous
blx_early_platform_setup() platform API is now deprecated and the new
blx_early_platform_setup2() variant is introduced. The weak compatiblity
implementation for the new API is done in the `plat_bl_common.c` file.
Some of the new arguments in the new API will be reserved for generic
code use when dynamic configuration support is implemented. Otherwise
the other registers are available for platform use.

Change-Id: Ifddfe2ea8e32497fe1beb565cac155ad9d50d404
Signed-off-by: Soby Mathew &lt;soby.mathew@arm.com&gt;
</content>
</entry>
<entry>
<title>bl2-el3: Add BL2_EL3 image</title>
<updated>2018-01-18T09:42:35Z</updated>
<author>
<name>Roberto Vargas</name>
</author>
<published>2017-10-30T14:43:43Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/bcm63xx/atf/commit/?id=b1d27b484f4172542eca074fdac42ffd13736a0f'/>
<id>urn:sha1:b1d27b484f4172542eca074fdac42ffd13736a0f</id>
<content type='text'>
This patch enables BL2 to execute at the highest exception level
without any dependancy on TF BL1. This enables platforms which already
have a non-TF Boot ROM to directly load and execute BL2 and subsequent BL
stages without need for BL1.  This is not currently possible because
BL2 executes at S-EL1 and cannot jump straight to EL3.

Change-Id: Ief1efca4598560b1b8c8e61fbe26d1f44e929d69
Signed-off-by: Roberto Vargas &lt;roberto.vargas@arm.com&gt;
</content>
</entry>
</feed>
