Message ID | 20180625103723.24760-5-icenowy@aosc.io |
---|---|
State | Superseded |
Delegated to: | Jagannadha Sutradharudu Teki |
Headers | show |
Series | Allwinner H6 support (w/ SPL) | expand |
Hi, On 25/06/18 11:37, Icenowy Zheng wrote: > H6 has different SRAM A2 address, so the ATF load address is also > different. > > Add judgment code to sunxi 64-bit FIT generation script. It will judge > the SoC by the device tree's name. Mmh, would it be better to check for some config symbol to derive the ATF load address? Like: if grep -q "^CONFIG_MACH_SUN50I_H6=y" .config; then ... Relying on a certain wording of the *first* .dtb name sounds a bit more fragile. Or maybe we could even have an explicit config symbol, which is just used by that script? BL31_ADDR=$(grep "^CONFIG_ATF_LOAD_ADDR=" .config | cut -d= -f2) Cheers, Andre. > Signed-off-by: Icenowy Zheng <icenowy@aosc.io> > --- > board/sunxi/mksunxi_fit_atf.sh | 10 ++++++++-- > 1 file changed, 8 insertions(+), 2 deletions(-) > > diff --git a/board/sunxi/mksunxi_fit_atf.sh b/board/sunxi/mksunxi_fit_atf.sh > index 36abe9efed..8540c3d88e 100755 > --- a/board/sunxi/mksunxi_fit_atf.sh > +++ b/board/sunxi/mksunxi_fit_atf.sh > @@ -13,6 +13,12 @@ if [ ! -f $BL31 ]; then > BL31=/dev/null > fi > > +if [ "$(basename $1 .dtb | cut -d - -f 1-2)" = "sun50i-h6" ]; then > + BL31_ADDR=0x104000 > +else > + BL31_ADDR=0x44000 > +fi > + > cat << __HEADER_EOF > /dts-v1/; > > @@ -35,8 +41,8 @@ cat << __HEADER_EOF > type = "firmware"; > arch = "arm64"; > compression = "none"; > - load = <0x44000>; > - entry = <0x44000>; > + load = <$BL31_ADDR>; > + entry = <$BL31_ADDR>; > }; > __HEADER_EOF > >
diff --git a/board/sunxi/mksunxi_fit_atf.sh b/board/sunxi/mksunxi_fit_atf.sh index 36abe9efed..8540c3d88e 100755 --- a/board/sunxi/mksunxi_fit_atf.sh +++ b/board/sunxi/mksunxi_fit_atf.sh @@ -13,6 +13,12 @@ if [ ! -f $BL31 ]; then BL31=/dev/null fi +if [ "$(basename $1 .dtb | cut -d - -f 1-2)" = "sun50i-h6" ]; then + BL31_ADDR=0x104000 +else + BL31_ADDR=0x44000 +fi + cat << __HEADER_EOF /dts-v1/; @@ -35,8 +41,8 @@ cat << __HEADER_EOF type = "firmware"; arch = "arm64"; compression = "none"; - load = <0x44000>; - entry = <0x44000>; + load = <$BL31_ADDR>; + entry = <$BL31_ADDR>; }; __HEADER_EOF
H6 has different SRAM A2 address, so the ATF load address is also different. Add judgment code to sunxi 64-bit FIT generation script. It will judge the SoC by the device tree's name. Signed-off-by: Icenowy Zheng <icenowy@aosc.io> --- board/sunxi/mksunxi_fit_atf.sh | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-)