[PATCH v5 2/2] arm64: dts: rockchip: add support for Radxa ROCK Pi E v3.0

Dragan Simic dsimic at manjaro.org
Sat Aug 17 13:12:31 PDT 2024


On 2024-08-17 22:04, FUKAUMI Naoki wrote:
> On 8/18/24 04:51, Dragan Simic wrote:
>> On 2024-08-17 21:28, Dragan Simic wrote:
>>> On 2024-08-17 00:20, FUKAUMI Naoki wrote:
>>>> On 8/17/24 07:11, Heiko Stübner wrote:
>>>>> Am Freitag, 16. August 2024, 23:34:29 CEST schrieb FUKAUMI Naoki:
>>>>>> Radxa ROCK Pi E v3.0 is a compact networking SBC[1] using the 
>>>>>> Rockchip
>>>>>> RK3328 chip that ships in a number of RAM/eMMC/WiFi/BT 
>>>>>> configurations:
>>>>>> 
>>>>>> - Rockchip RK3328 SoC
>>>>>> - Quad A53 CPU
>>>>>> - 512MB/1GB/2GB DDR4 RAM
>>>> (snip)
>>>>> can you please describe what is different in that v3 board?
>>>>> Describing what is different to require a separate board should've 
>>>>> been
>>>>> part of the commit message.
>>>>> 
>>>>> Because from those changes, the bottom line currently seems to be
>>>>> the same board with swapped mmc aliases?
>>>> 
>>>> it's new board which uses DDR4 RAM (instead of DDR3 RAM on Pi E).
>>>> different bootloader (U-Boot) is required.
>>>> 
>>>> adding v3 dts seems not to be so important for Linux, but it's very
>>>> important for U-Boot and OpenWrt(it includes bootloader for
>>>> distributed binary).
>>> 
>>> Aren't there different methods that allow such board variants to be
>>> supported in U-Boot, with no need for a separate DT in the kernel?
>>> IIRC, there are already more than a few examples of such board 
>>> variants,
>>> which require different DRAM initialization, which is covered in 
>>> U-Boot
>>> by providing different builds that use the same DT.
>> 
>> As an example, please have a look at the following files in U-Boot:
>> 
>> - arch/arm/dts/rk3399-nanopi-m4-u-boot.dtsi
>> - arch/arm/dts/rk3399-nanopi-m4-2gb-u-boot.dtsi
>> - configs/nanopi-m4-rk3399_defconfig
>> - configs/nanopi-m4-2gb-rk3399_defconfig
>> 
>> Basically, there's no need for separate DTs in the kernel, just to 
>> support
>> board variants with different DRAM types in U-Boot.
> 
> OpenWrt firmware upgrading tool (sysupgrade) refers "compatible"
> string to validate new firmware file is surely "for this board".
> 
> currently both Pi E dts have "radxa,rockpi-e", it makes flashing wrong
> firmware (include bootloaer, U-Boot) possible.

Could you, please, explain what's the actual issue with OpenWrt?  I did
read some GitHub issue that described it, IIRC, but I was unable to 
fully
understand what's the underlying issue.

> Radxa ROCK Pi E v1.x(DDR3) and ROCK Pi E v3(DDR4) are different
> incompatible boards, it must have different "compatible" string.

Well, the above-mentioned Nano Pi M4 boards share the same DT and the 
same
"compatible" value, because for all consumers of the DT, except for 
U-Boot
that can already handle the differences, they are the same boards.



More information about the Linux-rockchip mailing list