Provided by: plc-utils_0.0.6+git20250517.7fb8ac5-1_amd64 bug

NAME

       int6k - Qualcomm Atheros INT6x00 Powerline Device Manager

SYNOPSIS

       int6k [options] [device] [device] [...]

DESCRIPTION

       This  version  of  the  Qualcomm  Atheros  Device  Manager for Linux performs basic operations on Atheros
       INT6x00 devices using the raw Ethernet protocol described in the Qualcomm Atheros  HomePlug  AV  Firmware
       Technical Reference Manual.  It can be used to interrogate and control devices or upgrade firmware if on-
       board NVRAM is present.

       This  program  is  part  of the Qualcomm Atheros Powerline Toolkit.  Is supports legacy chipsets INT6000,
       INT6300 and INT6400.  See program amptool for AR7400  and  AR7450  chipsets.   See  program  plctool  for
       QCA6410,  QCA7000  and  QCA7420  chipsets.   See  the  plc  man  page  for  an  overview and installation
       instructions.

OPTIONS

       -a     Read device attributes using VS_OP_ATTRIBUTES.  Attributes are short  strings  and  integers  that
              describe  device  hardware and firmware.  They are concatenated to form the output that is similar
              to option -r but derived differently.

       -B action
              Press the simple connect pushbutton using VS_PB_ENC.  The action can be specified by number 1,  2,
              3  or  4  or  by symbol "join", "leave", "status" or "reset", respectively.  Use 1 on both devices
              that are expected to join.  Use 2 only on the device that is expected to leave the network.

       -C module
              Commit (flash) downloaded modules to NVRAM using VS_MOD_NVM.   The  module  can  be  spedified  by
              number  1,  2  or  3  or by symbol "nvm", "pib" or "both", repectively.  Module 3 is equivalent to
              option -F which writes the NVM and PIB together.  You cannot force flash NVRAM using this  option.
              Use option -FF to force flash.

       -d filename
              Read  Watchdog  Report  from  the  device  and  write  it to the named file in binary format using
              VS_WD_RPT.  The report  file  can  be  sent  to  Qualcomm  Atheros  for  technical  analysis.   No
              assumptions  are  made  based  on  filename  and no filename convetions are enforced; however, you
              should use a .log file extension to indicate binary format.

       -D xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx
              Define the 16 octet Device Access Key (DAK) in hex format.  The DAK is used by option -J.  It  may
              also be set to "key1" or "key2" as explained in the KEYS section.

       -e     Redirects  stderr  messages  to  stdout.   By  convention status and error messages are printed on
              stderr while primary program output is printed on stdout.  This option prints all output on stdout
              in cases where this is desired.

       -f     Read device NVRAM parameters using VS_GET_NVM.  An  error  will  be  reported  when  no  NVRAM  is
              present.   This  option  can  be  used  to determine if NVRAM is large enough to store the runtime
              firmware and parameter block.

       -F[F]  Write previously downloaded MAC and PIB to NVRAM using VS_MOD_NVM.  Adding  a  second  F  here  or
              another  -F  anywhere  on  the command line will force-flash a blank or corrupted NVRAM.  Firmware
              loaded from NVRAM will treat force-flash as an error.  This option can be used to  create  factory
              settings  but  cannot  be  used  to  change them once created.  Subsequent use creates and updates
              operational settings that can be erased using a factory reset.  This option is executed after  all
              others on the command line, except for the -R option.

       -i interface
              Select  the  host  Ethernet  interface.   All  requests  are sent via this host interface and only
              reponses received via this host interface are recognized.  The default interface is  eth1  because
              most  people  use eth0 as their principle network connection; however, if environment string "PLC"
              is defined then it takes precedence over the default interface.  This option then takes precedence
              over either default.

       -I     Read the device PIB header using VS_RD_MOD and print the firmware major revision number, PIB minor
              revision number, Device Access Key (DAK), Network Membership Key  (NMK),  MAC  address  and  other
              information on stdout.

       -J xx:xx:xx:xx:xx:xx
              Set  the  Network  Membership  Key (NMK) on the remote device, specified by MAC, using VS_SET_KEY.
              This option is similar to option -K but requires the remote device MAC and DAK in addition to  the
              NMK and local device MAC address.  The NMK value is defined using option -K unless you want to use
              the  default  value.  The remote DAK is defined using option -D unless you want to use the default
              value.  Programming remote device keys is complicated.  It is often easier to connect  the  device
              directly to the host and use the -K option.

       -K xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx
              Define the Network Membership Key (NMK) value used by options -M or -J.  The symbolic names "key1"
              and "key2" are recognized as described in the KEY section.

       -l count
              Define the number of times that the command will be repeated for each device specified.  Normally,
              you will repeat operations on one device only.

       -m     Read  network  membership  information  using  VS_NW_INFO.   This can be used to determine network
              configuration.

       -M     Set the Network Membership Key (NMK) on the local device  using  VS_SET_KEY.   The  NMK  value  is
              specified using the -K option unless you want to use the default value.

       -n filename
              Read  firmware  from the device SDRAM and write it to the named .nvm file using multiple VS_RD_MOD
              messages.  No assumptions are made based on filename and no  filename  conventions  are  enforced.
              This option is performed before option -N when both are specified.

       -N filename
              Read  the  named  .nvm  file  and  write  it  to the device using multiple VS_WR_MOD messages.  No
              assumptions are made based on filename and no filename conventions are  enforced;  however,  files
              having  invalid  .nvm  format  will  be  rejected.  This option is executed after -n when both are
              specified.

       -p filename
              Read parameters from the device SDRAM and write  them  to  the  named  .pib  file  using  multiple
              VS_RD_MOD  messages.   No  assumptions  are  made based on filename and no filename convetions are
              enforced.  This option is executed before option BP when both are specified.

       -P filename
              Read the named .pib file and write it  to  the  device  using  multiple  VS_WR_MOD  messages.   No
              assumptions  are  made  based on filename and no filename conventions are enforced; however, files
              having invalid .pib format will be rejected.  This option is  executed  after  -p  when  both  are
              specified.

       -q     Suppresses status messages on stderr.

       -Q     Quick  flash.   The  program  will not wait for a device to reset or the firmware to restart after
              writing flash memory.  This option is desirable with newer firmware that writes  flash  memory  in
              the background.  It has no effect unless used with option -F or -C.

       -r     Read device firmware and hardware revision using VS_SW_VER.  Output is similar to option -a but is
              derived differently.

       -R     Reset  the  device  using VS_RS_DEV.  This option is executed after all others on the same command
              line.

       -s     Read device SDRAM configuration using VS_RD_CBLOCK.

       -S filename
              Read the named .cfg file and write it to the device using VS_SET_SDRAM.  No assumptions  are  made
              based  on filename and no filename conventions are enforced; however, files having an invalid .cfg
              file format will be rejected.  Do not confuse .cfg files  with  .config  files.   See  chkcfg  and
              config2cfg for more information on SDRAM configuration file formats.

       -t milliseconds
              Read  timeout  in  milliseconds.   Values range from 0 through UINT_MAX.  This is the maximum time
              allowed for a response.  The default is shown in brackets on the program menu.

       -T     Restore factory defaults.  This permanently erases all PIB changes made since the device was  last
              programmed with factory default settings.  The device will automatically reset and reboot.

       -v     Print  additional  information  on stdout.  In particular, this option dumps incoming and outgoing
              packets which can be saved as text files for reference.

       -w seconds
              Defines the number of seconds to wait before repeating command line options.  This option  has  no
              effect unless option -l is also specified with a non-zero value.

       -x     Cause  the  program  to  exit  on the first error instead of continuing with remaining iterations,
              operations or devices.  Normally, the program reports errors and moves on to the  next  operation,
              iteration or device depending on the command line.

       -?,--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

       device The Ethernet hardware address of some powerline device.  More than one address may be specified on
              the command line.  If more than one address is specified then operations  are  performed  on  each
              device in turn.  The default address is local.  as explained in the DEVICES section.

KEYS

       Passwords  are  variable  length  character  strings  that end-users can remember.  Keys are fixed length
       binary values created by encrypting passwords.  There are two encryption algorithms for HomePlugAV.   One
       for  DAKs and the other for NMKs.  This means that a given password will produce different keys depending
       on use.  This program only deals with keys  because  that  is  what  powerline  devices  recognize.   The
       passwords that generated the keys are irrelevant here.

       Encryption  keys  are  tedious  to  type  and  prone to error.  For convenience, symbolic names have been
       assigned to common encryption keys and are recognized by options -D and -K.

       key1   Key for encrypted password "HomePlugAV".  This is "689F074B8B0275A2710B0B5779AD1630" for option -D
              and "50D3E4933F855B7040784DF815AA8DB7" for option -K.

       key2   Key for encrypted  password  "HomePlugAV0123".   This  is  "F084B4E8F6069FF1300C9BDB812367FF"  for
              option -D and "B59319D7E8157BA001B018669CCEE30D" for option -K.

       none   Always "00000000000000000000000000000000".

DEVICES

       Powerline  devices use Ethernet hardware, or Media Access Control (MAC), addresses.  Device addresses are
       12 hexadecimal digits (0123456789ABCDEFabcdef) in upper, lower or mixed case.  Individual octets  may  be
       separated  by colons, for clarity, but not all octets need to be seperated.  For example, "00b052000001",
       "00:b0:52:00:00:01" and "00b052:000001" are valid and equivalent.

       These symbolic addresses are recognized by this program and may be used instead  of  the  actual  address
       value.

       all    Equivalent to "broadcast", described next.

       broadcast
              The  Ethernet broadcast address, FF:FF:FF:FF:FF:FF.  All devices, whether local, remote or foreign
              will respond to this address.

       local  The Atheros Local Management Address (LMA), 00:B0:52:00:00:01.  Local  Atheros  powerline  devices
              recognize  this  address  but remote and foreign powerline devices do not.  A remote device is any
              poserline device at the far end of the powerline.  A foreign device  is  a  powerline  device  not
              manufactured by Atheros.

REFERENCES

       See the Qualcomm Atheros HomePlug AV Firmware Technical Reference Manual for more information.

DISCLAIMER

       Atheros  HomePlug  AV Vendor Specific Management Message structure and content is proprietary to Qualcomm
       Atheros, Ocala FL USA.  Consequently, public information may not be available.  Qualcomm Atheros reserves
       the right to modify message structure or content in future firmware releases without  any  obligation  to
       notify or compensate users of this program.

EXAMPLES

          # int6k -n old.nvm -p old.pib -N new.nvm -P new.pib -F 01:23:45:67:89:AB

       Performs  5  operations  on  one device.  Uploads the firmware and PIB from the device and writes them to
       files old.nvm and old.pib, respectively.  Reads files new.nvm and  new.pib  and  downloads  them  as  new
       firmware  and  PIB,  respectively.   Commits  the  downloaded  firmware and PIB to NVRAM.  Operations are
       executed in the order just described regardless of the order specified on the command line.  If you  want
       reading  and  writing  to occur in a different order then you must use two or more commands to accomplish
       tasks in the order you want.

          # int6k -N new.nvm 01:23:45:67:89:28
          # int6k -P new.pib 01:23:45:67:89:28
          # int6k -C 3 01:23:45:67:89:28

       It is not neccessary to specify all operations on one command line.  The three  command  lines  above  do
       essentially  the  same  thing as the command line shown in the previou example.  Notice that this example
       uses -C 3, instead of -F, as an alternate way to write MAC and PIB to NVRAM.  Specifying -C  1,  instead,
       would  write the .nvm file only.  Specifying, -C 2, instead, would write the .pib file only.  The value 3
       is the logical OR of 1 and 2.

          # int6k -N new.nvm -P new.pib -FF local

       Downloads file new.nvm and file new.pib and force flashes the local device.  Force flashing only works on
       running firmware that has been downloaded and stated by the Qualcomm Atheros Boot Loader.  See int6kf  to
       download, start firmware and perform a force flash in one operation.

          # int6k -MK key1
          # int6k -M

       These  two  commands  are  equivalent.  They set the NMK on the local device to key1 as descripted in the
       KEYS section.  The first command resets the NMK on the local device with -M then  specifies  the  NMK  as
       key1.   The second command omits the key specification since key1 is the program default NMK.  One could,
       of course, type the encryption key.

SEE ALSO

       plc(1),  amptool(1),  int6kf(1),  int6khost(1),  int6kid(1),  int6krate(1),  int6krule(1),  int6kstat(1),
       int6kwait(1), plctool(1)

CREDITS

        Charles Maier
        Nathaniel Houghton

open-plc-utils-0.0.3                              November 2013                                         int6k(1)