CLASSIC
Modul: ecum
Rolle: constitutive
Konfidenz: 95%
SNIP_CLASSIC_ECUM_SECTION_8_3_1_FrTrcv_Init
Wortlaut
8.3.1 FrTrcv_Init
[SWS_FrTrcv_00322] Definition of API function FrTrcv_Init ⌈
Service Name
FrTrcv_Init
Syntax
void FrTrcv_Init (
const FrTrcv_ConfigType* ConfigPtr
)
Service ID [hex]
0x00
Sync/Async
Synchronous
Reentrancy
Non Reentrant
Parameters (in)
ConfigPtr
Pointer to the selected configuration set.
Parameters (inout)
None
Parameters (out)
None
Return value
None
Description
This service initializes the FrTrcv.
Available via
FrTrcv.h
⌋
[SWS_FrTrcv_00008] Initialization interface
Upstream requirements: SRS_BSW_00101
⌈The FlexRay transceiver driver initializes variables and hardware resources in a separate initialization function. This function shall be named FrTrcv_Init().
Note: According to [SWS_EcuM_02562]: Drivers which serve wakeup sources must be
re-initialized in the restart block. The driver restart shall re-arm the trigger mechanism
of the ’wakeup detected’ call-back.⌋
[SWS_FrTrcv_00228] Initialization Sequence for FlexRay Transceiver Driver
Upstream requirements: SRS_Fr_05134
⌈The FlexRay Transceiver Driver shall support the configuration sequence of the AUTOSAR stack.
To start the ECU from power-up or reset, a fixed sequence of driver and manager
initialization is necessary to reach the required startup times and to set the FlexRay
stack into working state. The sequence itself depends on many requirements, partly
dependent on the FlexRay controller and the power supply concept⌋
[SWS_FrTrcv_00230] Initialize the FlexRay Transceiver Driver
Upstream requirements: SRS_Fr_05137
⌈The FlexRay Transceiver Driver shall provide an API to initialize the driver internally
and set then all attached FlexRay Transceivers in their preselected operation modes.
• The FlexRay Transceiver Driver must be initialized during the power-up/reset sequence of the ECU.
• Depending on the used drivers to control the transceivers (e.g. DIO, SPI), they
must be already available and working when the FlexRay Transceiver Driver is
initialized.
• The wake-up reason has to be detected and stored during the execution of the
driver initialization, too.
⌋
[SWS_FrTrcv_00270] ⌈The function FrTrcv_Init shall set all transceivers in the state
defined by the configuration parameter FRTRCV_INIT_STATE, i.e. in any state defined
by [SWS_FrTrcv_00434].⌋
Note that in the time span between power up and the call FrTrcv_Init the FlexRay
transceiver hardware may be in a different state. This depends on hardware and SPAL
driver configuration.
The initialization sequence after reset (e.g. power up) is a critical phase for the FlexRay
transceiver driver.
Note: Before calling FrTrcv_Init the environment insures that all SPAL drivers used by
the FrTrcv module to access the transceiver hardware are initialized and usable.
[SWS_FrTrcv_00437] ⌈In case of a fault during transceiver access, the initialization process shall be restarted from the beginning.
It shall be retried until the retry counter exceeds the number specified by FrTrcvRetryCountInInit.
If
the process doesn’t succeed, the function FrTrcv_Init shall raise a runtime error
FRTRCV_E_FR_NO_CONTROL_TRCV (see also [SWS_FrTrcv_00237]).⌋
[SWS_FrTrcv_00390] ⌈If the configuration parameter FrTrcvErrorCheckInInit is
set true,
the function FrTrcv_Init shall check state of ERRN to detect hardware failure.
If an error is detected, FrTrcv_Init shall raise a production error
FRTRCV_E_FR_ERRN_TRCV_<TrcvIdx>.⌋
[SWS_FrTrcv_00438] ⌈The function FrTrcv_Init shall check whether there has been
a wake up due to transceiver activity if supported by hardware and report this to the
EcuM via EcuM_SetWakeupEvent(event).⌋
[SWS_FrTrcv_00362] ⌈The driver has to notify ECU State Manager by invoking the
EcuM_SetWakeupEvent service once only if a wakeup event is detected.⌋
[SWS_FrTrcv_00363] ⌈The driver has to detect a pending wakeup event during the
initialization.⌋
[SWS_FrTrcv_00065]
Upstream requirements: SRS_BSW_00358
⌈The return type of init() functions implemented by AUTOSAR Basic Software Modules
shall be void.⌋
[SWS_FrTrcv_00366] ⌈The driver restart shall re-arm the trigger mechanism of the
’wakeup detected’ call-back i. e. wake up events are enabled at driver initialization if
configured accordingly and supported by hardware.⌋
[SWS_FrTrcv_00367] ⌈The FlexRay Transceiver Driver driver shall support a wakeup
ISR if supported by hardware.⌋
[SWS_FrTrcv_00414] Hardware Resetting Function on Bus Driver
Upstream requirements: SRS_Fr_05214
⌈The FlexRay Transceiver Driver shall provide a method that reinitializes BD’s functionality⌋
Hint: When trouble occurs in the hardware level, it is likely to fix the cause by resetting
the hardware. This function shall be executed when a configurable amount of errors
are detected in by the FlexRay modules and have been reported to DEM.
[SWS_FrTrcv_00455] ⌈If a transceiver is in active star mode and one or more
branches have been disabled, the FlexRay Transceiver Driver shall re-enable all
branches on initialization.⌋
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 37 |
| Ziel-Modul | ecum (classic) |
| Ziel-Anforderung | SWS_FrTrcv_00455 |
| Semantische Rolle | constitutive |
| Automatisierungs-Konfidenz | 0.95 |