rockchip: make_fit_atf.py: fix .its generation for a single atf image
authorHeiko Stuebner <heiko@sntech.de>
Thu, 26 Sep 2019 19:15:15 +0000 (21:15 +0200)
committerKever Yang <kever.yang@rock-chips.com>
Sat, 28 Sep 2019 14:26:32 +0000 (22:26 +0800)
The commit 619f002db864 ("rockchip: make_fit_atf.py: fix loadables property
set error") fixed the double-loading of the primary atf-image, but didn't
take into account that there may be rare atf images with only that main
section present.

Right now this will result in a broken its due to the loadables section not
getting closed correctly, so fix that by adapting the guards around the loop.

The guards now protect against 0 segments when the bl31 binary doesn't
contain any section and 1 segment when only a core atf section is present.

Fixes: 619f002db864 ("rockchip: make_fit_atf.py: fix loadables property set error")
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Reviewed-by: Kever Yang<kever.yang@rock-chips.com>
arch/arm/mach-rockchip/make_fit_atf.py

index b9a19882984948a1704b67dfb865790f00bffe4c..585edcf9d560fc7ac9c3f791924165695ab9413a 100755 (executable)
@@ -82,7 +82,7 @@ def append_conf_section(file, cnt, dtname, segments):
     file.write('\t\t\tdescription = "%s";\n' % dtname)
     file.write('\t\t\tfirmware = "atf_1";\n')
     file.write('\t\t\tloadables = "uboot"')
-    if segments != 0:
+    if segments > 1:
         file.write(',')
     for i in range(1, segments):
         file.write('"atf_%d"' % (i + 1))
@@ -90,7 +90,7 @@ def append_conf_section(file, cnt, dtname, segments):
             file.write(',')
         else:
             file.write(';\n')
-    if segments == 0:
+    if segments <= 1:
         file.write(';\n')
     file.write('\t\t\tfdt = "fdt_1";\n')
     file.write('\t\t};\n')