[U-Boot] [PATCH 4/8] binman: Add support for powerpc 'bootpg + resetvec' entry

Jagdish Gediya jagdish.gediya at nxp.com
Fri Aug 24 06:02:43 UTC 2018


Hi Simon,

I tried to run 'binman -T' on top of latest u-boot without any changes to understand it. I am facing below errors, Am i missing any prerequisite?

$./tools/binman/binman -T
FATAL ERROR: Unrecognized check name "unit_address_vs_reg"
FATAL ERROR: Unrecognized check name "unit_address_vs_reg"
.
.
.
<unittest.result.TestResult run=110 errors=86 failures=3>
entry_test.TestEntry.test1EntryNoImportLib Traceback (most recent call last):
Exception: Error running 'dtc -I dts -o /tmp/binman.QSE04Z/source.dtb -O dtb -W no-unit_address_vs_reg -i /home/jagdish/projects/nxp/u-boot-denx/include /tmp/binman.QSE04Z/source.dts'
.
.
.
ftest.TestFunctional.testWithoutMicrocode Traceback (most recent call last):
Exception: Error running 'dtc -I dts -o /tmp/binmant.Y0yzB_/source.dtb -O dtb -W no-unit_address_vs_reg -i /home/jagdish/projects/nxp/u-boot-denx/include /tmp/binmant.Y0yzB_/source.dts'

tearDownClass (ftest.TestFunctional) Traceback (most recent call last):
OSError: [Errno 2] No such file or directory: '/tmp/binmant.Y0yzB_'

tearDownClass (ftest.TestFunctional) Traceback (most recent call last):
OSError: [Errno 2] No such file or directory: '/tmp/binmant.Y0yzB_'

fdt_test.TestFdt.testFdtNormal Traceback (most recent call last):
Exception: Error running 'dtc -I dts -o /tmp/binmant.NP9CZr/source.dtb -O dtb -W no-unit_address_vs_reg -i /home/jagdish/projects/nxp/u-boot-denx/include /tmp/binmant.NP9CZr/source.dts'

fdt_test.TestFdt.testFdtNormalProp Traceback (most recent call last):
Exception: Error running 'dtc -I dts -o /tmp/binmant.NP9CZr/source.dtb -O dtb -W no-unit_address_vs_reg -i /home/jagdish/projects/nxp/u-boot-denx/include /tmp/binmant.NP9CZr/source.dts'

Traceback (most recent call last):
  File "/home/jagdish/projects/nxp/u-boot-denx/tools/binman/ftest.py", line 434, in testBrokenDt
    str(e.exception))
AssertionError: 'FATAL ERROR: Unable to parse input tree' not found in 'Error running \'-d /home/jagdish/projects/nxp/u-boot-denx/tools/binman/test/01_invalid.dts\': binman: Error running \'dtc -I dts -o /tmp/binman.XumV4A/source.dtb -O dtb -W no-unit_address_vs_reg -i /home/jagdish/projects/nxp/u-boot-denx/include /tmp/binman.XumV4A/source.dts\'\nFATAL ERROR: Unrecognized check name "unit_address_vs_reg"\n'
[(<ftest.TestFunctional testMethod=testBrokenDt>, 'Traceback (most recent call last):\n  File "/home/jagdish/projects/nxp/u-boot-denx/tools/binman/ftest.py", line 434, in testBrokenDt\n    str(e.exception))\nAssertionError: \'FATAL ERROR: Unable to parse input tree\' not found in \'Error running \\\'-d /home/jagdish/projects/nxp/u-boot-denx/tools/binman/test/01_invalid.dts\\\': binman: Error running \\\'dtc -I dts -o /tmp/binman.XumV4A/source.dtb -O dtb -W no-unit_address_vs_reg -i /home/jagdish/projects/nxp/u-boot-denx/include /tmp/binman.XumV4A/source.dts\\\'\\nFATAL ERROR: Unrecognized check name "unit_address_vs_reg"\\n\'\n'), (<ftest.TestFunctional testMethod=testInvalidEntry>, 'Traceback (most recent call last):\n  File "/home/jagdish/projects/nxp/u-boot-denx/tools/binman/ftest.py", line 454, in testInvalidEntry\n    "\'/binman/not-a-valid-type\'", str(e.exception))\nAssertionError: "Unknown entry type \'not-a-valid-type\' in node \'/binman/not-a-valid-type\'" not found in \'Error running \\\'-d /home/jagdish/projects/nxp/u-boot-denx/tools/binman/test/04_invalid_entry.dts\\\': binman: Error running \\\'dtc -I dts -o /tmp/binman.jzQF0A/source.dtb -O dtb -W no-unit_address_vs_reg -i /home/jagdish/projects/nxp/u-boot-denx/include /tmp/binman.jzQF0A/source.dts\\\'\\nFATAL ERROR: Unrecognized check name "unit_address_vs_reg"\\n\'\n'), (<ftest.TestFunctional testMethod=testMissingNode>, 'Traceback (most recent call last):\n  File "/home/jagdish/projects/nxp/u-boot-denx/tools/binman/ftest.py", line 440, in testMissingNode\n    self.assertIn("does not have a \'binman\' node", str(e.exception))\nAssertionError: "does not have a \'binman\' node" not found in "Error running \'dtc -I dts -o /tmp/binman.N2Mjfy/source.dtb -O dtb -W no-unit_address_vs_reg -i /home/jagdish/projects/nxp/u-boot-denx/include /tmp/binman.N2Mjfy/source.dts\'"\n')]
Traceback (most recent call last):
  File "/home/jagdish/projects/nxp/u-boot-denx/tools/binman/ftest.py", line 454, in testInvalidEntry
    "'/binman/not-a-valid-type'", str(e.exception))
AssertionError: "Unknown entry type 'not-a-valid-type' in node '/binman/not-a-valid-type'" not found in 'Error running \'-d /home/jagdish/projects/nxp/u-boot-denx/tools/binman/test/04_invalid_entry.dts\': binman: Error running \'dtc -I dts -o /tmp/binman.jzQF0A/source.dtb -O dtb -W no-unit_address_vs_reg -i /home/jagdish/projects/nxp/u-boot-denx/include /tmp/binman.jzQF0A/source.dts\'\nFATAL ERROR: Unrecognized check name "unit_address_vs_reg"\n'
[(<ftest.TestFunctional testMethod=testBrokenDt>, 'Traceback (most recent call last):\n  File "/home/jagdish/projects/nxp/u-boot-denx/tools/binman/ftest.py", line 434, in testBrokenDt\n    str(e.exception))\nAssertionError: \'FATAL ERROR: Unable to parse input tree\' not found in \'Error running \\\'-d /home/jagdish/projects/nxp/u-boot-denx/tools/binman/test/01_invalid.dts\\\': binman: Error running \\\'dtc -I dts -o /tmp/binman.XumV4A/source.dtb -O dtb -W no-unit_address_vs_reg -i /home/jagdish/projects/nxp/u-boot-denx/include /tmp/binman.XumV4A/source.dts\\\'\\nFATAL ERROR: Unrecognized check name "unit_address_vs_reg"\\n\'\n'), (<ftest.TestFunctional testMethod=testInvalidEntry>, 'Traceback (most recent call last):\n  File "/home/jagdish/projects/nxp/u-boot-denx/tools/binman/ftest.py", line 454, in testInvalidEntry\n    "\'/binman/not-a-valid-type\'", str(e.exception))\nAssertionError: "Unknown entry type \'not-a-valid-type\' in node \'/binman/not-a-valid-type\'" not found in \'Error running \\\'-d /home/jagdish/projects/nxp/u-boot-denx/tools/binman/test/04_invalid_entry.dts\\\': binman: Error running \\\'dtc -I dts -o /tmp/binman.jzQF0A/source.dtb -O dtb -W no-unit_address_vs_reg -i /home/jagdish/projects/nxp/u-boot-denx/include /tmp/binman.jzQF0A/source.dts\\\'\\nFATAL ERROR: Unrecognized check name "unit_address_vs_reg"\\n\'\n'), (<ftest.TestFunctional testMethod=testMissingNode>, 'Traceback (most recent call last):\n  File "/home/jagdish/projects/nxp/u-boot-denx/tools/binman/ftest.py", line 440, in testMissingNode\n    self.assertIn("does not have a \'binman\' node", str(e.exception))\nAssertionError: "does not have a \'binman\' node" not found in "Error running \'dtc -I dts -o /tmp/binman.N2Mjfy/source.dtb -O dtb -W no-unit_address_vs_reg -i /home/jagdish/projects/nxp/u-boot-denx/include /tmp/binman.N2Mjfy/source.dts\'"\n')]
Traceback (most recent call last):
  File "/home/jagdish/projects/nxp/u-boot-denx/tools/binman/ftest.py", line 440, in testMissingNode
    self.assertIn("does not have a 'binman' node", str(e.exception))
AssertionError: "does not have a 'binman' node" not found in "Error running 'dtc -I dts -o /tmp/binman.N2Mjfy/source.dtb -O dtb -W no-unit_address_vs_reg -i /home/jagdish/projects/nxp/u-boot-denx/include /tmp/binman.N2Mjfy/source.dts'"
[(<ftest.TestFunctional testMethod=testBrokenDt>, 'Traceback (most recent call last):\n  File "/home/jagdish/projects/nxp/u-boot-denx/tools/binman/ftest.py", line 434, in testBrokenDt\n    str(e.exception))\nAssertionError: \'FATAL ERROR: Unable to parse input tree\' not found in \'Error running \\\'-d /home/jagdish/projects/nxp/u-boot-denx/tools/binman/test/01_invalid.dts\\\': binman: Error running \\\'dtc -I dts -o /tmp/binman.XumV4A/source.dtb -O dtb -W no-unit_address_vs_reg -i /home/jagdish/projects/nxp/u-boot-denx/include /tmp/binman.XumV4A/source.dts\\\'\\nFATAL ERROR: Unrecognized check name "unit_address_vs_reg"\\n\'\n'), (<ftest.TestFunctional testMethod=testInvalidEntry>, 'Traceback (most recent call last):\n  File "/home/jagdish/projects/nxp/u-boot-denx/tools/binman/ftest.py", line 454, in testInvalidEntry\n    "\'/binman/not-a-valid-type\'", str(e.exception))\nAssertionError: "Unknown entry type \'not-a-valid-type\' in node \'/binman/not-a-valid-type\'" not found in \'Error running \\\'-d /home/jagdish/projects/nxp/u-boot-denx/tools/binman/test/04_invalid_entry.dts\\\': binman: Error running \\\'dtc -I dts -o /tmp/binman.jzQF0A/source.dtb -O dtb -W no-unit_address_vs_reg -i /home/jagdish/projects/nxp/u-boot-denx/include /tmp/binman.jzQF0A/source.dts\\\'\\nFATAL ERROR: Unrecognized check name "unit_address_vs_reg"\\n\'\n'), (<ftest.TestFunctional testMethod=testMissingNode>, 'Traceback (most recent call last):\n  File "/home/jagdish/projects/nxp/u-boot-denx/tools/binman/ftest.py", line 440, in testMissingNode\n    self.assertIn("does not have a \'binman\' node", str(e.exception))\nAssertionError: "does not have a \'binman\' node" not found in "Error running \'dtc -I dts -o /tmp/binman.N2Mjfy/source.dtb -O dtb -W no-unit_address_vs_reg -i /home/jagdish/projects/nxp/u-boot-denx/include /tmp/binman.N2Mjfy/source.dts\'"\n')]
binman tests FAILED
49%
Name                                           Stmts   Miss  Cover
------------------------------------------------------------------
tools/binman/bsection                            208    141    32%
tools/binman/cmdline                              20      0   100%
tools/binman/control                             104     51    51%
tools/binman/elf                                  67      2    97%
tools/binman/entry                               197     96    51%
tools/binman/etype/blob                           18     10    44%
tools/binman/etype/blob_named_by_arg               7      2    71%
tools/binman/etype/cros_ec_rw                      4      1    75%
tools/binman/etype/fill                           11      6    45%
tools/binman/etype/fmap                           22     15    32%
tools/binman/etype/gbb                            33     24    27%
tools/binman/etype/intel_cmc                       5      1    80%
tools/binman/etype/intel_descriptor               26     15    42%
tools/binman/etype/intel_fsp                       5      1    80%
tools/binman/etype/intel_me                        5      1    80%
tools/binman/etype/intel_mrc                       7      2    71%
tools/binman/etype/intel_vbt                       5      1    80%
tools/binman/etype/intel_vga                       5      1    80%
tools/binman/etype/section                        42     23    45%
tools/binman/etype/text                           11      5    55%
tools/binman/etype/u_boot                          7      2    71%
tools/binman/etype/u_boot_dtb                      7      2    71%
tools/binman/etype/u_boot_dtb_with_ucode          47     38    19%
tools/binman/etype/u_boot_img                      7      2    71%
tools/binman/etype/u_boot_nodtb                    7      2    71%
tools/binman/etype/u_boot_spl                     11      4    64%
tools/binman/etype/u_boot_spl_bss_pad             15      7    53%
tools/binman/etype/u_boot_spl_dtb                  7      2    71%
tools/binman/etype/u_boot_spl_nodtb                7      2    71%
tools/binman/etype/u_boot_spl_with_ucode_ptr      12      3    75%
tools/binman/etype/u_boot_tpl                     11      4    64%
tools/binman/etype/u_boot_tpl_dtb                  7      2    71%
tools/binman/etype/u_boot_ucode                   27     21    22%
tools/binman/etype/u_boot_with_ucode_ptr          40     28    30%
tools/binman/etype/vblock                         27     19    30%
tools/binman/etype/x86_start16                     7      2    71%
tools/binman/etype/x86_start16_spl                 7      2    71%
tools/binman/fmap_util                            41     21    49%
tools/binman/image                                57     26    54%
------------------------------------------------------------------
TOTAL                                           1153    587    49%

Type 'python-coverage html' to get a report in htmlcov/index.html
Coverage error: 49%, but should be 100%
ValueError: Test coverage failure

Thanks,
Jagdish

> -----Original Message-----
> From: sjg at google.com <sjg at google.com> On Behalf Of Simon Glass
> Sent: Tuesday, August 21, 2018 11:02 PM
> To: Jagdish Gediya <jagdish.gediya at nxp.com>
> Cc: Prabhakar Kushwaha <prabhakar.kushwaha at nxp.com>; York Sun
> <york.sun at nxp.com>; Poonam Aggrwal <poonam.aggrwal at nxp.com>; Tom
> Rini <trini at konsulko.com>; Bin Meng <bmeng.cn at gmail.com>
> Subject: Re: [PATCH 4/8] binman: Add support for powerpc 'bootpg +
> resetvec' entry
> 
> Hi,
> 
> On 21 August 2018 at 12:06, Jagdish Gediya <jagdish.gediya at nxp.com>
> wrote:
> > This entry contains the powerpc boot page and resetvec sections.
> >
> > Signed-off-by: Jagdish Gediya <jagdish.gediya at nxp.com>
> > ---
> >  tools/binman/etype/mpc85xx_bootpg_resetvec.py | 15 +++++++++++++++
> >  1 file changed, 15 insertions(+)
> >  create mode 100644 tools/binman/etype/mpc85xx_bootpg_resetvec.py
> 
> Please run binman with the -E option to regenerate the entry
> documentation.
> 
> You will need to actually add some to your new module :-)
> 
> Also please add a test. Otherwise binman -T will fail.
> 
> >
> > diff --git a/tools/binman/etype/mpc85xx_bootpg_resetvec.py
> > b/tools/binman/etype/mpc85xx_bootpg_resetvec.py
> > new file mode 100644
> > index 0000000..d76fe95
> > --- /dev/null
> > +++ b/tools/binman/etype/mpc85xx_bootpg_resetvec.py
> > @@ -0,0 +1,15 @@
> > +# SPDX-License-Identifier: GPL-2.0+
> > +# Copyright 2018 NXP
> > +#
> > +# Entry-type module for the mpc85xx bootpg and resetvec code for
> > +U-Boot #
> > +
> > +from entry import Entry
> > +from blob import Entry_blob
> > +
> > +class Entry_mpc85xx_bootpg_resetvec(Entry_blob):
> > +    def __init__(self, section, etype, node):
> > +        Entry_blob.__init__(self, section, etype, node)
> > +
> > +    def GetDefaultFilename(self):
> > +        return 'u-boot-br.bin'
> > --
> > 2.7.4
> >
> 
> Regards,
> Simon


More information about the U-Boot mailing list