Document number
205065
Version
Rev. N
Issue date
2019-02-04
Sirius OBC and TCM User Manual
Page
21
of
174
3.7. Re-initialising the NVRAM
In some situations, it may be desirable to clear and re-initialise the NVRAM from scratch, for
example if a test application has written data to the NVRAM which does not match the
expected format for the system flash bad block table.
Clearing the NVRAM will cause loss of the following data, which should be read out, backed
up, and written back after re-initialising if critical:
•
Bad block markings for discovered bad blocks in the system flash (Both OBC-S
and TCM-S), may degrade reliability if cleared.
•
Bad block markings for discovered bad blocks in the mass memory (TCM-S with
TCM core application), may degrade reliability if cleared.
•
Ongoing operation markers for the mass memory handler (TCM-S with TCM core
application), may cause partial loss of stored partition data if cleared.
•
Internal write pointers for the mass memory handler (TCM-S with TCM core
application), may case loss of start and end location in a completely full partition if
cleared.
The following steps are required in order to clear and re-initialise the NVRAM:
1. Compile and run the
nvram_clear
application using the debugger. This
application is located in the
src/example/
directory in the OBC-S or TCM-S BSP;
the steps for compiling it are described in section 4.1.
This will clear the NVRAM.
2. Program a boot image to the system flash as described in section 3.6.
This will initialize the system flash bad block table in the NVRAM.
The following additional steps are needed to re-initialisie the TCM-S with the TCM core
application:
3. Compile and run the
board_initialiser
application using the debugger. This
application is located in the
src/nv_config/src/board_initialiser/
directory in the TCM-S BSP; it is compiled as an RTEMS application in a similar
fashion as the example applications described in section 4.1.
This will initialize the mass memory bad block table in the NVRAM.
4. Compile and run the nv_config utility as described in section 7.4.1
This will initialize the NVRAM configuration parameters.
4. Software development
The RTEMS OS is the recommended way to develop and deploy applications to the Sirius
products.