| 8a079e88 | 25-Jul-2019 |
Ambroise Vincent <ambroise.vincent@arm.com> |
rockchip: px30: Fix build error
"result of '1 << 31' requires 33 bits to represent, but 'int' only has 32 bits [-Werror=shift-overflow=]"
This is treated as an error since commit 93c690eba8ca ("Ena
rockchip: px30: Fix build error
"result of '1 << 31' requires 33 bits to represent, but 'int' only has 32 bits [-Werror=shift-overflow=]"
This is treated as an error since commit 93c690eba8ca ("Enable -Wshift-overflow=2 to check for undefined shift behavior")
Only the actual errors are being tackled by this patch. It is up to the platform to choose whether there needs to be further modifications to the code.
Change-Id: I70860ae5f2a34d7c684bd491b76da50aa04f778e Signed-off-by: Ambroise Vincent <ambroise.vincent@arm.com>
show more ...
|
| 3e02c743 | 30-May-2019 |
Julius Werner <jwerner@chromium.org> |
plat/rockchip: Use new bl31_params_parse_helper()
The Rockchip platform is a prime candidate for switching to the new bl31_params_parse_helper(), so switch it over. This will allow BL2 implementatio
plat/rockchip: Use new bl31_params_parse_helper()
The Rockchip platform is a prime candidate for switching to the new bl31_params_parse_helper(), so switch it over. This will allow BL2 implementations on this platform to transparently switch over to the version 2 parameter structure.
Change-Id: I540741d2425c93f66c8697ce749a351eb2b3a7e8 Signed-off-by: Julius Werner <jwerner@chromium.org>
show more ...
|
| 33218d2a | 24-Apr-2019 |
Christoph Müllner <christophm30@gmail.com> |
rockchip: Disable binary generation for all SoCs.
All supported Rockchip SoCs (RK3288, RK3328, RK3368 and RK3399) have non-continuous memory areas in the linker script with a huge gap between them.
rockchip: Disable binary generation for all SoCs.
All supported Rockchip SoCs (RK3288, RK3328, RK3368 and RK3399) have non-continuous memory areas in the linker script with a huge gap between them. This results in extremely padded binary images with a size of about 4 GiB.
E.g. on the RK3399 we have the following memory areas (and base addresses): RAM (0x1000), SRAM (0xFF8C0000), and PMUSRAM (0xFF3B0000).
Consumers of the TF-A project (e.g. coreboot or U-Boot) therefore use the ELF image instead, which has a size of a few hundred kBs.
In order to prevent the generation of a huge and useless file, this patch disables the binary generation for all affected Rockchip SoCs.
Signed-off-by: Christoph Müllner <christophm30@gmail.com> Change-Id: I4ac65bdf1e598c3e1a59507897d183aee9a36916
show more ...
|
| 220c33a2 | 19-Apr-2019 |
Christoph Müllner <christophm30@gmail.com> |
rockchip: Allow console device to be set by DTB.
Currently the compile-time constant PLAT_RK_UART_BASE defines which UART is used as console device. E.g. on RK3399 it is set to UART2. That means, th
rockchip: Allow console device to be set by DTB.
Currently the compile-time constant PLAT_RK_UART_BASE defines which UART is used as console device. E.g. on RK3399 it is set to UART2. That means, that a single bl31 image can not be used for two boards, which just differ on the UART console.
This patch addresses this limitation by parsing the "stdout-path" property from the "chosen" node in the DTB. The expected property string is expected to have the form "serialN:XXX", with N being either 0, 1, 2, 3 or 4. When the property is found, it will be used to override PLAT_RK_UART_BASE.
Tested on RK3399-Q7, with a stdout-path of "serial0:115200n8".
Signed-off-by: Christoph Müllner <christophm30@gmail.com> Change-Id: Iafe1320e77ab006c121f8d52745d54cef68a48c7
show more ...
|
| f476e63f | 01-May-2019 |
Christoph Müllner <christophm30@gmail.com> |
rockchip: Add params_setup to RK3328.
params_setup.c provides the function params_early_setup, which takes care of parsing ATF parameters (bl31_plat_param array, fdt or coreboot table). As params_ea
rockchip: Add params_setup to RK3328.
params_setup.c provides the function params_early_setup, which takes care of parsing ATF parameters (bl31_plat_param array, fdt or coreboot table). As params_early_setup is defined as weak symbol in bl31_plat_setup.c, providing a platform-specific bl31_plat_setup implementation is optional.
This patch adds the rockchip-common params_setup.c to the sources for RK3328. This streamlines the parameter handling for all supported rockchip SoCs.
Signed-off-by: Christoph Müllner <christophm30@gmail.com> Change-Id: I071c03106114364ad2fc408e49cc791fe5b35925
show more ...
|
| 4200e5aa | 24-Apr-2019 |
Heiko Stuebner <heiko@sntech.de> |
rockchip: only include libfdt in non-coreboot cases
While mainline u-boot always expects to submit the devicetree as platform param, coreboot always uses the existing parameter structure. As libfdt
rockchip: only include libfdt in non-coreboot cases
While mainline u-boot always expects to submit the devicetree as platform param, coreboot always uses the existing parameter structure. As libfdt is somewhat big, it makes sense to limit its inclusion to where necessary and thus only to non-coreboot builds.
libfdt itself will get build in all cases, but only the non- coreboot build will actually reference and thus include it.
Signed-off-by: Heiko Stuebner <heiko@sntech.de> Change-Id: I4c5bc28405a14e6070917e48a526bfe77bab2fb7
show more ...
|
| 780e3f24 | 14-Mar-2019 |
Heiko Stuebner <heiko@sntech.de> |
rockchip: add support for rk3288
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 tha
rockchip: add support for rk3288
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
show more ...
|
| 82e18f89 | 14-Mar-2019 |
Heiko Stuebner <heiko@sntech.de> |
rockchip: add common aarch32 support
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 possib
rockchip: add common aarch32 support
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
show more ...
|
| 48bea0f3 | 25-Apr-2019 |
Heiko Stuebner <heiko@sntech.de> |
rockchip: rk3328: drop double declaration of entry_point storage
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 l
rockchip: rk3328: drop double declaration of entry_point storage
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
show more ...
|
| 3b5b888d | 07-Mar-2019 |
Heiko Stuebner <heiko@sntech.de> |
rockchip: Allow socs with undefined wfe check bits
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 ad
rockchip: Allow socs with undefined wfe check bits
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
show more ...
|