mbox series

[00/10] rockchip: px30: migrate to common bss and stack addresses + UART fixes for evb-px30

Message ID 20240521-px30-2024-07-rc-v1-0-62109c84d44f@cherry.de
Headers show
Series rockchip: px30: migrate to common bss and stack addresses + UART fixes for evb-px30 | expand

Message

Quentin Schulz May 21, 2024, 5:39 p.m. UTC
PX30 Ringneck ran out of memory in the allocation pool of U-Boot proper
pre-reloc. Something needed to be done. Jonas did migrate a few SoCs
already to this common bss+stack addresses so it made sense to follow
the same route for one additional SoC: PX30.

While at it, also fix a few issues related to UART on the PX30 Mini EVB
I could test.

Boot (to U-Boot CLI) tested on PX30 Ringneck and PX30 Mini-EVB.

Thanks to Jonas for hinting where to look at.

Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
---
Quentin Schulz (10):
      rockchip: px30: default TPL_SYS_MALLOC_F_LEN to 0x600 on PX30 Kconfig level
      rockchip: Use common bss and stack addresses on PX30
      rockchip: ringneck_px30: Use common bss and stack addresses
      rockchip: evb-px30: Use common bss and stack addresses
      rockchip: firefly-px30: Use common bss and stack addresses
      rockchip: odroid-go2: Use common bss and stack addresses
      rockchip: px30-core-*: Use common bss and stack addresses
      rockchip: px30: make UART pinmux accessible to TPL/SPL DTB
      rockchip: evb-px30: do not remove pinctrl nodes from SPL DTB
      rockchip: evb-px30: make UART5 the debug UART

 arch/arm/dts/px30-u-boot.dtsi                 | 16 ++++++++++++++++
 arch/arm/mach-rockchip/px30/Kconfig           |  8 +++++++-
 configs/evb-px30_defconfig                    | 23 +++++------------------
 configs/firefly-px30_defconfig                | 19 +++----------------
 configs/odroid-go2_defconfig                  | 19 +++----------------
 configs/px30-core-ctouch2-of10-px30_defconfig | 19 +++----------------
 configs/px30-core-ctouch2-px30_defconfig      | 19 +++----------------
 configs/px30-core-edimm2.2-px30_defconfig     | 19 +++----------------
 configs/ringneck-px30_defconfig               | 19 +++----------------
 9 files changed, 46 insertions(+), 115 deletions(-)
---
base-commit: a7f0154c412859323396111dd0c09dbafbc153cb
change-id: 20240521-px30-2024-07-rc-7136f6241d29

Best regards,

Comments

Tom Rini May 21, 2024, 6:04 p.m. UTC | #1
On Tue, May 21, 2024 at 07:39:53PM +0200, Quentin Schulz wrote:
> PX30 Ringneck ran out of memory in the allocation pool of U-Boot proper
> pre-reloc. Something needed to be done. Jonas did migrate a few SoCs
> already to this common bss+stack addresses so it made sense to follow
> the same route for one additional SoC: PX30.
> 
> While at it, also fix a few issues related to UART on the PX30 Mini EVB
> I could test.
> 
> Boot (to U-Boot CLI) tested on PX30 Ringneck and PX30 Mini-EVB.
> 
> Thanks to Jonas for hinting where to look at.
> 
> Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
> ---
> Quentin Schulz (10):
>       rockchip: px30: default TPL_SYS_MALLOC_F_LEN to 0x600 on PX30 Kconfig level
>       rockchip: Use common bss and stack addresses on PX30
>       rockchip: ringneck_px30: Use common bss and stack addresses
>       rockchip: evb-px30: Use common bss and stack addresses
>       rockchip: firefly-px30: Use common bss and stack addresses
>       rockchip: odroid-go2: Use common bss and stack addresses
>       rockchip: px30-core-*: Use common bss and stack addresses
>       rockchip: px30: make UART pinmux accessible to TPL/SPL DTB
>       rockchip: evb-px30: do not remove pinctrl nodes from SPL DTB
>       rockchip: evb-px30: make UART5 the debug UART
> 
>  arch/arm/dts/px30-u-boot.dtsi                 | 16 ++++++++++++++++
>  arch/arm/mach-rockchip/px30/Kconfig           |  8 +++++++-
>  configs/evb-px30_defconfig                    | 23 +++++------------------
>  configs/firefly-px30_defconfig                | 19 +++----------------
>  configs/odroid-go2_defconfig                  | 19 +++----------------
>  configs/px30-core-ctouch2-of10-px30_defconfig | 19 +++----------------
>  configs/px30-core-ctouch2-px30_defconfig      | 19 +++----------------
>  configs/px30-core-edimm2.2-px30_defconfig     | 19 +++----------------
>  configs/ringneck-px30_defconfig               | 19 +++----------------
>  9 files changed, 46 insertions(+), 115 deletions(-)
> ---
> base-commit: a7f0154c412859323396111dd0c09dbafbc153cb
> change-id: 20240521-px30-2024-07-rc-7136f6241d29

As I assume we want to fix the platforms for v2024.07, is this the level
of config changes everyone is comfortable with on the platforms? Or
should we just go with the minimum for release and the rest to -next?
Heiko Stuebner May 21, 2024, 7:16 p.m. UTC | #2
Am Dienstag, 21. Mai 2024, 19:39:53 CEST schrieb Quentin Schulz:
> PX30 Ringneck ran out of memory in the allocation pool of U-Boot proper
> pre-reloc. Something needed to be done. Jonas did migrate a few SoCs
> already to this common bss+stack addresses so it made sense to follow
> the same route for one additional SoC: PX30.
> 
> While at it, also fix a few issues related to UART on the PX30 Mini EVB
> I could test.
> 
> Boot (to U-Boot CLI) tested on PX30 Ringneck and PX30 Mini-EVB.
> 
> Thanks to Jonas for hinting where to look at.

u-boot 2024.07-rc3 with this series on an Odroid Go2

Tested-by: Heiko Stuebner <heiko@sntech.de>

Device boots and boots into a Debian image sucessfully.


Heiko
Quentin Schulz May 22, 2024, 8:39 a.m. UTC | #3
Hi Tom,

On 5/21/24 8:04 PM, Tom Rini wrote:
> On Tue, May 21, 2024 at 07:39:53PM +0200, Quentin Schulz wrote:
>> PX30 Ringneck ran out of memory in the allocation pool of U-Boot proper
>> pre-reloc. Something needed to be done. Jonas did migrate a few SoCs
>> already to this common bss+stack addresses so it made sense to follow
>> the same route for one additional SoC: PX30.
>>
>> While at it, also fix a few issues related to UART on the PX30 Mini EVB
>> I could test.
>>
>> Boot (to U-Boot CLI) tested on PX30 Ringneck and PX30 Mini-EVB.
>>
>> Thanks to Jonas for hinting where to look at.
>>
>> Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
>> ---
>> Quentin Schulz (10):
>>        rockchip: px30: default TPL_SYS_MALLOC_F_LEN to 0x600 on PX30 Kconfig level
>>        rockchip: Use common bss and stack addresses on PX30
>>        rockchip: ringneck_px30: Use common bss and stack addresses
>>        rockchip: evb-px30: Use common bss and stack addresses
>>        rockchip: firefly-px30: Use common bss and stack addresses
>>        rockchip: odroid-go2: Use common bss and stack addresses
>>        rockchip: px30-core-*: Use common bss and stack addresses
>>        rockchip: px30: make UART pinmux accessible to TPL/SPL DTB
>>        rockchip: evb-px30: do not remove pinctrl nodes from SPL DTB
>>        rockchip: evb-px30: make UART5 the debug UART
>>
>>   arch/arm/dts/px30-u-boot.dtsi                 | 16 ++++++++++++++++
>>   arch/arm/mach-rockchip/px30/Kconfig           |  8 +++++++-
>>   configs/evb-px30_defconfig                    | 23 +++++------------------
>>   configs/firefly-px30_defconfig                | 19 +++----------------
>>   configs/odroid-go2_defconfig                  | 19 +++----------------
>>   configs/px30-core-ctouch2-of10-px30_defconfig | 19 +++----------------
>>   configs/px30-core-ctouch2-px30_defconfig      | 19 +++----------------
>>   configs/px30-core-edimm2.2-px30_defconfig     | 19 +++----------------
>>   configs/ringneck-px30_defconfig               | 19 +++----------------
>>   9 files changed, 46 insertions(+), 115 deletions(-)
>> ---
>> base-commit: a7f0154c412859323396111dd0c09dbafbc153cb
>> change-id: 20240521-px30-2024-07-rc-7136f6241d29
> 
> As I assume we want to fix the platforms for v2024.07, is this the level
> of config changes everyone is comfortable with on the platforms? Or
> should we just go with the minimum for release and the rest to -next?
> 

I can tell you that Ringneck doesn't work anymore on v2024.07-rc, but 
the PX30 Mini EVB was still reaching U-Boot CLI without the changes. I 
don't know about the other boards.

So I could split this into two series, one for master, one for next.

I could suggest: patch 1 to 3 in master, the rest in next. Patch 1 is 
just moving things around. Patch 2 is doing nothing if nobody uses 
ROCKCHIP_COMMON_STACK_ADDR and SPL_SHARES_INIT_SP_ADDR (which is the 
case for px30 boards). Patch 3 is for fixing Ringneck, which I know is 
broken.

Heiko having access to the Odroid Go2, maybe he could test without my 
patches and see if it reaches the CLI to know if we should pull it in 
for master as well.

Does this make sense?

Thanks,
Quentin
Heiko Stuebner May 22, 2024, 12:14 p.m. UTC | #4
Am Mittwoch, 22. Mai 2024, 10:39:25 CEST schrieb Quentin Schulz:
> Hi Tom,
> 
> On 5/21/24 8:04 PM, Tom Rini wrote:
> > On Tue, May 21, 2024 at 07:39:53PM +0200, Quentin Schulz wrote:
> >> PX30 Ringneck ran out of memory in the allocation pool of U-Boot proper
> >> pre-reloc. Something needed to be done. Jonas did migrate a few SoCs
> >> already to this common bss+stack addresses so it made sense to follow
> >> the same route for one additional SoC: PX30.
> >>
> >> While at it, also fix a few issues related to UART on the PX30 Mini EVB
> >> I could test.
> >>
> >> Boot (to U-Boot CLI) tested on PX30 Ringneck and PX30 Mini-EVB.
> >>
> >> Thanks to Jonas for hinting where to look at.
> >>
> >> Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
> >> ---
> >> Quentin Schulz (10):
> >>        rockchip: px30: default TPL_SYS_MALLOC_F_LEN to 0x600 on PX30 Kconfig level
> >>        rockchip: Use common bss and stack addresses on PX30
> >>        rockchip: ringneck_px30: Use common bss and stack addresses
> >>        rockchip: evb-px30: Use common bss and stack addresses
> >>        rockchip: firefly-px30: Use common bss and stack addresses
> >>        rockchip: odroid-go2: Use common bss and stack addresses
> >>        rockchip: px30-core-*: Use common bss and stack addresses
> >>        rockchip: px30: make UART pinmux accessible to TPL/SPL DTB
> >>        rockchip: evb-px30: do not remove pinctrl nodes from SPL DTB
> >>        rockchip: evb-px30: make UART5 the debug UART
> >>
> >>   arch/arm/dts/px30-u-boot.dtsi                 | 16 ++++++++++++++++
> >>   arch/arm/mach-rockchip/px30/Kconfig           |  8 +++++++-
> >>   configs/evb-px30_defconfig                    | 23 +++++------------------
> >>   configs/firefly-px30_defconfig                | 19 +++----------------
> >>   configs/odroid-go2_defconfig                  | 19 +++----------------
> >>   configs/px30-core-ctouch2-of10-px30_defconfig | 19 +++----------------
> >>   configs/px30-core-ctouch2-px30_defconfig      | 19 +++----------------
> >>   configs/px30-core-edimm2.2-px30_defconfig     | 19 +++----------------
> >>   configs/ringneck-px30_defconfig               | 19 +++----------------
> >>   9 files changed, 46 insertions(+), 115 deletions(-)
> >> ---
> >> base-commit: a7f0154c412859323396111dd0c09dbafbc153cb
> >> change-id: 20240521-px30-2024-07-rc-7136f6241d29
> > 
> > As I assume we want to fix the platforms for v2024.07, is this the level
> > of config changes everyone is comfortable with on the platforms? Or
> > should we just go with the minimum for release and the rest to -next?
> > 
> 
> I can tell you that Ringneck doesn't work anymore on v2024.07-rc, but 
> the PX30 Mini EVB was still reaching U-Boot CLI without the changes. I 
> don't know about the other boards.
> 
> So I could split this into two series, one for master, one for next.
> 
> I could suggest: patch 1 to 3 in master, the rest in next. Patch 1 is 
> just moving things around. Patch 2 is doing nothing if nobody uses 
> ROCKCHIP_COMMON_STACK_ADDR and SPL_SHARES_INIT_SP_ADDR (which is the 
> case for px30 boards). Patch 3 is for fixing Ringneck, which I know is 
> broken.
> 
> Heiko having access to the Odroid Go2, maybe he could test without my 
> patches and see if it reaches the CLI to know if we should pull it in 
> for master as well.

I did that yesterday evening. The Odroid Go2 also reached u-boot CLI
and also booted without these changes. So I guess it's small enough
or whatever.

So at least the Go2 is fine on 2024.07-rc3 either way with or without
this series.

Heiko
Tom Rini May 22, 2024, 2:15 p.m. UTC | #5
On Wed, May 22, 2024 at 02:14:47PM +0200, Heiko Stübner wrote:
> Am Mittwoch, 22. Mai 2024, 10:39:25 CEST schrieb Quentin Schulz:
> > Hi Tom,
> > 
> > On 5/21/24 8:04 PM, Tom Rini wrote:
> > > On Tue, May 21, 2024 at 07:39:53PM +0200, Quentin Schulz wrote:
> > >> PX30 Ringneck ran out of memory in the allocation pool of U-Boot proper
> > >> pre-reloc. Something needed to be done. Jonas did migrate a few SoCs
> > >> already to this common bss+stack addresses so it made sense to follow
> > >> the same route for one additional SoC: PX30.
> > >>
> > >> While at it, also fix a few issues related to UART on the PX30 Mini EVB
> > >> I could test.
> > >>
> > >> Boot (to U-Boot CLI) tested on PX30 Ringneck and PX30 Mini-EVB.
> > >>
> > >> Thanks to Jonas for hinting where to look at.
> > >>
> > >> Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
> > >> ---
> > >> Quentin Schulz (10):
> > >>        rockchip: px30: default TPL_SYS_MALLOC_F_LEN to 0x600 on PX30 Kconfig level
> > >>        rockchip: Use common bss and stack addresses on PX30
> > >>        rockchip: ringneck_px30: Use common bss and stack addresses
> > >>        rockchip: evb-px30: Use common bss and stack addresses
> > >>        rockchip: firefly-px30: Use common bss and stack addresses
> > >>        rockchip: odroid-go2: Use common bss and stack addresses
> > >>        rockchip: px30-core-*: Use common bss and stack addresses
> > >>        rockchip: px30: make UART pinmux accessible to TPL/SPL DTB
> > >>        rockchip: evb-px30: do not remove pinctrl nodes from SPL DTB
> > >>        rockchip: evb-px30: make UART5 the debug UART
> > >>
> > >>   arch/arm/dts/px30-u-boot.dtsi                 | 16 ++++++++++++++++
> > >>   arch/arm/mach-rockchip/px30/Kconfig           |  8 +++++++-
> > >>   configs/evb-px30_defconfig                    | 23 +++++------------------
> > >>   configs/firefly-px30_defconfig                | 19 +++----------------
> > >>   configs/odroid-go2_defconfig                  | 19 +++----------------
> > >>   configs/px30-core-ctouch2-of10-px30_defconfig | 19 +++----------------
> > >>   configs/px30-core-ctouch2-px30_defconfig      | 19 +++----------------
> > >>   configs/px30-core-edimm2.2-px30_defconfig     | 19 +++----------------
> > >>   configs/ringneck-px30_defconfig               | 19 +++----------------
> > >>   9 files changed, 46 insertions(+), 115 deletions(-)
> > >> ---
> > >> base-commit: a7f0154c412859323396111dd0c09dbafbc153cb
> > >> change-id: 20240521-px30-2024-07-rc-7136f6241d29
> > > 
> > > As I assume we want to fix the platforms for v2024.07, is this the level
> > > of config changes everyone is comfortable with on the platforms? Or
> > > should we just go with the minimum for release and the rest to -next?
> > > 
> > 
> > I can tell you that Ringneck doesn't work anymore on v2024.07-rc, but 
> > the PX30 Mini EVB was still reaching U-Boot CLI without the changes. I 
> > don't know about the other boards.
> > 
> > So I could split this into two series, one for master, one for next.
> > 
> > I could suggest: patch 1 to 3 in master, the rest in next. Patch 1 is 
> > just moving things around. Patch 2 is doing nothing if nobody uses 
> > ROCKCHIP_COMMON_STACK_ADDR and SPL_SHARES_INIT_SP_ADDR (which is the 
> > case for px30 boards). Patch 3 is for fixing Ringneck, which I know is 
> > broken.
> > 
> > Heiko having access to the Odroid Go2, maybe he could test without my 
> > patches and see if it reaches the CLI to know if we should pull it in 
> > for master as well.
> 
> I did that yesterday evening. The Odroid Go2 also reached u-boot CLI
> and also booted without these changes. So I guess it's small enough
> or whatever.
> 
> So at least the Go2 is fine on 2024.07-rc3 either way with or without
> this series.

OK, thanks. I'll grab 1-3 for master shortly then.