From eaecd7f3abccebbe212c0f6097df35d02742135e Mon Sep 17 00:00:00 2001 From: TJ Date: Sat, 9 Apr 2016 10:38:57 +0100 Subject: [PATCH] README: update description --- README | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/README b/README index 50c40ca..09717db 100644 --- a/README +++ b/README @@ -1,23 +1,24 @@ -This fwlzw (de)compressor originally came from the FFMPEG project and was modified by Broadcom for +This fwex tool extracts the payloads from Broadcom firmware update files. + +The first payload image is usually the ROMD CFE/Kernel/root file-system combination. +If the payload is LZW (typically the second payload image is the XML router configuration) it will also decompress it. + +The LZW (de)compressor code originally came from the FFMPEG project and was modified by Broadcom for (de)compressing device configuration files. In the Zyxel/MitraStar/Broadcom source-code packages provided by those companies there is a tool -that runs on the host for compression only: +that runs on the host for LZW compression only: hostTools/CompressConfig That tool includes the FFMPEG library code but does NOT provide its own source-code, as it should since the files are licensed on the terms of the GNU GPL. -I've copied the files from the Zyxel source-code distribution as the basis of this host-based executable tool: +I've copied the files from the Zyxel source-code distribution as the basis of this host-based extractor tool: - cp Zyxel/source/userspace/public/libs/cms_util/lzw*.c . - cp Zyxel/source/userspace/public/include/cms_lzw.h . + cp userspace/public/libs/cms_util/lzw*.c . + cp userspace/public/include/cms_lzw.h . cp userspace/public/include/linux/os_defs.h . - cp userspace/public/include/cms_version.h . - -With this tool it is possible to extract the payload from a firmware file. It is typically the second -payload image in the file - the first being the CFE/Kernel/root file-system combination. - -My fwheader tool can report the location and size of the payloads in the firmware file. Those values can -then be used to extract the payload to a file, which can be passed to this fwlzw tool. + cp userspace/public/include/cms{params,version}.h . + cp userspace/public/include/cms.h . + cp shared/opensource/include/bcm963xx/bcmTag.h . -- 2.17.1