U-Boot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Jonas Karlman <jonas@kwiboo.se>
To: Jagan Teki <jagan@edgeble.ai>,
	Kever Yang <kever.yang@rock-chips.com>,
	Simon Glass <sjg@chromium.org>,
	Philipp Tomsich <philipp.tomsich@vrull.eu>,
	fatorangecat@189.cn
Cc: u-boot@lists.denx.de
Subject: Re: [RFC PATCH 00/16] arm: Add Rockchip RK3588 support
Date: Wed, 25 Jan 2023 22:47:21 +0000 (UTC)	[thread overview]
Message-ID: <2efd56b6-4dc9-cd77-3792-e60142faa6ae@kwiboo.se> (raw)
In-Reply-To: <20230125222741.303259-1-jagan@edgeble.ai>

Hi Jagan,

On 2023-01-25 23:27, Jagan Teki wrote:
> This series support Rockchip RK3588. All the device tree files are
> synced from linux-next with the proper SHA1 mentioned in the commit
> messages.
> 
> Unfortunately, the BL31 from rkbin is not compatible with U-Boot so
> it is failing to load ATF entry from SPL and hang. 
> 
> Verified below BL31 versions,
>   bl31-v1.15
>   bl31-v1.21
>   bl31-v1.22
>   bl31-v1.23
>   bl31-v1.24
>   bl31-v1.25
>   bl31-v1.26
> 
> Rever-engineered with respect to rockchip u-boot by using the same
> FIT_GENERATOR being used in Mainline, rockchip u-boot is booting but
> mainline showing the same issue.
> 
> Log:
> 
> LPDDR4X, 2112MHz01-00642-g6bdfd31756-dirty (Jan 26 2023 ���3:44:34 +0530)
> channel[0] BW=16 Col=10 Bk=8 CS0 Row=17 CS1 Row=17 CS=2 Die BW=8 Size=4096MB
> channel[1] BW=16 Col=10 Bk=8 CS0 Row=17 CS1 Row=17 CS=2 Die BW=8 Size=4096MB
> channel[2] BW=16 Col=10 Bk=8 CS0 Row=17 CS1 Row=17 CS=2 Die BW=8 Size=4096MB
> channel[3] BW=16 Col=10 Bk=8 CS0 Row=17 CS1 Row=17 CS=2 Die BW=8 Size=4096MB
> change to F1: 528MHz
> change to F2: 1068MHz
> change to F3: 1560MHz
> change to F0: 2112MHz
> out
> 
> U-Boot SPL 2023.01-00642-g6bdfd31756-dirty (Jan 26 2023 - 03:44:34 +0530)
> Trying to boot from MMC1
> bl31_entry: atf_entry start
> << hang >>
> 
> Any information on BL31 for RK3588 please share.

I had a similar strange booing issue with RK3568 and mainline U-Boot,
turned out to be related to all parts of ATF not being properly loaded
into PMU SRAM.

Using my series at [1] I managed to get ATF to be fully loaded into
PMU SRAM. Using CONFIG_SPL_FIT_SIGNATURE=y helped me finding out that
the segment being loaded ended up corrupted.

The use of 512 bytes alignment of the FIT helped mitigate that issue.
Vendor U-Boot use a bounce buffer for all parts that is written into
SRAM (anything loaded outside the gd->ram_base to gd->ram_top range).

You can also find newer bl31 at [2], up to version v1.32.

[1] https://patchwork.ozlabs.org/project/uboot/list/?series=337891
[2] https://gitlab.com/rk3588_linux/rk/rkbin/-/tree/linux-5.10-gen-rkr3.5/bin/rk35

Regards,
Jonas

> 
> Any inputs?
> Jagan.
> 
> Jagan Teki (16):
>   rockchip: mkimage: Add rk3588 support
>   arm: rockchip: Add cru header for rk3588
>   arm: rockchip: Add grf header for rk3588
>   dt-bindings: clk: Add dt-binding header for RK3588
>   clk: rockchip: Add rk3588 clk support
>   clk: rockchip: pll: Add pll_rk3588 type for rk3588
>   ram: rockchip: Add rk3588 ddr driver support
>   dt-bindings: power: Add power-domain header for rk3588
>   dt-bindings: reset: add rk3588 reset definitions
>   arm: rockchip: Add ioc header for rk3588
>   arm64: dts: rockchip: Add base DT for rk3588 SoC
>   arm64: dts: rockchip: rk3588: Add Edgeble Neu6 Model A SoM
>   arm64: dts: rockchip: rk3588: Add Edgeble Neu6 Model A IO
>   arm: rockchip: Add RK3588 arch core support
>   ARM: dts: rockchip: Add rk3588-u-boot.dtsi
>   board: rockchip: Add Edgeble Neural Compute Module 6
> 
>  arch/arm/dts/Makefile                         |    3 +
>  .../dts/rk3588-edgeble-neu6a-io-u-boot.dtsi   |   23 +
>  arch/arm/dts/rk3588-edgeble-neu6a-io.dts      |   27 +
>  arch/arm/dts/rk3588-edgeble-neu6a.dtsi        |   32 +
>  arch/arm/dts/rk3588-pinctrl.dtsi              |  516 +++
>  arch/arm/dts/rk3588-u-boot.dtsi               |  101 +
>  arch/arm/dts/rk3588.dtsi                      |   58 +
>  arch/arm/dts/rk3588s-pinctrl.dtsi             | 3403 +++++++++++++++++
>  arch/arm/dts/rk3588s.dtsi                     | 1703 +++++++++
>  arch/arm/include/asm/arch-rk3588/boot0.h      |   11 +
>  arch/arm/include/asm/arch-rk3588/gpio.h       |   11 +
>  arch/arm/include/asm/arch-rockchip/clock.h    |   24 +
>  .../include/asm/arch-rockchip/cru_rk3588.h    |  451 +++
>  .../include/asm/arch-rockchip/grf_rk3588.h    |   35 +
>  .../include/asm/arch-rockchip/ioc_rk3588.h    |  102 +
>  arch/arm/mach-rockchip/Kconfig                |   20 +
>  arch/arm/mach-rockchip/Makefile               |    1 +
>  arch/arm/mach-rockchip/rk3588/Kconfig         |   30 +
>  arch/arm/mach-rockchip/rk3588/Makefile        |    9 +
>  arch/arm/mach-rockchip/rk3588/clk_rk3588.c    |   33 +
>  arch/arm/mach-rockchip/rk3588/rk3588.c        |  162 +
>  arch/arm/mach-rockchip/rk3588/syscon_rk3588.c |   32 +
>  board/edgeble/neural-compute-module-6/Kconfig |   15 +
>  .../neural-compute-module-6/MAINTAINERS       |    6 +
>  .../edgeble/neural-compute-module-6/Makefile  |    7 +
>  board/edgeble/neural-compute-module-6/neu6.c  |    4 +
>  configs/neu6a-io-rk3588_defconfig             |   68 +
>  doc/board/rockchip/rockchip.rst               |    2 +
>  drivers/clk/rockchip/Makefile                 |    1 +
>  drivers/clk/rockchip/clk_pll.c                |  267 +-
>  drivers/clk/rockchip/clk_rk3588.c             | 2019 ++++++++++
>  drivers/ram/rockchip/Makefile                 |    1 +
>  drivers/ram/rockchip/sdram_rk3588.c           |   56 +
>  include/configs/neural-compute-module-6.h     |   15 +
>  include/configs/rk3588_common.h               |   32 +
>  .../dt-bindings/clock/rockchip,rk3588-cru.h   |  766 ++++
>  include/dt-bindings/power/rk3588-power.h      |   69 +
>  .../dt-bindings/reset/rockchip,rk3588-cru.h   |  754 ++++
>  tools/rkcommon.c                              |    1 +
>  39 files changed, 10867 insertions(+), 3 deletions(-)
>  create mode 100644 arch/arm/dts/rk3588-edgeble-neu6a-io-u-boot.dtsi
>  create mode 100644 arch/arm/dts/rk3588-edgeble-neu6a-io.dts
>  create mode 100644 arch/arm/dts/rk3588-edgeble-neu6a.dtsi
>  create mode 100644 arch/arm/dts/rk3588-pinctrl.dtsi
>  create mode 100644 arch/arm/dts/rk3588-u-boot.dtsi
>  create mode 100644 arch/arm/dts/rk3588.dtsi
>  create mode 100644 arch/arm/dts/rk3588s-pinctrl.dtsi
>  create mode 100644 arch/arm/dts/rk3588s.dtsi
>  create mode 100644 arch/arm/include/asm/arch-rk3588/boot0.h
>  create mode 100644 arch/arm/include/asm/arch-rk3588/gpio.h
>  create mode 100644 arch/arm/include/asm/arch-rockchip/cru_rk3588.h
>  create mode 100644 arch/arm/include/asm/arch-rockchip/grf_rk3588.h
>  create mode 100644 arch/arm/include/asm/arch-rockchip/ioc_rk3588.h
>  create mode 100644 arch/arm/mach-rockchip/rk3588/Kconfig
>  create mode 100644 arch/arm/mach-rockchip/rk3588/Makefile
>  create mode 100644 arch/arm/mach-rockchip/rk3588/clk_rk3588.c
>  create mode 100644 arch/arm/mach-rockchip/rk3588/rk3588.c
>  create mode 100644 arch/arm/mach-rockchip/rk3588/syscon_rk3588.c
>  create mode 100644 board/edgeble/neural-compute-module-6/Kconfig
>  create mode 100644 board/edgeble/neural-compute-module-6/MAINTAINERS
>  create mode 100644 board/edgeble/neural-compute-module-6/Makefile
>  create mode 100644 board/edgeble/neural-compute-module-6/neu6.c
>  create mode 100644 configs/neu6a-io-rk3588_defconfig
>  create mode 100644 drivers/clk/rockchip/clk_rk3588.c
>  create mode 100644 drivers/ram/rockchip/sdram_rk3588.c
>  create mode 100644 include/configs/neural-compute-module-6.h
>  create mode 100644 include/configs/rk3588_common.h
>  create mode 100644 include/dt-bindings/clock/rockchip,rk3588-cru.h
>  create mode 100644 include/dt-bindings/power/rk3588-power.h
>  create mode 100644 include/dt-bindings/reset/rockchip,rk3588-cru.h
> 


  parent reply	other threads:[~2023-01-25 22:47 UTC|newest]

Thread overview: 56+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-01-25 22:27 [RFC PATCH 00/16] arm: Add Rockchip RK3588 support Jagan Teki
2023-01-25 22:27 ` [RFC PATCH 01/16] rockchip: mkimage: Add rk3588 support Jagan Teki
2023-01-25 22:27 ` [RFC PATCH 02/16] arm: rockchip: Add cru header for rk3588 Jagan Teki
2023-01-25 22:27 ` [RFC PATCH 03/16] arm: rockchip: Add grf " Jagan Teki
2023-01-25 22:27 ` [RFC PATCH 04/16] dt-bindings: clk: Add dt-binding header for RK3588 Jagan Teki
2023-01-25 22:27 ` [RFC PATCH 05/16] clk: rockchip: Add rk3588 clk support Jagan Teki
2023-02-02 14:09   ` Eugen Hristev
2023-01-25 22:27 ` [RFC PATCH 06/16] clk: rockchip: pll: Add pll_rk3588 type for rk3588 Jagan Teki
2023-01-25 22:27 ` [RFC PATCH 07/16] ram: rockchip: Add rk3588 ddr driver support Jagan Teki
2023-01-25 22:27 ` [RFC PATCH 08/16] dt-bindings: power: Add power-domain header for rk3588 Jagan Teki
2023-01-25 22:27 ` [RFC PATCH 09/16] dt-bindings: reset: add rk3588 reset definitions Jagan Teki
2023-01-25 22:27 ` [RFC PATCH 10/16] arm: rockchip: Add ioc header for rk3588 Jagan Teki
2023-01-25 22:27 ` [RFC PATCH 11/16] arm64: dts: rockchip: Add base DT for rk3588 SoC Jagan Teki
2023-02-02 14:06   ` Eugen Hristev
2023-01-25 22:27 ` [RFC PATCH 12/16] arm64: dts: rockchip: rk3588: Add Edgeble Neu6 Model A SoM Jagan Teki
2023-01-25 22:27 ` [RFC PATCH 13/16] arm64: dts: rockchip: rk3588: Add Edgeble Neu6 Model A IO Jagan Teki
2023-01-25 22:27 ` [RFC PATCH 14/16] arm: rockchip: Add RK3588 arch core support Jagan Teki
2023-01-25 22:27 ` [RFC PATCH 15/16] ARM: dts: rockchip: Add rk3588-u-boot.dtsi Jagan Teki
2023-01-27 13:33   ` Eugen Hristev
2023-01-27 13:37     ` Jagan Teki
2023-01-27 13:50       ` Eugen Hristev
2023-01-27 14:23         ` Jagan Teki
2023-01-27 15:19   ` Eugen Hristev
2023-01-25 22:27 ` [RFC PATCH 16/16] board: rockchip: Add Edgeble Neural Compute Module 6 Jagan Teki
2023-02-02  8:23   ` Eugen Hristev
2023-02-16  9:03     ` Jagan Teki
2023-01-25 22:47 ` Jonas Karlman [this message]
2023-01-26 16:51   ` [RFC PATCH 00/16] arm: Add Rockchip RK3588 support Jagan Teki
2023-01-26 16:58     ` Jonas Karlman
2023-01-26 17:42       ` Jagan Teki
2023-01-26 18:01         ` Jagan Teki
2023-01-26 18:04         ` Simon Glass
2023-01-26 18:26           ` Jagan Teki
2023-01-26 19:03             ` Jonas Karlman
2023-01-26 19:17               ` Jagan Teki
2023-01-26 22:16                 ` Jonas Karlman
2023-01-26 23:43                   ` Jonas Karlman
2023-01-27 13:21                     ` Jagan Teki
2023-01-29  9:04                       ` Jonas Karlman
2023-03-08  8:57                         ` Eugen Hristev
2023-03-12 22:34                           ` Jonas Karlman
2023-03-13  8:42                             ` Eugen Hristev
2023-03-13 10:00                               ` Jonas Karlman
2023-03-13 14:21                                 ` Eugen Hristev
2023-03-13 14:51                                   ` Eugen Hristev
2023-03-13 15:07                                   ` Mark Kettenis
2023-03-13 15:21                                     ` Eugen Hristev
2023-03-13 15:34                                       ` Mark Kettenis
2023-03-13 15:49                                         ` Eugen Hristev
2023-03-13 19:15                                           ` Jonas Karlman
2023-01-26 19:14             ` Simon Glass
2023-01-26 19:35               ` Jagan Teki
2023-01-29  9:47   ` Kever Yang
2023-01-29  9:58     ` Jonas Karlman
2023-01-30  0:55       ` Kever Yang
2023-01-30  5:19         ` Jagan Teki

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=2efd56b6-4dc9-cd77-3792-e60142faa6ae@kwiboo.se \
    --to=jonas@kwiboo.se \
    --cc=fatorangecat@189.cn \
    --cc=jagan@edgeble.ai \
    --cc=kever.yang@rock-chips.com \
    --cc=philipp.tomsich@vrull.eu \
    --cc=sjg@chromium.org \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox