CLASSIC
Modul: frtrcv
Rolle: constitutive
Konfidenz: 95%
SNIP_CLASSIC_FRTRCV_SECTION_8_3_4_FrTrcv_GetTransceiverWUReason
Wortlaut
8.3.4 FrTrcv_GetTransceiverWUReason
[SWS_FrTrcv_00325] Definition of API function FrTrcv_GetTransceiverWUReason ⌈
Service Name
FrTrcv_GetTransceiverWUReason
Syntax
Std_ReturnType FrTrcv_GetTransceiverWUReason (
uint8 FrTrcv_TrcvIdx,
FrTrcv_TrcvWUReasonType* FrTrcv_TrcvWUReasonPtr
)
Service ID [hex]
0x06
Sync/Async
Synchronous
Reentrancy
Reentrant
Parameters (in)
FrTrcv_TrcvIdx
This zero based index identifies the transceiver within the context
of the transceiver driver to which the API call has to be applied.
Parameters (inout)
None
Parameters (out)
FrTrcv_TrcvWUReasonPtr
Pointer to structure of least recent wakeup source, the FlexRay
transceiver driver will write the transceiver wakeup reason
information.
Return value
Std_ReturnType
E_OK: will be returned if the transceiver wake up source has been
provided
E_NOT_OK: will be returned if the transceiver wakeup reason is
not defined in FrTrcv_TrcvWUReasonType. Output parameters
remain unchanged.
Description
This function returns the wakeup reason.
Available via
FrTrcv.h
⌋
[SWS_FrTrcv_00232]
Upstream requirements: SRS_Fr_05144
⌈The function FrTrcv_GetTransceiverWUReason shall return the reason for the wake
up that the FlexRay transceiver identified by FrTrcv_TrcvIdx has detected if supported
by hardware.
The ability to detect and differentiate the possible wake up reasons depends strongly
on the FlexRay transceiver hardware.⌋
[SWS_FrTrcv_00284]
⌈In
case
of
a
fault
during
transceiver
access,
the
function
FrTrcv_GetTransceiverWUReason
shall
raise
runtime
error
FRTRCV_E_FR_NO_CONTROL_TRCV (see also [SWS_FrTrcv_00237]).⌋
Please be aware, that if more than one bus is available, each bus may report a different
wake up reason. E.g. if an ECU has FlexRay, a wake up by FlexRay may occur and
the incoming data may cause an internal wake up for another FlexRay bus.
[SWS_FrTrcv_00453] ⌈The FlexRay Transceiver Driver shall report the wake up reason in the order defined by [SWS_FrTrcv_00074].Thus, FRTRCV_WU_BY_BUS is reported first in case of multiple concurrent events.⌋
The FlexRay bus transceiver driver has a "per bus" view and does not vote the more
important reason or sequence internally. The same may be true if e.g. one transceiver
controls the power supply and the other is just powered or un-powered. Then one
may be able to return "FRTRCV_WU_POWER_ON" whereas the other may state e.g.
"FRTRCV_WU_RESET".
It is up to the EcuM and the ComM, to decide what shall happen with that wake up
information.
[SWS_FrTrcv_00282]
⌈If
development
error
detection
of
the
module
FrTrcv
is
enabled:
if
the
parameter
FrTrcv_TrcvIdx
is
out
of
range,
the
function
FrTrcv_GetTransceiverWUReason
shall
raise
the
development
error
FRTRCV_E_FR_INVALID_TRCVIDX.⌋
[SWS_FrTrcv_00283]
⌈If
development
error
detection
of
the
module
FrTrcv
is
enabled:
if
the
transceiver
has
not
been
initialized,
the
function
FrTrcv_GetTransceiverWUReason
shall
raise
the
development
error
FRTRCV_E_UNINIT.⌋
[SWS_FrTrcv_00398] ⌈When the caller provides a NULL pointer as a parameter value to the API FrTrcv_GetTransceiverWUReason, the development error
FRTRCV_E_PARAM_POINTER shall be reported to DET if development error detection is enabled.⌋
Versionen & Provenienz · Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.
Begründung & Zuweisungs-Evidenz
Cited verbatim in the snippet (deterministic citation).
Dokumenten-Herkunft & Rückverfolgbarkeit
| Spezifikations-Dokument | SWS_FlexRayTransceiverDriver.pdf |
|---|---|
| Dokumentseite | Seite 42 |
| Ziel-Modul | frtrcv (classic) |
| Ziel-Anforderung | SWS_Std_00005 |
| Semantische Rolle | constitutive |
| Automatisierungs-Konfidenz | 0.95 |