[RFC][PATCH] board: rockchip: add Radxa ROCK5B Rk3588 board
Eugen Hristev
eugen.hristev at collabora.com
Wed Feb 15 15:55:25 CET 2023
On 2/14/23 13:04, Jonas Karlman wrote:
> Hi Eugen,
>
> On 2023-02-14 11:26, Eugen Hristev wrote:
>> On 2/6/23 14:14, Jonas Karlman wrote:
>>> Hi Eugen,
>>> On 2023-02-06 12:59, Eugen Hristev wrote:
>>>> ROCK 5B is a Rockchip RK3588 based SBC (Single Board Computer) by Radxa.
>>>>
>>>> There are tree variants depending on the DRAM size : 4G, 8G and 16G.
>>>>
>>>> Specification:
>>>>
>>>> Rockchip Rk3588 SoC
>>>> 4x ARM Cortex-A76, 4x ARM Cortex-A55
>>>> 4/8/16GB memory LPDDR4x
>>>> Mali G610MC4 GPU
>>>> MIPI CSI 2 multiple lanes connector
>>>> eMMC module connector
>>>> uSD slot (up to 128GB)
>>>> 2x USB 2.0, 2x USB 3.0
>>>> 2x HDMI output, 1x HDMI input
>>>> Ethernet port
>>>> 40-pin IO header including UART, SPI, I2C and 5V DC power in
>>>> USB PD over USB Type-C
>>>> Size: 85mm x 54mm
>>>>
>>>> Signed-off-by: Eugen Hristev <eugen.hristev at collabora.com>
>>>> ---
>>>>
>>>> Hi,
>>>>
>>>> This patch is based on top of Jagan's series
>>>> https://lists.denx.de/pipermail/u-boot/2023-January/506156.html>>>>
>>>> And fixes from Jonas Karlman which I cherrypicked
>>>> The DT is identical with current linux-next.
>>>>
>>>> One thing which is not working as expected is the DRAM size detection,
>>>> the rock5b has 16 GiB but Uboot only reports 4 GiB.
>>>>
>>>> The DRAM driver used is the one from Jagan's series.
>>>>
>>>> Jagan, maybe you can tell me how is this driver working on your Edgeble board
>>>> and how the detection works there for you ?
>>>
>>> With the SDRAM series at [1] it should hopefylly detect the correct ram size.
>>> I will send a v2 rebased on u-boot master later today, a CONFIG_ to CFG_ change.
>>>
>>> [1] https://patchwork.ozlabs.org/project/uboot/cover/20230116161459.1307591-1-jonas@kwiboo.se/>>>
>>> Regards,
>>> Jonas
>>>
>>
>> Hi Jonas, Jagan,
>>
>> Have you tested the rk3588 with 16 GiB of DRAM ?
>> If the DRAM bank discovered is [0, 4 0000 0000] , U-boot will reserve an
>> area for trust and for optee, and place two areas in kernel's DTB :
>> [20 0000 , f000 0000] and [1 0000 0000 , 4 0000 0000]
>>
>> And this cause the kernel to crash very early.
>>
>> Downstream U-boot appears to get the banks from ATAGs and has three areas:
>>
>> [ 20 0000, f000 0000 ] (size: 0xefe00000)
>> [1 0000 0000 , 3 fc00 0000 ] (size: 0x2fc000000)
>> [3 fc50 0000 , 3 fff0 0000 ] (size: 0x03a00000)
>>
>> So maybe you have any idea why the gap at 3 fc00 0000 until 3 fc50 0000
>> and the gap at 3 fff0 0000 up to 4 0000 0000 ?
>
> I have only tested running u-boot and not linux on my rk3588 8GB board.
>
> The TRM does not mention any address mapping within [1 0000 0000, 9 0000 0000].
> Also try without TEE, the area reserved by vendor u-boot may be something optee will use.
> U-Boot mainline does not reserve a memory area when TEE is used.
>
Hi Jonas,
Yes I noticed the same in the TRM.
In my u-boot.itb there are 4 ATFs :
Firmware: atf-1
FDT: fdt-1
Loadables: u-boot
atf-2
atf-3
It appears that only BL31 is run when starting up the board, and it's
being run before u-boot proper, and after the SPL.
However the DRAM banks and the gap at [3 fc50 0000] comes from an
earlier stage, I assume ddr.bin, as the SPL does not use atags right ?
So it should not be the area reserved by optee, but this area has
another purpose.
Maybe Kever you have any knowledge about this area ?
Thanks,
Eugen
> Regards,
> Jonas
>
>>
>> Thanks,
>>
>> Eugen
>>
>>
>>
>> [snip]
>
More information about the U-Boot
mailing list