- 31 Dec, 2020 1 commit
-
-
Andre Przywara authored
At the moment we assume the SPL load size to be limited to 32KB, even though many SoCs have more SRAM A1 or a large SRAM C directly after SRAM A1. To later allow to extend the SPL load size, let's introduce a SoC specific variable to hold the SRAM size after the SPL load address. This could either cover the whole of SRAM A1, or even SRAM C, if that is contiguous to SRAM A1. Eventually this variable is meant to hold the *usable* SRAM size, so not including regions that are used by the BROM code. However this value is very SoC specific and not documented, and the SPL size is limited by the thunk and stack buffers anyway at the moment, so the values used here right now are just taken from the respective manuals. Signed-off-by: Andre Przywara <osp@andrep.de>
-
- 14 Jun, 2020 1 commit
-
-
Karl Palsson authored
The watchdog register isn't in the same place, nor uses the same values to trigger a reset. Signed-off-by: Karl Palsson <karlp@tweak.net.au>
-
- 20 Apr, 2020 1 commit
-
-
Karl Palsson authored
The watchdog register isn't in the same place, nor uses the same values to trigger a reset. Signed-off-by: Karl Palsson <karlp@tweak.net.au>
-
- 28 Feb, 2017 1 commit
-
-
Andre Przywara authored
If an SoC has the "secure boot" fuse burned, it will enter FEL mode in non-secure state, so with the SCR.NS bit set. Since in this mode the secure/non-secure state restrictions are actually observed, we suffer from several restrictions: - No access to the SID information (both via memory mapped and "register"). - No access to secure SRAM (SRAM A2 on H3/A64/H5). - No access to the secure side of the GIC, so it can't be configured to be accessible from non-secure world. - No RMR trigger on ARMv8 cores to bring the core into AArch64. Those limitations make a board pretty useless for many applications. However it has been found out that a simple "smc" call will immediately return from monitor mode, but with the NS bit cleared, so access to all secure peripherals is suddenly possible. Add all the necessary support code for doing a runtime check and activating this workaround. Affected SoCs need to have the "smc" workaround enabled in their soc_info struct. Signed-off-by: Andre Przywara <osp@andrep.de> ["sunxi-fel smc" command changed to automatic detection by Siarhei] Signed-off-by: Siarhei Siamashka <siarhei.siamashka@gmail.com>
-
- 28 Dec, 2016 2 commits
-
-
Icenowy Zheng authored
H3 SID controller has some bug, that makes the initial value at 0x01c14200 wrong. This commit workarounds this bug by reading them with register access first. Signed-off-by: Icenowy Zheng <icenowy@aosc.xyz> Reviewed-by: Bernhard Nortmann <bernhard.nortmann@web.de>
-
Bernhard Nortmann authored
This is a preparatory step. Instead of using memory-based access, we might want to retrieve SID keys (e-fuses) via SID registers. For this, it's convenient if the plain base address is available. Signed-off-by: Bernhard Nortmann <bernhard.nortmann@web.de>
-
- 29 Nov, 2016 1 commit
-
-
Bernhard Nortmann authored
open_fel_device() will automatically provide this member field, based on the SoC ID from FEL/BROM version data. The field will either receive a human-readable identifier, or the ID in 4-digit hexadecimal representation (for unknown SoCs). Signed-off-by: Bernhard Nortmann <bernhard.nortmann@web.de>
-
- 13 Nov, 2016 1 commit
-
-
Bernhard Nortmann authored
While at it, modify the former "sram_info" identifiers to carry a broader "soc_info" meaning. Signed-off-by: Bernhard Nortmann <bernhard.nortmann@web.de>
-