GS2K Firmware Builder Tool User Guide€¦ · GS2K Firmware Builder Tool User Guide 1VV0301436 Rev....

14
GS2K Firmware Builder Tool User Guide 1VV0301436 Rev. 1 2015-02-01

Transcript of GS2K Firmware Builder Tool User Guide€¦ · GS2K Firmware Builder Tool User Guide 1VV0301436 Rev....

Page 1: GS2K Firmware Builder Tool User Guide€¦ · GS2K Firmware Builder Tool User Guide 1VV0301436 Rev. 1 Page 7 of 14 2015-02-01 Chapter 1. Introduction The GainSpan firmware builder

GS2K Firmware Builder Tool User Guide

1VV0301436 Rev. 1 – 2015-02-01

Page 2: GS2K Firmware Builder Tool User Guide€¦ · GS2K Firmware Builder Tool User Guide 1VV0301436 Rev. 1 Page 7 of 14 2015-02-01 Chapter 1. Introduction The GainSpan firmware builder

GS2K Firmware Builder Tool User Guide

1VV0301436 Rev. 1 Page 2 of 14 2015-02-01

SPECIFICATIONS ARE SUBJECT TO CHANGE WITHOUT NOTICE

NOTICE

While reasonable efforts have been made to assure the accuracy of this document, Telit assumes no liability resulting from any inaccuracies or omissions in this document, or from use of the information obtained herein. The information in this document has been carefully checked and is believed to be reliable. However, no responsibility is assumed for inaccuracies or omissions. Telit reserves the right to make changes to any products described herein and reserves the right to revise this document and to make changes from time to time in content hereof with no obligation to notify any person of revisions or changes. Telit does not assume any liability arising out of the application or use of any product, software, or circuit described herein; neither does it convey license under its patent rights or the rights of others.

It is possible that this publication may contain references to, or information about Telit products (machines and programs), programming, or services that are not announced in your country. Such references or information must not be construed to mean that Telit intends to announce such Telit products, programming, or services in your country.

COPYRIGHTS

This instruction manual and the Telit products described in this instruction manual may be, include or describe copyrighted Telit material, such as computer programs stored in semiconductor memories or other media. Laws in the Italy and other countries preserve for Telit and its licensors certain exclusive rights for copyrighted material, including the exclusive right to copy, reproduce in any form, distribute and make derivative works of the copyrighted material. Accordingly, any copyrighted material of Telit and its licensors contained herein or in the Telit products described in this instruction manual may not be copied, reproduced, distributed, merged or modified in any manner without the express written permission of Telit. Furthermore, the purchase of Telit products shall not be deemed to grant either directly or by implication, estoppel, or otherwise, any license under the copyrights, patents or patent applications of Telit, as arises by operation of law in the sale of a product.

COMPUTER SOFTWARE COPYRIGHTS

The Telit and 3rd Party supplied Software (SW) products described in this instruction manual may include copyrighted Telit and other 3rd Party supplied computer programs stored in semiconductor memories or other media. Laws in the Italy and other countries preserve for Telit and other 3rd Party supplied SW certain exclusive rights for copyrighted computer programs, including the exclusive right to copy or reproduce in any form the copyrighted computer program. Accordingly, any copyrighted Telit or other 3rd Party supplied SW computer programs contained in the Telit products described in this instruction manual may not be copied (reverse engineered) or reproduced in any manner without the express written permission of Telit or the 3rd Party SW supplier. Furthermore, the purchase of Telit products shall not be deemed to grant either directly or by implication, estoppel, or otherwise, any license under the copyrights, patents or patent applications of Telit or other 3rd Party supplied SW, except for the normal non-exclusive, royalty free license to use that arises by operation of law in the sale of a product.

Page 3: GS2K Firmware Builder Tool User Guide€¦ · GS2K Firmware Builder Tool User Guide 1VV0301436 Rev. 1 Page 7 of 14 2015-02-01 Chapter 1. Introduction The GainSpan firmware builder

GS2K Firmware Builder Tool User Guide

1VV0301436 Rev. 1 Page 3 of 14 2015-02-01

USAGE AND DISCLOSURE RESTRICTIONS

I. License Agreements

The software described in this document is the property of Telit and its licensors. It is furnished by express license agreement only and may be used only in accordance with the terms of such an agreement.

II. Copyrighted Materials

Software and documentation are copyrighted materials. Making unauthorized copies is prohibited by law. No part of the software or documentation may be reproduced, transmitted, transcribed, stored in a retrieval system, or translated into any language or computer language, in any form or by any means, without prior written permission of Telit

III. High Risk Materials

Components, units, or third-party products used in the product described herein are NOT fault-tolerant and are NOT designed, manufactured, or intended for use as on-line control equipment in the following hazardous environments requiring fail-safe controls: the operation of Nuclear Facilities, Aircraft Navigation or Aircraft Communication Systems, Air Traffic Control, Life Support, or Weapons Systems (High Risk Activities"). Telit and its supplier(s) specifically disclaim any expressed or implied warranty of fitness for such High Risk Activities.

IV. Trademarks

TELIT and the Stylized T Logo are registered in Trademark Office. All other product or service names are the property of their respective owners.

V. Third Party Rights

The software may include Third Party Right software. In this case you agree to comply with all terms and conditions imposed on you in respect of such separate software. In addition to Third Party Terms, the disclaimer of warranty and limitation of liability provisions in this License shall apply to the Third Party Right software.

TELIT HEREBY DISCLAIMS ANY AND ALL WARRANTIES EXPRESS OR IMPLIED FROM ANY THIRD PARTIES REGARDING ANY SEPARATE FILES, ANY THIRD PARTY MATERIALS INCLUDED IN THE SOFTWARE, ANY THIRD PARTY MATERIALS FROM WHICH THE SOFTWARE IS DERIVED (COLLECTIVELY “OTHER CODE”), AND THE USE OF ANY OR ALL THE OTHER CODE IN CONNECTION WITH THE SOFTWARE, INCLUDING (WITHOUT LIMITATION) ANY WARRANTIES OF SATISFACTORY QUALITY OR FITNESS FOR A PARTICULAR PURPOSE.

NO THIRD PARTY LICENSORS OF OTHER CODE SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND WHETHER MADE UNDER CONTRACT, TORT OR OTHER LEGAL THEORY, ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF THE OTHER CODE OR THE EXERCISE OF ANY RIGHTS GRANTED UNDER EITHER OR BOTH THIS LICENSE AND THE LEGAL TERMS APPLICABLE TO ANY SEPARATE FILES, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

Page 4: GS2K Firmware Builder Tool User Guide€¦ · GS2K Firmware Builder Tool User Guide 1VV0301436 Rev. 1 Page 7 of 14 2015-02-01 Chapter 1. Introduction The GainSpan firmware builder

GS2K Firmware Builder Tool User Guide

1VV0301436 Rev. 1 Page 4 of 14 2015-02-01

APPLICABILITY TABLE

Note: The features described in the present document are provided by the products equipped with the software versions equal or higher than the versions shown in the table. See also the Revision History chapter.

PRODUCT

GS2K based Modules

Page 5: GS2K Firmware Builder Tool User Guide€¦ · GS2K Firmware Builder Tool User Guide 1VV0301436 Rev. 1 Page 7 of 14 2015-02-01 Chapter 1. Introduction The GainSpan firmware builder

GS2K Firmware Builder Tool User Guide

1VV0301436 Rev. 1 Page 5 of 14 2015-02-01

Revision History

Version Date Remarks

1.0 Feb 2015 Initial Release

Page 6: GS2K Firmware Builder Tool User Guide€¦ · GS2K Firmware Builder Tool User Guide 1VV0301436 Rev. 1 Page 7 of 14 2015-02-01 Chapter 1. Introduction The GainSpan firmware builder

GS2K Firmware Builder Tool User Guide

1VV0301436 Rev. 1 Page 6 of 14 2015-02-01

Table of Contents NOTICE……… .......................................................................................................................... 2

COPYRIGHTS …………………………………………………………………………………………..2

COMPUTER SOFTWARE COPYRIGHTS ................................................................................ 2

USAGE AND DISCLOSURE RESTRICTIONS ......................................................................... 3

APPLICABILITY TABLE .......................................................................................................... 4

CHAPTER 1. INTRODUCTION ............................................................................................... 7

CHAPTER 2. CONFIGURATION FILE .................................................................................... 9

CHAPTER 3. GAINSPAN FIRMWARE BUILDER TOOL ..................................................... 12

3.1 SINGLE FIRMWARE IMAGE GENERATION ........................................................................ 12 Prerequisites ..................................................................................................................... 12 Procedure 12

3.2 SINGLE FIRMWARE IMAGE MAP ..................................................................................... 13

Page 7: GS2K Firmware Builder Tool User Guide€¦ · GS2K Firmware Builder Tool User Guide 1VV0301436 Rev. 1 Page 7 of 14 2015-02-01 Chapter 1. Introduction The GainSpan firmware builder

GS2K Firmware Builder Tool User Guide

1VV0301436 Rev. 1 Page 7 of 14 2015-02-01

Chapter 1. Introduction

The GainSpan firmware builder tool (gs2kSingleImageBuilder.exe) is used to create a single firmware image which consists of the control block, compressed application image, WLAN image, and web image.

The following figure depicts the overview for single firmware image generation.

Figure 1: Single Firmware Image Generation

The GainSpan firmware builder tool uses a configuration file as an input and generates a single firmware image.

Following are the different binaries used for creating single image.

1. wlanBdTable.bin: Partial Control block is generated internally by

“gs2kSingleImageBuilder .exe “. This Control block contains information about the

address locations of Application Start Up code and WebImage File System Location.

“wlanBdTable.bin” contains information about WLAN Startup code. Control block

generator merges all the information and creates a single control block binary.

2. App Binary: IAR embedded work bench creates this binary file for specific application.

3. App Map file: IAR embedded work bench creates this map file along with the App binary

file. This file is used for compressing the App binary.

4. Wlan.bin: This is the wireless LAN binary which is run in WLAN CPU.

Page 8: GS2K Firmware Builder Tool User Guide€¦ · GS2K Firmware Builder Tool User Guide 1VV0301436 Rev. 1 Page 7 of 14 2015-02-01 Chapter 1. Introduction The GainSpan firmware builder

GS2K Firmware Builder Tool User Guide

1VV0301436 Rev. 1 Page 8 of 14 2015-02-01

5. WebImage.bin: This binary contains a combination of multiple files such as html, java

script and CSS files.

Page 9: GS2K Firmware Builder Tool User Guide€¦ · GS2K Firmware Builder Tool User Guide 1VV0301436 Rev. 1 Page 7 of 14 2015-02-01 Chapter 1. Introduction The GainSpan firmware builder

GS2K Firmware Builder Tool User Guide

1VV0301436 Rev. 1 Page 9 of 14 2015-02-01

Chapter 2. Configuration File

The Configuration file (SingleImageBuilderConfig.txt) consists of various input and output configurations required to create a single firmware image.

The following table lists the input and output configuration parameters in “SingleImageBuilderConfig.txt”:

No. Parameters Sub Parameters Description

1

Versions:

This section is used to configure

respective versions for Application,

GEPS, and WLAN firmwares. It

contains the following parameters:

• appVersion

• gepsVersion

• wlanVersion

The respective versions are to be

manually verified from the header

files and updated.

appVersion

It specifies the version of the

application used.

Example: appVersion=5.2.0.1

gepsVersion

It specifies the version of the GEPS

used.

Example: gepsVersion=5.2.0.2

Wlanversion

It specifies version of the WLAN

used.

Example: wlanVersion=5.2.0.3

2

Output File:

This section contains the paths

where the Output File Should be

Placed. There are 3 Output files

generated in the process of Single

Image Binary Creation

• outputSingleImageFile

• outputAppImageFile

• outputCtlBlockFile

outputSingleImageFile

It specifies the output path and

filename of the generated single

firmware image.

outputAppImageFile It specifies the filename of the

generated application image.

outputCtlBlockFile It specifies the filename of the

generated control block image.

3

Maximum Binary Size:

This section contains the maximum

allowable binary sizes. Application

Binary and Final Single Image

binary sizes are defined in this

section.

• maxSingleImageSize

• maxAppImageSize

maxSingleImageSize

It specifies the maximum space

available for the single firmware

image. This parameter is dependent

on the size of the flash and the super

block used.

It is calculated as:

maxSingleImageSize= (ctrl block 2

offset) - (ctrl block 1 offset)

maxAppImageSize

It specifies maximum space that is

available for the application image.

It is calculated as:

maxAppImageSize = (wlanOffset) –

(appImageOffset)

4 Application image related

information: appBin

It specifies the location of the

uncompressed application binary

generated by the IAR compiler.

Page 10: GS2K Firmware Builder Tool User Guide€¦ · GS2K Firmware Builder Tool User Guide 1VV0301436 Rev. 1 Page 7 of 14 2015-02-01 Chapter 1. Introduction The GainSpan firmware builder

GS2K Firmware Builder Tool User Guide

1VV0301436 Rev. 1 Page 10 of 14 2015-02-01

No. Parameters Sub Parameters Description

This section is used to configure the

following application image related

parameters.

• appBin

• appMap

• appImageOffset

• fptOffset

• startUpCodeOffset

• autoCacheCodeOffset

• appProgramStartAddr

• startUpCodeReservedSize

• startUpCodeEntryFunc

• startUpCodeSramAddr

appMap

It specifies the location of the

application map file generated by the

IAR compiler.

appImageOffset

It specifies the offset at which the

application image is placed in the

single firmware image. This offset is

calculated with respect to the

beginning of the control block.

fptOffset

It specifies the section placement for

Function Pointer Table (FPT) within

application image. This offset is

calculated with respect to the

beginning of the application image

which is 0x00.

startUpCodeOffset

It specifies the section placement for

startup code within application image.

This offset is calculated with respect

to the beginning of the application

image which is 0x00.

autoCacheCodeOffset

It specifies the section placement for

auto cache code within application

image. This offset is calculated with

respect to the beginning of the

application image which is 0x00.

appProgramStartAddr It specifies Program Start Address

specified in the icf file.

startUpCodeReservedSize

It specifies the reserved size for

startup code. This information is used

during the Control block creation

(App Block Descriptor).

startUpCodeEntryFunc

It specifies the entry function of the

startup code. This information is used

during the Control block creation

(App Block Descriptor).

startUpCodeSramAddr

It specifies the SRAM address of the

startup code. This information is used

during the Control block creation

(App Block Descriptor).

5

Applet information:

Applet is an independent binary that

is loaded and run by the Application

as per requirement.

This section is used to configure

the following Applet related

parameters.

• appletId

• appletBin

• appletMap

• appletEntryFunc

appletId It specifies the applet ID if multiple

applets are used.

appletBin

It specifies the location of the

uncompressed applet binary

generated by the IAR compiler.

appletMap

It specifies the location of the applet

map file generated by the IAR

compiler.

appletEntryFunc

It specifies the name of the entry

function that is called after being

loaded by the application.

Page 11: GS2K Firmware Builder Tool User Guide€¦ · GS2K Firmware Builder Tool User Guide 1VV0301436 Rev. 1 Page 7 of 14 2015-02-01 Chapter 1. Introduction The GainSpan firmware builder

GS2K Firmware Builder Tool User Guide

1VV0301436 Rev. 1 Page 11 of 14 2015-02-01

No. Parameters Sub Parameters Description

6

WLAN binary related information:

This section is used to configure the

following WLAN binary related

parameters.

• wlanImage

• wlanOffset

• wlanBlockDescTableFile

• wlanBlockDescTableSize

wlanImage It specifies the path of the WLAN

binary.

wlanOffset

It specifies the offset at which the

WLAN binary is placed in the single

firmware image.

wlanBlockDescTableFile

It specifies the location of WLAN

block descriptor table file which is

used to create the control block.

wlanBlockDescTableSize It specifies the size of WLAN block

descriptor table.

7

WebImage binary related

information:

This section is used to configure the

following web image related

parameters.

• webImage

• webImagesize

• webImageOffSet

webImage It specifies the path of the web image.

webImagesize It specifies the size of the web image.

webImageOffSet

It specifies the offset at which the web

image is placed in the single firmware

image.

Table 1: Configuration File Parameters

Page 12: GS2K Firmware Builder Tool User Guide€¦ · GS2K Firmware Builder Tool User Guide 1VV0301436 Rev. 1 Page 7 of 14 2015-02-01 Chapter 1. Introduction The GainSpan firmware builder

GS2K Firmware Builder Tool User Guide

1VV0301436 Rev. 1 Page 12 of 14 2015-02-01

Chapter 3. GainSpan Firmware Builder Tool

To create a single firmware image, the GainSpan firmware builder uses the “SingleImageBuilderConfig.txt” file as input and sequentially performs the following activities:

1. Application image creation

2. Control block generation

3. Single firmware image creation

3.1 SINGLE FIRMWARE IMAGE GENERATION

This section provides the prerequisites and procedure for single firmware image generation.

Prerequisites

The following are the prerequisites to generate a single firmware image:

• GainSpan Single Image firmware builder tool (gs2kSingleImageBuilder.exe)

• Configuration file (SingleImageBuilderConfig.txt)

Procedure

The steps involved to create a single firmware image using the GainSpan firmware tool is as follows:

1. Configure the “SingleImageBuilderConfig.txt” file with the required information and

place it in the respective build directory along with the GainSpan firmware builder tool

(gs2kSingleImageBuilder.exe).

2. Execute the following command for creating the single Image.

gs2kSingleImageBuilder.exe SingleImageBuilderConfig.txt

Page 13: GS2K Firmware Builder Tool User Guide€¦ · GS2K Firmware Builder Tool User Guide 1VV0301436 Rev. 1 Page 7 of 14 2015-02-01 Chapter 1. Introduction The GainSpan firmware builder

GS2K Firmware Builder Tool User Guide

1VV0301436 Rev. 1 Page 13 of 14 2015-02-01

3.2 SINGLE FIRMWARE IMAGE MAP

The following figure depicts the memory map of a single firmware image:

Figure 2: Single Firmware Image Map

Page 14: GS2K Firmware Builder Tool User Guide€¦ · GS2K Firmware Builder Tool User Guide 1VV0301436 Rev. 1 Page 7 of 14 2015-02-01 Chapter 1. Introduction The GainSpan firmware builder