    chknvm2(1)                                   Qualcomm Atheros Open Powerline Toolkit                                  chknvm2(1)

    NAME
           chknvm2 - Qualcomm Atheros PLC Image File Validator

    SYNOPSIS
           chknvm2 [options] file [file] [...]

    DESCRIPTION
           Check  Atheros  HomePlug AV firmware files for obvious errors, including obsolete format, incorrect file size, bad check‐
           sums and read errors.  Make no attempt to check any internal information other  than  firmware  header  checksums,  image
           lengths and image checksums.  Optionally, display header and image information on stdout.

           This  program  handles both the older Thunderbolt and Lightning and the newer Panther and Lynx firmware file formats.  It
           validates files directly from memory and so it is faster than program chknvm but needs more memory at runtime.

           This program is part of the Qualcomm Atheros Powerline Toolkit.  See the AMP man page for an  overview  and  installation
           instructions.

    OPTIONS
           -i     Print  revision  string identity fields in fixed-width columns.  This option is useful when searching .nvm folders
                  for a specific build.

           -m     Display manifest content, if present.  The manifest is a special module, included in some image chains, that  con‐
                  tains useful information about the chain.  This option suppresses the summary 'looks good' message.

           -r     Print firmware revision string on stdout.  This option automatically suppresses the summary 'looks good' message.

           -q     Suppresses printing of routine messages.  Specifically, it suppresses the summary 'looks good' message.

           -v     Print  additional  information such as the image header for each image processed.  This information can be used to
                  distinguish one firmware file from another, if you know what to look for.

           -?,--help
                  Print program help summary on stdout.  This option takes precedence over other options on the command line.

           -!,--version
                  Print program version information on stdout.  This option takes precedence over other options on the command line.
                  Use  this option when sending screen dumps to Atheros Technical Support so that they know exactly which version of
                  the Linux Toolkit you are using.

    ARGUMENTS
           file   The name of an Atheros image file.  By convention, Atheros Image files have a .nvm file extension but this program
                  does not enforce this convention.

    DISCLAIMER
           Qualcomm  Atheros  firmware  file  structure and content is proprietary to Qualcomm Atheros, Ocala FL USA.  Consequently,
           public information is not available.  Qualcomm Atheros reserves the right to change firmware file structure or content or
           change  the  name or behavior of any program that inspects or changes firmware files, in future software releases without
           any obligation to notify or compensate users of such programs.

    EXAMPLES
           This example reads file abc.nvm and validates it.  The message shown indicates that the file is the correct length, image
           headers  and  images  have the correct length and checksum and there are no read errors.  The file can be have either the
           newer or older format.

               # chknvm2 abc.nvm
               abc.nvm looks good

           The following example reads three files in succession and reports on each one.  You can suppress good news  with  the  -q
           option.

              # chknvm2 INT6400.nvm AR7400.nvm AR7420.nvm
              INT6400.nvm looks good
              AR7400.nvm looks good
              AR7420.nvm looks good

           This next example prints the firmware revision string found inside older image files.  The option can be used to identify
           the actual firmware image present when the filename has been changed.   Newer  image  files  have  a  manifest,  instead.
           Observe  that  file AR7420.nvm shows no revision string since it is the newer image format where firmware images are com‐
           pressed.

              # chknvm2 -r INT6400.nvm AR7400.nvm AR7420.nvm
              INT6400.nvm (3) INT6000-MAC-4-1-4122-01-4020-20100219-FINAL
              AR7400.nvm (5) INT7400-MAC-7-0-7011-01-52-20110811-FINAL

           The following example displays the firmware revision strings, from the last example, as  fixed  width  columns.   Observe
           that the external filename may, in some cases, not reflect the file content.

              # chknvm2 -i INT6400.nvm AR7400.nvm AR7420.nvm
              INT6000 4020 20100219 4.1 INT6400.nvm (3)
              INT7400 0052 20110811 7.0 AR7400.nvm (5)

           This  example prints the manifest found inside newer firmware files.  This can be used to distinguish firmware files from
           parameter files, determine exact firmware or parameter file revisions and so forth.  Observe that  we  specified  several
           files on the command line but only one file, AR7420.nvm, contained a mainfest.

              # chknvm2 -m INT6400.nvm AR7400.nvm AR7420.nvm
              ------- AR7420.nvm (0) -------
                      Signature: 1234ABCD
                      Hardware Compatibility: AR74200
                      Chain Major Version: 0
                      Chain Minor Version: 1
                      Chain Type: Firmware
                      Build Major Version: 0
                      Build Minor Version: 0
                      Build Type: Special
                      Manifest Version: 1
                      Build Number: 0
                      Build Date: 20110811
                      Build Time: 203853
                      Device Type: 29728
                      Build Hostname: TOR-SW-SIM04
                      Build Username: buildbot
                      Build Description: Custom
                      Build Version String: AR-7420-FW-0_0-0_2-20110811:203853-buildbot:TOR-SW-SIM04-1-0_1

    SEE ALSO
           chknvm(1), chkpib(1), chkpib2(1), int6ktest(7), nvmmerge(1), nvmsplit(1), plctest(7)

    CREDITS
            Charles Maier <cmaier@qca.qualcomm.com>

    open-plc-utils-0.0.3                                        Mar 2014                                                  chknvm2(1)

[PREV] [HOME] [NEXT]