[0/5] rk3399: make u-boot-rockchip-with-spl.bin
mbox series

Message ID 20190426133430.17802-1-jagan@amarulasolutions.com
Headers show
Series
  • rk3399: make u-boot-rockchip-with-spl.bin
Related show

Message

Jagan Teki April 26, 2019, 1:34 p.m. UTC
This series will create single bootable image 'u-boot-rockchip-with-spl.bin'
for rk3399 platform with single make command instead of building u-boot 
separately for u-boot.itb and burn them separately for SPL and U-Boot proper.

This series has dependecy with[1]

travis-ci issue:
- need to include 'python-pyelftools' package, tried but can't succeed
- right now build failed if BL31 is not exported, but this would manage to
create dummy arm64 elf but any help on this would appreciate.

[1] https://patchwork.ozlabs.org/cover/1091008/

Any inputs?
Jagan.

Jagan Teki (5):
  arm64: rockchip: dts: rk3399: Create -u-boot.dtsi files
  rockchip: rk3399: Get bl31.elf via BL31 env
  Kconfig: Add u-boot.itb BUILD_TARGET for Rockchip
  Makefile.spl: Create u-boot-spl-rockchip.bin for rk3399
  rockchip: rk3399: Create single image using BINMAN

 Kconfig                                 |  2 +-
 Makefile                                | 13 +++++++++++++
 arch/arm/dts/rk3399-evb-u-boot.dtsi     |  7 +++++++
 arch/arm/dts/rk3399-evb.dts             |  2 --
 arch/arm/dts/rk3399-ficus-u-boot.dtsi   |  7 +++++++
 arch/arm/dts/rk3399-ficus.dts           |  1 -
 arch/arm/dts/rk3399-firefly-u-boot.dtsi |  7 +++++++
 arch/arm/dts/rk3399-firefly.dts         |  2 --
 arch/arm/dts/rk3399-gru-bob-u-boot.dtsi |  7 +++++++
 arch/arm/dts/rk3399-gru-bob.dts         |  1 -
 arch/arm/dts/rk3399-gru.dtsi            |  1 -
 arch/arm/dts/rk3399-puma-ddr1600.dts    |  2 +-
 arch/arm/dts/rk3399-puma.dtsi           |  3 ---
 arch/arm/dts/rk3399-rock960-u-boot.dtsi |  7 +++++++
 arch/arm/dts/rk3399-rock960.dts         |  1 -
 arch/arm/dts/rk3399-u-boot.dtsi         | 21 +++++++++++++++++++++
 arch/arm/mach-rockchip/Kconfig          |  9 +++++++++
 arch/arm/mach-rockchip/make_fit_atf.py  |  5 ++++-
 doc/README.rockchip                     | 15 ++++-----------
 include/configs/rk3399_common.h         |  2 ++
 scripts/Makefile.spl                    | 21 +++++++++++++++++++++
 21 files changed, 111 insertions(+), 25 deletions(-)
 create mode 100644 arch/arm/dts/rk3399-evb-u-boot.dtsi
 create mode 100644 arch/arm/dts/rk3399-ficus-u-boot.dtsi
 create mode 100644 arch/arm/dts/rk3399-firefly-u-boot.dtsi
 create mode 100644 arch/arm/dts/rk3399-gru-bob-u-boot.dtsi
 create mode 100644 arch/arm/dts/rk3399-rock960-u-boot.dtsi

Comments

Jagan Teki April 26, 2019, 5:52 p.m. UTC | #1
Hi Tom and Simon,

On Fri, Apr 26, 2019 at 7:04 PM Jagan Teki <jagan@amarulasolutions.com> wrote:
>
> This series will create single bootable image 'u-boot-rockchip-with-spl.bin'
> for rk3399 platform with single make command instead of building u-boot
> separately for u-boot.itb and burn them separately for SPL and U-Boot proper.
>
> This series has dependecy with[1]
>
> travis-ci issue:
> - need to include 'python-pyelftools' package, tried but can't succeed
> - right now build failed if BL31 is not exported, but this would manage to
> create dummy arm64 elf but any help on this would appreciate.

Any inputs on this?
Paul Kocialkowski April 26, 2019, 5:55 p.m. UTC | #2
Le vendredi 26 avril 2019 à 23:22 +0530, Jagan Teki a écrit :
> Hi Tom and Simon,
> 
> On Fri, Apr 26, 2019 at 7:04 PM Jagan Teki <jagan@amarulasolutions.com> wrote:
> > This series will create single bootable image 'u-boot-rockchip-with-spl.bin'
> > for rk3399 platform with single make command instead of building u-boot
> > separately for u-boot.itb and burn them separately for SPL and U-Boot proper.
> > 
> > This series has dependecy with[1]
> > 
> > travis-ci issue:
> > - need to include 'python-pyelftools' package, tried but can't succeed
> > - right now build failed if BL31 is not exported, but this would manage to
> > create dummy arm64 elf but any help on this would appreciate.
> 
> Any inputs on this?

I think we have the same issue regarding BL31 for ARM64 sunxi boards
don't we?

It would be great to have a solution to this, and even better if it
could scale to most ARM64 platforms too!

Cheers,

Paul
Tom Rini April 26, 2019, 5:59 p.m. UTC | #3
On Fri, Apr 26, 2019 at 07:55:40PM +0200, Paul Kocialkowski wrote:
> Le vendredi 26 avril 2019 à 23:22 +0530, Jagan Teki a écrit :
> > Hi Tom and Simon,
> > 
> > On Fri, Apr 26, 2019 at 7:04 PM Jagan Teki <jagan@amarulasolutions.com> wrote:
> > > This series will create single bootable image 'u-boot-rockchip-with-spl.bin'
> > > for rk3399 platform with single make command instead of building u-boot
> > > separately for u-boot.itb and burn them separately for SPL and U-Boot proper.
> > > 
> > > This series has dependecy with[1]
> > > 
> > > travis-ci issue:
> > > - need to include 'python-pyelftools' package, tried but can't succeed
> > > - right now build failed if BL31 is not exported, but this would manage to
> > > create dummy arm64 elf but any help on this would appreciate.
> > 
> > Any inputs on this?
> 
> I think we have the same issue regarding BL31 for ARM64 sunxi boards
> don't we?
> 
> It would be great to have a solution to this, and even better if it
> could scale to most ARM64 platforms too!

As I said in another thread, yes, we really should look at how to make
binman take care of this as every arm64 platform has the same problem
and similar but not quite the same solution.
Jagan Teki April 26, 2019, 6:03 p.m. UTC | #4
On Fri, Apr 26, 2019 at 11:25 PM Paul Kocialkowski
<paul.kocialkowski@bootlin.com> wrote:
>
> Le vendredi 26 avril 2019 à 23:22 +0530, Jagan Teki a écrit :
> > Hi Tom and Simon,
> >
> > On Fri, Apr 26, 2019 at 7:04 PM Jagan Teki <jagan@amarulasolutions.com> wrote:
> > > This series will create single bootable image 'u-boot-rockchip-with-spl.bin'
> > > for rk3399 platform with single make command instead of building u-boot
> > > separately for u-boot.itb and burn them separately for SPL and U-Boot proper.
> > >
> > > This series has dependecy with[1]
> > >
> > > travis-ci issue:
> > > - need to include 'python-pyelftools' package, tried but can't succeed
> > > - right now build failed if BL31 is not exported, but this would manage to
> > > create dummy arm64 elf but any help on this would appreciate.
> >
> > Any inputs on this?
>
> I think we have the same issue regarding BL31 for ARM64 sunxi boards
> don't we?
>
> It would be great to have a solution to this, and even better if it
> could scale to most ARM64 platforms too!

I thought it would be specific with tools here, I have created some
dummy bl31.elf if BL31 is not set but the
arch/arm/mach-rockchip/make_fit_atf.py can't make the build. on the
other hand I have compiled main(){} and created bl31.elf it is
succeeding.

But for sunxi the build is going as normal by setting /dev/null if BL31 unset.

[ -z "$BL31" ] && BL31="bl31.bin"

if [ ! -f $BL31 ]; then
        echo "WARNING: BL31 file $BL31 NOT found, resulting binary is
non-functional" >&2
        echo "Please read the section on ARM Trusted Firmware (ATF) in
board/sunxi/README.sunxi64" >&2
        BL31=/dev/null
        echo $BL31
fi