Document number
205065
Version
Rev. N
Issue date
2019-02-04
Sirius OBC and TCM User Manual
Page
142
of
174
In case an invalid Space packet length is encountered or a Space CRC error occurs in a
memory segment during download, the rest of the segment will be downloaded with packet
errors and the download will re-synchronise at the start of the next segment.
If a download is started at the end of a partition that is simultaneously written to and the
amount of data is beyond the current content of the partition from that point, the download
will download only the data available at the time that the download command is issued,
regardless of the data written to the partition during download.
Data will normally be downloaded in chunks equal to the segment size set for the partition.
It's possible to start and end a download on an uneven segment boundary, but then it's the
responsibility of the user to make sure it starts and ends on even PUS packet boundaries.
See also information in chapter 7.9.1.3on padding of data.
A download will not automatically free any data.
The RMAP write command data format is described in Table 7-72.
Table 7-72 MMDownloadPartitionData data.
Byte
Type
Description
0-3
UINT32
Address of the data to download
4-11
UINT64
Length in bytes to download
The RMAP reply status (if a reply is requested) will be the first error encountered during a
single segment download, i.e. all segment downloads has to be sent without fault for
Success to be returned.
Table 7-73 MMDownloadPartitionData data status codes
Status code
Description
0
Success.
ENOSPC
Not enough data on partition.
Note!
It's allowed to
request download of more data than is available on
the partition. This error code will then be returned
and to see the actual amount of data downloaded,
use the MMDownloadStatus command.
EINVAL
Invalid partition number.
EIO
I/O error. Failed to access storage or NVRAM.
EALREADY
A download session is already in progress on this
partition.
EBADMSG
Data was not successfully downloaded on downlink.
7.12.4.24. MMFree
Frees memory of a partition. The MMFree operation behaves differently depending on the
mode of the partition targeted.
Direct mode - The address and length given in the RMAP command together defines which
memory area should be freed.