- 26 Apr, 2019 4 commits
-
-
Soby Mathew authored
-
Antonio Niño Díaz authored
-
Soby Mathew authored
* changes: rockchip: document platform rockchip: add support for rk3288 rockchip: add common aarch32 support rockchip: rk3328: drop double declaration of entry_point storage rockchip: Allow socs with undefined wfe check bits rockchip: move pmusram assembler code to a aarch64 subdir sp_min: allow inclusion of a platform-specific linker script sp_min: make sp_min_warm_entrypoint public drivers: ti: uart: add a aarch32 variant
-
Soby Mathew authored
-
- 25 Apr, 2019 11 commits
-
-
Andrew F. Davis authored
Errata 819472, 824069, and 827319 are currently reported in a warning as missing during boot for platforms that do not need them. Only warn when the errata is needed for a given revision but not compiled in like other errata workarounds. Fixes: bd393704 ("Cortex-A53: Workarounds for 819472, 824069 and 827319") Signed-off-by: Andrew F. Davis <afd@ti.com> Change-Id: Ifd757b3d0e73a9bd465b98dc20648b6c13397d8d
-
Heiko Stuebner authored
This adds a rockchip.rst to docs/plat documenting the general approach to using the Rockchip ATF platforms together with the supported bootloaders and also adds myself as maintainer after making sure Tony Xie is ok with that. Signed-off-by: Heiko Stuebner <heiko@sntech.de> Change-Id: Idce53d15eff4ac6de05bbb35d86e57ed50d0cbb9
-
Heiko Stuebner authored
The rk3288 is a 4-core Cortex-A12 SoC and shares a lot of features with later SoCs. Working features are general non-secure mode (the gic needs special love for that), psci-based smp bringing cpu cores online and also taking them offline again, psci-based suspend (the simpler variant also included in the linux kernel, deeper suspend following later) and I was also already able to test HYP-mode and was able to boot a virtual kernel using kvm. Signed-off-by: Heiko Stuebner <heiko@sntech.de> Change-Id: Ibaaa583b2e78197591a91d254339706fe732476a
-
Heiko Stuebner authored
There are a number or ARMv7 Rockchip SoCs that are very similar in their bringup routines to the existing arm64 SoCs, so there is quite a high commonality possible here. Things like virtualization also need psci and hyp-mode and instead of trying to cram this into bootloaders like u-boot, barebox or coreboot (all used in the field), re-use the existing infrastructure in TF-A for this (both Rockchip plat support and armv7 support in general). So add core support for aarch32 Rockchip SoCs, with actual soc support following in a separate patch. Signed-off-by: Heiko Stuebner <heiko@sntech.de> Change-Id: I298453985b5d8434934fc0c742fda719e994ba0b
-
Heiko Stuebner authored
The cpuson_entry_point and cpuson_flags are already declared in plat_private.h so there is no need to have it again declared in the local pmu.h, especially as it may cause conflicts when the other type changes. Signed-off-by: Heiko Stuebner <heiko@sntech.de> Change-Id: I80ae0e23d22f67109ed96f8ac059973b6de2ce87
-
Heiko Stuebner authored
Some older socs like the rk3288 do not have the necessary registers to check the wfi/wfe state of the cpu cores. Allow this case an "just" do an additional delay similar to how the Linux kernel handles smp right now. Signed-off-by: Heiko Stuebner <heiko@sntech.de> Change-Id: I0f67af388b06b8bfb4a9bac411b4900ac266a77a
-
Heiko Stuebner authored
The current code doing power-management from sram is highly arm64-specific so should live in a corresponding subdirectory and not in the common area. Signed-off-by: Heiko Stuebner <heiko@sntech.de> Change-Id: I3b79ac26f70fd189d4d930faa6251439a644c5d9
-
Heiko Stuebner authored
Similar to bl31 allow sp_min to also include a platform-specific linker script. This allows for example to place specific code in other memories of the system, like resume code in sram, while the main tf-a lives in ddr. Signed-off-by: Heiko Stuebner <heiko@sntech.de> Change-Id: I67642f7bfca036b5d51eb0fa092b479a647a9cc1
-
Heiko Stuebner authored
Similar to bl31_warm_entrypoint, sp_min-based platforms may need that for special resume handling. Therefore move it from the private header to the sp_min platform header. Signed-off-by: Heiko Stuebner <heiko@sntech.de> Change-Id: I40d9eb3ff77cff88d47c1ff51d53d9b2512cbd3e
-
Heiko Stuebner authored
Rockchip re-uses the ti uart console driver and for aarch32 needs a specific variant, so add it. There are also aarch32 ti socs, so it may be useful for them as well at some point. Signed-off-by: Heiko Stuebner <heiko@sntech.de> Change-Id: I31ede7cc7b10347b3691cff051db2b985fd59e17
-
Sandrine Bailleux authored
Change-Id: Iafa79b6f7891d3eebec9908a8f7725131202beb3 Signed-off-by: Sandrine Bailleux <sandrine.bailleux@arm.com>
-
- 24 Apr, 2019 6 commits
-
-
Christoph Müllner authored
GCC complains for quite some versions, when compiling the M0 firmware for Rockchip's rk3399 platform, about an invalid type of function 'main': warning: return type of 'main' is not 'int' [-Wmain] This patch addresses this, by renaming the function to 'm0_main'. Signed-off-by: Christoph Müllner <christophm30@gmail.com> Change-Id: I10887f2bda6bdb48c5017044c264139004f7c785
-
Antonio Niño Díaz authored
* changes: Console: Remove Arm console unregister on suspend Console: Allow to register multiple times
-
Antonio Niño Díaz authored
* changes: ti: k3: drivers: ti_sci: Retry message receive on bad sequence ID ti: k3: drivers: ti_sci: Cleanup sequence ID usage ti: k3: drivers: sec_proxy: Use direction definitions ti: k3: drivers: sec_proxy: Fix printf format specifiers
-
Antonio Niño Díaz authored
* changes: ti: k3: common: Align elements of map region table ti: k3: common: Enable SEPARATE_CODE_AND_RODATA by default ti: k3: common: Remove shared RAM space ti: k3: common: Drop _ADDRESS from K3_USART_BASE to match other defines
-
Ambroise Vincent authored
Change-Id: Ie649b3c367a93db057eeaee7e83fa3e43f8c2607 Signed-off-by: Ambroise Vincent <ambroise.vincent@arm.com>
-
Ambroise Vincent authored
It removes the need to unregister the console on system suspend. Change-Id: Ic9311a242a4a9a778651f7e6380bd2fc0964b2ce Signed-off-by: Ambroise Vincent <ambroise.vincent@arm.com>
-
- 23 Apr, 2019 12 commits
-
-
Andrew F. Davis authored
When we get a sequence ID that does not match what we expect then the we are looking at is not the one we are expecting and so we error out. We can also assume this message is a stale message left in the queue, in this case we can read in the next message and check again for our message. Switch to doing that here. We only retry a set number of times so we don't lock the system if our message is actually lost and will never show up. Signed-off-by: Andrew F. Davis <afd@ti.com> Change-Id: I6c8186ccc45e646d3ba9d431f7d4c451dcd70c5c
-
Andrew F. Davis authored
The sequence ID can be set with a message to identify it when it is responded to in the response queue. We assign each message a number and check for this same number to detect response mismatches. Start this at 0 and increase it by one for each message sent, even ones that do not request or wait for a response as one may still be delivered in some cases and we want to detect this. Signed-off-by: Andrew F. Davis <afd@ti.com> Change-Id: I72b4d1ef98bf1c1409d9db9db074af8dfbcd83ea
-
Andrew F. Davis authored
The direction of a thread should be explicitly compared to avoid confusion. Also fixup message wording based on this direction. Signed-off-by: Andrew F. Davis <afd@ti.com> Change-Id: Ia3cf9413cd23af476bb5d2e6d70bee15234cbd11
-
Andrew F. Davis authored
The ID of a thread is not used outside for printing it out when something goes wrong. The specifier used is also not consistent. Instead of storing the thread ID, store its name and print that. Signed-off-by: Andrew F. Davis <afd@ti.com> Change-Id: Id137c2f8dfdd5c599e220193344ece903f80af7b
-
Antonio Niño Díaz authored
-
Antonio Niño Díaz authored
-
Antonio Niño Díaz authored
* changes: stm32mp1: add OP-TEE support stm32mp1: fix TZC400 configuration against non-secure DDR stm32mp1: remove useless define stm32mp: split stm32mp_io_setup function
-
Yann Gautier authored
Support booting OP-TEE as BL32 boot stage and secure runtime service. OP-TEE executes in internal RAM and uses a secure DDR area to store the pager pagestore. Memory mapping and TZC are configured accordingly prior OP-TEE boot. OP-TEE image is expected in OP-TEE v2 format where a header file describes the effective boot images. This change post processes header file content to get OP-TEE load addresses and set OP-TEE boot arguments. Change-Id: I02ef8b915e4be3e95b27029357d799d70e01cd44 Signed-off-by: Yann Gautier <yann.gautier@st.com> Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
-
Yann Gautier authored
This change disables secure accesses to non-secure DDR which are useless. TF-A already maps non-secure memory with non-secure permissions thanks to the MMU. This change also corrects some inline comments. Change-Id: Id4c20c9ee5c95a666dae6b7446ed80baf2d53fb0 Signed-off-by: Yann Gautier <yann.gautier@st.com> Signed-off-by: Nicolas Le Bayon <nicolas.le.bayon@st.com>
-
Yann Gautier authored
Remove STM32MP_DDR_SPEED_DFLT that is not used in STM32MP1 TF-A code. Change-Id: I780cdc4e93a8a9d997d50f67cfc582acd4a353d6 Signed-off-by: Yann Gautier <yann.gautier@st.com>
-
Yann Gautier authored
A new static function boot_mmc is created to simplify code maintenance of stm32mp_io_setup. Change-Id: I5c416e567e7e174fb1c2b435925a983c9c55fc40 Signed-off-by: Yann Gautier <yann.gautier@st.com>
-
Antonio Niño Díaz authored
* changes: plat/arm: introduce wrapper functions to setup secure watchdog drivers/sbsa: add sbsa watchdog driver
-
- 19 Apr, 2019 4 commits
-
-
Andrew F. Davis authored
This is only a formatting change but makes it instantly clear how each region is set. This is over 80 chars and the MT_RO are not strictly needed but this section very important to get right so make readability the priority here. Signed-off-by: Andrew F. Davis <afd@ti.com> Change-Id: I2432deda05d4502b3478170296b5da43f26ad8e6
-
Andrew F. Davis authored
This should be more secure and looks a bit cleaner. Signed-off-by: Andrew F. Davis <afd@ti.com> Change-Id: Ie5eaf0234b211ba02631cf5eab5faa1402a34461
-
Andrew F. Davis authored
We don't use this for anything right now, remove it. Signed-off-by: Andrew F. Davis <afd@ti.com> Change-Id: I11505d01834f7ff1fdba46fda0acbb3b56fc9b66
-
Andrew F. Davis authored
This makes definitions more consistent, plus helps alignment. Signed-off-by: Andrew F. Davis <afd@ti.com> Change-Id: I38fcdd76207586613d9934c9dc83d7a347e9e0fc
-
- 18 Apr, 2019 2 commits
-
-
Louis Mayencourt authored
This patch forces all cacheable atomic instructions to be near, which improves performance in highly contended parallelized use-cases. Change-Id: I93fac62847f4af8d5eaaf3b52318c30893e947d3 Signed-off-by: Louis Mayencourt <louis.mayencourt@arm.com>
-
Louis Mayencourt authored
Change-Id: I22568caf83b9846cd7b59241fcec34a395825399 Signed-off-by: Louis Mayencourt <louis.mayencourt@arm.com>
-
- 17 Apr, 2019 1 commit
-
-
Aditya Angadi authored
The BL1 stage setup code for ARM platforms sets up the SP805 watchdog controller as the secure watchdog. But not all ARM platforms use SP805 as the secure watchdog controller. So introduce two new ARM platform code specific wrapper functions to start and stop the secure watchdog. These functions then replace the calls to SP805 driver in common BL1 setup code. All the ARM platforms implement these wrapper functions by either calling into SP805 driver or the SBSA watchdog driver. Change-Id: I1a9a11b124cf3fac2a84f22ca40acd440a441257 Signed-off-by: Aditya Angadi <aditya.angadi@arm.com>
-