
On 3/8/23 21:26, Ralph Siemsen wrote:
This is taken from Linux kernel 5.17, and contains just bare minimum functionality: CPU, UART and system timer.
Why Linux 5.17 and not e.g. 6.2 or 6.1 LTS ?
Additional functionality (from newer kernel versions) will be added later. Note that the Linux side is under active development.
Signed-off-by: Ralph Siemsen ralph.siemsen@linaro.org
The following changes were made, compared with Linux 5.17:
Add node for system controller registers. Declare it as syscon to provide a regmap interface.
In the clock controller node (renesas,r9a06g032-sysctrl), replace regs with regmap.
Add syscon-reset node, making use of the syscon regmap.
Add syscon phandle to ddrctrl. Used for checking h/w version.
Simplify the compatible string for all the UARTS, as per doc/device-tree-bindings/serial/snps-dw-apb-uart.txt
I could not find a way to avoid 1) and 2). Putting "syscon" in the compatible string for the clock controller leads to a catch-22, where the driver fails to initialize, and then boot hangs.
Can you extract all the changes to arch/arm/dts/r9a06g032-u-boot.dtsi and include that u-boot dtsi in your board DT, so the arch/arm/dts/r9a06g032.dtsi can be synchronized with Linux with ease due to no changes in it ?