summaryrefslogtreecommitdiff
path: root/cleopatre
diff options
context:
space:
mode:
authorOlivier Dufour2013-02-14 17:33:56 +0100
committerOlivier Dufour2013-02-14 18:05:32 +0100
commit8672c16cefb9afd6c593774b03b27c40580ea37e (patch)
tree7d68ccf4d360d8c6a034c317f4bebe332c99eca9 /cleopatre
parent3369809a93b50ae0db2a9e95a52bc39930cf6cd7 (diff)
cleo/doc/autoswitch: add documentation for autoswitch, closes #3656
Diffstat (limited to 'cleopatre')
-rw-r--r--cleopatre/doc/autoswitch/Makefile7
-rw-r--r--cleopatre/doc/autoswitch/autoswitch.rst186
-rw-r--r--cleopatre/doc/autoswitch/figures.pngbin0 -> 28800 bytes
-rw-r--r--cleopatre/doc/autoswitch/final_bench.pngbin0 -> 15954 bytes
-rw-r--r--cleopatre/doc/autoswitch/master_switch.pngbin0 -> 16987 bytes
-rw-r--r--cleopatre/doc/autoswitch/setup_dual.pngbin0 -> 15950 bytes
-rw-r--r--cleopatre/doc/autoswitch/setup_single.pngbin0 -> 17177 bytes
-rw-r--r--cleopatre/doc/autoswitch/update.pngbin0 -> 16978 bytes
8 files changed, 193 insertions, 0 deletions
diff --git a/cleopatre/doc/autoswitch/Makefile b/cleopatre/doc/autoswitch/Makefile
new file mode 100644
index 0000000000..4beb719f26
--- /dev/null
+++ b/cleopatre/doc/autoswitch/Makefile
@@ -0,0 +1,7 @@
+GLOSSARY=y
+
+BASE = ../../..
+
+DOCS = autoswitch
+
+include $(BASE)/common/doc/template/doc.mk
diff --git a/cleopatre/doc/autoswitch/autoswitch.rst b/cleopatre/doc/autoswitch/autoswitch.rst
new file mode 100644
index 0000000000..916299531c
--- /dev/null
+++ b/cleopatre/doc/autoswitch/autoswitch.rst
@@ -0,0 +1,186 @@
+|Title| - |Version|
++++++++++++++++++++
+
+.. |Title| replace:: Autoswitch procedure for MSE500/200.
+.. |Version| replace:: 1.0
+
+.. include:: header.rst
+
+Foreword
+========
+
+This document describes the main features of the autoswitch mechanism, and how
+to apply it to a MSE500/200 bench. A validation scenario is also given to
+illustrate the different use cases.
+
+.. include:: glossary.rst
+
+Purpose
+=======
+
+The autoswitch procedure allows a MSE500 based board to boot either in 500/500
+or 500/200 mode with a single bootloader/NVRAM version (see Requirements). It is
+meant to be a seemless transition during the update process.
+
+The autoswitch procedure is activated on slave board only, when two different
+image types are found on the board, and both are bootable. This means that the
+following configurations are in autoswitch mode disabled:
+
++----------+-----------+
+| Current | Alternate |
++==========+===========+
+| 200 | 200 |
++----------+-----------+
+| 200 | NULL |
++----------+-----------+
+| 500 | 500 |
++----------+-----------+
+| 500 | NULL |
++----------+-----------+
+
+And the following configurations are in autoswitch mode enabled:
+
++----------+-----------+
+| Current | Alternate |
++==========+===========+
+| 200 | 500 |
++----------+-----------+
+| 500 | 200 |
++----------+-----------+
+
+As the update procedure always replaces the alternate image slot, here is a
+summary of the possibilities to activate it by updating with the Update image:
+
++----------+-----------+----------+
+| Current | Alternate | Update |
++==========+===========+==========+
+| 200 | 200 | 500 |
++----------+-----------+----------+
+| 200 | NULL | 500 |
++----------+-----------+----------+
+| 500 | 500 | 200 |
++----------+-----------+----------+
+| 500 | NULL | 200 |
++----------+-----------+----------+
+
+On the other hand, to disable it, the possibilites are:
+
++----------+------------+------------+
+| Current | Alternate | Update |
++==========+============+============+
+| 200 | 500 | 200 |
++----------+------------+------------+
+| 500 | 200 | 500 |
++----------+------------+------------+
+
+Requirements
+============
+
+- MSE500 based board, with at least 8MB of flash memory (we are currently not
+ able to support autoswitch on 4MB flash)
+
+- u-boot supporting autoswitch (not supported prior to eoc-drv-2.0.14/polux-5.0.5)
+
+- MSE500 500 capable NVRAM, with 2 images (such NVRAM is
+ not supported prio to eoc-drv-2.0.13/polux-5.0.5)
+
+- autoswitch capable flashfs (not supported prior to eoc-drv-2.0.14/polux-5.0.5)
+
+- MSE500/500 and MSE500/200 images autoswitch capable (not supported prior to eoc-drv-2.0.14/polux-5.0.5)
+
+- MSE500/200 master must have whitelist enabled, and all slaves must be able
+ to communicate with the master.
+
+Validation scenario
+===================
+
+Initial setup
+-------------
+
+Initial setup of the bench requires a master and its slave in MSE500/200 mode,
+able to communicate. The convention for all the following figures are the
+following :
+
+- 200 stands for a MSE500/200 linux image
+
+- 500 stands for a MSE500/500 linux image
+
+- NULL stands for an empty image slot
+
+- We consider that initially the boards are booting on the first image slot
+
+Both scenarii are acceptable:
+
+.. image:: setup_single.png
+
+.. image:: setup_dual.png
+
+Autoswitch activation
+---------------------
+
+To activate the autoswitch on the slaves, just update
+the slaves with a MSE500/500 linux image. After completing update, the slaves
+will boot the MSE500/500 image, and if the update was successful, they will
+try to authenticate with the master.
+
+Here is an example of the procedure, with all the commands that will be useful
+to check the behavior of the boards.
+
+Before starting the update, check the status of the slaves. To do so, connect
+to the master (telnet or serial), login "root", password "rootplc". Then do as
+follow:
+
+::
+
+ smm all image_info
+
+To update the slaves, do as follow:
+
+::
+
+ cd /tmp
+ ftpget -u $USER -p $PASSWORD $FPTSERVER_IP file file
+ smm all update /tmp/file
+
+Check that the update was successful and reboot:
+
+::
+
+ smm all image_info
+ smm all reboot
+
+The slaves will reboot on the new image. Authentification will fail, as the
+master is still running a MSE500/200 image, and the slave will then after a
+short while (60s after boot) reboot in MSE500/200 mode.
+
+.. image:: update.png
+
+To make sure the autoswitch process is working, shut down the master. The
+slave should switch of image every minute, until they are attached to a
+master. If you power on the master at any time, the slaves will stop rebooting
+once they are in MSE500/200 mode.
+
+Switching to MSE500/500
+-----------------------
+
+Once you are sure all slaves can boot and stabilize in MSE500/500 mode, you
+can update the master with a MSE500/500 linux image, and reboot it. The slaves
+should then boot in MSE500/500 mode, and attach to the master.
+
+.. image:: master_switch.png
+
+End of procedure
+----------------
+
+To check the current status of the slaves, use hpav_test to get the software
+version, with the following command :
+
+::
+
+ sudo hpav_test test_mme spid_vs_get_version_req 1 ff:ff:ff:ff:ff:ff
+
+At this point, your bench should be stable in MSE500/500 mode. To prevent your
+slaves from rebooting when they loose attachement to the master, update them
+once again with a MSE500/500 image, which will disable autoswitch.
+
+.. image:: final_bench.png
diff --git a/cleopatre/doc/autoswitch/figures.png b/cleopatre/doc/autoswitch/figures.png
new file mode 100644
index 0000000000..bf0d1a4d88
--- /dev/null
+++ b/cleopatre/doc/autoswitch/figures.png
Binary files differ
diff --git a/cleopatre/doc/autoswitch/final_bench.png b/cleopatre/doc/autoswitch/final_bench.png
new file mode 100644
index 0000000000..66f515f0df
--- /dev/null
+++ b/cleopatre/doc/autoswitch/final_bench.png
Binary files differ
diff --git a/cleopatre/doc/autoswitch/master_switch.png b/cleopatre/doc/autoswitch/master_switch.png
new file mode 100644
index 0000000000..45dca53127
--- /dev/null
+++ b/cleopatre/doc/autoswitch/master_switch.png
Binary files differ
diff --git a/cleopatre/doc/autoswitch/setup_dual.png b/cleopatre/doc/autoswitch/setup_dual.png
new file mode 100644
index 0000000000..b01ae7fbf1
--- /dev/null
+++ b/cleopatre/doc/autoswitch/setup_dual.png
Binary files differ
diff --git a/cleopatre/doc/autoswitch/setup_single.png b/cleopatre/doc/autoswitch/setup_single.png
new file mode 100644
index 0000000000..3d377c8118
--- /dev/null
+++ b/cleopatre/doc/autoswitch/setup_single.png
Binary files differ
diff --git a/cleopatre/doc/autoswitch/update.png b/cleopatre/doc/autoswitch/update.png
new file mode 100644
index 0000000000..44677b4e0d
--- /dev/null
+++ b/cleopatre/doc/autoswitch/update.png
Binary files differ