# -----------------------------------------------------------------------------
# Copyright (c) 2006
# Siemens Home and Office Communication Devices GmbH & Co. KG (SHC)
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# 1. Redistributions of source code must retain the above copyright
#    notice, this list of conditions and the following disclaimer.
# 2. Redistributions in binary form must reproduce the above copyright
#    notice, this list of conditions and the following disclaimer in the
#    documentation and/or other materials provided with the distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
# -----------------------------------------------------------------------------

# -----------------------------------------------------------------------------
This is a release of the Gigaset C450IP project prepared to be built in
a GNU environment.

IMPORTANT NOTICE:

This environment is provided to enforce your right to use the LGPL-licensed
open source libraries as stated in the 'GNU Lesser General Public License'
(the text of which is also included in this distribution).

If however you are a normal user who is only looking for the newest firmware
update for your product, this distribution is NOT what you need: You should
run the update procedures provided in the handset user interface or in the
product's Configuration Browser instead!

Note that improper modifications to the distribution can produce executables
which will not run properly when downloaded into the Gigaset product, or
which can even render the product useless! In such cases, you will have to
ship your Gigaset product to our service department for re-programming AT YOUR
OWN EXPENSE!

# -----------------------------------------------------------------------------

BUILDING THE DISTRIBUTION

*** Read the IMPORTANT NOTICE above first ***

All open-source parts of the project are made available in source-code in the
'open' subtree.

In order to build, invoke 'make' in the local directory.
Per default the project will be built with all components delivered
in the 'vendor' subtree.

If you want to do modifications in the 'open' tree on your own,
you must change the BUILD_VENDOR variable in the local Makefile. Then the
generated objects in the 'open' tree will go into the build instead of the
'vendor' ones.

A toolchain installation description can be found under
vendor/toolchain/BlueBird_GNUARM.

The final result of make is the executable 'chagall_bs_download_image.bin'.

# -----------------------------------------------------------------------------

LOADING THE EXECUTABLE

*** Are you sure you read the IMPORTANT NOTICE above first? ***

In order to download the executable into the Gigaset product, you need to
set up an HTTP server and perform the following steps:

1) Set up the HTTP server; you can for instance install an Apache server
   (http://httpd.apache.org/). Details of how to properly install such
   a server are outside the scope of this distribution. But you can easily
   find many useful instructions in the internet if you do a search for
   e.g. 'apache linux'.

2) Copy the executable you produced in 'BUILDING THE DISTRIBUTION' into the
   HTTP server's document directory.

3) Connect you Gigaset product to your local network in such a manner that
   it can access your HTTP server. Let's assume your HTTP server has been
   assigned the IP address 192.168.1.2 in your local network.

4) Open your Gigaset product's Configuration Browser, enter your 'system pin'
   and then select the 'Status' section.
   (if you are unfamiliar with all of this, you should consult your Gigaset
    product's user manual first).
   Now, write down and save the 'Firmware version' of the Software, specifically
   the first 5 digits, for instance '01024'. You will need them later to
   restore your original firmware!!!

5) Open your Gigaset product's Configuration Browser, enter your 'system pin'
   and then select the 'Settings->Miscellaneous' section.
   (if you are unfamiliar with all of this, you should consult your Gigaset
    product's user manual first).
   In the field 'User defined firmware file' enter the URL of the executable
   your created above, for example:
         192.168.1.2/chagall_bs_download_image.bin

6) Press the 'Update Firmware' button on the web page.
   The Chagall product will now check the basic version of your executable,
   and if everything is ok, it will start downloading your executable and
   re-program the product.

# -----------------------------------------------------------------------------

RELOADING THE ORIGINAL FIRMWARE

1) Open your Gigaset product's Configuration Browser, enter your 'system pin'
   and then select the 'Settings->Miscellaneous' section.

   In the field 'User defined firmware file' enter the following URL:
           gigaset.siemens.com/chagall/x/chagallyyy_zz.bin

   where x, yyy and zz are digits from the original Firmware version you
   saved in step 4) of the section 'LOADING THE EXECUTABLE' shown above:

   x = 1st and 2nd digit, but without leading 0: in our example: 1
   yyy = 3rd to 5th digit: in our example 024
   zz = 1st and 2nd digit: in our example: 01
   The correct URL in our example would then be:
           gigaset.siemens.com/chagall/1/chagall024_01.bin

2) Press the 'Update Firmware' button on the web page.
   If everything is ok, the Chagall product will start downloading the original
   executable and re-program the product.

# EOF
