DEENESPTFRRUARHIKOZHNL

BSW Mode Manager (BswM)

ModulBswM (BSW Mode Manager)
BSW-Modul-ID42
Standard-Header#include "BswM.h"
SWS-SpezifikationAUTOSAR_SWS_BSWModeManager.pdf
ClusterSystem Services

Modul-GuideKI-GENERIERT

Arbitriert Modusanforderungen und -anzeigen per Regeln und löst daraus Aktionen in der Basissoftware aus.
KI-GENERIERT ungeprüft Modell: claude-opus-5-5 · Aufwand: high · Temperatur: nicht steuerbar · Prompt: e6ee839f49b5 Herkunft Offene Fragen (4)
Kausaler Anker: R20-11 Gültig ab R20-11 Neu synthetisiert für diesen Spezifikationsstand.
KI-generiertclaude-opus-5-5 · 2026-10-13

Arbitriert Modusanforderungen und -anzeigen per Regeln und löst daraus Aktionen in der Basissoftware aus.

Der BSW Mode Manager nimmt Modusanzeigen von BSW-Modulen und Modusanforderungen von SW-Cs entgegen. Er arbitriert sie über konfigurierte Regeln, deren Ergebnis True- oder False-Aktionslisten auslöst [SWS_BswM_00035]. Nach BswM_Init steuert er so die weitere Initialisierung der Basissoftware, das ECU Mode Handling mit dem EcuM und die Kommunikationsfreigabe, etwa von I-PDU-Gruppen oder Ethernet-Port-Gruppen. Regeln mit BSWM_DEFERRED-Eingängen wertet BswM_MainFunction zyklisch aus, alle anderen sofort [SWS_BswM_00075]. Ungültige oder vor der Initialisierung eintreffende Anforderungen werden bei aktivem DET ignoriert und gemeldet.

Der BSW Mode Manager (BswM) ist die zentrale Arbitrierungsinstanz der Basissoftware. Er nimmt Modusanzeigen von BSW-Modulen wie EcuM, ComM, den Bus-State-Managern, NvM, DCM oder Sd entgegen, außerdem Modusanforderungen von SW-Cs. Daraus entscheidet er über konfigurierte Regeln, was geschehen soll [SWS_BswM_00035], SWS BswM S. 26. Eingänge kommen als C-APIs, als SW-C-Ports oder als Ereignisse an. Jede C-API ist über Referenzparameter einem konkreten Request-Port zugeordnet SWS BswM S. 87.

kontext cluster_melder Melder (Modusanzeigen, -anforderungen, Ereignisse) cluster_ziele Aktionsziele EcuM EcuM BswM BswM Regeln + Aktionslisten EcuM->BswM BswM_EcuM_CurrentState / RequestedState / CurrentWakeup ComM ComM ComM->BswM BswM_ComM_CurrentMode / CurrentPNCMode / InitiateReset BusSM CanSM / LinSM / FrSM / EthSM BusSM->BswM BswM_<Bus>SM_CurrentState NvM NvM NvM->BswM BswM_NvM_CurrentBlockMode / CurrentJobMode Dcm DCM / J1939Dcm Dcm->BswM BswM_Dcm_* / BswM_J1939DcmBroadcastStatus Sd Sd Sd->BswM BswM_Sd_*CurrentState Nm Nm / J1939Nm Nm->BswM BswM_Nm_* / BswM_J1939Nm_StateChangeNotification EthIfIn EthIf EthIfIn->BswM BswM_EthIf_PortGroupLinkStateChg LinTp LinTp LinTp->BswM BswM_LinTp_RequestMode WdgM WdgM WdgM->BswM BswM_WdgM_RequestPartitionReset SWC SW-Cs über RTE SWC->BswM Mode Request / Mode Notification Com Com (I-PDU-Gruppen) BswM->Com Com_IpduGroupStart / Stop EthIfOut EthIf (Port-Gruppen, StartAllPorts) BswM->EthIfOut EthIf_SwitchPortGroupRequestMode, EthIf_StartAllPorts EcuMOut EcuM (EcuM_SetState) BswM->EcuMOut EcuM_SetState RTE RTE (Mode-Switch-Ports) BswM->RTE Moduswechsel Callout BswMUserCallout BswM->Callout Aufruf

Kontextdiagramm: Viele Melder speisen den BswM; er wirkt über Aktionen auf Com, EthIf, EcuM, RTE und Callouts. Quellen: [SWS_BswM_00035], [SWS_BswM_00008], Mode-Mgmt-Guide S. 18

Eine Regel ist ein logischer Ausdruck über die aktuellen Portwerte. Je nach Ergebnis führt sie die True- oder die False-Aktionsliste aus. Aktionslisten enthalten Aktionen, verschachtelte Listen oder weitere Regeln Mode-Mgmt-Guide S. 32. Bei BSWM_IMMEDIATE wird eine Regel sofort ausgewertet. Bei BSWM_DEFERRED geschieht das in BswM_MainFunction [SWS_BswM_00075]. Regeln mit noch undefinierten Bedingungen werden nicht arbitriert SWS BswM S. 30.

arbitrierung eingang Anforderung trifft ein (C-API, Port oder Ereignis) pruefung Nur bei BswMDevErrorDetect: initialisiert und Wert im zulässigen Bereich? eingang->pruefung fehler Anforderung ignorieren, DET melden (BSWM_E_UNINIT / BSWM_E_REQ_MODE_OUT_OF_RANGE) pruefung->fehler nein ablegen Wert im BswMModeRequestPort ablegen pruefung->ablegen ja / ohne DET verarbeitung BswMRequestProcessing? ablegen->verarbeitung sofort Referenzierende Regeln sofort auswerten verarbeitung->sofort BSWM_IMMEDIATE zurueck Bis zum nächsten BswM_MainFunction-Lauf zurückstellen verarbeitung->zurueck BSWM_DEFERRED undefiniert Regel enthält undefinierte Bedingung? sofort->undefiniert zurueck->undefiniert BswM_MainFunction ignorieren Regel nicht arbitrieren undefiniert->ignorieren ja ausdruck Logischen Ausdruck auswerten undefiniert->ausdruck nein wahr True-Aktionsliste ausdruck->wahr wahr falsch False-Aktionsliste ausdruck->falsch falsch liste Einträge abarbeiten: Aktion / verschachtelte Liste / Regel wahr->liste falsch->liste liste->ausdruck referenzierte Regel

Aktivitätsdiagramm: Eine Anforderung wird geprüft, abgelegt und je nach Verarbeitungsart sofort oder zyklisch gegen die Regeln ausgewertet. Quellen: [SWS_BswM_00075], SWS BswM S. 30

Der EcuM ruft BswM_Init [SWS_BswM_00002] in der StartPostOS-Sequenz auf SWS EcuM S. 42. Danach steuert der BswM über Regeln die weitere Initialisierung bis zum Start der RTE, im Beispiel mit NvM_ReadAll und BswM_NvM_CurrentJobMode [SWS_BswM_00152], Mode-Mgmt-Guide S. 36. Beim ECU Mode Handling entscheidet allein der BswM über die Übergänge des EcuM SWS EcuM S. 99. Seit R20-11 schaltet er zusätzlich Ethernet-Port-Gruppen anhand von PNC-Zuständen Mode-Mgmt-Guide S. 49. Nach BswM_Deinit findet keine Modusverarbeitung mehr statt [SWS_BswM_00120].

Bei aktivem DET ignorieren die Eingangs-APIs Aufrufe vor der Initialisierung und melden BSWM_E_UNINIT [SWS_BswM_00080]. Werte außerhalb des zulässigen Bereichs behandeln sie ebenso und melden BSWM_E_REQ_MODE_OUT_OF_RANGE [SWS_BswM_00095]. Scheitert eine Aktion, meldet der BswM den konfigurierbaren Laufzeitfehler BSWM_E_ACTION_FAILED [SWS_BswM_00238].

Rolle des BswM: zentrale Modus-Arbitrierung der Basissoftware

Der BSW Mode Manager (BswM) nimmt Modusanforderungen und Modusanzeigen entgegen. Daraus arbitriert er über konfigurierte Regeln, welche Aktionen auszuführen sind [SWS_BswM_00035], SWS BswM S. 26. Modusanforderungen stammen meist von Anwendungs-SW-Cs, können aber auch von BSW-Modulen wie dem DCM kommen. Modusanzeigen liefern stets andere BSW-Module, etwa die busspezifischen State Manager und der EcuM. Beide Arten behandelt der BswM gleich und fasst sie unter dem Begriff „mode arbitration request“ zusammen SWS BswM S. 26.

Der BswM ist als Service-Komponente modelliert, die ECU-lokale Mode Requests bedient SWS BswM S. 48. Er hat keine Pflichtschnittstellen zu anderen Modulen [SWS_BswM_00007]. Seine Aktionen rufen Funktionen anderer BSW-Module auf. Dafür nennt die Spezifikation eine Liste optionaler Schnittstellen, etwa Com_IpduGroupStart, Com_IpduGroupStop oder die Steuerung der Empfangsüberwachung von I-PDU-Gruppen [SWS_BswM_00008], SWS BswM S. 93. Die Systemgrenze ist damit klar gezogen: Die meldenden Module berichten nur ihren Zustand. Die Reaktion darauf bestimmt allein die konfigurierte Logik im BswM Mode-Mgmt-Guide S. 32.

kontext cluster_melder Melder (Modusanzeigen, -anforderungen, Ereignisse) cluster_ziele Aktionsziele EcuM EcuM BswM BswM Regeln + Aktionslisten EcuM->BswM BswM_EcuM_CurrentState / RequestedState / CurrentWakeup ComM ComM ComM->BswM BswM_ComM_CurrentMode / CurrentPNCMode / InitiateReset BusSM CanSM / LinSM / FrSM / EthSM BusSM->BswM BswM_<Bus>SM_CurrentState NvM NvM NvM->BswM BswM_NvM_CurrentBlockMode / CurrentJobMode Dcm DCM / J1939Dcm Dcm->BswM BswM_Dcm_* / BswM_J1939DcmBroadcastStatus Sd Sd Sd->BswM BswM_Sd_*CurrentState Nm Nm / J1939Nm Nm->BswM BswM_Nm_* / BswM_J1939Nm_StateChangeNotification EthIfIn EthIf EthIfIn->BswM BswM_EthIf_PortGroupLinkStateChg LinTp LinTp LinTp->BswM BswM_LinTp_RequestMode WdgM WdgM WdgM->BswM BswM_WdgM_RequestPartitionReset SWC SW-Cs über RTE SWC->BswM Mode Request / Mode Notification Com Com (I-PDU-Gruppen) BswM->Com Com_IpduGroupStart / Stop EthIfOut EthIf (Port-Gruppen, StartAllPorts) BswM->EthIfOut EthIf_SwitchPortGroupRequestMode, EthIf_StartAllPorts EcuMOut EcuM (EcuM_SetState) BswM->EcuMOut EcuM_SetState RTE RTE (Mode-Switch-Ports) BswM->RTE Moduswechsel Callout BswMUserCallout BswM->Callout Aufruf

Kontextdiagramm: Zahlreiche BSW-Module und SW-Cs melden an den BswM; er wirkt über Aktionen auf Com, EthIf, EcuM, RTE und Benutzer-Callouts zurück. Quellen: [SWS_BswM_00035], [SWS_BswM_00008], [SWS_BswM_00202], [SWS_BswM_00270], Mode-Mgmt-Guide S. 18, SWS EcuM S. 99

Eingänge: Modusanzeigen über C-APIs, Ports und Ereignisse

Der Container BswMModeRequestSource legt fest, wie ein Eingang ankommt. Es gibt drei Arten Mode-Mgmt-Guide S. 18:

  • eine C-API, die ein BSW-Modul direkt aufruft und die der BswM intern in einen Mode Request übersetzt,
  • einen RPort mit SenderReceiverInterface (BswMSwcModeRequest),
  • einen RPort mit ModeSwitchInterface (BswMSwcModeNotification).

Für die Port-Arten erzeugt der BswM Ports nach festen Namensmustern [SWS_BswM_00201], [SWS_BswM_00200]. Die C-APIs in R20-11 lassen sich nach Herkunft gruppieren:

Jede API ist genau einem Request-Port-Typ zugeordnet. Parameter wie Network werden über Referenzparameter wie BswMCanSMChannelRef oder BswMComMChannelRef einem konkreten Port zugeordnet SWS BswM S. 87. Deshalb wird etwa eine BswMCanSMIndication je CAN-Kanal angelegt Mode-Mgmt-Guide S. 24. Alle Melde-APIs sind synchron. Mit Ausnahme von BswM_ComM_InitiateReset, das nicht reentrant ist, sind sie reentrant [SWS_BswM_00217], [SWS_BswM_00049].

Neben den zustandsbehafteten Mode-Request-Ports gibt es Event-Request-Ports. Über sie senden BSW-Module Ereignisse, etwa per BswM_ComM_InitiateReset() SWS BswM S. 102. Der BswM arbitriert sowohl auf solchen Ereignissen als auch auf deren Rücksetzen SWS BswM S. 26. Laut Änderungshistorie brachte R20-11 folgende Neuerungen SWS BswM S. 2:

  • Wiederaufnahme von BswM_EcuM_CurrentState und BswM_EcuM_RequestedState,
  • neue Benachrichtigung BswMNmStateChangeNotification,
  • Unterstützung der Ethernet-Port-Gruppen-Schaltung.

BswM_WdgM_RequestPartitionReset wird erst in R21-11 obsolet SWS BswM S. 2.

Regeln und Aktionslisten: vom Eingang zur Aktion

Das Verhalten des BswM wird über Regeln und Aktionslisten konfiguriert. Eine Regel ist ein logischer Ausdruck über die aktuellen Werte der Mode-Request-Ports. Je nach Ergebnis führt ihre Auswertung die True- oder die False-Aktionsliste aus Mode-Mgmt-Guide S. 32. Eine Aktionsliste kann enthalten SWS BswM S. 31:

  • atomare Aktionen,
  • verschachtelte Aktionslisten,
  • Verweise auf Regeln, die dann im Kontext dieser Liste ausgewertet werden.

Aktionen dürfen nur im Kontext einer Aktionsliste aufgerufen werden [SWS_BswM_00147]. Ein Schaubild der Spezifikation zeigt eine Beispielregel. Sie verknüpft per AND eine Mode-Bedingung (MyModeRequestPort gleich MODE_A) mit dem Event-Port ComMInitiateReset SWS BswM S. 25.

Wann eine Regel ausgewertet wird, bestimmt BswMRequestProcessing je Port:

  • BSWM_IMMEDIATE: Jede Regel, die den Port referenziert, wird sofort verarbeitet Mode-Mgmt-Guide S. 32. Für SW-C-Ports registriert der BswM dazu ein Runnable, das die RTE beim Datenempfang startet SWS BswM S. 48.
  • BSWM_DEFERRED: Der BswM liest den Wert zyklisch. BswM_MainFunction [SWS_BswM_00053] wertet alle Regeln aus, die mindestens einen solchen Eingang verwenden [SWS_BswM_00075].
arbitrierung eingang Anforderung trifft ein (C-API, Port oder Ereignis) pruefung Nur bei BswMDevErrorDetect: initialisiert und Wert im zulässigen Bereich? eingang->pruefung fehler Anforderung ignorieren, DET melden (BSWM_E_UNINIT / BSWM_E_REQ_MODE_OUT_OF_RANGE) pruefung->fehler nein ablegen Wert im BswMModeRequestPort ablegen pruefung->ablegen ja / ohne DET verarbeitung BswMRequestProcessing? ablegen->verarbeitung sofort Referenzierende Regeln sofort auswerten verarbeitung->sofort BSWM_IMMEDIATE zurueck Bis zum nächsten BswM_MainFunction-Lauf zurückstellen verarbeitung->zurueck BSWM_DEFERRED undefiniert Regel enthält undefinierte Bedingung? sofort->undefiniert zurueck->undefiniert BswM_MainFunction ignorieren Regel nicht arbitrieren undefiniert->ignorieren ja ausdruck Logischen Ausdruck auswerten undefiniert->ausdruck nein wahr True-Aktionsliste ausdruck->wahr wahr falsch False-Aktionsliste ausdruck->falsch falsch liste Einträge abarbeiten: Aktion / verschachtelte Liste / Regel wahr->liste falsch->liste liste->ausdruck referenzierte Regel

Aktivitätsdiagramm: Eine eingehende Anforderung wird geprüft, abgelegt und je nach Verarbeitungsart sofort oder in der MainFunction gegen die Regeln ausgewertet; Regeln mit undefinierten Bedingungen bleiben unberücksichtigt. Quellen: [SWS_BswM_00075], [SWS_BswM_00080], [SWS_BswM_00095], SWS BswM S. 30, Mode-Mgmt-Guide S. 32

Über BswMModeInitValue erhält ein Port bei der Initialisierung einen Startwert. Fehlt er, gilt die Bedingung bis zur ersten Aktualisierung als undefiniert. Regeln mit undefinierten Bedingungen werden nicht arbitriert SWS BswM S. 30. Die Beispiele des Leitfadens setzen deshalb Startwerte, etwa CANSM_BSWM_NO_COMMUNICATION für CanSM-Anzeigen Mode-Mgmt-Guide S. 24.

Für Wartezeiten bietet der BswM Timer. Ein BswMTimer ist eine interne Mode Request Source und lässt sich nur über die Aktion BswMTimerControl steuern; eine externe Schnittstelle gibt es nicht SWS BswM S. 37. Sein Ablauf SWS BswM S. 37:

  • Bei der Initialisierung werden alle Timer gestoppt.
  • BSWM_TIMER_START lädt den Timer mit BswMTimerValue und setzt BSWM_TIMER_STARTED.
  • In jedem Lauf von BswM_MainFunction wird um deren Zykluszeit dekrementiert.

Timer werden unabhängig von ihrer Konfiguration immer DEFERRED verarbeitet [SWS_BswM_00220]. Der Wert BSWM_TIMER_EXPIRED dürfte den abgelaufenen Countdown kennzeichnen. Frage Q-eba03b0a23a3c291 (offen) Dies ist eine Interpretation, denn der Abschnitt ist im Payload gekürzt SWS BswM S. 37.

timer init BswM_Init stopped BSWM_TIMER_STOPPED init->stopped alle Timer gestoppt started BSWM_TIMER_STARTED stopped->started BswMTimerAction BSWM_TIMER_START (Laden mit BswMTimerValue) started->started BswM_MainFunction: um Zykluszeit dekrementieren; erneutes BSWM_TIMER_START: nachladen expired BSWM_TIMER_EXPIRED started->expired Wert abgelaufen (Interpretation) expired->started BSWM_TIMER_START

Zustandsdiagramm: Lebenszyklus eines BswMTimer von STOPPED über STARTED bis EXPIRED, gesteuert ausschließlich durch Aktionen und die MainFunction. Quellen: [SWS_BswM_00220], SWS BswM S. 37

Neben den Funktionen aus der Liste optionaler Schnittstellen [SWS_BswM_00008] gibt es spezifische Aktionen. So ruft BswMEthIfStartAllPorts bei Ausführung EthIf_StartAllPorts auf [SWS_BswM_00286]. Frei definierte Funktionen werden als BswMUserCallout konfiguriert. Dabei werden Name und Parameter zur ECU-Konfigurationszeit festgelegt [SWS_BswM_00054], [SWS_BswM_00270].

Hochlauf, Initialisierungsketten und Herunterfahren

BswM_Init [SWS_BswM_00002] erhält einen Zeiger auf die Post-Build-Konfiguration BswM_ConfigType [SWS_BswM_00213]. Die Funktion initialisiert alle globalen Variablen. Danach ist der BswM bereit, Anforderungen zu arbitrieren. Vorausgesetzt werden nur OS und SchM SWS BswM S. 69. Der EcuM ruft BswM_Init in der StartPostOS-Sequenz nach SchM_Start() auf; danach folgen SchM_Init und SchM_StartTiming SWS EcuM S. 42. Auf Mehrkernsystemen geschieht der Aufruf in einer Schleife über jede BswM-Instanz des Kerns SWS EcuM S. 81. Für solche Mehrfachinstanzen in mehreren Partitionen oder Kernen ist BswM_Init bedingt reentrant SWS BswM S. 69.

StartPostOS: Initialisierung des BswMEcuMOsSchMBswMStartPostOS-Sequenz, aktiviert über EcuM_StartupTwoGetCoreID(CoreIdType)SchM_Start()loopjede BswM-Instanz auf diesem KernBswM_Init(ConfigPtr)globale Variablen initialisierenBswMTimer stoppen, Initialwerte setzenSchM_Init(ConfigPtr)SchM_StartTiming()periodische Ereignisse aktiv:BswM_MainFunction läuft zyklisch

Sequenzdiagramm: StartPostOS-Ablauf mit Initialisierung jeder BswM-Instanz zwischen SchM_Start und SchM_Init; danach läuft die MainFunction zyklisch. Quellen: [SWS_BswM_00002], SWS EcuM S. 42, SWS EcuM S. 78, SWS BswM S. 37

Ab hier übernimmt der BswM die Ablaufsteuerung. Er sorgt dafür, dass die übrigen Init-Routinen der Basissoftware aufgerufen und die RTE gestartet werden Mode-Mgmt-Guide S. 36. Die von ihm zu initialisierenden Module beschreibt der EcuM-Container EcuMDriverInitListBswM SWS EcuM S. 224. Im Beispiel des Leitfadens läuft die Initialisierung so ab Mode-Mgmt-Guide S. 36, NV-Data-Guide S. 20:

  1. Eine DEFERRED-Regel initialisiert die NVRAM-Treiber und stößt NvM_ReadAll an.
  2. Der NvM meldet das Ende des Auftrags über BswM_NvM_CurrentJobMode [SWS_BswM_00152].
  3. Diese Meldung löst die restliche Initialisierung und den Wechsel nach ECU_RUN aus.

Der Leitfaden zeigt für diese API noch einen uint8-Parameter ServiceId Mode-Mgmt-Guide S. 26. Maßgeblich für R20-11 ist jedoch die Signatur mit NvM_MultiBlockRequestType [SWS_BswM_00152].

Regelgesteuerte Initialisierung mit NvM_ReadAllBSW-Zyklustask (SchM)BswMNvMRTEUse Case: EcuMode = ECU_STARTUP_ONEBswM_MainFunction()Regel InitBlockII (DEFERRED) wahr:Spi/Eep/Fls initialisierenEcuMode := ECU_STARTUP_TWONvM_Init()NvM_ReadAll()loopbis der Mehrblockauftrag beendet istNvM_MainFunction()BswM_NvM_CurrentJobMode(ReadAll, NVM_REQ_OK)Auswertung sofort oder im nächstenMainFunction-Lauf je nach BswMRequestProcessingBswM_MainFunction()Regel NvMReadAllFinished wahr:restliche BSW initialisieren, EcuMode := ECU_RUNRte_Start(), Rte_Init(), Rte_StartTiming()

Sequenzdiagramm: Regelgesteuerte zweite Initialisierungsphase mit NvM_ReadAll, Rückmeldung des NvM und anschließendem RTE-Start. Quellen: [SWS_BswM_00152], [SWS_BswM_00075], Mode-Mgmt-Guide S. 36, NV-Data-Guide S. 20

Beim Herunterfahren ist der BswM laut NV-Leitfaden dafür zuständig, geänderte Blöcke zu schreiben, im Beispiel per NvM_WriteAll NV-Data-Guide S. 41. Auch den Abbruch eines WriteAll meldet ihm der NvM über die Job-Mode-Anzeige SWS NvM S. 155. In der OffPreOS-Sequenz deinitialisiert der EcuM den BswM als ersten Schritt SWS EcuM S. 50. Nach BswM_Deinit [SWS_BswM_00119] findet keine Modusverarbeitung mehr statt, selbst wenn Anforderungen eintreffen oder die MainFunction aufgerufen wird [SWS_BswM_00120].

Zusammenspiel mit dem EcuM: ECU Mode Handling und Wakeup-Quellen

Beim ECU Mode Handling arbitriert der EcuM die RUN- und POST_RUN-Anforderungen der SW-Cs. Eine eigene Zustandsmaschine besitzt er nicht; nur der BswM entscheidet, wann ein Übergang erfolgt SWS EcuM S. 99. Der Ablauf Mode-Mgmt-Guide S. 34:

  1. Der EcuM meldet das Ergebnis des RUN Request Protocol über BswM_EcuM_RequestedState [SWS_BswM_91004].
  2. Der BswM setzt den Zustand per EcuM_SetState.
  3. Der EcuM meldet den entsprechenden Modus an die RTE.
  4. Nach der Rückmeldung der RTE ruft der EcuM BswM_EcuM_CurrentState auf [SWS_BswM_91003].

Die Zustände sind ECUM_STATE_STARTUP, ECUM_STATE_APP_RUN, ECUM_STATE_APP_POST_RUN, ECUM_STATE_SHUTDOWN und ECUM_STATE_SLEEP Mode-Mgmt-Guide S. 34. Diese Kopplung erlaubt es, SW-Cs wiederzuverwenden, die für den EcuM mit fester Zustandsmaschine entworfen wurden. Eine Kompatibilitäts-SW-C ist dafür nicht nötig Mode-Mgmt-Guide S. 61.

ECU Mode Handling zwischen SW-C, EcuM, BswM und RTESW-C (EcuM User)EcuMBswMRTERUN anfordern / freigeben(EcuM_StateRequest)RUN Request Protocol:Anforderungen arbitrierenBswM_EcuM_RequestedState(State, CurrentState)Regeln entscheiden über den ÜbergangEcuM_SetState(State)Modus melden (Rte_Switch_currentMode)RTE hat alle Runnables des Modus ausgeführtRückmeldungBswM_EcuM_CurrentState(CurrentState)

Sequenzdiagramm: Der EcuM arbitriert RUN-Anforderungen, der BswM entscheidet über den Übergang, die RTE wird informiert und die Bestätigung kehrt als CurrentState zum BswM zurück. Quellen: [SWS_BswM_91004], [SWS_BswM_91003], SWS EcuM S. 99, Mode-Mgmt-Guide S. 34, Mode-Mgmt-Guide S. 61

Zustandswechsel von Wakeup-Quellen meldet der EcuM über BswM_EcuM_CurrentWakeup [SWS_BswM_00131]. Im Zustandsautomaten der Wakeup-Quellen ruft jeder der Zustände NONE, PENDING, VALIDATED und EXPIRED diese API beim Eintritt auf SWS EcuM S. 60. Im Einzelnen:

  • Validiert der EcuM ein Ereignis, meldet er VALIDATED SWS EcuM S. 134.
  • Bleibt die Validierung bis zum Timeout erfolglos, meldet er EXPIRED SWS EcuM S. 63.
  • In der GoSleep-Sequenz setzt er die Quellen mit ECUM_WKSTATUS_NONE zurück SWS EcuM S. 54.
  • In der Poll-Sequenz meldet er je nach Validierungsbedarf PENDING oder VALIDATED SWS EcuM S. 57.

Je Wakeup-Quelle wird eine BswMEcuMWakeupSource angelegt Mode-Mgmt-Guide S. 29.

wakeup poweron Power On none ECUM_WKSTATUS_NONE entry / BswM_EcuM_CurrentWakeup(sources, NONE) poweron->none Initial pending ECUM_WKSTATUS_PENDING entry / BswM_EcuM_CurrentWakeup(sources, PENDING) entry / EcuM_StartWakeupSources() do / Validierungssequenz none->pending EcuM_SetWakeupEvent [Validierung nötig] validated ECUM_WKSTATUS_VALIDATED entry / BswM_EcuM_CurrentWakeup(sources, VALIDATED) entry / ComM_EcuM_WakeUpIndication() none->validated Wakeup erkannt [ohne Validierung] pending->validated EcuM_ValidateWakeupEvent expired ECUM_WKSTATUS_EXPIRED entry / BswM_EcuM_CurrentWakeup(sources, EXPIRED) entry / EcuM_StopWakeupSources() pending->expired Validierungs-Timeout abgelaufen validated->none Rücksetzen, z. B. GoSleep (Interpretation) expired->none Rücksetzen (Interpretation)

Zustandsdiagramm: Zustände einer Wakeup-Quelle im EcuM; jeder Eintritt erzeugt eine Meldung an den BswM. Quellen: [SWS_BswM_00131], SWS EcuM S. 60, SWS EcuM S. 57, SWS EcuM S. 63

Kommunikationssteuerung: Busse, Partial Networks, Diagnose und Dienste

Ein typischer Anwendungsfall ist die Freigabe von I-PDU-Gruppen. Im Leitfaden aktiviert eine Regel auf einer CanSM-Anzeige die I-PDU-Gruppen eines CAN-Kanals Mode-Mgmt-Guide S. 32. Die CanSM meldet dafür die Zustände CANSM_BSWM_NO_COMMUNICATION, CANSM_BSWM_SILENT_COMMUNICATION, CANSM_BSWM_FULL_COMMUNICATION und CANSM_BSWM_BUS_OFF [SWS_BswM_00049], Mode-Mgmt-Guide S. 22. Den Zustand FULL_COMMUNICATION meldet sie zum Beispiel beim Effekt E_TX_ON SWS CanSM S. 65.

Für Partial Networks meldet ComM jeden Zustandswechsel eines PNC über BswM_ComM_CurrentPNCMode [SWS_BswM_00148], SWS ComM S. 35. Damit schaltet der BswM Ethernet-Switch-Port-Gruppen Mode-Mgmt-Guide S. 49:

  • Er kennt die Zuordnung von PNC zu EthIfSwitchPortGroup.
  • Er ruft EthIf_SwitchPortGroupRequestMode mit ETH_MODE_ACTIVE oder ETH_MODE_DOWN auf.
  • Den resultierenden Link-Zustand der Gruppe meldet EthIf über BswM_EthIf_PortGroupLinkStateChg zurück [SWS_BswM_91001], SWS EthIf S. 92.
PNC-gesteuerte Schaltung einer Ethernet-Port-GruppeComMBswMEthIfEthSwt / EthTrcvEthSMUse Case: PNC1 wird angefordertBswM_ComM_CurrentPNCMode(PNC1, COMM_PNC_REQUESTED)Regel: PNC1 angefordertZuordnung PNC1 auf EthIfSwtPortGroup1EthIf_SwitchPortGroupRequestMode(EthSwtPortGroup1, ETH_MODE_ACTIVE)Anforderungen je Port-Gruppe verwalten,EthSwtPorts ein- oder ausschaltenloopEthIf_MainFunctionState: alle Ports der GruppeEthSwt_GetLinkState / EthTrcv_GetLinkStateLink-ZustandBswM_EthIf_PortGroupLinkStateChg(PortGroupIdx, ETHTRCV_LINK_STATE_ACTIVE)Transceiver-Link-Zustand meldenUse Case: PNC1 wird freigegebenBswM_ComM_CurrentPNCMode(PNC1, freigegeben)EthIf_SwitchPortGroupRequestMode(EthSwtPortGroup1, ETH_MODE_DOWN)

Sequenzdiagramm: PNC-Anforderung und -Freigabe schalten über BswM-Regeln eine Ethernet-Port-Gruppe; EthIf meldet den ermittelten Link-Zustand an BswM zurück. Quellen: [SWS_BswM_00148], [SWS_BswM_91001], Mode-Mgmt-Guide S. 49, SWS EthIf S. 92

Auch die Diagnose meldet an den BswM:

  • UDS-Dienst 0x28 (CommunicationControl): Der DCM ruft je betroffenem Netz BswM_Dcm_CommunicationMode_CurrentState auf [SWS_BswM_00048], SWS DCM S. 147. Konfiguriert wird das Verhalten über BswMDcmComModeRequest; dessen BswMDcmComMChannelRef entspricht dem Argument Network SWS BswM S. 64.
  • Bootloader-Sprung: Wurde die Anwendung dabei aktualisiert, meldet der DCM BswM_Dcm_ApplicationUpdated [SWS_BswM_00158], SWS DCM S. 231.
  • J1939: BswM_J1939DcmBroadcastStatus übergibt eine Bitmaske je ComMChannelId, die nur die ersten 16 Kanäle abdeckt [SWS_BswM_00165], SWS BswM S. 70. Abhängig von den J1939Nm-Zuständen schaltet der BswM Com-I-PDU-Gruppen, PduR-Routingpfadgruppen und die Anfragebearbeitung des J1939Rm Mode-Mgmt-Guide S. 45.

Die Service Discovery meldet die Zustände von Client Services, Consumed Eventgroups und Event Handlers [SWS_BswM_00204], [SWS_BswM_00207], [SWS_BswM_00210]. Für die Sd sind diese Aufrufe optionale Schnittstellen SWS Sd S. 122.

Verhalten im Fehlerfall

Ist BswMDevErrorDetect aktiv, prüfen die Eingangs-APIs zunächst, ob der BswM initialisiert ist. Andernfalls ignorieren sie die Anforderung und melden BSWM_E_UNINIT an den DET, etwa [SWS_BswM_00080], [SWS_BswM_00081], [SWS_BswM_00149], [SWS_BswM_00112], [SWS_BswM_00086], [SWS_BswM_00132]. Außerdem prüfen sie die übergebenen Werte auf den zulässigen Bereich. Bei einem Verstoß wird die Anforderung ebenfalls ignoriert und BSWM_E_REQ_MODE_OUT_OF_RANGE gemeldet, etwa [SWS_BswM_00095], [SWS_BswM_00097], [SWS_BswM_00150], [SWS_BswM_00113], [SWS_BswM_00110], [SWS_BswM_00154]. Wird BswM_MainFunction vor der Initialisierung aufgerufen, kehrt sie sofort zurück, ohne einen Fehler zu melden [SWS_BswM_00076].

Die Entwicklungsfehlercodes des BswM nach [SWS_BswM_00230]:

FehlerCodeWert
Aufruf vor InitialisierungBSWM_E_UNINIT0x01
Nullzeiger übergebenBSWM_E_NULL_POINTER0x02
Parameter ungültig (unspezifisch)BSWM_E_PARAM_INVALID0x03
Anfordernder Benutzer außerhalb des BereichsBSWM_E_REQ_USER_OUT_OF_RANGE0x04
Angeforderter Modus außerhalb des BereichsBSWM_E_REQ_MODE_OUT_OF_RANGE0x05
Konfiguration inkonsistentBSWM_E_PARAM_CONFIG0x06

Liefert eine Aktion E_NOT_OK, meldet der BswM den Laufzeitfehler BSWM_E_ACTION_FAILED. Der Wert liegt zwischen 0x80 und 0xFF und wird in BswMReportFailRuntimeErrorId konfiguriert [SWS_BswM_00238]. Konfigurationen, die für einen BswMModeInitValue sowohl BswMBswModeInitValue als auch BswMCompuScaleModeValue enthalten, weist der BswM zurück SWS BswM S. 30. Der Code BSWM_E_REQ_USER_OUT_OF_RANGE dürfte der Prüfung von requesting_user in BswM_RequestMode dienen. Frage Q-60c14136e0238954 (offen) Das ist eine Interpretation, denn die zugehörige Stelle ist im Payload abgeschnitten [SWS_BswM_00230], SWS BswM S. 86.

Fehler anderer Module erreichen den BswM als normale Eingänge:

Weiterführende Detailbelege

KI-generierter Modul-Leitfaden auf Basis der im Payload bereitgestellten Spezifikationsauszüge. Einzelne Dokumentstellen stammen aus anderen Releases; normativ für R20-11 sind die verlinkten Requirements. Als Interpretation markierte Aussagen sind Annahmen.

BSW Mode Manager (BswM)

Arbitrates mode requests and executes action lists to control system state transitions.

Funktionen — Übersicht

Typen — Übersicht

Funktionen & Typen — Detailansicht

function BswM_BswMPartitionRestarted [SWS_BswM_00193] 📄 PDF

void BswM_BswMPartitionRestarted (void);

Function called by Restart Task if the partition containing the Bsw M has been restarted.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 789aeb35d50a Herkunft
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Die Funktion BswM_BswMPartitionRestarted dient dazu, das BswM-Modul über den Neustart der Partition zu benachrichtigen, in der der BswM ausgeführt wird [SWS_BswM_00193].

Verwendung und Semantik

Der Aufruf erfolgt synchron durch den Restart-Task des Betriebssystems, sobald die Partition nach einem Neustart wiederhergestellt wurde [SWS_BswM_00193]. Die Funktion besitzt die Service-ID 0x1e und ist über die Header-Datei BswM.h deklariert [SWS_BswM_00193]. Sie akzeptiert keine Übergabeparameter (weder Eingabe- noch Ausgabe-Parameter) und besitzt keinen Rückgabewert (void) [SWS_BswM_00193].

Nebenläufigkeit und Ausführung

Gemäß Spezifikation ist BswM_BswMPartitionRestarted als reentrant eingestuft [SWS_BswM_00193]. Dies ermöglicht den Aufruf im Kontext des Restart-Tasks, wobei der Aufrufer sicherstellen muss, dass der Neustart der betreffenden Partition vor dem Aufruf ordnungsgemäß initiiert wurde.

Fehlerbehandlung und Zusammenspiel

Die Spezifikation definiert für diesen Service keine spezifischen Rückgabewerte oder DET-/DEM-Fehlercodes [SWS_BswM_00193]. Das Zusammenspiel beschränkt sich auf den OS-Restart-Task, der diese Benachrichtigung auslöst, damit der BswM auf die neu gestartete Partition reagieren kann [SWS_BswM_00193].

Dieser Nutzungshinweis wurde automatisiert auf Basis der Spezifikation SWS_BswM_00193 generiert.

Implementer's Guide folgt (Komplexität I1)

function BswM_CanSM_CurrentState [SWS_BswM_00049] 📄 PDF

void BswM_CanSM_CurrentState (NetworkHandleType Network, CanSM_BswMCurrentStateType CurrentState);

Function called by Can SM to indicate its current state. Ava ilable via Bsw M_ Can SM.h

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: cfb9d1295953 Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Verwendung und Signatur

Die Funktion BswM_CanSM_CurrentState wird vom CAN State Manager (CanSM) aufgerufen, um dem BSW Mode Manager (BswM) den aktuellen Zustand eines CAN-Kanals zu melden [SWS_BswM_00049]. Sie besitzt die Service-ID 0x05 und wird über die Header-Datei BswM_CanSM.h zur Verfügung gestellt [SWS_BswM_00049].

Der Aufruf erfolgt synchron und liefert keinen Rückgabewert (void) zurück [SWS_BswM_00049]. Die Schnittstelle verarbeitet zwei Eingangsparameter [SWS_BswM_00049]:

  • Network (Typ NetworkHandleType): Bezeichnet den betroffenen CAN-Kanal, auf den sich die gemeldete Zustandsänderung bezieht [SWS_BswM_00049].
  • CurrentState (Typ CanSM_BswMCurrentStateType): Übergibt den neu eingenommenen Zustand des jeweiligen CAN-Kanals [SWS_BswM_00049].

Weder Ausgangs- noch Ein-/Ausgangsparameter sind für diese Servicefunktion vorgesehen [SWS_BswM_00049].

Nebenläufigkeit und Einschränkungen

Die Spezifikation weist BswM_CanSM_CurrentState als reentrant aus [SWS_BswM_00049]. Sie kann somit bei parallelen Ereignissen mehrerer Netzwerkkanäle nebenläufig aufgerufen werden. Da der Aufruf synchron erfolgt und keine spezifischen Task-Beschränkungen vorgegeben sind, dürfte der Aufrufkontext dem Ausführungskontext des aufrufenden CanSM entsprechen [SWS_BswM_00049]. Frage Q-0edc8b6c1cb10f6d (offen)

Fehlerbehandlung und Zusammenspiel

In der Spezifikation sind keine spezifischen Fehlercodes, Rückgabewerte oder Benachrichtigungen an DET oder DEM für diesen Funktionsaufruf dokumentiert [SWS_BswM_00049]. Die Funktion dient als definierte Meldeschnittstelle im Zusammenspiel zwischen CanSM und BswM, über die der aktuelle Kanalzustand in die Modusverwaltung des BswM einfließt [SWS_BswM_00049].

Dieser Nutzungshinweis wurde von einer KI generiert und stützt sich ausschließlich auf die angegebenen AUTOSAR-Spezifikationen.

Implementer's Guide folgt (Komplexität I1)

function BswM_ComM_CurrentMode [SWS_BswM_00047] 📄 PDF

void BswM_ComM_CurrentMode (NetworkHandleType Network, ComM_ModeType RequestedMode);

Function called by Com M to indicate the current communication mode of a Com M channel.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: e558456afa80 Herkunft
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Die Funktion BswM_ComM_CurrentMode dient im AUTOSAR-Classic-Modul BswM (Basic Software Mode Manager) als standardisierte Benachrichtigungsschnittstelle für den Communication Manager (ComM) [SWS_BswM_00047]. Sie wird vom ComM aufgerufen, um dem BswM den aktuellen Kommunikationsmodus eines bestimmten Kommunikationskanals anzuzeigen [SWS_BswM_00047]. Die Deklaration dieser Schnittstelle wird über die Header-Datei BswM_ComM.h zur Verfügung gestellt, und dem Dienst ist die hexadezimale Service-ID 0x0e zugewiesen [SWS_BswM_00047].

Die Funktionssignatur lautet void BswM_ComM_CurrentMode (NetworkHandleType Network, ComM_ModeType RequestedMode) und erfordert zwei unveränderliche Eingabeparameter [SWS_BswM_00047]:

  • Network (Datentyp NetworkHandleType): Bezeichnet den konkreten ComM-Kommunikationskanal, für den der Status angezeigt wird und dem der Zustand entspricht [SWS_BswM_00047].
  • RequestedMode (Datentyp ComM_ModeType): Übermittelt den aktuellen Zustand bzw. Modus des angegebenen ComM-Kommunikationskanals an das BswM-Modul [SWS_BswM_00047].

Die Schnittstelle besitzt keinen Rückgabewert (void); ebenso sind in der Spezifikation weder Ausgangsparameter (out) noch kombinierte Ein-/Ausgangsparameter (inout) definiert [SWS_BswM_00047]. Das Ausführungsverhalten der Funktion ist als synchron (Synchronous) festgelegt [SWS_BswM_00047]. In Bezug auf die Nebenläufigkeit und den gleichzeitigen Aufrufkontext ist BswM_ComM_CurrentMode als reentrant (Reentrant) eingestuft [SWS_BswM_00047].

Hinsichtlich der Fehlerbehandlung sind für diese Funktion in der Elementspezifikation keine spezifischen Fehlercodes, Rückgabewerte oder Fehlermeldungen an DET oder DEM vorgesehen [SWS_BswM_00047]. Auch weiterführende Reihenfolgebedingungen oder Abhängigkeiten zu verwandten Anforderungen sind nicht hinterlegt [SWS_BswM_00047].

Dieser Nutzungshinweis wurde automatisiert auf Basis von Requirement SWS_BswM_00047 generiert.

Implementer's Guide folgt (Komplexität I1)

function BswM_ComM_CurrentPNCMode [SWS_BswM_00148] 📄 PDF

void BswM_ComM_CurrentPNCMode (PNCHandleType PNC, ComM_PncModeType CurrentPncMode);

Function is called by Com M to indicate the current mode of the PNC. AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_BSWModeManager

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 7867e89093de Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Die Funktion BswM_ComM_CurrentPNCMode dient als Benachrichtigungsschnittstelle zwischen dem Communication Manager und dem BSW Mode Manager. Gemäß [SWS_BswM_00148] wird sie vom ComM aufgerufen, um den aktuellen Modus eines Partial Network Clusters (PNC) an den BswM zu übermitteln.

Verwendung und Aufrufkontext

Die Schnittstelle ist über die Header-Datei BswM_ComM.h verfügbar und besitzt die Service-ID 0x15 ([SWS_BswM_00148]). Der Aufruf wird synchron ausgeführt und liefert keinen Rückgabewert (void). Es werden ausschließlich zwei Eingangsparameter übergeben:

  • PNC (Typ PNCHandleType): Das Handle des betroffenen Partial Network Clusters, dessen Zustand berichtet wird.
  • CurrentPncMode (Typ ComM_PncModeType): Der aktuell eingenommene Modus des angegebenen PNC.

Zusätzliche Ein- oder Ausgangsparameter sind laut [SWS_BswM_00148] nicht vorgesehen.

Nebenläufigkeit und Einschränkungen

Hinsichtlich der Nebenläufigkeit ist BswM_ComM_CurrentPNCMode gemäß [SWS_BswM_00148] als reentrant spezifiziert, wodurch gleichzeitige Aufrufe aus dem ComM zulässig sind. Spezifische Fehlercodes oder Mechanismen zur Fehlerbehandlung über DET oder DEM sind im Payload nicht definiert. Die übermittelten Zustände dürften im BswM intern als Auslöser für Regelauswertungen und Aktionen dienen (Interpretation: Der Payload belegt die Modusanzeige, spezifiziert jedoch keine internen BswM-Aktionen). Frage Q-2527fc2eda881b62 (offen)

Dieser Nutzungshinweis basiert auf der Spezifikation AUTOSAR CP R20-11.

Implementer's Guide folgt (Komplexität I1)

function BswM_ComM_InitiateReset [SWS_BswM_00217] 📄 PDF

void BswM_ComM_InitiateReset (void);

Function is called by Com M to signal a shutdown.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: ed83eb94f632 Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Die Funktion BswM_ComM_InitiateReset wird vom Communication Manager (ComM) aufgerufen, um dem BswM einen anstehenden Shutdown zu signalisieren [SWS_BswM_00217].

Schnittstelle und Aufrufsemantik

Die Schnittstelle besitzt die Signatur void BswM_ComM_InitiateReset(void) und ist über die Header-Datei BswM_ComM.h deklariert [SWS_BswM_00217]. Sie verarbeitet weder Eingabe-, Ausgabe- noch Ein-/Ausgabeparameter und besitzt keinen Rückgabewert [SWS_BswM_00217]. Der Aufruf wird synchron abgewickelt und ist mit der Service-ID 0x22 spezifiziert [SWS_BswM_00217].

Nebenläufigkeit und Einschränkungen

Die Funktion ist als nicht reentrant (Non Reentrant) definiert [SWS_BswM_00217]. Der Aufrufer muss daher gewährleisten, dass Aufrufe sequenziell erfolgen und keine parallelen oder überlappenden Ausführungen stattfinden. Da die Abwicklung synchron erfolgt, blockiert der Aufruf den ausführenden Kontext bis zum Abschluss der Verarbeitung im BswM.

Fehlerbehandlung und Zusammenspiel

In den Spezifikationen sind für diesen Service keine spezifischen Fehlercodes, Rückgabewerte oder Fehlermeldungen an DET oder DEM vorgesehen [SWS_BswM_00217]. Das Zusammenspiel beschränkt sich laut Spezifikation auf das Empfangen der Shutdown-Signalisierung des ComM [SWS_BswM_00217]; Interpretation: Die Meldung dürfte im BswM als Auslöser für konfigurierte Aktionen zur Durchführung der Abschaltung oder des Resets dienen. Frage Q-adf160d8d0fe2c97 (offen)

Dieser Nutzungshinweis basiert auf der Spezifikation SWS_BswM_00217 aus AUTOSAR R20-11.

Implementer's Guide folgt (Komplexität I1)

function BswM_Dcm_ApplicationUpdated [SWS_BswM_00158] 📄 PDF

void BswM_Dcm_ApplicationUpdated (void);

This function is called by the DCM in order to report an updated application.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 5e2894c99c27 Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Verwendung und Aufrufkontext

Die Funktion BswM_Dcm_ApplicationUpdated wird gemäß [SWS_BswM_00158] vom Diagnostic Communication Manager (DCM) aufgerufen, um dem BswM das erfolgreiche Aktualisieren einer Anwendung zu melden. Der Service ist in der Header-Datei BswM_Dcm.h deklariert und besitzt die Service-ID 0x14. Die Schnittstelle erwartet keine Übergabeparameter (void) und gibt keinen Wert an den Aufrufer zurück.

Synchronität und Nebenläufigkeit

Gemäß [SWS_BswM_00158] ist die Funktion als synchron und reentrant spezifiziert. Der Aufrufer verbleibt somit im Ausführungskontext des DCM, bis die unmittelbare Verarbeitung des Aufrufs innerhalb des BswM abgeschlossen ist. Die deklarierte Eigenschaft der Reentranz erlaubt es prinzipiell, die Schnittstelle nebenläufig aus unterschiedlichen Taskkontexten anzusprechen.

Fehlerbehandlung und Zusammenspiel

Für BswM_Dcm_ApplicationUpdated sind in [SWS_BswM_00158] weder spezifische Fehlercodes noch Benachrichtigungen an das DET oder DEM vorgesehen. Der Aufruf dient der reinen Statusmeldung an das BSW-Modusmanagement. Die Benachrichtigung dürfte im BswM als Indikator und Auslöser für die Neubewertung interner Regeln sowie nachgelagerter Moduswechsel dienen, um das Gesamtsystem an die modifizierte Anwendungssoftware anzupassen. Frage Q-119282a4a72622b5 (offen)

Dieser Nutzungshinweis wurde automatisiert auf Basis der Spezifikation AUTOSAR R20-11 generiert.

function BswM_Dcm_CommunicationMode_CurrentState [SWS_BswM_00048] 📄 PDF

void BswM_Dcm_CommunicationMode_CurrentState (NetworkHandleType Network, Dcm_CommunicationModeType RequestedMode);

Function called by DCM to inform the Bsw M about the current state of the communication mode.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 63cbbb29388f Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Verwendung

Die Funktion BswM_Dcm_CommunicationMode_CurrentState wird vom Modul Diagnostic Communication Manager (DCM) aufgerufen, um den Basic Software Mode Manager (BswM) über den aktuellen Zustand des Kommunikationsmodus in Kenntnis zu setzen [SWS_BswM_00048]. Die Deklaration dieser Schnittstelle wird über die Header-Datei BswM_Dcm.h bereitgestellt [SWS_BswM_00048].

Die C-Syntax der Funktion lautet void BswM_Dcm_CommunicationMode_CurrentState (NetworkHandleType Network, Dcm_CommunicationModeType RequestedMode) [SWS_BswM_00048]. Beim Aufruf durch den DCM werden zwei Eingangsparameter übergeben [SWS_BswM_00048]:

  • Network (Typ NetworkHandleType): Bezeichnet den Kommunikationskanal, auf den sich der Diagnosemodus bezieht [SWS_BswM_00048].
  • RequestedMode (Typ Dcm_CommunicationModeType): Übermittelt den angeforderten Diagnose-Kommunikationsmodus an den BswM [SWS_BswM_00048].

Die Schnittstelle besitzt keinen Rückgabewert (Rückgabetyp void) und verwendet weder modifizierende Ein-/Ausgabeparameter (Inout) noch Ausgabeparameter (Out) [SWS_BswM_00048].

Nebenläufigkeit und Eigenschaften

Der Funktionsaufruf wird synchron ausgeführt und ist als reentrant spezifiziert [SWS_BswM_00048]. Der Service-Name ist als BswM_Dcm_CommunicationMode_CurrentState definiert und besitzt die Service-ID 0x06 in hexadezimaler Darstellung [SWS_BswM_00048].

Zusammenspiel

Interpretation: Der BswM dürfte den übermittelten Status des Kommunikationsmodus als Kriterium zur Auswertung von Modusregeln verwenden, um nachfolgende Aktionen im BswM auszulösen [SWS_BswM_00048]. Frage Q-1031b1a7ae000c2a (offen)

Dieser Nutzungshinweis wurde automatisch generiert.

Implementer's Guide folgt (Komplexität I1)

function BswM_Deinit [SWS_BswM_00119] 📄 PDF

void BswM_Deinit (void);

Deinitializes the BSW Mode Manager.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 3aaac40d3e61 Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Verwendung und Semantik

Die Funktion BswM_Deinit dient der Deinitialisierung des BSW Mode Managers ([SWS_BswM_00119]). Die Ausführung erfolgt synchron ohne Übergabeparameter und ohne Rückgabewert mit der Service-ID 0x04 ([SWS_BswM_00119]). Die Deklaration ist über die Header-Datei BswM.h verfügbar ([SWS_BswM_00119]).

Nebenläufigkeit und Einschränkungen

Die Schnittstelle ist als nicht reentrant (Non Reentrant) spezifiziert ([SWS_BswM_00119]). Ein konkurrierender oder unterbrechender Aufruf aus mehreren Task-Kontexten ist somit unzulässig. Interpretation: Die Deinitialisierung dürfte typischerweise sequenziell während der Abschaltphase des Steuergeräts durch ein übergeordnetes Zustandsmanagement wie den ECU State Manager erfolgen. Frage Q-0a5d218bfe9fed04 (offen)

Zusammenspiel und Verhalten nach Deinitialisierung

Nach dem Aufruf von BswM_Deinit führt das BswM-Modul keinerlei Modusverarbeitung mehr durch ([SWS_BswM_00120]). Diese Unterbindung gilt selbst dann fort, wenn externe oder interne Modusanforderungen an das Modul herangetragen werden oder wenn die zyklische Hauptfunktion des BswM weiterhin ausgeführt bzw. aufgerufen wird ([SWS_BswM_00120]).

Dieser Text wurde von einer KI auf Basis der AUTOSAR-Spezifikation generiert.

Implementer's Guide folgt (Komplexität I1)

function BswM_EcuM_CurrentState [SWS_BswM_91003] 📄 PDF

void BswM_EcuM_CurrentState (EcuM_StateType CurrentState);

Function called Ecu M to indicate the current ECU Operation Mode.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: fb0fde71b6ce Herkunft
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Die synchrone Service-Funktion BswM_EcuM_CurrentState wird vom Modul EcuM aufgerufen, um dem BswM den aktuellen ECU-Betriebsmodus anzuzeigen [SWS_BswM_91003]. Die Schnittstelle besitzt die Service-ID 0x28 und wird über die Header-Datei BswM_EcuM.h zur Verfügung gestellt [SWS_BswM_91003].

Verwendung

Beim Aufruf der Funktion wird dem BswM der angeforderte Zustand der ECU synchron mitgeteilt [SWS_BswM_91003]. Die Übergabe erfolgt über einen einzelnen Eingabeparameter:

  • Current State (in): Übergibt den angeforderten ECU-Betriebsmodus unter Verwendung des Datentyps EcuM_StateType [SWS_BswM_91003].

Die Funktion definiert weder Ein-/Ausgangsparameter (inout) noch Ausgangsparameter (out) und besitzt keinen Rückgabewert (void) [SWS_BswM_91003].

Nebenläufigkeit und Einschränkungen

Hinsichtlich des Nebenläufigkeitsverhaltens ist BswM_EcuM_CurrentState als reentrant spezifiziert [SWS_BswM_91003]. Aufrufe können somit ohne Einschränkung nebenläufig erfolgen, beispielsweise wenn verschiedene Ausführungspfade des Aufrufers aktiv sind [SWS_BswM_91003].

Spezifische Fehlercodes, Benachrichtigungen an das DET- oder DEM-Modul sowie gesonderte Fehlerbehandlungsmechanismen sind im Spezifikationsumfang für diesen Service nicht aufgeführt [SWS_BswM_91003].

Dieser Nutzungshinweis wurde automatisiert auf Basis von AUTOSAR R20-11 generiert.

Implementer's Guide folgt (Komplexität I1)

function BswM_EcuM_CurrentWakeup [SWS_BswM_00131] 📄 PDF

void BswM_EcuM_CurrentWakeup (EcuM_WakeupSourceType source, EcuM_WakeupStatusType state);

Function called by Ecu M to indicate the current state of a wakeup source.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 9c2c2f56cbd3 Herkunft
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Die Funktion BswM_EcuM_CurrentWakeup dient als Schnittstelle des BswM, die vom Modul EcuM aufgerufen wird, um den aktuellen Zustand einer oder mehrerer Weckquellen zu melden [SWS_BswM_00131]. Die Deklaration ist über die Header-Datei BswM_EcuM.h verfügbar [SWS_BswM_00131].

Beim Aufruf der Funktion werden folgende Übergabeparameter übermittelt [SWS_BswM_00131]:

  • source (Typ EcuM_WakeupSourceType): Bezeichnet die Weckquelle oder Weckquellen, deren Zustand sich geändert hat [SWS_BswM_00131].
  • state (Typ EcuM_WakeupStatusType): Gibt den neuen Zustand der betroffenen Weckquelle(n) an [SWS_BswM_00131].

Die Funktion besitzt keinen Rückgabewert (void) und führt keine Ein-/Ausgabe- oder reinen Ausgabeparameter [SWS_BswM_00131]. Die zugehörige Service-ID lautet 0x10 [SWS_BswM_00131].

Hinsichtlich des Ausführungsverhaltens ist der Funktionsaufruf als synchron spezifiziert [SWS_BswM_00131]. Zudem ist die Funktion als reentrant klassifiziert, wodurch sie bei Bedarf nebenläufig aus verschiedenen Kontexten aufgerufen werden kann [SWS_BswM_00131].

Dieser Text wurde von einer KI auf Basis der Spezifikation erstellt.

Implementer's Guide folgt (Komplexität I1)

function BswM_EcuM_RequestedState [SWS_BswM_91004] 📄 PDF

void BswM_EcuM_RequestedState (EcuM_StateType State, EcuM_RunStatusType CurrentState);

Function called by Ecu M notify about current Status of the Run Request Protocol.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: d744d4082d78 Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Verwendung und Semantik

Die Funktion BswM_EcuM_RequestedState dient als Benachrichtigungsschnittstelle, die vom Steuergeräte-Zustandsmanager (EcuM) aufgerufen wird, um das Modul BswM über den aktuellen Status des Run Request Protocols zu informieren [SWS_BswM_91004]. Der Aufruf erfolgt synchron und ist als reentrant spezifiziert, sodass die Funktion in nebenläufigen Kontexten ausgeführt werden kann [SWS_BswM_91004]. Die Deklaration wird über die Header-Datei BswM_EcuM.h mit der Service-ID 0x29 bereitgestellt [SWS_BswM_91004].

Parameter und Rückgabewert

Die Schnittstelle besitzt keinen Rückgabewert (Rückgabetyp void) und erwartet zwei reine Eingangsparameter [SWS_BswM_91004]:

  • State (Typ EcuM_StateType): Gibt den vom EcuM angeforderten Zustand an [SWS_BswM_91004].
  • CurrentState (Typ EcuM_RunStatusType): Übermittelt das Resultat bzw. den aktuellen Status des Run Request Protocols [SWS_BswM_91004].

Ein-/Ausgangsparameter oder Ausgangsparameter sind für diese Funktion nicht vorgesehen [SWS_BswM_91004].

Zusammenspiel und Integration

Die Funktion wird ausschließlich von EcuM aufgerufen. Interpretation: Die übergebenen Zustände dürften im BswM zur internen Regelauswertung und Modussteuerung dienen, um übergeordnete Aktionen der Basissoftware auszulösen [SWS_BswM_91004]. Frage Q-6cd81e44c9e2920a (offen) Für diesen Dienst sind in der Spezifikation keine spezifischen Fehlercodes für DET oder DEM hinterlegt [SWS_BswM_91004].

Dieser Nutzungshinweis wurde automatisiert erstellt und stützt sich ausschließlich auf die Spezifikation des AUTOSAR-Releases R20-11.

Implementer's Guide folgt (Komplexität I1)

function BswM_EthIf_PortGroupLinkStateChg [SWS_BswM_91001] 📄 PDF

void BswM_EthIf_PortGroupLinkStateChg (EthIf_SwitchPortGroupIdxType PortGroupIdx, EthTrcv_LinkStateType PortGroupState);

Function called by Eth If to indicate the link state change of a certain Ethernet switch port group.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 37554116ef85 Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Verwendung

Die Funktion BswM_EthIf_PortGroupLinkStateChg wird gemäß [SWS_BswM_91001] vom Modul EthIf aufgerufen, um dem BswM eine Änderung des Verbindungsstatus (Link State) einer Ethernet-Switch-Portgruppe anzuzeigen. Die Schnittstelle besitzt die Service-ID 0x26 und wird über die Header-Datei BswM_EthIf.h bereitgestellt [SWS_BswM_91001].

Der Aufruf übergibt zwei Eingangsparameter:

  • PortGroupIdx: Bezeichnet den Index der betroffenen Portgruppe im Kontext des Ethernet-Interfaces [SWS_BswM_91001].
  • PortGroupState: Gibt den Status der Portgruppe an, welcher aus dem physikalischen Link des Ethernet-Transceivers abgeleitet wird. Gültige Zustände sind ETHTRCV_LINK_STATE_DOWN für einen getrennten Link sowie ETHTRCV_LINK_STATE_ACTIVE für einen aktiven Link [SWS_BswM_91001].

Die Funktion besitzt weder Ein-/Ausgabeparameter noch Ausgabeparameter und gibt keinen Wert zurück (void) [SWS_BswM_91001].

Nebenläufigkeit und Einschränkungen

Die Ausführung erfolgt synchron und ist als reentrant spezifiziert [SWS_BswM_91001]. Spezifische Rückgabewerte, Fehlercodes oder Fehlermeldungen (DET/DEM) sind für diese Schnittstelle nicht definiert [SWS_BswM_91001].

Zusammenspiel

Interpretation: Das BswM dürfte den übermittelten Link-Status als Eingangsgröße nutzen, um zustandsabhängige Regeln auszuwerten und nachgelagerte Aktionen oder Moduswechsel innerhalb der BSW auszulösen. Frage Q-14285579acb760d5 (offen)

Dieser Text wurde von einer KI erstellt und basiert auf den Spezifikationen des AUTOSAR-Releases R20-11.

Implementer's Guide folgt (Komplexität I1)

function BswM_EthSM_CurrentState [SWS_BswM_00050] 📄 PDF

void BswM_EthSM_CurrentState (NetworkHandleType Network, EthSM_NetworkModeStateType CurrentState);

Function called by Eth SM to indicate its current state.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: f4b4cf6ab059 Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Die Funktion BswM_EthSM_CurrentState dient als Callback- und Benachrichtigungsschnittstelle des BSW Mode Managers. Sie wird gemäß [SWS_BswM_00050] vom Ethernet State Manager (EthSM) aufgerufen, um den aktuellen Zustand eines Kommunikationskanals an den BswM zu übermitteln. Die Deklaration der Schnittstelle wird über den Header BswM_EthSM.h bereitgestellt und besitzt die Service-ID 0x0d.

Für die Verwendung und den Aufruf gelten nach [SWS_BswM_00050] die folgenden Festlegungen:

  • Aufrufsemantik: Die Ausführung erfolgt synchron. Der Aufrufende wartet somit, bis die Funktion die Verarbeitung der Statusmeldung abgeschlossen hat.
  • Nebenläufigkeit: Der Dienst ist als reentrant spezifiziert [SWS_BswM_00050]. Aufrufe können somit für unterschiedliche Netzwerkinstanzen oder nebenläufig aus dem Kontext des Moduls EthSM erfolgen.
  • Übergabeparameter: Übergeben werden das betroffene Ethernet-Netzwerk als Network vom Typ NetworkHandleType sowie der gemeldete Status als CurrentState vom Typ EthSM_NetworkModeStateType. Ein- und Ausgabeparameter (inout/out) sind nicht vorgesehen; der Rückgabewert ist void.

In der Elementspezifikation [SWS_BswM_00050] sind weder spezifische Rückgabewerte noch Fehlermeldungen an DET oder DEM definiert. Interpretation: Das Modul BswM dürfte den gemeldeten Netzwerkzustand intern speichern und als Bedingung für die Auswertung konfigurierter Regeln sowie zur Einleitung von Moduswechseln verwenden. Frage Q-407156ff74cbab6f (offen)

Dieser Nutzungshinweis wurde automatisiert auf Basis der Spezifikation des AUTOSAR-Releases R20-11 generiert.

Implementer's Guide folgt (Komplexität I1)

function BswM_FrSM_CurrentState [SWS_BswM_00051] 📄 PDF

void BswM_FrSM_CurrentState (NetworkHandleType Network, FrSM_BswM_StateType CurrentState);

Function called by Fr SM to indicate its current state.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 09e9d4f2c26f Herkunft
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Verwendung und Aufrufkontext

Die Funktion BswM_FrSM_CurrentState dient als Callback- bzw. Benachrichtigungsschnittstelle des BswM, die vom FlexRay State Manager (FrSM) aufgerufen wird, um den aktuellen Zustand eines FlexRay-Clusters zu melden [SWS_BswM_00051]. Die Funktionsdeklaration wird über die Header-Datei BswM_FrSM.h bereitgestellt [SWS_BswM_00051]. Der Aufruf erfolgt synchron und liefert keinen Rückgabewert (void) zurück [SWS_BswM_00051].

Die Schnittstelle definiert zwei Eingangsparameter [SWS_BswM_00051]:

  • Network (Typ NetworkHandleType): Gibt den jeweiligen FlexRay-Cluster an, auf den sich die Zustandsmeldung bezieht [SWS_BswM_00051].
  • CurrentState (Typ FrSM_BswM_StateType): Übermittelt den aktuellen Zustand des betreffenden FlexRay-Clusters an den BswM [SWS_BswM_00051].

Ausgabe- (out) oder Ein-/Ausgabeparameter (inout) sind für diese Funktion nicht vorhanden [SWS_BswM_00051].

Nebenläufigkeit und Fehlerbehandlung

Die Funktion ist mit der Service-ID 0x0c spezifiziert und als reentrant gekennzeichnet [SWS_BswM_00051]. Spezifische Fehlercodes, Verhaltensweisen im Fehlerfall oder Benachrichtigungen an das Entwicklungsfehler- (DET) oder Diagnose-Event-Management (DEM) sind in der Spezifikation für diesen Dienst nicht ausgewiesen [SWS_BswM_00051].

Dieser Nutzungshinweis wurde automatisiert auf Basis der Spezifikation von AUTOSAR Classic Release R20-11 generiert.

Implementer's Guide folgt (Komplexität I1)

function BswM_Init [SWS_BswM_00002] 📄 PDF

void BswM_Init (const BswM_ConfigType* ConfigPtr);

Initializes the BSW Mode Manager.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 5e70993e412e Herkunft Offene Fragen (2)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Die synchrone Funktion BswM_Init dient der Initialisierung des Basic Software Mode Managers (BswM) gemäß der Spezifikation [SWS_BswM_00002]. Sie ist über die Header-Datei BswM.h deklariert und besitzt die Service-ID 0x00 [SWS_BswM_00002].

Parameter und Rückgabewerte

Der Funktion wird über den einzigen Eingangsparameter ConfigPtr ein Zeiger auf die Post-Build-Konfigurationsdaten vom Typ BswM_ConfigType übergeben [SWS_BswM_00002]. Es existieren keine Aus- oder Ein-/Ausgangsparameter, und es wird kein Rückgabewert zurückgegeben [SWS_BswM_00002].

Nebenläufigkeit und Ausführungskontext

Die Ausführung erfolgt synchron. Das Modulverhalten bezüglich Reentranz ist als bedingt reentrant (Conditionally Reentrant) spezifiziert [SWS_BswM_00002]. Als Interpretation dürfte dies bedeuten, dass gleichzeitige Aufrufe nur unter speziellen Systembedingungen wie etwa getrennten Datenbereichen zulässig sind. Frage Q-c0063b2a12eb4f41 (offen) Zudem dürfte der Aufruf typischerweise im Zuge der Systeminitialisierung erfolgen, bevor sonstige Operationen des BswM ausgeführt werden.

Dieser Text wurde von einer KI auf Basis der AUTOSAR-Spezifikation R20-11 generiert.

Implementer's Guide folgt (Komplexität I1)

function BswM_J1939DcmBroadcastStatus [SWS_BswM_00165] 📄 PDF

void BswM_J1939DcmBroadcastStatus (uint16 NetworkMask);

This API tells the Bsw M the desired communication status of the available networks. The status will typically be activated via COM I - PDU group switches.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: f5a67b453f66 Herkunft
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Die synchrone Service-Funktion BswM_J1939DcmBroadcastStatus (Service-ID 0x1b) übermittelt dem BSW Mode Manager den gewünschten Kommunikationsstatus der verfügbaren Netzwerke [SWS_BswM_00165]. Der gemeldete Status wird im System typischerweise über das Schalten von COM-I-PDU-Gruppen (COM I-PDU group switches) wirksam geschaltet [SWS_BswM_00165]. Die Schnittstelle wird über den Header BswM_J1939Dcm.h bereitgestellt [SWS_BswM_00165].

Die Parameter und die Semantik sind wie folgt spezifiziert [SWS_BswM_00165]:

  • Übergabeparameter: Über den Parameter NetworkMask wird eine Bitmaske übergeben, die je verfügbarem Netzwerk ein Bit umfasst. Die jeweilige Bitposition entspricht dabei der Kommunikationskanal-Kennung ComMChannel.ComMChannelId, sodass Kanal-ID 0 auf Bit 0 abgebildet wird.
  • Bit-Bedeutung: Der Wert 1 signalisiert, dass das Netzwerk aktiviert ist (Network enabled), während 0 ein deaktiviertes Netzwerk anzeigt (Network disabled).
  • Rückgabewert: Die Funktion besitzt keinen Rückgabewert (void).

Nebenläufigkeit und Einschränkungen: Der Aufruf ist reentrant ausgelegt und arbeitet synchron [SWS_BswM_00165]. Da der Parameter NetworkMask als 16-Bit-Wert definiert ist, können über diese API konstruktionsbedingt ausschließlich die ersten 16 Kommunikationskanal-IDs angesprochen werden [SWS_BswM_00165]. Spezifische Fehlercodes sowie DET- oder DEM-Meldungen sind für diese Funktion nicht spezifiziert [SWS_BswM_00165].

Dieser Nutzungshinweis wurde von einer KI auf Basis der Spezifikation SWS_BswM_00165 generiert.

Implementer's Guide folgt (Komplexität I1)

function BswM_J1939Nm_StateChangeNotification [SWS_BswM_00194] 📄 PDF

void BswM_J1939Nm_StateChangeNotification (NetworkHandleType Network, uint8 Node, Nm_StateType NmState);

Notification of current J1939Nm state after state changes. AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_BSWModeManager

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 47b6489fcb28 Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Verwendung

Die Funktion BswM_J1939Nm_StateChangeNotification dient der synchronen Benachrichtigung des BSW Mode Managers über den aktuellen Zustand eines J1939-Netzwerkknotens nach einer erfolgten Zustandsänderung [SWS_BswM_00194]. Die Deklaration ist über die Header-Datei BswM_J1939Nm.h verfügbar und wird unter der Service-ID 0x18 geführt [SWS_BswM_00194].

Die Schnittstelle erwartet drei Eingabeparameter und liefert keinen Rückgabewert (void) zurück [SWS_BswM_00194]:

  • Network (NetworkHandleType): Kennzeichnet den betroffenen J1939-Kanal [SWS_BswM_00194].
  • Node (uint8): Numerische Identifikation des betreffenden J1939-Knotens [SWS_BswM_00194].
  • NmState (Nm_StateType): Repräsentiert den aktuellen bzw. neu eingenommenen Zustand des Knotens [SWS_BswM_00194].

Nebenläufigkeit und Aufrufkontext

Die Verarbeitung erfolgt synchron und ist als reentrant spezifiziert [SWS_BswM_00194]. Daher darf die Benachrichtigung in Systemen mit mehreren Knoten oder Kanälen auch nebenläufig erfolgen. Der Aufrufer dürfte das Modul J1939Nm sein, welches den BswM nach internen Zustandsübergängen über den neuen Status in Kenntnis setzt. Frage Q-9c0e521db5e51713 (offen)

Fehlerbehandlung

Die Spezifikation definiert für diesen Dienst weder spezifische Fehlercodes noch Benachrichtigungen an DET oder DEM [SWS_BswM_00194]. Zudem existieren weder Ausgabeparameter noch Ein-/Ausgabeparameter zur Fehlerindikation [SWS_BswM_00194].

Dieser Text wurde von einer KI auf Basis der Spezifikation generiert.

Implementer's Guide folgt (Komplexität I1)

function BswM_LinSM_CurrentSchedule [SWS_BswM_00058] 📄 PDF

void BswM_LinSM_CurrentSchedule (NetworkHandleType Network, LinIf_SchHandleType CurrentSchedule);

Function called by Lin SM to indicate the currently active schedule table for a specific LIN channel.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: e6dd0a37e7a5 Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Die Funktion BswM_LinSM_CurrentSchedule dient als Benachrichtigungsschnittstelle, die vom LIN State Manager (Lin SM) aufgerufen wird, um dem BswM die aktuell aktive Schedule Table für einen bestimmten LIN-Kanal anzuzeigen ([SWS_BswM_00058]). Der Dienst ist über den Header BswM_LinSM.h verfügbar und besitzt die Service-ID 0x0a ([SWS_BswM_00058]).

Beim Aufruf werden zwei Eingabeparameter übergeben ([SWS_BswM_00058]):

  • Network (Typ NetworkHandleType): Bezeichnet den konkreten LIN-Kanal, auf dem der Wechsel der Schedule Table stattgefunden hat ([SWS_BswM_00058]).
  • Current Schedule (Typ LinIf_SchHandleType): Übergibt die Kennung der auf diesem LIN-Kanal nunmehr aktiven Schedule Table ([SWS_BswM_00058]).

Die Schnittstelle besitzt weder Ein-/Ausgangs- noch Ausgangsparameter und liefert keinen Rückgabewert (void) ([SWS_BswM_00058]). Das Ausführungsverhalten ist als synchron (Synchronous) definiert, und die Funktion ist als reentrant (Reentrant) spezifiziert ([SWS_BswM_00058]).

Spezifische Fehlercodes, Fehlerreaktionen oder Meldungen an DET oder DEM sind für diesen Dienst in der Spezifikation nicht ausgewiesen ([SWS_BswM_00058]). Interpretation: Der Aufruf dürfte typischerweise unmittelbar nach einem erfolgten Tabellenwechsel im Lin SM erfolgen, um die Zustandsbewertung im BswM synchron über den Wechsel zu informieren. Frage Q-302196d84e739258 (offen)

Dieser Text wurde von einer KI basierend auf den AUTOSAR-Spezifikationen erstellt.

function BswM_LinSM_CurrentState [SWS_BswM_00052] 📄 PDF

void BswM_LinSM_CurrentState (NetworkHandleType Network, LinSM_ModeType CurrentState);

Function called by Lin SM to indicate its current state.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 031315eb052c Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Verwendung und Aufrufkontext

Die synchrone Funktion BswM_LinSM_CurrentState wird vom LIN State Manager (LinSM) aufgerufen, um dem BswM eine Zustandsänderung eines LIN-Kanals mitzuteilen [SWS_BswM_00052]. Sie ist im Modul BswM definiert, besitzt die Service-ID 0x09 und wird über die Header-Datei BswM_LinSM.h für den LinSM deklariert [SWS_BswM_00052].

Parameter und Rückgabewerte

Die Schnittstelle besitzt keinen Rückgabewert (void) sowie weder Ein-/Ausgangs- noch Ausgangsparameter [SWS_BswM_00052]. Zur Signalisierung werden zwei Eingabeparameter übergeben:

  • Network (Typ NetworkHandleType): Gibt den LIN-Kanal an, auf den sich die gemeldete Zustandsanzeige bezieht [SWS_BswM_00052].
  • CurrentState (Typ LinSM_ModeType): Enthält den aktuell eingenommenen Zustand des angegebenen LIN-Kanals [SWS_BswM_00052].

Nebenläufigkeit und Modulintegration

Die Funktion ist laut Spezifikation reentrant ausgeführt [SWS_BswM_00052]. Dies erlaubt den parallelen Aufruf für unterschiedliche LIN-Netzwerke ohne gegenseitige Blockade. Interpretation: Der übermittelte Kanalzustand dürfte im BswM vermutlich als Eingangsgröße für Regelauswertungen und Aktionslisten genutzt werden, um darauf basierende Modusübergänge im Gesamtsteuergerät zu steuern. Frage Q-ca113e4b71e4ab75 (offen)

Dieser Text wurde von einer KI erstellt und basiert auf der Spezifikation AUTOSAR Classic R20-11.

Implementer's Guide folgt (Komplexität I1)

function BswM_LinTp_RequestMode [SWS_BswM_00156] 📄 PDF

void BswM_LinTp_RequestMode (NetworkHandleType Network, LinTp_Mode LinTpRequestedMode);

Function called by Lin TP to request a mode for the corresponding LIN channel. The Lin Tp_ Mode correlates to the LIN schedule table that should be used.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 7a2ccb8581e5 Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Verwendung und Aufrufkontext

Die synchrone Funktion BswM_LinTp_RequestMode wird vom Lin TP aufgerufen, um für einen bestimmten LIN-Kanal einen Moduswechsel anzufordern [SWS_BswM_00156]. Die Deklaration erfolgt über den Header BswM_LinTp.h mit der Service-ID 0x0b [SWS_BswM_00156]. Als Eingangsparameter werden übergeben:

  • Network (Typ NetworkHandleType): Bezeichnet den betroffenen LIN-Kanal, auf den sich die Modusanforderung bezieht [SWS_BswM_00156].
  • LinTp_Mode (übergeben als LinTp_Mode Lin Tp RequestedMode): Bestimmt den angeforderten TP-Modus, welcher direkt mit der zu verwendenden LIN-Schedule-Tabelle korreliert [SWS_BswM_00156].

Die Funktion besitzt keinen Rückgabewert (void) [SWS_BswM_00156]. Spezifische Fehlercodes, Rückgabewerte zur Fehlerbehandlung oder DET-Meldungen sind in der Funktionsdefinition nicht vorgesehen [SWS_BswM_00156].

Nebenläufigkeit und Modusverwaltung

Die Schnittstelle ist als reentrant spezifiziert [SWS_BswM_00156]. Dies erlaubt einen parallelen Aufruf aus unterschiedlichen Kontexten oder für separate LIN-Kanäle. Da der geforderte Modus die Auswahl der Schedule-Tabelle beeinflusst, dient die Funktion als modusspezifische Schnittstelle zwischen Lin TP und dem BSW Mode Manager [SWS_BswM_00156]. Interpretation: Auf Basis der Anforderung dürfte der BswM interne Auswertungen vornehmen, um den Wechsel der LIN-Schedule-Tabelle anzustoßen. Frage Q-544460b6b32b6ac2 (offen)

Dieser Nutzungshinweis wurde automatisiert auf Basis der Spezifikation AUTOSAR Classic R20-11 generiert.

Implementer's Guide folgt (Komplexität I1)

function BswM_Nm_CarWakeUpIndication [SWS_BswM_00235] 📄 PDF

void BswM_Nm_CarWakeUpIndication (NetworkHandleType Network);

Function called by Nm to indicate a Car Wakeup.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: d3f5d924a01a Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Verwendung und Aufrufkontext

Die Funktion BswM_Nm_CarWakeUpIndication dient als Callback-Schnittstelle des Basic Software Mode Managers (BswM) und wird vom Network Management (Nm) aufgerufen, um ein kanalbezogenes Car-Wakeup-Ereignis anzuzeigen [SWS_BswM_00235]. Der Aufruf erfolgt synchron und übergibt über den Eingabeparameter Network vom Typ NetworkHandleType die Identifikation des betroffenen Nm-Kanals [SWS_BswM_00235]. Die Schnittstelle deklariert keinen Rückgabewert (void) und stellt keine Ausgabeparameter bereit [SWS_BswM_00235]. Definiert ist der Dienst mit der Service-ID 0x24 in der Header-Datei BswM_Nm.h [SWS_BswM_00235].

Nebenläufigkeit und Fehlerbehandlung

Die Schnittstelle ist als reentrant spezifiziert, wodurch parallele Aufrufe zulässig sind [SWS_BswM_00235]. Spezifische Fehlercodes, Benachrichtigungen an das DET oder DEM sowie besondere Fehlerbehandlungsmechanismen sind in der Elementspezifikation nicht ausgewiesen [SWS_BswM_00235].

Zusammenspiel

Als Integrationspunkt zwischen dem Nm und dem BswM leitet die Funktion das Wecksignal direkt an die BswM-Verarbeitung weiter [SWS_BswM_00235]. Interpretation: Der Aufruf dürfte innerhalb des BswM als Indikator für Regelprüfungen oder Moduswechsel im Rahmen des Netzwerk-Hochlaufs ausgewertet werden. Frage Q-e56d5cfb6345f1ba (offen)

Dieser Nutzungshinweis wurde automatisiert auf Basis der AUTOSAR-Spezifikation R20-11 erstellt.

function BswM_Nm_StateChangeNotification [SWS_BswM_91002] 📄 PDF

void BswM_Nm_StateChangeNotification (NetworkHandleType Network, Nm_StateType currentState);

Notification of current Nm state after state changes.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 7766e9c5f805 Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Verwendung und Aufrufkontext

Die Funktion BswM_Nm_StateChangeNotification dient als Benachrichtigungsschnittstelle, um den aktuellen Zustand eines Netzwerkmanagement-Kanals nach erfolgten Statusänderungen an den BswM zu übermitteln [SWS_BswM_91002]. Sie ist in der Header-Datei BswM_Nm.h deklariert und unter der Service-ID 0x27 definiert [SWS_BswM_91002]. Die Ausführung erfolgt synchron, und die Funktion besitzt keinen Rückgabewert (void) [SWS_BswM_91002].

Die Übergabe der Zustandsdaten erfolgt über zwei reine Eingabeparameter; Ein-Ausgabe- oder Ausgabeparameter existieren nicht [SWS_BswM_91002]:

  • Network (Typ: NetworkHandleType): Bezeichnet den betroffenen Nm-Kanal zur Identifikation des Netzwerks [SWS_BswM_91002].
  • currentState (Typ: Nm_StateType): Signalisiert den aktuellen beziehungsweise neuen Zustand des angegebenen Nm-Kanals [SWS_BswM_91002].

Nebenläufigkeit und Verhalten

Die Schnittstelle ist als reentrant eingestuft [SWS_BswM_91002]. Damit kann die Funktion nebenläufig aufgerufen werden, was insbesondere bei gleichzeitigen Statusübergängen auf verschiedenen Netzwerkkanälen relevant ist. Da der Aufruf als synchron spezifiziert ist, kehrt die Funktion erst nach der internen Entgegennahme der Statusänderung zum Aufrufer zurück [SWS_BswM_91002]. Der Aufruf dürfte typischerweise durch das Netzwerkmanagement erfolgen, sobald ein Kanal einen neuen Zustand eingenommen hat [SWS_BswM_91002]. Frage Q-8645d9511a825fed (offen)

Dieser Text wurde von einer KI auf Basis der Spezifikation R20-11 generiert.

Implementer's Guide folgt (Komplexität I1)

function BswM_NvM_CurrentBlockMode [SWS_BswM_00104] 📄 PDF

void BswM_NvM_CurrentBlockMode (NvM_BlockIdType Block, NvM_RequestResultType CurrentBlockMode);

Function called by Nv M to indicate the current block mode of an Nv M block.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: ce828c822f7e Herkunft
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Verwendung

Die Funktion BswM_NvM_CurrentBlockMode wird vom NVRAM Manager (NvM) aufgerufen, um dem Basic Software Mode Manager (BswM) den aktuellen Blockmodus eines NVRAM-Blocks anzuzeigen [SWS_BswM_00104]. Die Deklaration der Funktion ist über die Header-Datei BswM_NvM.h verfügbar und in der Spezifikation der Service-ID 0x16 zugeordnet [SWS_BswM_00104].

Parameter und Rückgabewerte

Die Funktion liefert keinen Rückgabewert (void) an den Aufrufer zurück und verarbeitet zwei Eingangsparameter [SWS_BswM_00104]:

  • Block (Typ NvM_BlockIdType): Übergibt die Blockkennung des NVRAM-Blocks, auf den sich die neue Modusinformation bezieht [SWS_BswM_00104].
  • CurrentBlockMode (Typ NvM_RequestResultType): Überträgt den aktuellen Blockmodus beziehungsweise das Anfrageergebnis des NvM-Blocks [SWS_BswM_00104].

Ausgangsparameter oder kombinierte Ein-/Ausgangsparameter sind für diese Schnittstelle nicht definiert [SWS_BswM_00104].

Nebenläufigkeit und Einschränkungen

Der Funktionsaufruf von BswM_NvM_CurrentBlockMode wird synchron ausgeführt und ist als reentrant spezifiziert [SWS_BswM_00104]. Damit ist die Schnittstelle für die reentrante Nutzung in nebenläufigen Ausführungskontexten ausgelegt [SWS_BswM_00104].

Fehlerbehandlung

Für diese Schnittstelle sind in den Spezifikationsvorgaben weder spezifische Fehlercodes noch Anforderungen an Fehlermeldungen über den Default Error Tracer (DET) oder das Diagnostic Event Manager (DEM) Modul ausgewiesen [SWS_BswM_00104].

Dieser Nutzungshinweis wurde automatisiert generiert und basiert ausschließlich auf den Spezifikationsdaten des AUTOSAR-Releases R20-11.

Implementer's Guide folgt (Komplexität I1)

function BswM_NvM_CurrentJobMode [SWS_BswM_00152] 📄 PDF

void BswM_NvM_CurrentJobMode (NvM_MultiBlockRequestType MultiBlockRequest, NvM_RequestResultType CurrentJobMode);

Function called by Nv M to inform the Bsw M about the current state of a multi block job.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 6a6aa120a70e Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Verwendung und Signatur

Die Funktion BswM_NvM_CurrentJobMode wird vom NVRAM Manager (NvM) aufgerufen, um den BSW Mode Manager (BswM) über den aktuellen Zustand eines Multi-Block-Auftrags zu informieren [SWS_BswM_00152]. Die Schnittstelle ist im Header BswM_NvM.h deklariert und besitzt die Service-ID 0x17 [SWS_BswM_00152]. Sie nimmt zwei Eingabeparameter entgegen:

  • MultiBlockRequest (Typ NvM_MultiBlockRequestType): Zeigt an, auf welchen konkreten Multi-Block-Auftrag sich dieser Callback bezieht [SWS_BswM_00152].
  • CurrentJobMode (Typ NvM_RequestResultType): Gibt den aktuellen Status oder das Resultat des betreffenden Multi-Block-Auftrags an [SWS_BswM_00152].

Die Funktion gibt keinen Wert zurück (Rückgabetyp void) und verfügt über keine Ein-/Ausgabe- oder Ausgabeparameter [SWS_BswM_00152].

Nebenläufigkeit und Fehlerbehandlung

Die Spezifikation definiert BswM_NvM_CurrentJobMode als synchron und reentrant [SWS_BswM_00152]. Der Aufruf erfolgt direkt aus dem Ausführungskontext des Moduls NvM. Als Interpretation dürfte dieser Aufruf typischerweise im Zuge von Sammeloperationen wie Lese- oder Schreibvorgängen ausgelöst werden, sobald ein Statuswechsel vorliegt. Frage Q-25514d3dbf1d8c5c (offen)

Für diese Funktion sind in der Spezifikation weder Rückgabewerte noch spezifische Fehlercodes für Entwicklungsfehler (DET) oder Produktionsfehler hinterlegt; das Verhalten im Fehlerfall wird nicht gesondert ausgewiesen [SWS_BswM_00152].

Dieser Nutzungshinweis wurde automatisiert auf Basis der Spezifikation AUTOSAR Classic R20-11 erstellt.

Implementer's Guide folgt (Komplexität I1)

function BswM_RequestMode [SWS_BswM_00046] 📄 PDF

void BswM_RequestMode (BswM_UserType requesting_user, BswM_ModeType requested_mode);

Generic function call to request modes. This function shall only be used by other BSW modules that does not have a specific mode request interface.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: c82de091e0a4 Herkunft
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Die Funktion BswM_RequestMode stellt einen generischen Funktionsaufruf zur Anforderung von Modi im Basic Software Mode Manager (BswM) bereit [SWS_BswM_00046]. Sie ist über die Header-Datei BswM.h deklariert und besitzt die Service-ID 0x02 [SWS_BswM_00046].

Verwendung und Einschränkungen

Die Verwendung ist eng reglementiert: Die Funktion darf ausschließlich von anderen BSW-Modulen aufgerufen werden, die über keine eigene, modulspezifische Schnittstelle zur Modusanforderung verfügen [SWS_BswM_00046]. BSW-Module mit dedizierten Schnittstellen dürfen diesen generischen Dienst demnach nicht nutzen.

Parameter und Semantik

Die Funktionssignatur lautet void BswM_RequestMode (BswM_UserType requesting_user, BswM_ModeType requested_mode) [SWS_BswM_00046]. Es werden zwei Eingangsparameter übergeben:

  • requesting_user: Identifiziert den anfordernden Benutzer bzw. das anfragende Softwaremodul [SWS_BswM_00046].
  • requested_mode: Übergibt den konkret angeforderten Zustand bzw. Modus [SWS_BswM_00046].

Es existieren weder Ein-/Ausgangs- noch Ausgangsparameter, und die Funktion besitzt keinen Rückgabewert (void) [SWS_BswM_00046].

Nebenläufigkeit

Der Aufruf wird synchron verarbeitet und ist als reentrant spezifiziert [SWS_BswM_00046]. Damit ist die Funktion für nebenläufige Aufrufe aus mehreren BSW-Kontexten geeignet.

Dieser Nutzungshinweis wurde automatisiert auf Basis der Spezifikation von AUTOSAR Classic Release R20-11 generiert.

Implementer's Guide folgt (Komplexität I1)

function BswM_Sd_ClientServiceCurrentState [SWS_BswM_00204] 📄 PDF

void BswM_Sd_ClientServiceCurrentState (uint16 SdClientServiceHandleId, Sd_ClientServiceCurrentStateType CurrentClientState);

Function called by Service Discovery to indicate current state of the Client Service (available/ down).

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: d6ef98b31ed5 Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Verwendung und Aufrufkontext

Die Funktion BswM_Sd_ClientServiceCurrentState wird von der Service Discovery (SD) aufgerufen, um den BswM synchron über den aktuellen Zustand eines Client-Services zu informieren [SWS_BswM_00204]. Über diese Schnittstelle wird signalisiert, ob der entsprechende Dienst betriebsbereit (available) oder nicht verfügbar (down) ist [SWS_BswM_00204]. Die Deklaration der C-Funktion wird über den Header BswM_Sd.h bereitgestellt [SWS_BswM_00204].

Parameter und Schnittstellensignatur

Die Schnittstelle besitzt die Service-ID 0x1f und erwartet zwei Eingangsparameter [SWS_BswM_00204]:

  • SdClientServiceHandleId (Typ uint16): Eindeutige Handle-ID zur Identifikation des Client-Services [SWS_BswM_00204].
  • CurrentClientState (Typ Sd_ClientServiceCurrentStateType): Aktueller Verfügbarkeitszustand des Dienstes [SWS_BswM_00204].

Die Funktion liefert keinen Rückgabewert zurück (void) und definiert keine Ein-/Ausgabe- oder Ausgabeparameter [SWS_BswM_00204].

Nebenläufigkeit und Zusammenspiel

Die Ausführung von BswM_Sd_ClientServiceCurrentState ist synchron und reentrant [SWS_BswM_00204]. Aufrufer müssen daher keine sequentielle Serialisierung erzwingen, sondern können Statusänderungen nebenläufig melden. Im Gesamtzusammenspiel dürfte die Statusmeldung vermutlich zur internen Regelauswertung und Initiierung konfigurierter Moduswechsel innerhalb des BswM genutzt werden. Frage Q-0490a3902ca9e78d (offen)

Dieser Text wurde von einer KI auf Basis der Spezifikationsdaten generiert.

Implementer's Guide folgt (Komplexität I1)

function BswM_Sd_ConsumedEventGroupCurrentState [SWS_BswM_00207] 📄 PDF

void BswM_Sd_ConsumedEventGroupCurrentState (uint16 SdConsumedEventGroupHandleId, Sd_ConsumedEventGroupCurrentStateType ConsumedEventGroupState);

Function called by Service Discovery to indicate current status of the Consumed Eventgroup (available/ down).

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 8146488c68a5 Herkunft
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Die Funktion BswM_Sd_ConsumedEventGroupCurrentState dient als Callback-Schnittstelle, die von der Service Discovery aufgerufen wird, um dem Basic Software Mode Manager (BswM) den aktuellen Zustand einer konsumierten Eventgruppe anzuzeigen [SWS_BswM_00207]. Sie informiert den BswM darüber, ob die entsprechende Eventgruppe im Netzwerk verfügbar (available) oder ausgefallen (down) ist [SWS_BswM_00207].

Verwendung und Signatur

Die Schnittstelle besitzt die Service-ID 0x21 und wird über die Header-Datei BswM_Sd.h bereitgestellt [SWS_BswM_00207]. Der Aufruf wird synchron verarbeitet und besitzt keinen Rückgabewert (void) [SWS_BswM_00207]. Beim Funktionsaufruf übergibt die Service Discovery zwei Eingangsparameter, während weder Ein-/Ausgangs- noch reine Ausgangsparameter definiert sind [SWS_BswM_00207]:

  • Sd Consumed Event Group Handle Id (Datentyp uint16): Eindeutige Handle-ID zur Identifikation der jeweiligen konsumierten Eventgruppe [SWS_BswM_00207].
  • Consumed Event Group State (Datentyp Sd_Consumed Event Group Current State Type): Aktueller Status der konsumierten Eventgruppe zur Anzeige der Verfügbarkeit [SWS_BswM_00207].

Nebenläufigkeit und Fehlerbehandlung

Gemäß Spezifikation ist die Funktion als reentrant gekennzeichnet und darf somit bei Bedarf nebenläufig aufgerufen werden [SWS_BswM_00207]. Für diesen Dienst sind in der Spezifikation keine spezifischen Fehlercodes, Ausnahmen oder Rückmeldungen an das Entwicklungsfehler-Tracking (DET) oder das Diagnose-Event-Management (DEM) aufgeführt [SWS_BswM_00207].

Dieser Nutzungshinweis wurde automatisiert auf Basis der Spezifikation AUTOSAR CP R20-11 generiert.

Implementer's Guide folgt (Komplexität I1)

function BswM_Sd_EventHandlerCurrentState [SWS_BswM_00210] 📄 PDF

void BswM_Sd_EventHandlerCurrentState (uint16 SdEventHandlerHandleId, Sd_EventHandlerCurrentStateType EventHandlerStatus);

Function called by Service Discovery to indicate current status of the Event Handler (requested/ released).

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 38ebb49535f7 Herkunft
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Verwendung und Aufrufkontext

Die synchrone Funktion BswM_Sd_EventHandlerCurrentState dient als Schnittstelle, die von der Service Discovery aufgerufen wird, um dem BSW Mode Manager (BswM) den aktuellen Status eines Event Handlers mitzuteilen [SWS_BswM_00210]. Typische Zustände des Event Handlers umfassen die Information, ob dieser angefordert oder freigegeben wurde [SWS_BswM_00210]. Die Deklaration der Funktion wird über die Header-Datei BswM_Sd.h bereitgestellt [SWS_BswM_00210].

Parameter und Signatureigenschaften

Die Funktion liefert keinen Rückgabewert (void) und erwartet bei ihrem Aufruf zwei Eingangsparameter [SWS_BswM_00210]:

  • SdEventHandlerHandleId: Identifikator vom Typ uint16, welcher den zugehörigen Event Handler eindeutig adressiert [SWS_BswM_00210].
  • EventHandlerStatus: Statusinformation vom Typ Sd_EventHandlerCurrentStateType, die den aktuellen Zustand des Event Handlers abbildet [SWS_BswM_00210].

Nebenläufigkeit und Fehlerbehandlung

Die Funktion wird unter der Service-ID 0x20 geführt und ist laut Spezifikation reentrant ausgeführt [SWS_BswM_00210]. Spezifische Fehlercodes, Ein-/Ausgangsparameter oder explizite Fehlermeldungen über DET oder DEM sind für diese Schnittstelle nicht definiert [SWS_BswM_00210].

Dieser Text wurde von einer KI erstellt. Er dient als Orientierungshilfe und ersetzt nicht das Studium der AUTOSAR-Spezifikation.

Implementer's Guide folgt (Komplexität I1)

function BswM_WdgM_RequestPartitionReset [SWS_BswM_00157] 📄 PDF

void BswM_WdgM_RequestPartitionReset (ApplicationType Application);

Function called by Wdg M to request a partition reset.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 51a67f346a31 Herkunft
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Die Funktion BswM_WdgM_RequestPartitionReset wird durch den Watchdog Manager (WdgM) aufgerufen, um beim Basic Software Mode Manager (BswM) das Zurücksetzen einer bestimmten Partition anzufordern [SWS_BswM_00157]. Die Deklaration dieser Schnittstelle wird über den Header BswM_WdgM.h zur Verfügung gestellt und ist der Service-ID 0x11 zugeordnet [SWS_BswM_00157].

Für die Verwendung und den Aufrufkontext gelten die folgenden Festlegungen der Spezifikation:

  • Parameter: Als Eingabeparameter wird Application vom Typ ApplicationType übergeben, der den eindeutigen Bezeichner der betreffenden OS-Application darstellt [SWS_BswM_00157]. Weitere Ein- oder Ausgabeparameter existieren für diesen Aufruf nicht [SWS_BswM_00157].
  • Rückgabewert: Die Funktion besitzt keinen Rückgabewert (Rückgabetyp void) [SWS_BswM_00157].
  • Synchronizität und Nebenläufigkeit: Die Funktionsausführung erfolgt synchron und ist als reentrant spezifiziert, wodurch parallele Aufrufe zulässig sind [SWS_BswM_00157].
  • Fehlerbehandlung: Spezifische Fehlercodes, Fehlerreaktionen sowie Meldungen an DET oder DEM sind in der Spezifikation dieses Elements nicht dokumentiert [SWS_BswM_00157].

Im Zusammenspiel der Basissoftwaremodule bildet die Funktion die direkte Benachrichtigungsschnittstelle, über die der WdgM den BswM synchron über einen erforderlichen Partitions-Reset für die übergebene OS-Application in Kenntnis setzt [SWS_BswM_00157].

Dieser Text wurde von einer KI erstellt; die Richtlinien verlangen Prüfung anhand der Spezifikation.

function BswM_MainFunction [SWS_BswM_00053] 📄 PDF

void BswM_MainFunction (void);

Main function of the Bsw M

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: c5437207e9bf Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Die Funktion BswM_MainFunction bildet die zentrale periodische Hauptfunktion des BSW-Modus-Managers (BswM) ([SWS_BswM_00053]). Sie besitzt die Service-ID 0x03, nimmt keine Übergabeparameter entgegen und liefert keinen Rückgabewert (Signatur: void BswM_MainFunction(void)). Ihre Deklaration wird über die Header-Datei SchM_BswM.h bereitgestellt ([SWS_BswM_00053]). Aufgrund der Bereitstellung über SchM_BswM.h dürfte der Aufruf im Steuergerät typischerweise zyklisch durch den Schedule Manager (SchM) im Kontext einer periodischen Betriebssystem-Task erfolgen. Frage Q-fdb948e42c35d9fb (offen)

Hinsichtlich des Zusammenspiels und der Verarbeitungslogik ist BswM_MainFunction für die Auswertung verzögerter Modusanforderungen verantwortlich: Die Funktion muss verbindlich alle Regeln auswerten, die mindestens eine Modusanforderung (Mode Request) mit dem Konfigurationsparameter BswMRequestProcessing auf dem Wert BSWM_DEFERRED als Eingang verwenden ([SWS_BswM_00075]).

Für die praktische Einbindung und Integration in das Basissoftware-System ergeben sich daraus folgende Randbedingungen:

  • Aufrufkontext und Scheduling: Die Funktion besitzt weder Parameter noch Rückgabewerte ([SWS_BswM_00053]); sie ist für die wiederkehrende Einbindung in den zyklischen Ablaufplan des Basissoftware-Schedulers vorgesehen.
  • Regelverarbeitung: Modusanforderungen, die nicht unmittelbar verarbeitet werden, sondern auf BSWM_DEFERRED konfiguriert sind, werden zeitlich entkoppelt und erst im Ausführungszyklus dieser Hauptfunktion gesammelt abgearbeitet ([SWS_BswM_00075]).

Dieser Text wurde von einer KI auf Basis der Spezifikation generiert.

Implementer's Guide folgt (Komplexität I1)

function <BswMUserCalloutFunction> [SWS_BswM_00270] 📄 PDF

void <BswMUserCalloutFunction> (implementation_specific -);

Function called by the Bsw M when a Bsw MUser Callout is executed. The function name and all function parameters are defined b y the Bsw MUser Callout Function configuration parameter. Any return values are ignored by the Bsw M.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 3c3d21cc95d0 Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Verwendung

Die benutzerdefinierte Callout-Funktion wird durch den BSW Mode Manager aufgerufen, sobald eine entsprechende BswMUserCallout-Aktion ausgeführt wird [SWS_BswM_00270]. Der konkrete Funktionsname sowie sämtliche Übergabeparameter werden über den Konfigurationsparameter BswMUserCalloutFunction festgelegt [SWS_BswM_00270]. Die Syntax ist generisch als void <BswMUserCalloutFunction>(implementation_specific) definiert, wobei etwaige Rückgabewerte vom BswM vollständig ignoriert werden [SWS_BswM_00270].

Nebenläufigkeit und Einschränkungen

Sowohl das Ausführungsverhalten (synchron oder asynchron) als auch die Reentranz der Callout-Funktion sind als konfigurationsabhängig spezifiziert [SWS_BswM_00270]. Der tatsächliche Aufrufkontext hängt vermutlich vom auslösenden BswM-Ereignis bzw. der Task ab, in welcher die BswM-Aktion abgearbeitet wird. Frage Q-2f3e2cdbb9de1794 (offen) Entwickler müssen daher sicherstellen, dass die Implementierung den Anforderungen des gewählten Ausführungskontextes bezüglich Thread-Sicherheit und Blockierverhalten entspricht.

Fehlerbehandlung und Konfiguration

Die Spezifikation definiert für diesen Service (Service-ID 0x25) keine spezifischen DET- oder DEM-Fehlermeldungen [SWS_BswM_00270]. Da der BswM eventuelle Rückgabewerte ignoriert, kann die Funktion Fehler nicht über standardisierte Rückgabewerte an den BswM melden. Die Verfügbarkeit und Verknüpfung der Funktion erfolgt über die Modulkonfiguration (Referenz ECUC_BswM_00954) [SWS_BswM_00270].

Dieser Nutzungshinweis wurde automatisiert generiert und basiert auf den Vorgaben der AUTOSAR-Spezifikation.

type BswM_ConfigType [SWS_BswM_00213] 📄 PDF

This structure contains all post - build configurable parameters of the BSW Mode AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_BSWModeManager Manager. A pointer to this structure is passed to the BSW Mode Manager initialization function for configuration.

type BswM_ModeType [SWS_BswM_00214] 📄 PDF

This type identifies the modes that can be requested by Bsw M Users.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: aaf8a1f15f59 Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Verwendung und Typdefinition

Der Datentyp BswM_ModeType dient im Modul BswM zur eindeutigen Identifikation jener Modi, die von BswM-Benutzern (BswM Users) angefordert werden können [SWS_BswM_00214]. Gemäß Spezifikation ist der Typ vom primitiven Basistyp uint16 abgeleitet und umfasst einen Wertebereich von 0 bis 65535 [SWS_BswM_00214]. Deklariert und bereitgestellt wird er über die Header-Datei BswM.h, welche von anfordernden Komponenten zur Verwendung eingebunden werden muss [SWS_BswM_00214].

Einschränkungen und Annahmen

Aufrufende Software-Einheiten übergeben Moduswerte als 16-Bit-Ganzzahl innerhalb der Grenzen von 0 bis 65535 [SWS_BswM_00214]. Da die Spezifikation keine festen symbolischen Konstanten auflistet, dürfte die konkrete Zuordnung einzelner ganzzahliger Werte zu anwendungsspezifischen Modi vermutlich im Rahmen der Konfiguration des BswM-Moduls festgelegt werden. Frage Q-94530792144d42ea (offen) Für eine fehlerfreie Verwendung ist sicherzustellen, dass Anforderer ausschließlich Werte innerhalb des definierten Wertebereichs anwenden [SWS_BswM_00214].

Integration im BSW-Stack

Schnittstellen, welche Modusanforderungen von Benutzern an das BswM weiterleiten, nutzen BswM_ModeType zur typisierten Übergabe der Modus-Identifikatoren [SWS_BswM_00214]. Die Bereitstellung über BswM.h gewährleistet dabei eine einheitliche Typisierung über unterschiedliche BSW-Modulgrenzen hinweg [SWS_BswM_00214].

Dieser Text wurde durch ein KI-gestütztes Dokumentationssystem erstellt und basiert auf der Spezifikation AUTOSAR Classic R20-11.

Implementer's Guide folgt (Komplexität I1)

type BswM_UserType [SWS_BswM_00216] 📄 PDF

This type identifies a Bsw M User that makes mode requests to the Bsw M.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 4d6cdb259f49 Herkunft Offene Fragen (2)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Verwendung und Typdefinition

Der Datentyp BswM_UserType wird über die Header-Datei BswM.h bereitgestellt und dient der eindeutigen Identifikation eines BswM-Benutzers, welcher Modusanforderungen an den Basic Software Mode Manager richtet [SWS_BswM_00216]. Der Typ ist vom Basis-Ganzzahltyp uint16 abgeleitet und umfasst einen Wertebereich von 0 bis 65535 [SWS_BswM_00216].

Zusammenspiel und Integration

In der Software-Architektur dürfte dieser Typ primär als Übergabeparameter in Modusanforderungs-Schnittstellen fungieren, damit der BswM die eingehende Anforderung der jeweiligen Quelle zuordnen kann. Frage Q-83bb1af3fb090e7e (offen) Durch die 16-Bit-Breite bietet die Typdefinition Raum für bis zu 65536 verschiedene Benutzer-Identifikatoren im System [SWS_BswM_00216]. Die konkreten Instanzwerte der Benutzer werden dabei vermutlich im Rahmen der BSW-Generierung konfigurationsspezifisch erzeugt.

Einschränkungen und Fehlerbehandlung

Da es sich um eine elementare Typdefinition handelt, sind im Spezifikationsumfang keine spezifischen Fehlercodes, DET-Meldungen oder Nebenläufigkeitsmechanismen für diesen Typ hinterlegt. Anfordernde Software-Module müssen sicherstellen, dass bei Aufrufen ausschließlich Werte innerhalb des zulässigen Bereichs von 0 bis 65535 übergeben werden [SWS_BswM_00216].

Dieser Nutzungshinweis wurde von einer KI generiert und basiert ausschließlich auf dem Spezifikationselement SWS_BswM_00216 aus AUTOSAR R20-11.

Implementer's Guide folgt (Komplexität I1)

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/CP_MOD_BswM
Status
unspecified
Version
AUTOSAR/AP/record/CP_MOD_BswM@rel:R20-11#b42ca0e4
Content hash
b42ca0e4
Source
https://www.autosar.org/fileadmin/standards/R20-11/CP/AUTOSAR_SWS_BSWModeManager.pdf#nameddest=SWS_BswM_00193

Initialisierung und Status

BswM_Deinit function

Deinitializes the BSW Mode Manager.

void BswM_Deinit (void);

Returns the version information of this module.

void BswM_GetVersionInfo (Std_VersionInfoType* VersionInfo);
BswM_Init function

Initializes the BSW Mode Manager.

void BswM_Init (const BswM_ConfigType* ConfigPtr);

Dienste · Com…

Function called by Com M to indicate the current communication mode of a Com M channel.

void BswM_ComM_CurrentMode (NetworkHandleType Network, ComM_ModeType RequestedMode);

Function is called by Com M to indicate the current mode of the PNC. AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_BSWModeManager

void BswM_ComM_CurrentPNCMode (PNCHandleType PNC, ComM_PncModeType CurrentPncMode);

Function is called by Com M to signal a shutdown.

void BswM_ComM_InitiateReset (void);

Dienste · Ecu…

Function called Ecu M to indicate the current ECU Operation Mode.

void BswM_EcuM_CurrentState (EcuM_StateType CurrentState);

Function called by Ecu M to indicate the current state of a wakeup source.

void BswM_EcuM_CurrentWakeup (EcuM_WakeupSourceType source, EcuM_WakeupStatusType state);

Function called by Ecu M notify about current Status of the Run Request Protocol.

void BswM_EcuM_RequestedState (EcuM_StateType State, EcuM_RunStatusType CurrentState);

Dienste · Lin…

Function called by Lin SM to indicate the currently active schedule table for a specific LIN channel.

void BswM_LinSM_CurrentSchedule (NetworkHandleType Network, LinIf_SchHandleType CurrentSchedule);

Function called by Lin SM to indicate its current state.

void BswM_LinSM_CurrentState (NetworkHandleType Network, LinSM_ModeType CurrentState);

Function called by Lin TP to request a mode for the corresponding LIN channel. The Lin Tp_ Mode correlates to the LIN schedule table that should be used.

void BswM_LinTp_RequestMode (NetworkHandleType Network, LinTp_Mode LinTpRequestedMode);

Dienste · Sd…

Function called by Service Discovery to indicate current state of the Client Service (available/ down).

void BswM_Sd_ClientServiceCurrentState (uint16 SdClientServiceHandleId, Sd_ClientServiceCurrentStateType CurrentClientState);

Function called by Service Discovery to indicate current status of the Consumed Eventgroup (available/ down).

void BswM_Sd_ConsumedEventGroupCurrentState (uint16 SdConsumedEventGroupHandleId, Sd_ConsumedEventGroupCurrentStateType ConsumedEventGroupState);

Function called by Service Discovery to indicate current status of the Event Handler (requested/ released).

void BswM_Sd_EventHandlerCurrentState (uint16 SdEventHandlerHandleId, Sd_EventHandlerCurrentStateType EventHandlerStatus);

Dienste · Dcm…

This function is called by the DCM in order to report an updated application.

void BswM_Dcm_ApplicationUpdated (void);

Function called by DCM to inform the Bsw M about the current state of the communication mode.

void BswM_Dcm_CommunicationMode_CurrentState (NetworkHandleType Network, Dcm_CommunicationModeType RequestedMode);

Dienste · Eth…

Function called by Eth If to indicate the link state change of a certain Ethernet switch port group.

void BswM_EthIf_PortGroupLinkStateChg (EthIf_SwitchPortGroupIdxType PortGroupIdx, EthTrcv_LinkStateType PortGroupState);

Function called by Eth SM to indicate its current state.

void BswM_EthSM_CurrentState (NetworkHandleType Network, EthSM_NetworkModeStateType CurrentState);

Dienste · J1939…

This API tells the Bsw M the desired communication status of the available networks. The status will typically be activated via COM I - PDU group switches.

void BswM_J1939DcmBroadcastStatus (uint16 NetworkMask);

Notification of current J1939Nm state after state changes. AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_BSWModeManager

void BswM_J1939Nm_StateChangeNotification (NetworkHandleType Network, uint8 Node, Nm_StateType NmState);

Dienste · Nm…

Function called by Nm to indicate a Car Wakeup.

void BswM_Nm_CarWakeUpIndication (NetworkHandleType Network);

Notification of current Nm state after state changes.

void BswM_Nm_StateChangeNotification (NetworkHandleType Network, Nm_StateType currentState);

Dienste · Nv…

Function called by Nv M to indicate the current block mode of an Nv M block.

void BswM_NvM_CurrentBlockMode (NvM_BlockIdType Block, NvM_RequestResultType CurrentBlockMode);

Function called by Nv M to inform the Bsw M about the current state of a multi block job.

void BswM_NvM_CurrentJobMode (NvM_MultiBlockRequestType MultiBlockRequest, NvM_RequestResultType CurrentJobMode);

Dienste · Weitere

Function called by Restart Task if the partition containing the Bsw M has been restarted.

void BswM_BswMPartitionRestarted (void);

Function called by Can SM to indicate its current state. Ava ilable via Bsw M_ Can SM.h

void BswM_CanSM_CurrentState (NetworkHandleType Network, CanSM_BswMCurrentStateType CurrentState);

Function called by Fr SM to indicate its current state.

void BswM_FrSM_CurrentState (NetworkHandleType Network, FrSM_BswM_StateType CurrentState);

Generic function call to request modes. This function shall only be used by other BSW modules that does not have a specific mode request interface.

void BswM_RequestMode (BswM_UserType requesting_user, BswM_ModeType requested_mode);

Function called by Wdg M to request a partition reset.

void BswM_WdgM_RequestPartitionReset (ApplicationType Application);

Callouts und erwartete Schnittstellen

Function called by the Bsw M when a Bsw MUser Callout is executed. The function name and all function parameters are defined b y the Bsw MUser Callout Function configuration parameter. Any return values are ignored by the Bsw M.

void <BswMUserCalloutFunction> (implementation_specific -);

Zyklisch

Main function of the Bsw M

void BswM_MainFunction (void);

Typen

This structure contains all post - build configurable parameters of the BSW Mode AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_BSWModeManager Manager. A pointer to this structure is passed to the BSW Mode Manager initialization function for configuration.

This type identifies the modes that can be requested by Bsw M Users.

This type identifies a Bsw M User that makes mode requests to the Bsw M.