Document number
205065
Version
Rev. N
Issue date
2019-02-04
Sirius OBC and TCM User Manual
Page
79
of
174
application of the ccsds-driver must implement a listener of the message queue
and take actions if an error occurred during transfer.
7.
. Steps 4 to 6 are repeated for all VC’s signaling an interrupt.
5.9.3. Blocking
In blocking mode for the RTEMS divier, a DMA finished interrupt must occur before the write
call is returned. The user of the driver does not need to prepare any transfer list or
implement a listener of the message queue.
5.9.4. Buffer data containing TM Space packets
TM Space packets can be packed within the same buffer, but a TM Space packet must not
be split over two different buffers. The first byte of the buffer must always start with a TM
Space packet. Data can be padded at the end, with padding byte value of 0xF5. The
padding data will not be sent to ground.
5.9.5. RTEMS API
This API represents the driver interface from a user applicatio
n’s perspective for the RTEMS
driver.
The driver functionality is accessed through the RTEMS POSIX API for ease of use. In case
of failure on a function call,
errno
value is set for determining the cause.
Access to the CCSDS-driver from an application is provided by different device-files:
•
“/dev/ccsds” that is used for configuration and status for common TM and TC
functionality in the IP. Is defined as CCSDS_NAME in RTEMS driver interface file.
•
“/dev/ccsds
-
tm” that is used for configuration and status of th
e TM path common for all
virtual channels. Is defined as CCSDS_NAME_TM in RTEMS driver interface file.
•
“/dev/ccsds
-
tm0”, “/dev/ccsds
-
tm1”, …,”/dev/ccsds
-
tm6” that are used for sending
telemetry on virtual channel 0-6. The names are defined as CCSDS_NAME_TM_VC0,
CCSDS_NAME_TM_VC1, …, CCSDS_NAME_TM_VC6
in RTEMS driver interface file.
•
“/dev/ccsds
-
tc” ” that is used for configuration and status of the TC path common for all
virtual channels. Is defined as CCSDS_NAME_TC in RTEMS driver interface file.
•
“/dev/cc
sds-
tc0” that is used for functions related to handling of Telecommands. Is
defined as CCSDS_NAME_TC_VC0 in RTEMS driver interface file.