int6kboot(1) | Qualcomm Atheros Open Powerline Toolkit | int6kboot(1) |
int6kboot - Qualcomm Atheros Powerline Device Boot Utility I
int6kboot [options] -N file -P file [device] [device] [...]
Download and start runtime firmware on any local Atheros powerline device that is in bootloader mode. A device remains in bootloader mode when it cannot load firmware from flash memory for some reason. This can happen because there is no flash memory or because the flash memory is blank or corrupted. This program can start a device or start then flash a device.
The bootloader only recognizes a subset of Atheros message types. This program uses that subset to write runtime firmware and parameters into SDRAM then start firmware execution at a known address. Optionally, this program can then proceed to download the same firmware and parameters, again, and instruct the runtime firmware to write them to flash memory.
Starting a device is a three phase operation that can only be performed when the bootloader is running. The first phase writes an SDRAM configuration program into TCM and executes it. The second phase writes runtime firmware and parameters as images into SDRAM. The third phase starts firmware execution. Once the runtime firmware starts, the device will be operational.
Flashing a device is a two phase operation that can only be performed when the firmware is running. The first phase downloads runtime firmare and parameters into scratch buffers under firmware control. The second phase instructs the firmware to write the scratch buffers to flash memory and restart the device. After flashing, the device will be self-sustaining.
Since the device address is 00:B0:52:00:00:01 on boot, the host must send all messages to that address. This can cause problems if multiple devices are connected to the host and in Bootloader mode. The devices will have the same firmware and MAC address because their PIBs will be identical. One should avoid this situation.
Is probably alright to have other device connected to the host that are running firmware because they will still see but not recognize the messages used in this operation. If only one device is connected to the host, then is save to flash the device using address 00:B0:52:00:00:01. Otherwise, the host should address messages to the actual device address so that other devices do not attempt to write to their own flash memory at the same time.
This program is part of the Qualcomm Atheros Powerline Toolkit. See the plc man page for an overview and installation instructions.
Powerline device addresses are 12 hexadecimal digits in upper, lower or mixed case. Individual octets may be separated by colons, for clarity, but colons are not required. For example, "00b052000001", "00:b0:52:00:00:01" and "00b052:000001" are valid and equivalent.
A local device is any Atheros Powerline Device connected directly to a host Ethernet interface. A remote device is any Atheros Powerline Device at the far end of a powerline connection. A foreign device is any powerline device not manufactured by Atheros.
Common device addresses have symbolic names that can be used in place of the actual address value. The following symbolic addresses are recognized by this program and most other toolkit programs.
See the Qualcomm Atheros HomePlug AV Firmware Technical Reference Manual for technical information. See the Qualcomm Atheros Powerline Toolkit Online Documetation for practical information and examples.
The -N and -P options are always required. Their order is not important. Tne MAC address is not needed because devices default to address 00:B0:52:00:00:01 (the program default address) in bootloader mode. Once this operation completes, firmware is running in SDRAM but the NVRAM, if present, has not been programmed. This operation is common for flash-less devices. If we reset the device at this point then the device will return to bootloader mode.
int6kboot -N test.nvm -P test.pib
# eth0 00:B0:52:00:00:01 Write SDRAM Configuration
# eth0 00:B0:52:00:00:01 Written.
# eth0 00:B0:52:00:00:01 Write to device memory
# eth0 00:B0:52:00:00:01 Written.
# eth0 00:B0:52:00:00:01 Write to device memory
# eth0 00:B0:52:00:00:01 Written.
# eth0 00:B0:52:00:00:01 Start Firmware
# eth0 00:B0:52:00:00:01 Started.
The next example does the same thing but performs the extra steps needed to program NVRAM. It first downloads the firmware image from file test.nvm and the parameter block image from file test.pib using VS_WR_MEM then starts firmware execution using VS_ST_MAC. Once runtime firmware has started, it downloads the same firmware image and parameter block image (again) using VS_WR_MOD and commits them to NVRAM using VS_MOD_NVM.
int6kboot -N test.nvm -P test.pib -F
# eth0 00:B0:52:00:00:01 Write SDRAM Configuration
# eth0 00:B0:52:00:00:01 Written.
# eth0 00:B0:52:00:00:01 Write to device memory
# eth0 00:B0:52:00:00:01 Written.
# eth0 00:B0:52:00:00:01 Write to device memory
# eth0 00:B0:52:00:00:01 Written.
# eth0 00:B0:52:00:00:01 Start Firmware
# eth0 00:B0:52:00:00:01 Started.
# eth0 00:B0:52:00:00:01 Write MAC as module
# eth0 00:B0:52:00:00:01 Written.
# eth0 00:B0:52:00:00:01 Write PIB as module
# eth0 00:B0:52:00:00:01 Written.
# eth0 00:B0:52:00:00:01 Flash Device
# eth0 00:B0:52:00:00:01 Flashed.
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 and content in future firmware releases without any obligation to notify or compensate users of this program.
plc(1), ampboot(1), chknvm(1), chkpib(1), int6k(1), modpib(1)
Charles Maier
November 2013 | open-plc-utils-0.0.3 |