| #
dae7d729 |
| 24-Feb-2025 |
Yann Gautier <yann.gautier@st.com> |
Merge "feat(rockchip): increase FDT Buffer for Rockchip Devices" into integration
|
| #
ab99dce4 |
| 30-Jan-2025 |
Chris Morgan <macromorgan@hotmail.com> |
feat(rockchip): increase FDT Buffer for Rockchip Devices
Modify the FDT buffer for Rockchip devices to 384KiB. This is done to allow us to pass mainline devicetrees with symbols through Arm Trusted
feat(rockchip): increase FDT Buffer for Rockchip Devices
Modify the FDT buffer for Rockchip devices to 384KiB. This is done to allow us to pass mainline devicetrees with symbols through Arm Trusted Firmware. 384KiB was chosen as 512KiB is very near the maximum supported with the current reserved memory. As of kernel version 6.13, the largest devicetree with symbols enabled is 215KiB, and the largest Rockchip devicetree with symbols enabled is 176KiB (rk3588-evb1-v10.dtb).
Change-Id: Iea9343d7a30ee26cad3ee5cc848980a93873ae34 Signed-off-by: Chris Morgan <macromorgan@hotmail.com>
show more ...
|
| #
fbcbd88e |
| 15-Nov-2022 |
Manish Pandey <manish.pandey2@arm.com> |
Merge "fix(rockchip): align fdt buffer on 8 bytes" into integration
|
| #
621acbd0 |
| 14-Nov-2022 |
Quentin Schulz <quentin.schulz@theobroma-systems.com> |
fix(rockchip): align fdt buffer on 8 bytes
Since commit 94b2f94bd632 ("feat(libfdt): upgrade libfdt source files"), 8-byte alignment of the FDT address is enforced to follow the DT standard.
Rockch
fix(rockchip): align fdt buffer on 8 bytes
Since commit 94b2f94bd632 ("feat(libfdt): upgrade libfdt source files"), 8-byte alignment of the FDT address is enforced to follow the DT standard.
Rockchip implementation of params_early_setup loads the FDT address as passed by the bootloader into a buffer. This buffer is currently made of uint8_t which means it is not 8-byte aligned and might result in fdt_open_into failing.
Instead, let's make this buffer uint64_t to make it 8-byte aligned.
Cc: Quentin Schulz <foss+tf-a@0leil.net> Signed-off-by: Quentin Schulz <quentin.schulz@theobroma-systems.com> Change-Id: Ifcf0e0cf4000e3661d76d3c3a2fe3921f7fe44b9
show more ...
|
| #
1aabb74f |
| 14-Sep-2020 |
Mark Dykes <mardyk01@review.trustedfirmware.org> |
Merge "rockchip: don't crash if we get an FDT we can't parse" into integration
|
| #
e7b58698 |
| 05-Apr-2020 |
Thomas Hebb <tommyhebb@gmail.com> |
rockchip: don't crash if we get an FDT we can't parse
When we parse the param from BL2, we try to parse it as a FDT and then, if that fails, as aux params. However, we don't sufficiently distinguish
rockchip: don't crash if we get an FDT we can't parse
When we parse the param from BL2, we try to parse it as a FDT and then, if that fails, as aux params. However, we don't sufficiently distinguish between failure modes in the first step: specifically, if we are given an FDT with good magic that we can't parse for some other reason (e.g. not enough space in our buffer), we still attempt to parse it as aux params even though that's guaranteed to fatal. Instead, we should either fail with a more descriptive message or continue to boot without parsing the FDT.
This patch takes the latter approach, since all we currently get from the FDT is non-critical UART params.
Signed-off-by: Thomas Hebb <tommyhebb@gmail.com> Change-Id: I1e98f1fcda4f78e6b45e86956288bafe58b113e4
show more ...
|
| #
a7ad4919 |
| 09-Jun-2020 |
Madhukar Pappireddy <madhukar.pappireddy@arm.com> |
Merge "rockchip: increase FDT buffer size" into integration
|
| #
8109f738 |
| 08-Jun-2020 |
Hugh Cole-Baker <sigmaris@gmail.com> |
rockchip: increase FDT buffer size
The size of buffer currently used to store the FDT passed from U-Boot as a platform parameter is not large enough to store some RK3399 device trees. The largest RK
rockchip: increase FDT buffer size
The size of buffer currently used to store the FDT passed from U-Boot as a platform parameter is not large enough to store some RK3399 device trees. The largest RK3399 device tree currently in U-Boot (for the Pinebook Pro) is about 70KB in size when passed to TF-A, so increase the buffer size to 128K which gives some headroom for possibly larger FDTs in future.
Signed-off-by: Hugh Cole-Baker <sigmaris@gmail.com> Change-Id: I414caf20683cd47c02ee470dfa988544f3809919
show more ...
|
| #
45d46115 |
| 03-Dec-2019 |
Manish Pandey <manish.pandey2@arm.com> |
Merge "plat/rockchip: initialize reset and poweroff GPIOs with known invalid value" into integration
|
| #
d52331d0 |
| 15-Nov-2019 |
Vasily Khoruzhick <anarsoul@gmail.com> |
plat/rockchip: initialize reset and poweroff GPIOs with known invalid value
And return NULL if we didn't get them in bl aux params otherwise reset and poweroff will be broken on platforms that do no
plat/rockchip: initialize reset and poweroff GPIOs with known invalid value
And return NULL if we didn't get them in bl aux params otherwise reset and poweroff will be broken on platforms that do not have reset and poweroff GPIOs.
Fixes: c1185ffde17c ("plat/rockchip: Switch to use new common BL aux parameter library") Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com> Change-Id: Ic6cf6383d8f05d745e2c5d5e1b1df38514ea8429
show more ...
|
| #
99becbe3 |
| 15-Aug-2019 |
Paul Beesley <paul.beesley@arm.com> |
Merge changes from topic "rockchip-uart-fixes" into integration
* changes: rockchip: rk3399: store actual debug uart information on suspend rockchip: move dt-coreboot uart distinction into param
Merge changes from topic "rockchip-uart-fixes" into integration
* changes: rockchip: rk3399: store actual debug uart information on suspend rockchip: move dt-coreboot uart distinction into param handling code rockchip: make uart baudrate configurable rockchip: px30: add uart5 as option for serial output
show more ...
|
| #
dd4a0d16 |
| 05-Aug-2019 |
Heiko Stuebner <heiko@sntech.de> |
rockchip: move dt-coreboot uart distinction into param handling code
Rockchip platforms can be booted from either u-boot or coreboot.
So far the Coreboot-console was initizalized from a coreboot da
rockchip: move dt-coreboot uart distinction into param handling code
Rockchip platforms can be booted from either u-boot or coreboot.
So far the Coreboot-console was initizalized from a coreboot data struct in the early_param2 callbacks and dt-based consoles with data from the rockchip_get_uart_* functions.
But later code may also need this console information for example for special suspend handling. To make this easy follow a suggestion from Julius Werner and move the coreboot<->dt distinction into the rockchip_get_uart_* functions, thus making correct data about the used uart available to all Rockchip platform code at all times.
This includes a new rockchip_get_uart_clock as well, because while the dt-platforms right now always just default the rate defined in a constant Coreboot provides its own field for the clock rate and we don't want to loose that information for the console init. Similarly the rk_uart_* variables should move into the non-Coreboot code, to prevent them from being marked as unused, which also requires the rk_get_uart_* functions to move below the actual dt-parsing.
Signed-off-by: Heiko Stuebner <heiko@sntech.de> Change-Id: I278d595d2aa6c6864187fc8979a9fbff9814feac
show more ...
|
| #
30970e0f |
| 05-Aug-2019 |
Heiko Stuebner <heiko@sntech.de> |
rockchip: make uart baudrate configurable
A previous patch already allowed to configure the uart output from the devicetree, but on Rockchip platforms we also have the issue of different vendors usi
rockchip: make uart baudrate configurable
A previous patch already allowed to configure the uart output from the devicetree, but on Rockchip platforms we also have the issue of different vendors using different baudrates for their uarts.
For example, rk3399 has a default baudrate of 115200 which is true for ChromeOS-devices and boards from Theobroma-Systems, while all the boards using the vendor boot chain actually use a baudrate of 1500000.
Similarly the newly added px30 has a default of said 1500000 but some boards may want to use the more widely used 115200.
The devicetree stdout-path node already contains the desired baudrate, so add simple code to parse it from there and override the default, which stays unchanged.
Signed-off-by: Heiko Stuebner <heiko@sntech.de> Change-Id: I7412139c3df3073a1996eb508ec08642ec6af90d
show more ...
|
| #
5f441a7b |
| 05-Aug-2019 |
Heiko Stuebner <heiko@sntech.de> |
rockchip: px30: add uart5 as option for serial output
The px30 mini-evb can use either uart2 (muxed with the sd-card pins) or uart5 via its pin header for serial output. Uart5 is especially useful w
rockchip: px30: add uart5 as option for serial output
The px30 mini-evb can use either uart2 (muxed with the sd-card pins) or uart5 via its pin header for serial output. Uart5 is especially useful when needing to boot from the sd-card, where uart2 obviously is not useable.
So add the uart5 constants and it as uart option for the serial-param handler.
Signed-off-by: Heiko Stuebner <heiko@sntech.de> Change-Id: Ib88df7a55d761ee104d312c9953a13de3beba1c4
show more ...
|
| #
d38613df |
| 25-Jul-2019 |
Soby Mathew <soby.mathew@arm.com> |
Merge changes I0d17ba6c,I540741d2,I9e6475ad,Ifd769320,I12c04a85, ... into integration
* changes: plat/mediatek/mt81*: Use new bl31_params_parse() helper plat/rockchip: Use new bl31_params_parse_
Merge changes I0d17ba6c,I540741d2,I9e6475ad,Ifd769320,I12c04a85, ... into integration
* changes: plat/mediatek/mt81*: Use new bl31_params_parse() helper plat/rockchip: Use new bl31_params_parse_helper() Add helper to parse BL31 parameters (both versions) Factor out cross-BL API into export headers suitable for 3rd party code Use explicit-width data types in AAPCS parameter structs plat/rockchip: Switch to use new common BL aux parameter library Introduce lightweight BL platform parameter library
show more ...
|
| #
c1185ffd |
| 25-May-2019 |
Julius Werner <jwerner@chromium.org> |
plat/rockchip: Switch to use new common BL aux parameter library
This patch changes all Rockchip platforms to use the new common BL aux parameter helpers. Since the parameter space is now cleanly sp
plat/rockchip: Switch to use new common BL aux parameter library
This patch changes all Rockchip platforms to use the new common BL aux parameter helpers. Since the parameter space is now cleanly split in generic and vendor-specific parameters and the COREBOOT_TABLE parameter is now generic, the parameter type number for that parameter has to change. Since it only affects coreboot which always builds TF as a submodule and includes its headers directly to get these constants, this should not cause any issues. In general, after this point, we should avoid changing already assigned parameter type numbers whenever possible.
Change-Id: Ic99ddd1e91ff5e5fe212fa30c793a0b8394c9dad Signed-off-by: Julius Werner <jwerner@chromium.org>
show more ...
|
| #
b3c8ac13 |
| 02-May-2019 |
Antonio Niño Díaz <antonio.ninodiaz@arm.com> |
Merge changes from topic "rk3399q7" into integration
* changes: rockchip: Allow console device to be set by DTB. rockchip: Add params_setup to RK3328. rockchip: Streamline and complete UARTn_B
Merge changes from topic "rk3399q7" into integration
* changes: rockchip: Allow console device to be set by DTB. rockchip: Add params_setup to RK3328. rockchip: Streamline and complete UARTn_BASE macros.
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 ...
|
| #
19b4f689 |
| 29-Apr-2019 |
Soby Mathew <soby.mathew@arm.com> |
Merge "rockchip: only include libfdt in non-coreboot cases" into integration
|
| #
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 ...
|
| #
73050e69 |
| 15-Mar-2019 |
Dimitris Papastamos <dimitris.papastamos@arm.com> |
Merge pull request #1866 from mmind/rockchip-fdt-param
rockchip: add an fdt parsing stub for platform param
|
| #
7029e806 |
| 07-Mar-2019 |
Heiko Stuebner <heiko@sntech.de> |
rockchip: add an fdt parsing stub for platform param
The Rockchip ATF platform can be entered from both Coreboot and U-Boot. While Coreboot does submit the list of linked parameter structs as platfo
rockchip: add an fdt parsing stub for platform param
The Rockchip ATF platform can be entered from both Coreboot and U-Boot. While Coreboot does submit the list of linked parameter structs as platform param, upstream u-boot actually always provides a pointer to a devicetree as parameter. This results in current ATF not running at all when started from U-Boot.
To fix this, add a stub that checks if the parameter is a fdt so we can at least boot and not get stuck. Later on we can extend this with actual parsing of information from the devicetree.
Signed-off-by: Heiko Stuebner <heiko@sntech.de> Cc: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
show more ...
|
| #
9a207532 |
| 04-Jan-2019 |
Antonio Niño Díaz <antonio.ninodiaz@arm.com> |
Merge pull request #1726 from antonio-nino-diaz-arm/an/includes
Sanitise includes across codebase
|
| #
09d40e0e |
| 14-Dec-2018 |
Antonio Nino Diaz <antonio.ninodiaz@arm.com> |
Sanitise includes across codebase
Enforce full include path for includes. Deprecate old paths.
The following folders inside include/lib have been left unchanged:
- include/lib/cpus/${ARCH} - inclu
Sanitise includes across codebase
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 <antonio.ninodiaz@arm.com>
show more ...
|
| #
3ccfcd6e |
| 02-Oct-2018 |
Soby Mathew <soby.mathew@arm.com> |
Merge pull request #1587 from antonio-nino-diaz-arm/an/deprecated
Remove deprecated interfaces for all platforms
|