<feed xmlns='http://www.w3.org/2005/Atom'>
<title>bcm63xx/atf/include/arch, 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>2021-12-24T12:15:12Z</updated>
<entry>
<title>Add Broadcom's code for bcm63xx support</title>
<updated>2021-12-24T12:15:12Z</updated>
<author>
<name>Rafał Miłecki</name>
</author>
<published>2021-12-24T12:15:12Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/bcm63xx/atf/commit/?id=e6d46baf3fae79f693f90bf34f7284c3dfc64aef'/>
<id>urn:sha1:e6d46baf3fae79f693f90bf34f7284c3dfc64aef</id>
<content type='text'>
This includes all bcm63xx families (some of them don't follow that
naming schema - like BCM4908). All that code has been extracted from the
RAXE500_RAXE450-V1.0.8.70_GPL_release.zip .

Signed-off-by: Rafał Miłecki &lt;rafal@milecki.pl&gt;
</content>
</entry>
<entry>
<title>Explicitly disable the SPME bit in MDCR_EL3</title>
<updated>2019-10-07T10:50:07Z</updated>
<author>
<name>Petre-Ionut Tudor</name>
</author>
<published>2019-10-03T16:09:08Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/bcm63xx/atf/commit/?id=2a7adf2567aa103ced4a9a9b3ef8344935716d25'/>
<id>urn:sha1:2a7adf2567aa103ced4a9a9b3ef8344935716d25</id>
<content type='text'>
Currently the MDCR_EL3 initialisation implicitly disables
MDCR_EL3.SPME by using mov_imm.

This patch makes the SPME bit more visible by explicitly
disabling it and documenting its use in different versions
of the architecture.

Signed-off-by: Petre-Ionut Tudor &lt;petre-ionut.tudor@arm.com&gt;
Change-Id: I221fdf314f01622f46ac5aa43388f59fa17a29b3
</content>
</entry>
<entry>
<title>Add missing support for BL2_AT_EL3 in XIP memory</title>
<updated>2019-10-02T07:06:39Z</updated>
<author>
<name>Lionel Debieve</name>
</author>
<published>2019-05-27T07:32:00Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/bcm63xx/atf/commit/?id=0a12302c3ff290fd5925313d7ba834209eeed671'/>
<id>urn:sha1:0a12302c3ff290fd5925313d7ba834209eeed671</id>
<content type='text'>
Add the missing flag for aarch32 XIP memory mode. It was
previously added in aarch64 only.
Minor: Correct the aarch64 missing flag.

Signed-off-by: Lionel Debieve &lt;lionel.debieve@st.com&gt;
Change-Id: Iac0a7581a1fd580aececa75f97deb894858f776f
</content>
</entry>
<entry>
<title>AArch32: Disable Secure Cycle Counter</title>
<updated>2019-09-26T15:36:02Z</updated>
<author>
<name>Alexei Fedorov</name>
</author>
<published>2019-08-20T14:22:44Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/bcm63xx/atf/commit/?id=c3e8b0be9bde36d220beea5d0452ecd04dcd94c6'/>
<id>urn:sha1:c3e8b0be9bde36d220beea5d0452ecd04dcd94c6</id>
<content type='text'>
This patch changes implementation for disabling Secure Cycle
Counter. For ARMv8.5 the counter gets disabled by setting
SDCR.SCCD bit on CPU cold/warm boot. For the earlier
architectures PMCR register is saved/restored on secure
world entry/exit from/to Non-secure state, and cycle counting
gets disabled by setting PMCR.DP bit.
In 'include\aarch32\arch.h' header file new
ARMv8.5-PMU related definitions were added.

Change-Id: Ia8845db2ebe8de940d66dff479225a5b879316f8
Signed-off-by: Alexei Fedorov &lt;Alexei.Fedorov@arm.com&gt;
</content>
</entry>
<entry>
<title>Merge "Refactor ARMv8.3 Pointer Authentication support code" into integration</title>
<updated>2019-09-13T15:22:23Z</updated>
<author>
<name>Soby Mathew</name>
</author>
<published>2019-09-13T15:22:23Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/bcm63xx/atf/commit/?id=6129e9a643274e658a0e6f5428ad976676c7bb7a'/>
<id>urn:sha1:6129e9a643274e658a0e6f5428ad976676c7bb7a</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Refactor ARMv8.3 Pointer Authentication support code</title>
<updated>2019-09-13T13:11:59Z</updated>
<author>
<name>Alexei Fedorov</name>
</author>
<published>2019-09-13T13:11:59Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/bcm63xx/atf/commit/?id=ed108b56051de5da8024568a06781ce287e86c78'/>
<id>urn:sha1:ed108b56051de5da8024568a06781ce287e86c78</id>
<content type='text'>
This patch provides the following features and makes modifications
listed below:
- Individual APIAKey key generation for each CPU.
- New key generation on every BL31 warm boot and TSP CPU On event.
- Per-CPU storage of APIAKey added in percpu_data[]
  of cpu_data structure.
- `plat_init_apiakey()` function replaced with `plat_init_apkey()`
  which returns 128-bit value and uses Generic timer physical counter
  value to increase the randomness of the generated key.
  The new function can be used for generation of all ARMv8.3-PAuth keys
- ARMv8.3-PAuth specific code placed in `lib\extensions\pauth`.
- New `pauth_init_enable_el1()` and `pauth_init_enable_el3()` functions
  generate, program and enable APIAKey_EL1 for EL1 and EL3 respectively;
  pauth_disable_el1()` and `pauth_disable_el3()` functions disable
  PAuth for EL1 and EL3 respectively;
  `pauth_load_bl31_apiakey()` loads saved per-CPU APIAKey_EL1 from
  cpu-data structure.
- Combined `save_gp_pauth_registers()` function replaces calls to
  `save_gp_registers()` and `pauth_context_save()`;
  `restore_gp_pauth_registers()` replaces `pauth_context_restore()`
  and `restore_gp_registers()` calls.
- `restore_gp_registers_eret()` function removed with corresponding
  code placed in `el3_exit()`.
- Fixed the issue when `pauth_t pauth_ctx` structure allocated space
  for 12 uint64_t PAuth registers instead of 10 by removal of macro
  CTX_PACGAKEY_END from `include/lib/el3_runtime/aarch64/context.h`
  and assigning its value to CTX_PAUTH_REGS_END.
- Use of MODE_SP_ELX and MODE_SP_EL0 macro definitions
  in `msr	spsel`  instruction instead of hard-coded values.
- Changes in documentation related to ARMv8.3-PAuth and ARMv8.5-BTI.

Change-Id: Id18b81cc46f52a783a7e6a09b9f149b6ce803211
Signed-off-by: Alexei Fedorov &lt;Alexei.Fedorov@arm.com&gt;
</content>
</entry>
<entry>
<title>Invalidate dcache build option for bl2 entry at EL3</title>
<updated>2019-09-12T12:36:31Z</updated>
<author>
<name>Hadi Asyrafi</name>
</author>
<published>2019-08-20T07:33:27Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/bcm63xx/atf/commit/?id=b90f207a1d386ec391bd3ea9eb403c4ad7b7551b'/>
<id>urn:sha1:b90f207a1d386ec391bd3ea9eb403c4ad7b7551b</id>
<content type='text'>
Some of the platform (ie. Agilex) make use of CCU IPs which will only be
initialized during bl2_el3_early_platform_setup. Any operation to the
cache beforehand will crash the platform. Hence, this will provide an
option to skip the data cache invalidation upon bl2 entry at EL3

Signed-off-by: Hadi Asyrafi &lt;muhammad.hadi.asyrafi.abdul.halim@intel.com&gt;
Change-Id: I2c924ed0589a72d0034714c31be8fe57237d1f06
</content>
</entry>
<entry>
<title>Merge changes from topic "jc/mte_enable" into integration</title>
<updated>2019-09-12T12:31:22Z</updated>
<author>
<name>Soby Mathew</name>
</author>
<published>2019-09-12T12:31:22Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/bcm63xx/atf/commit/?id=91624b7fed52cb926f327fd63d0c0e14c53f8cb3'/>
<id>urn:sha1:91624b7fed52cb926f327fd63d0c0e14c53f8cb3</id>
<content type='text'>
* changes:
  Add documentation for CTX_INCLUDE_MTE_REGS
  Enable MTE support in both secure and non-secure worlds
</content>
</entry>
<entry>
<title>Add UBSAN support and handlers</title>
<updated>2019-09-11T13:15:54Z</updated>
<author>
<name>Justin Chadwell</name>
</author>
<published>2019-08-20T10:01:52Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/bcm63xx/atf/commit/?id=1f4619796af5baf4b41b5723bbf708355f8597fa'/>
<id>urn:sha1:1f4619796af5baf4b41b5723bbf708355f8597fa</id>
<content type='text'>
This patch adds support for the Undefined Behaviour sanitizer. There are
two types of support offered - minimalistic trapping support which
essentially immediately crashes on undefined behaviour and full support
with full debug messages.

The full support relies on ubsan.c which has been adapted from code used
by OPTEE.

Change-Id: I417c810f4fc43dcb56db6a6a555bfd0b38440727
Signed-off-by: Justin Chadwell &lt;justin.chadwell@arm.com&gt;
</content>
</entry>
<entry>
<title>Enable MTE support in both secure and non-secure worlds</title>
<updated>2019-09-09T15:23:33Z</updated>
<author>
<name>Justin Chadwell</name>
</author>
<published>2019-07-18T13:25:33Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/bcm63xx/atf/commit/?id=9dd94382bd23db0fa201b254dc3f1bebdfd627c2'/>
<id>urn:sha1:9dd94382bd23db0fa201b254dc3f1bebdfd627c2</id>
<content type='text'>
This patch adds support for the new Memory Tagging Extension arriving in
ARMv8.5. MTE support is now enabled by default on systems that support
at EL0. To enable it at ELx for both the non-secure and the secure
world, the compiler flag CTX_INCLUDE_MTE_REGS includes register saving
and restoring when necessary in order to prevent register leakage
between the worlds.

Change-Id: I2d4ea993d6b11654ea0d4757d00ca20d23acf36c
Signed-off-by: Justin Chadwell &lt;justin.chadwell@arm.com&gt;
</content>
</entry>
</feed>
