DEENESPTFRRUARHIKOZHNL

Software Cluster Connection (SwCluC)

ModulSwCluC (Software Cluster Connection)
BSW-Modul-ID16
Standard-Header#include "SwCluC.h"
SWS-SpezifikationAUTOSAR_CP_SWS_SoftwareClusterConnection.pdf, AUTOSAR_SWS_SoftwareClusterConnection.pdf
Umfang827 Records · 188 Snippets
ClusterSystemdienste

Software Cluster Connection (SwCluC)

AUTOSAR Classic System Services-Modul Software Cluster Connection (SwCluC, Spezifikation: AUTOSAR_CP_SWS_SoftwareClusterConnection.pdf, AUTOSAR_SWS_SoftwareClusterConnection.pdf).

Funktionen — Übersicht

Typen — Übersicht

Anforderungen — Übersicht

Funktionen & Typen — Detailansicht

função SwCluC_BManif_GetHandle_<Resource Entry Group>_<ResourceEntry>_<Handle> [SWS_SwCluC_10020] 📄 PDF

<handleType> SwCluC_BManif_GetHandle_<Resource Entry Group>_< ResourceEntry>_<Handle>(SwCluC_BManif_HandleIndexType notifierSetIndex);

Returns a handle of a Resource Entry in a Resource Entry Group Tags: atp.Status=draft

função SwCluC_BManif_GetConSwClusterId_<Resource Entry Group>_<ResourceEntry>_<Handle> [SWS_SwCluC_10021] 📄 PDF

SwCluC_BManif_SwClusterIdType SwCluC_BManif_GetConSwClusterId_< ResourceEntryGroup>_<ResourceEntry>_<Handle>(SwCluC_BManif_HandleIndexType notifierSetIndex);

Returns the Id of the connected Software Cluster for a Notifier Handle of a Provide Resource Entry or a Provide Handle of a Require Resource Entry Tags: atp.Status=draft

função SwCluC_BManif_GetHandle_<Resource Entry Group>_<Handle> [SWS_SwCluC_10022] 📄 PDF

<handleType> SwCluC_BManif_GetHandle_<Resource Entry Group>_<Handle>(SwCluC_BManif_TableIndexType resIndex, SwCluC_BManif_HandleIndexType notifierSetIndex);

Returns the Id of the connected Software Cluster for a Notifier Handle of a Provide Resource Entry or a Provide Handle of a Require Resource Entry Tags: atp.Status=draft

função SwCluC_BManif_GetConSwClusterId_<Resource Entry Group>_<Handle> [SWS_SwCluC_10023] 📄 PDF

SwCluC_BManif_SwClusterIdType SwCluC_BManif_GetConSwClusterId_< ResourceEntryGroup>_<Handle>(SwCluC_BManif_TableIndexType resIndex, SwCluC_BManif_HandleIndexType notifierSetIndex);

Returns the Id of the connected Software Cluster for a Notifier Handle of a Provide Resource Entry or Provide Handle of a Require Resource Entry Tags: atp.Status=draft

função SwCluC_BManif_GetNoOfHandleSets_<Resource Entry Group>_<ResourceEntry> [SWS_SwCluC_10032] 📄 PDF

SwCluC_BManif_HandleIndexType SwCluC_BManif_GetNoOfHandleSets_< Resource Entry Group>_<Resource Entry>(void);

Returns the number of actually used - and thereby connected - handle sets Tags: atp.Status=draft

função SwCluC_BManif_GetNoOfHandleSets_<Resource Entry Group> [SWS_SwCluC_10033] 📄 PDF

SwCluC_BManif_HandleIndexType SwCluC_BManif_GetNoOfHandleSets_< Resource Entry Group>(SwCluC_BManif_TableIndexType resIndex);

Returns the number of actually used - and thereby connected - handle sets. Tags: atp.Status=draft

função SwCluC_BManif_GetValidityMarker [SWS_SwCluC_10034] 📄 PDF

uint32 SwCluC_BManif_GetValidityMarker(void);

Returns the value of the Subscribed Interface Validity Marker. Tags: atp.Status=draft

função SwCluC_Xcc_Init1 [SWS_SwCluC_11000] 📄 PDF

void SwCluC_Xcc_Init1(void);

SwCluC_Xcc_Init is intended to allocate and initialize system resources used by the Software Cluster Connection. It initializes interface memory which might be needed to be read by other Software Clusters but it is not allowed to do any read access to memory of any another Software Cluster. Tags: atp.Status=draft

função SwCluC_Xcc_Init2 [SWS_SwCluC_11001] 📄 PDF

void SwCluC_Xcc_Init2(void);

SwCluC_Xcc_Init2 is intended to allocate and initialize system resources used by the Software Cluster Connection. It can execute initializations which require a read access to interface memory of another Software Clusters. Tags: atp.Status=draft

função SwCluC_OsProxy_Init_<SwCluCOsProxyOsBaseSocket> [SWS_SwCluC_12000] 📄 PDF

void SwCluC_OsProxy_Init_<SwCluCOsProxyOsBaseSocket>(void);

SwCluC_OsProxy_Init is intended to allocate and initialize system resources used by the Os Proxy linked to this specific socked Tags: atp.Status=draft

função SwCluC_NvMProxy_Init_<SwCluCNvMBaseSocket> [SWS_SwCluC_12100] 📄 PDF

void SwCluC_NvMProxy_Init_<SwCluCNvMBaseSocket>(void);

SwCluC_NvMProxy_Init is intended to allocate and initialize system resources used by the Nv MProxy linked to this specific socked. Tags: atp.Status=draft

função SwCluC_DcmProxy_Init_<SwCluCDcmBaseSocket> [SWS_SwCluC_12200] 📄 PDF

void SwCluC_DcmProxy_Init_<SwCluCDcmBaseSocket>(void);

SwCluC_DcmProxy_Init is intended to allocate and initialize system resources used by the Dcm Proxy linked to this specific socked. Tags: atp.Status=draft

função SwCluC_DemProxy_Init_<SwCluCDemBaseSocket> [SWS_SwCluC_12300] 📄 PDF

void SwCluC_DemProxy_Init_<SwCluCDemBaseSocket>(void);

SwCluC_DemProxy_Init is intended to allocate and initialize system resources used by the Dem Proxy linked to this specific socked. Tags: atp.Status=draft

função SwCluC_FiMProxy_Init_<SwCluCFiMBaseSocket> [SWS_SwCluC_12400] 📄 PDF

void SwCluC_FiMProxy_Init_<SwCluCFiMBaseSocket>(void);

SwCluC_FiMProxy_Init is intended to allocate and initialize system resources used by the FiM Proxy linked to this specific socked. Tags: atp.Status=draft

função SwCluC_LdComProxy_Init_<SwCluCLdComBaseSocket> [SWS_SwCluC_13000] 📄 PDF

void SwCluC_LdComProxy_Init_<SwCluCLdComBaseSocket>(void);

SwCluC_LdComProxy_Init is intended to allocate and initialize system resources used by the LdComProxy linked to this specific socked. Tags: atp.Status=draft

função SwCluC_ComProxy_Init_<SwCluCComBaseSocket> [SWS_SwCluC_13001] 📄 PDF

void SwCluC_ComProxy_Init_<SwCluCComBaseSocket>(void);

SwCluC_ComProxy_Init is intended to allocate and initialize system resources used by the ComProxy linked to this specific socked. Tags: atp.Status=draft

função SwCluC_ComProxy_<BS>_CbkRxAck [SWS_SwCluC_13002] 📄 PDF

void SwCluC_ComProxy_<BS>_CbkRxAck(CbkHandleIdType ComUserCbkHandleId);

This callback function indicates that the signal of the primitive data item/event is ready for reception. It is an implementation of a <ComUser_CbkRxAck> callback. Tags: atp.Status=draft

função SwCluC_ComProxy_<BS>_COMCbkInv [SWS_SwCluC_13003] 📄 PDF

void SwCluC_ComProxy_<BS>_COMCbkInv(CbkHandleIdType ComUserCbkHandleId);

This callback function indicates that COM has received a signal and parsed it as "invalid". It is an implementation of a <ComUser_CbkInv> callback. Tags: atp.Status=draft

função SwCluC_ComProxy_<BS>_COMCbkRxTOut [SWS_SwCluC_13004] 📄 PDF

void SwCluC_ComProxy_<BS>_COMCbkRxTOut(CbkHandleIdType ComUserCbkHandleId);

This callback function indicates that the aliveTimeout after the last successful reception of the signal of the data item/event has expired (data element outdated). It is an implementation of a <ComUser_CbkRxTOut> callback. Tags: atp.Status=draft

função SwCluC_ComProxy_<BS>_COMCbkTAck [SWS_SwCluC_13005] 📄 PDF

void SwCluC_ComProxy_<BS>_COMCbkTAck(CbkHandleIdType ComUserCbkHandleId);

This callback function indicates that the signal of the data item/event is already handed over by COM to the PDU router. It is an implementation of a <ComUser_CbkTxAck> callback. Tags: atp.Status=draft

função SwCluC_ComProxy_<BS>_COMCbkTErr [SWS_SwCluC_13006] 📄 PDF

void SwCluC_ComProxy_<BS>_COMCbkTErr(CbkHandleIdType ComUserCbkHandleId);

This callback function indicates that an error occurred when the signal of the data item/event was handed over by COM to the PDU router. It is an implementation of a <ComUser_CbkTx Err> callback. Tags: atp.Status=draft

função SwCluC_ComProxy_<BS>_COMCbkTxTOut [SWS_SwCluC_13007] 📄 PDF

void SwCluC_ComProxy_<BS>_COMCbkTxTOut(CbkHandleIdType ComUserCbkHandleId);

This callback function indicates that the timeout of TransmissionAcknowledgementRequest for sending the signal of the data item/event has expired. It is an implementation of a <ComUser_ CbkTxTOut> callback. Tags: atp.Status=draft

função SwCluC_LdComProxy_<BS>_LdComCbkCopyRxData [SWS_SwCluC_13008] 📄 PDF

BufReq_ReturnType SwCluC_LdComProxy_<BS>_LdComCbkCopyRxData(CbkHandleIdType LdComUserCbkHandleId, const PduInfoType* info, PduLengthType* bufferSizePtr);

This function is called to provide the received data of an I-PDU segment (N-PDU) to the upper layer. Each call to this function provides the next part of the I-PDU data. The size of the remaining data is written to the position indicated by bufferSizePtr. Tags: atp.Status=draft

função SwCluC_LdComProxy_<BS>_LdComCbkCopyTxData [SWS_SwCluC_13009] 📄 PDF

BufReq_ReturnType SwCluC_LdComProxy_<BS>_LdComCbkCopyTxData(CbkHandleIdType LdComUserCbkHandleId, const PduInfoType* info, const RetryInfoType* retry, PduLengthType* availableDataPtr);

This function is called to acquire the transmit data of an I-PDU segment (N-PDU). Each call to this function provides the next part of the I-PDU data unless retry->TpDataState is TP_ DATARETRY. In this case the function restarts to copy the data beginning at the offset from the current position indicated by retry->TxTpDataCnt. The size of the remaining data is written to the position indicated by availableDataPtr Tags: atp.Status=draft

função SwCluC_LdComProxy_<BS>_LdComCbkRxIndication [SWS_SwCluC_13010] 📄 PDF

void SwCluC_LdComProxy_<BS>_LdComCbkRxIndication(CbkHandleIdType LdComUserCbkHandleId, const PduInfoType* PduInfoPtr);

Indication of a received PDU from a lower layer communication interface module. Tags: atp.Status=draft

função SwCluC_LdComProxy_<BS>_LdComCbkTpRxIndication [SWS_SwCluC_13011] 📄 PDF

void SwCluC_LdComProxy_<BS>_LdComCbkTpRxIndication(CbkHandleIdType LdComUserCbkHandleId, Std_ReturnType result);

Called after an I-PDU has been received via the TP API, the result indicates whether the transmission was successful or not. Tags: atp.Status=draft

função SwCluC_LdComProxy_<BS>_LdComCbkTriggerTransmit [SWS_SwCluC_13012] 📄 PDF

Std_ReturnType SwCluC_LdComProxy_<BS>_LdComCbkTriggerTransmit(CbkHandleIdType LdComUserCbkHandleId, PduInfoType* PduInfoPtr);

Within this API, the upper layer module (called module) shall check whether the available data fits into the buffer size reported by PduInfoPtr->SduLength. If it fits, it shall copy its data into the buffer provided by PduInfoPtr->SduDataPtr and update the length of the actual copied data in PduInfoPtr->SduLength. If not, it returns E_NOT_OK without changing PduInfoPtr. Tags: atp.Status=draft

função SwCluC_LdComProxy_<BS>_LdComCbkTxConfirmation [SWS_SwCluC_13013] 📄 PDF

void SwCluC_LdComProxy_<BS>_LdComCbkTxConfirmation(CbkHandleIdType LdComUserCbkHandleId, Std_ReturnType result);

The lower layer communication interface module confirms the transmission of a PDU, or the failure to transmit a PDU. Tags: atp.Status=draft

função SwCluC_LdComProxy_<BS>_LdComCbkTpTxConfirmation [SWS_SwCluC_13014] 📄 PDF

void SwCluC_LdComProxy_<BS>_LdComCbkTpTxConfirmation(CbkHandleIdType LdComUserCbkHandleId, Std_ReturnType result);

This function is called after a Signal has been transmitted via the TP-API on its network. Tags: atp.Status=draft

função SwCluC_LdComProxy_<BS>_LdComCbkStartOfReception [SWS_SwCluC_13015] 📄 PDF

BufReq_ReturnType SwCluC_LdComProxy_<BS>_LdComCbkStartOfReception(CbkHandleIdType LdComUserCbkHandleId, const PduInfoType* info, PduLengthType TpSduLength, PduLengthType* bufferSizePtr);

This function is called at the start of receiving an N-SDU. The N-SDU might be fragmented into multiple N-PDUs (FF with one or more following CFs) or might consist of a single N-PDU (SF). The service shall provide the currently available maximum buffer size when invoked with TpSdu Length equal to 0. Tags: atp.Status=draft

função SwCluC_NvMProxy_MultiBlockReadAllJobFinished [SWS_SwCluC_91003] 📄 PDF

void SwCluC_NvMProxy_MultiBlockReadAllJobFinished(void);

This function informs the NvM proxy of the SwCluC about the end of the NvM_ReadAll job.

função SwCluC_ComProxy_<BS>_ComCbkCopyTxData [SWS_SwCluC_91005] 📄 PDF

BufReq_ReturnType SwCluC_ComProxy_<BS>_ComCbkCopyTxData(CbkHandleIdType ComUserCbkHandleId, const PduInfoType* info, const RetryInfoType* retry, PduLengthType* availableDataPtr);

This function is called to acquire the transmit data of an I-PDU segment (N-PDU). Each call to this function provides the next part of the I-PDU data unless retry->TpDataState is TP_ DATARETRY. In this case the function restarts to copy the data beginning at the offset from the current position indicated by retry->TxTpDataCnt. The size of the remaining data is written to the position indicated by availableDataPtr Tags: atp.Status=draft

função SwCluC_ComProxy_<BS>_ComCbkRxIndication [SWS_SwCluC_91006] 📄 PDF

void SwCluC_ComProxy_<BS>_ComCbkRxIndication(CbkHandleIdType ComUserCbkHandleId, const PduInfoType* PduInfoPtr);

Indication of a received PDU from a lower layer communication interface module. Tags: atp.Status=draft

função SwCluC_ComProxy_<BS>_ComCbkTpRxIndication [SWS_SwCluC_91008] 📄 PDF

void SwCluC_ComProxy_<BS>_ComCbkTpRxIndication(CbkHandleIdType ComUserCbkHandleId, Std_ReturnType result);

Called after an I-PDU has been received via the TP API, the result indicates whether the transmission was successful or not. Tags: atp.Status=draft

função SwCluC_ComProxy_<BS>_ComCbkTriggerTransmit [SWS_SwCluC_91009] 📄 PDF

Std_ReturnType SwCluC_ComProxy_<BS>_ComCbkTriggerTransmit(CbkHandleIdType ComUserCbkHandleId, PduInfoType* PduInfoPtr);

Within this API, the upper layer module (called module) shall check whether the available data fits into the buffer size reported by PduInfoPtr->SduLength. If it fits, it shall copy its data into the buffer provided by PduInfoPtr->SduDataPtr and update the length of the actual copied data in PduInfoPtr->SduLength. If not, it returns E_NOT_OK without changing PduInfoPtr. Tags: atp.Status=draft

função SwCluC_ComProxy_<BS>_ComCbkTxConfirmation [SWS_SwCluC_91010] 📄 PDF

void SwCluC_ComProxy_<BS>_ComCbkTxConfirmation(CbkHandleIdType ComUserCbkHandleId, Std_ReturnType result);

The lower layer communication interface module confirms the transmission of a PDU, or the failure to transmit a PDU. Tags: atp.Status=draft

tipo SwCluC_BManif_ConCtrlType [SWS_SwCluC_10002] 📄 PDF

Type to code control flags for the connection process. Bit 0..14 are reserved. Tags: atp.Status=draft

tipo SwCluC_BManif_ResourcePropertiesType [SWS_SwCluC_10003] 📄 PDF

Type to code the properties of a resource. Bit 0..5 are reserved. Tags: atp.Status=draft

tipo SwCluC_BManif_GlobalResourceIdType [SWS_SwCluC_10005] 📄 PDF

Type for the global ID value of a resource Tags: atp.Status=draft

tipo SwCluC_BManif_ResourceGuardValueType [SWS_SwCluC_10006] 📄 PDF

Type for the guard value of a resource Tags: atp.Status=draft

tipo SwCluC_BManif_TableIndexType [SWS_SwCluC_10007] 📄 PDF

Index type to address the immutable and modifiable interface table Tags: atp.Status=draft

tipo SwCluC_BManif_HandleIndexType [SWS_SwCluC_10008] 📄 PDF

Index type to address a set of handles in the immutable and modifiable interface table Tags: atp.Status=draft

tipo SwCluC_BManif_VoidFncPtrType [SWS_SwCluC_10009] 📄 PDF

Generic function pointer type according C default type for functions Tags: atp.Status=draft

requirement SWS_SwCluC_00001 [SWS_SwCluC_00001] 📄 PDF

⌊ DRAFT g The Binary Manifest of the Software Clus- ter Connection shall provide exactly one instance of the Binary Manifest Header 1 const SwCluC_BManif_HeaderType SwCluC_BManif_Header = 2 { <initialization> };

requirement SWS_SwCluC_00002 [SWS_SwCluC_00002] 📄 PDF

⌊ DRAFT g The header file SwCluC_BManif.h shall export the declaration of the Binary Manifest Header 1 extern const SwCluC_BManif_HeaderType SwCluC_BManif_Header;

requirement SWS_SwCluC_00003 [SWS_SwCluC_00003] 📄 PDF

⌊ DRAFT g The element Preamble of the Binary Mani- fest Header shall be set to the value 0x41524350464C4558 .

requirement SWS_SwCluC_00004 [SWS_SwCluC_00004] 📄 PDF

⌊ DRAFT g The element ManifestMajorVersion of the Binary Manifest Header shall be set to the value 0x01 .

requirement SWS_SwCluC_00005 [SWS_SwCluC_00005] 📄 PDF

⌊ DRAFT g The element ManifestMinorVersion of the Binary Manifest Header shall be set to the value 0x01 .

requirement SWS_SwCluC_00006 [SWS_SwCluC_00006] 📄 PDF

⌊ DRAFT g The element SwClusterId of the Binary Man- ifest Header shall be set to the value of the configuration parameter SwCluC- SoftwareClusterId of the selected SwCluCDefinition .

requirement SWS_SwCluC_00007 [SWS_SwCluC_00007] 📄 PDF

⌊ DRAFT g The element MachineId of the Binary Mani- fest Header shall be set to the value of the configuration parameter SwCluC- MachineId of the selected SwCluCDefinition .

requirement SWS_SwCluC_00008 [SWS_SwCluC_00008] 📄 PDF

⌊ DRAFT g The element SwClusterType of the Binary Manifest Header shall be set according to the value of the configuration param- eter SwCluCSoftwareClusterType of the selected SwCluCDefinition with the following encoding: • HOST_SWCL : 0x00 • APPLICATIVE_SWCL : 0x01 • SUBSTITUTION_SWCL : 0xFF

requirement SWS_SwCluC_00009 [SWS_SwCluC_00009] 📄 PDF

⌊ DRAFT g The bit SWCLUC_BMANIF_DISABLE_ON_ECU_ CONNECTION in the element ConnectorControlFlags of the Binary Mani- fest Header shall be set if the SwCluCBManifOnBoardConnectorControl is set to DISABLE_ON_ECU_CONNECTOR . Otherwise, the bit is not set (value 0).

requirement SWS_SwCluC_00010 [SWS_SwCluC_00010] 📄 PDF

⌊ DRAFT g The element NoOfInterfaceDescriptors of the Binary Manifest Header shall be set to the number of SwCluCBManif- ProvideResourceEntry + number of SwCluCBManifRequireResourceEntry containers in the configuration.

requirement SWS_SwCluC_00011 [SWS_SwCluC_00011] 📄 PDF

⌊ DRAFT g The element NoOfOfferedInterfaceHandles of the Binary Manifest Header shall be set to the number of offered handles.

requirement SWS_SwCluC_00012 [SWS_SwCluC_00012] 📄 PDF

⌊ DRAFT g The element NoOfSubscribedInterfaceHan- dles of the Binary Manifest Header shall be set to the number of handles in the Subscribed Interface .

requirement SWS_SwCluC_00013 [SWS_SwCluC_00013] 📄 PDF

⌊ DRAFT g The Binary Manifest of the Software Clus- ter Connection shall provide the header file SwCluC_BManif.h .

requirement SWS_SwCluC_00014 [SWS_SwCluC_00014] 📄 PDF

⌊ DRAFT g The header file SwCluC_BManif.h shall include all header files configured in SwCluCBManifHeaderInclude s in the containers SwCluCBManifProvideResourceEntryGroup and SwCluCBManifRequireRe- sourceEntryGroup .

requirement SWS_SwCluC_00015 [SWS_SwCluC_00015] 📄 PDF

⌊ DRAFT g If the SwCluCBManifDescriptorTreatment is set to EMBED_DESCRIPTORS the Binary Manifest of the Software Cluster Connection shall provide exactly one instance of the Interface Descriptor Table composed out of the following column arrays: 1 / * descriptor table column for resource properties * / 2 const SwCluC_BManif_ResourcePropertiesType SwCluC_BManif_ResourcePropertiesDescriptorColumn[ SWCLUC_BMANIF_NO_OF_DESCRIPTORS] = { <initialization> }; 3 4 / * descriptor table column for resource type Ids * / 5 const SwCluC_BManif_ResourceTypeIdType SwCluC_BManif_ResourceTypeIdDescriptorColumn[ SWCLUC_BMANIF_NO_OF_DESCRIPTORS] = { <initialization> }; 6 7 / * descriptor table column for global resource Ids * / 8 const SwCluC_BManif_GlobalResourceIdType SwCluC_BManif_GlobalResourceIdDescriptorColumn[ SWCLUC_BMANIF_NO_OF_DESCRIPTORS] = { <initialization> }; 9 10 / * descriptor table column for guard values * / 11 const SwCluC_BManif_ResourceGuardValueType SwCluC_BManif_ResourceGuardValueDescriptorColumn[ SWCLUC_BMANIF_NO_OF_DESCRIPTORS] = { <initialization> }; 12 13 / * descriptor table column for offered interface table index * / 14 const SwCluC_BManif_TableIndexType SwCluC_BManif_OfferedInterfaceIndexDescriptorColumn[ SWCLUC_BMANIF_NO_OF_DESCRIPTORS] = { <initialization> }; 15 16 / * descriptor table column for number of handles in offered interface table * / 17 const SwCluC_BManif_HandleIndexType SwCluC_BManif_OfferedInterfaceNoOfHandlesDescriptorColumn[ SWCLUC_BMANIF_NO_OF_DESCRIPTORS] = { <initialization> }; 18 19 / * descriptor table column for subscribed interface table index * / 20 const SwCluC_BManif_TableIndexType SwCluC_BManif_SubscribedInterfaceIndexDescriptorColumn[ SWCLUC_BMANIF_NO_OF_DESCRIPTORS] = { <initialization> }; 21 22 / * descriptor table column for number of handles in subscribed interface table * / 23 const SwCluC_BManif_HandleIndexType SwCluC_BManif_SubscribedInterfaceNoOfHandlesDescriptorColumn[ SWCLUC_BMANIF_NO_OF_DESCRIPTORS] = { <initialization> }; 24 25 / * descriptor table column for number of handle sets in subscribed interface table * / 26 const SwCluC_BManif_HandleIndexType SwCluC_BManif_SubscribedInterfaceNoOfHandleSetsDescriptorColumn[ SWCLUC_BMANIF_NO_OF_DESCRIPTORS] = { <initialization> };

requirement SWS_SwCluC_00016 [SWS_SwCluC_00016] 📄 PDF

⌊ DRAFT g For each SwCluCBManifProvideResourceEn- try and SwCluCBManifRequireResourceEntry in a Software Cluster 's con- figuration, the Binary Manifest of the Software Cluster Connection shall provide one row in the Interface Descriptor Table .

requirement SWS_SwCluC_00017 [SWS_SwCluC_00017] 📄 PDF

⌊ DRAFT g The rows in the Interface Descriptor Ta- ble shall be sorted in ascending order of resource type Ids and rows with equal re- source type Ids shall be sorted in turn in ascending order of global resource Ids.

requirement SWS_SwCluC_00018 [SWS_SwCluC_00018] 📄 PDF

⌊ DRAFT g The bit SWCLUC_BMANIF_PROVIDED_RESOURCE in the element of the 'resource properties' column shall be set, if the row belongs to a SwCluCBManifProvideResourceEntry . Otherwise the bit SWCLUC_BMANIF_PROVIDED_RESOURCE shall not be set.

requirement SWS_SwCluC_00019 [SWS_SwCluC_00019] 📄 PDF

⌊ DRAFT g The bit SWCLUC_BMANIF_MANDATORY_RE- SOURCE in the element of the 'resource properties' column shall be set, if the row be- longs to a SwCluCBManifRequireResourceEntry where the SwCluCBManifIs- Mandatory is true . Otherwise the bit SWCLUC_BMANIF_MANDATORY_RESOURCE shall not be set.

requirement SWS_SwCluC_00020 [SWS_SwCluC_00020] 📄 PDF

⌊ DRAFT g The element in the 'resource type Id' column shall be set to the SwCluCBManifResourceId of the applicable SwCluCBManifRe- sourceType .

requirement SWS_SwCluC_00021 [SWS_SwCluC_00021] 📄 PDF

⌊ DRAFT g The element in the 'global resource Id' column shall be set to the attribute value globalResourceId of the referenced CpSoft- wareClusterResource as given via SwCluCBManifResourceRef . If the refer- ence SwCluCBManifResourceRef is not set, the element in the global resource Id column shall be set to 0.

requirement SWS_SwCluC_00022 [SWS_SwCluC_00022] 📄 PDF

⌊ DRAFT g The element in the 'guard value' column shall be set to the SwCluCBManifResourceGuardValue of the SwCluCBManif- ProvideResourceEntry / SwCluCBManifRequireResourceEntry container in the configuration.

requirement SWS_SwCluC_00023 [SWS_SwCluC_00023] 📄 PDF

⌊ DRAFT g The element in the 'offered interface table index' column shall be set to the index of the Offered Interface where the first offered handle for this resource is allocated. In case the resource has no offered handle the value is set to NO_TABLE_ENTRY .

requirement SWS_SwCluC_00024 [SWS_SwCluC_00024] 📄 PDF

⌊ DRAFT g The element in the 'number of handles in offered interface table' column shall be set to number of offered handles for this resource. In case the resource has no offered handle, the value is set to 0.

requirement SWS_SwCluC_00025 [SWS_SwCluC_00025] 📄 PDF

⌊ DRAFT g The element in the 'subscribed interface table in- dex' column shall be set to the index of the Subscribed Interface where the first subscribed handle for this resource is allocated. In case the resource has no sub- scribed handle the value is set to NO_TABLE_ENTRY .

requirement SWS_SwCluC_00026 [SWS_SwCluC_00026] 📄 PDF

⌊ DRAFT g The element in the 'number of handles in sub- scribed interface table' column shall be set to number of subscribed handles for this resource. In case the resource has no subscribed handle, the value is set to 0.

requirement SWS_SwCluC_00027 [SWS_SwCluC_00027] 📄 PDF

⌊ DRAFT g The element in the 'number of handle sets in sub- scribed interface table' column shall be set to the SwCluCBManifMaxNumberOfNo- tifierSets if the applicable SwCluCBManifResourceType has set SwCluCB- ManifMultipleNotifierSupport to MULTIPLE_NOTIFIER_SETS . Otherwise the value is set to 0.

requirement SWS_SwCluC_00028 [SWS_SwCluC_00028] 📄 PDF

⌊ DRAFT g The Binary Manifest of the Software Clus- ter Connection shall provide exactly one instance of the Offered Interface Handle Column 1 const SwCluC_BManif_HandleType SwCluC_BManif_OfferedInterfaceHandleColumn[ SWCLUC_BMANIF_NO_OF_OFFERED_HANDLES] = { <initialization> };

requirement SWS_SwCluC_00029 [SWS_SwCluC_00029] 📄 PDF

⌊ DRAFT g The Binary Manifest of the Software Clus- ter Connection shall allocate and initialize the number of handles in the Of- fered Interface according to [SWS_SwCluC_00088].

requirement SWS_SwCluC_00030 [SWS_SwCluC_00030] 📄 PDF

⌊ DRAFT g The Binary Manifest of the Software Clus- ter Connection shall provide exactly one instance of the Subscribed Inter- face Default Handle Column 1 const SwCluC_BManif_HandleType SwCluC_BManif_SubscribedInterfaceDefaultHandleColumn[ SWCLUC_BMANIF_NO_OF_SUBSCRIBED_HANDLES] = { <initialization> };

requirement SWS_SwCluC_00031 [SWS_SwCluC_00031] 📄 PDF

⌊ DRAFT g The Binary Manifest of the Software Cluster Connection shall allocate and initialize the number of handles in the Subscribed Interface Default Handle Column according to [SWS_SwCluC_00088].

requirement SWS_SwCluC_00032 [SWS_SwCluC_00032] 📄 PDF

⌊ DRAFT g The Binary Manifest of the Software Clus- ter Connection shall provide exactly one instance of the Subscribed Inter- face Handle Column 1 const SwCluC_BManif_HandleType SwCluC_BManif_SubscribedInterfaceHandleColumn[ SWCLUC_BMANIF_NO_OF_SUBSCRIBED_HANDLES] = { <initialization> };

requirement SWS_SwCluC_00033 [SWS_SwCluC_00033] 📄 PDF

⌊ DRAFT g The Binary Manifest of the Software Clus- ter Connection shall allocate and initialize the number of handles in the Subscribed Interface Handle Column according to [SWS_SwCluC_00088].

requirement SWS_SwCluC_00034 [SWS_SwCluC_00034] 📄 PDF

⌊ DRAFT g The Binary Manifest of the Software Clus- ter Connection shall provide exactly one instance of the Subscribed Inter- face Connected SwClusterId Column 1 const SwCluC_BManif_SwClusterIdType SwCluC_BManif_SubscribedInterfaceConnectedSwClusterIdColumn[ SWCLUC_BMANIF_NO_OF_SUBSCRIBED_HANDLES] = { <initialization> };

requirement SWS_SwCluC_00035 [SWS_SwCluC_00035] 📄 PDF

⌊ DRAFT g The Binary Manifest of the Software Cluster Connection shall allocate and initialize the number of handles in the Subscribed Interface Connected SwClusterId Column according to [SWS_SwCluC_00088].

requirement SWS_SwCluC_00036 [SWS_SwCluC_00036] 📄 PDF

⌊ DRAFT g The Binary Manifest of the Software Clus- ter Connection shall provide exactly one instance of the Immutable Tables Checksum 1 const uint32 SwCluC_BManif_ImmutableTablesChecksum = <initialization>;

requirement SWS_SwCluC_00037 [SWS_SwCluC_00037] 📄 PDF

⌊ DRAFT g The Immutable Tables Checksum shall be set to the value of the configuration parameter SwCluCBManifImmutableTa- blesChecksum .

requirement SWS_SwCluC_00038 [SWS_SwCluC_00038] 📄 PDF

⌊ DRAFT g The Binary Manifest of the Software Clus- ter Connection shall provide exactly one instance of the Total Manifest Checksum 1 const uint32 SwCluC_BManif_TotalManifestChecksum = <initialization>;

requirement SWS_SwCluC_00039 [SWS_SwCluC_00039] 📄 PDF

⌊ DRAFT g Initially (before the connection process), the Total Manifest Checksum shall be set to the value of the configuration pa- rameter SwCluCBManifTotalManifestChecksum .

requirement SWS_SwCluC_00040 [SWS_SwCluC_00040] 📄 PDF

⌊ DRAFT g The Binary Manifest of the Software Clus- ter Connection shall provide exactly one instance of the Subscribed Inter- face Validity Marker 1 const uint32 SwCluC_BManif_SubscribedInterfaceValidityMarker = < initialization>;

requirement SWS_SwCluC_00041 [SWS_SwCluC_00041] 📄 PDF

⌊ DRAFT g Initially, and after a completed connection pro- cess, the Subscribed Interface Validity Marker shall be set to the value of the configuration parameter SwCluCBManifSubscribedInterfaceValidity- Marker .

requirement SWS_SwCluC_00042 [SWS_SwCluC_00042] 📄 PDF

⌊ DRAFT g The elements • ResourcePropertiesDescriptorColumnPtr • ResourceTypeDescriptorColumnPtr • GlobalResourceIdDescriptorColumnPtr • ResourceGuardValueDescriptorColumnPtr • OfferedInterfaceIndexDescriptorColumnPtr • OfferedInterfaceNoOfHandlesDescriptorColumnPtr • SubscribedInterfaceIndexDescriptorColumnPtr • SubscribedInterfaceNoOfHandlesDescriptorColumnPtr • SubscribedInterfaceNoOfHandleSetsDescriptorColumnPtr • OfferedInterfaceHandleColumnPtr • SubscribedInterfaceHandleDefaultColumnPtr • SubscribedInterfaceHandleColumnPtr • SubscribedInterfaceConnectedSwClusterIdColumnPtr of the Binary Manifest Header shall reference the according array of the Inter- face Descriptor Table if the SwCluCBManifDescriptorTreatment is set to EMBED_DESCRIPTORS . Otherwise the elements are initialized to NULL_PTR .

requirement SWS_SwCluC_00043 [SWS_SwCluC_00043] 📄 PDF

⌊ DRAFT g The Software Cluster Connector shall con- nect a required resource with a provided resource, if all of the following conditions are fulfilled: • the machine Id of the Software Cluster providing the resource and the ma- chine Id of the Software Cluster (s) requesting the resource are identical • the global resource Id of provided resource and required resource(s) are equal • the global resource Id is not 0 • the resource type Id of provided resource and required resource is equal • the guard value of provided resource and required resource is equal • the number of Provide Handles of provided resource and required resource is equal • the number of Notifier Handles of provided resource and required resource is equal • in case Notifier Handles exist, the provided resource has a Notifier Handle Sets available for the required resource

requirement SWS_SwCluC_00044 [SWS_SwCluC_00044] 📄 PDF

⌊ DRAFT g The Software Cluster Connector shall copy the Subscribed Interface Default Handle Column entries to the Subscribed Interface Handle Column , and set the related en- tries in the Subscribed Interface Connected SwClusterId Column to SWCLUC_BMANIF_UNCONNECTED for • all Provide Handles of any required resources, for which no connect was ap- plied AND • all Notifier Handles of any provided resources, for which no connect was applied

requirement SWS_SwCluC_00045 [SWS_SwCluC_00045] 📄 PDF

⌊ DRAFT g In case the provided resource supports multiple Notifier Handle Sets , the Software Cluster Connector shall sort the No- tifier Handle Sets in ascending order of Software Cluster Id of the according re- quired resource(s), and place them in the Subscribed Interface Handle Col- umn of the providing Software Cluster , starting at the second handle.

requirement SWS_SwCluC_00046 [SWS_SwCluC_00046] 📄 PDF

⌊ DRAFT g In case the provided resource supports multiple Notifier Handle Sets , the Software Cluster Connector shall write as first entry the actual number of used Notifier Handle Sets in the Subscribed In- terface Handle Column .

requirement SWS_SwCluC_00047 [SWS_SwCluC_00047] 📄 PDF

⌊ DRAFT g In case the provide resource supports multiple Notifier Handle Sets , and less required resources are connected, the Soft- ware Cluster Connector shall fill the remaining handles in the Subscribed Interface Handle Column with the default values from the Subscribed In- terface Default Handle Column of the Software Cluster providing the re- source.

requirement SWS_SwCluC_00048 [SWS_SwCluC_00048] 📄 PDF

⌊ DRAFT g The Software Cluster Connector shall de- tect, if the ManifestMajorVersion and ManifestMinorVersion numbers given in the Binary Manifest Header are compatible to the Software Cluster Con- nector 's implementation. In case of any incompatible version number, the connection process for this specific machine shall be aborted.

requirement SWS_SwCluC_00049 [SWS_SwCluC_00049] 📄 PDF

⌊ DRAFT g The Software Cluster Connector shall de- tect, if the Software Cluster Ids of all Software Clusters belonging to same ma- chine are not unique. In this case, the connection process for this specific machine shall be aborted

requirement SWS_SwCluC_00050 [SWS_SwCluC_00050] 📄 PDF

⌊ DRAFT g The Software Cluster Connector shall de- tect, if for a Software Cluster any mandatory required resource is not provided by any other Software Cluster . In this case, the connection process for this specific Software Cluster shall be aborted.

requirement SWS_SwCluC_00051 [SWS_SwCluC_00051] 📄 PDF

⌊ DRAFT g The Software Cluster Connector shall de- tect, if for a machine a resource with the identical resource type id and identical global resource Id is provided twice by Software Clusters , none of which is a Substi- tution Software Cluster . In this case, the connection process for this specific machine shall be aborted.

requirement SWS_SwCluC_00052 [SWS_SwCluC_00052] 📄 PDF

⌊ DRAFT g In case the resource does not support multiple noti- fier sets, but uses Notifier Handles , the Software Cluster Connector shall detect if for a machine a resource with the identical resource type id and identical global resource Id is required more than one time. In this case, the connection process for this specific machine shall be aborted.

requirement SWS_SwCluC_00053 [SWS_SwCluC_00053] 📄 PDF

⌊ DRAFT g In case the resource does support multiple notifier sets, the Software Cluster Connector shall detect if for a machine a resource with the identical resource type id and identical global resource Id is required more often as notifier sets are available. In this case, the connection process for this specific machine shall be aborted.

requirement SWS_SwCluC_00054 [SWS_SwCluC_00054] 📄 PDF

⌊ DRAFT g In case a resource is provided by the Substitu- tion Software Cluster , the Software Cluster Connector shall connect all Software Clusters requiring the resource, except the Substitution Software Cluster itself, to the resource of the Substitution Software Cluster . This happens, regardless if another Software Cluster provides the resource as well. Nevertheless, the matching criteria defined in [SWS_SwCluC_00043] apply.

requirement SWS_SwCluC_00055 [SWS_SwCluC_00055] 📄 PDF

⌊ DRAFT g In case a resource is required by a Substitution Software Cluster , the Software Cluster Connector shall connect this re- quired resource only to provided resources of Software Clusters not being a Substitution Software Cluster . Nevertheless, the matching criteria defined in [SWS_SwCluC_00043] apply.

requirement SWS_SwCluC_00056 [SWS_SwCluC_00056] 📄 PDF

⌊ DRAFT g If the bit SWCLUC_BMANIF_DISABLE_ON_ECU_ CONNECTION in the ConnectorControlFlags of the Binary Manifest Header of the Host Software Cluster is set, the Software Cluster Connection On-board for this machine is not executed.

requirement SWS_SwCluC_00057 [SWS_SwCluC_00057] 📄 PDF

⌊ DRAFT g The functions SwCluC_BManif_GetH- andle , SwCluC_BManif_GetConSwClusterId , and SwCluC_BManif_Get- NoOfHandleSets , according to [SWS_SwCluC_10020], [SWS_SwCluC_10021], [SWS_SwCluC_10022], [SWS_SwCluC_10023], [SWS_SwCluC_10032], and [SWS_SwCluC_10033], shall each be implemented as a C-function-like macro.

requirement SWS_SwCluC_00058 [SWS_SwCluC_00058] 📄 PDF

⌊ DRAFT g <Resource Entry Group> is the shortName of either the SwCluCBManifProvideResourceEntryGroup or SwCluCBManifRe- quireResourceEntryGroup .

requirement SWS_SwCluC_00059 [SWS_SwCluC_00059] 📄 PDF

⌊ DRAFT g <Resource Entry> is the shortName of ei- ther the SwCluCBManifProvideResourceEntry or SwCluCBManifRequireRe- sourceEntry .

requirement SWS_SwCluC_00060 [SWS_SwCluC_00060] 📄 PDF

⌊ DRAFT g <Handle> is the shortName of either the SwCluCBManifProvideHandle or SwCluCBManifNotifierHandle of the SwCluCBManifResourceType , referenced by SwCluCBManifProvideRe- sourceEntryGroup or SwCluCBManifRequireResourceEntryGroup .

requirement SWS_SwCluC_00061 [SWS_SwCluC_00061] 📄 PDF

⌊ DRAFT g <handleType> is either • the referenced ImplementationDataType , if the SwCluCBManifHandleIm- pleTypeRef is defined for a Provide Handle of Notifier Handle . OR • uint32 , if the SwCluCBManifHandleImpleTypeRef is not defined, and SwCluCBManifNativeHandleType is set to VALUE OR • void * , if the SwCluCBManifHandleImpleTypeRef is not defined, and SwCluCBManifNativeHandleType is set to DATA_REFERENCE OR • SwCluC_BManif_VoidFncPtrType , if the SwCluCBManifHandleImple- TypeRef is not defined, and SwCluCBManifNativeHandleType is set to FUNCTION_REFERENCE

requirement SWS_SwCluC_00062 [SWS_SwCluC_00062] 📄 PDF

⌊ DRAFT g The function SwCluC_BManif_GetHandle ac- cording to [SWS_SwCluC_10020] shall exist for each SwCluCBManifProvide- Handle and SwCluCBManifNotifierHandle defined for each SwCluCBMan- ifProvideResourceEntry and SwCluCBManifRequireResourceEntry in a SwCluCBManifProvideResourceEntryGroup and SwCluCBManifRequireRe- sourceEntryGroup .

requirement SWS_SwCluC_00063 [SWS_SwCluC_00063] 📄 PDF

⌊ DRAFT g The function SwCluC_BManif_GetConSwClus- terId according to [SWS_SwCluC_10021] shall exist • for each SwCluCBManifNotifierHandle defined for each SwCluCBMan- ifProvideResourceEntry in a SwCluCBManifProvideResourceEntry- Group AND • for each SwCluCBManifProvideHandle defined for each SwCluCBManifRe- quireResourceEntry in a SwCluCBManifRequireResourceEntryGroup .

requirement SWS_SwCluC_00064 [SWS_SwCluC_00064] 📄 PDF

⌊ DRAFT g The function SwCluC_BManif_GetHandle ac- cording to [SWS_SwCluC_10022] shall exist for each SwCluCBManifProvide- Handle and SwCluCBManifNotifierHandle defined for each SwCluCBManif- ProvideResourceEntryGroup and SwCluCBManifRequireResourceEntry- Group .

requirement SWS_SwCluC_00065 [SWS_SwCluC_00065] 📄 PDF

⌊ DRAFT g The function SwCluC_BManif_GetConSwClus- terId according to [SWS_SwCluC_10023] shall exist • for each SwCluCBManifNotifierHandle defined for a SwCluCBManif- ProvideResourceEntryGroup AND • for each SwCluCBManifProvideHandle defined for a SwCluCBManifRe- quireResourceEntryGroup .

requirement SWS_SwCluC_00066 [SWS_SwCluC_00066] 📄 PDF

⌊ DRAFT g The function SwCluC_BManif_GetNoOfHan- dleSets according to [SWS_SwCluC_10032] shall exist for each SwCluCBMan- ifProvideResourceEntry in a SwCluCBManifProvideResourceEntryGroup where the parameter SwCluCBManifMultipleNotifierSupport is set to MULTI- PLE_NOTIFIER_SETS .

requirement SWS_SwCluC_00067 [SWS_SwCluC_00067] 📄 PDF

⌊ DRAFT g The function SwCluC_BManif_GetNoOfHan- dleSets according to [SWS_SwCluC_10033] shall exist for each SwCluCBMan- ifProvideResourceEntryGroup where the parameter SwCluCBManifMulti- pleNotifierSupport is set to MULTIPLE_NOTIFIER_SETS .

requirement SWS_SwCluC_00068 [SWS_SwCluC_00068] 📄 PDF

⌊ DRAFT g The definition SWCLUC_BMANIF_NO_OF_ENTRIES according to [SWS_SwCluC_01000] shall exist for each SwCluCBManifProvideRe- sourceEntryGroup .

requirement SWS_SwCluC_00069 [SWS_SwCluC_00069] 📄 PDF

⌊ DRAFT g The definition SWCLUC_BMANIF_NO_OF_NOTIFIER_SETS according to [SWS_SwCluC_01002] shall exist for each SwCluCBManifProvideRe- sourceEntry in a SwCluCBManifProvideResourceEntryGroup where the parameter SwCluCBManifMultipleNotifierSupport is set to MULTI- PLE_NOTIFIER_SETS .

requirement SWS_SwCluC_00070 [SWS_SwCluC_00070] 📄 PDF

⌊ DRAFT g The element ImmutableTablesChecksumPtr of the Binary Manifest Header shall reference the Immutable Tables Checksum .

requirement SWS_SwCluC_00071 [SWS_SwCluC_00071] 📄 PDF

⌊ DRAFT g The element TotalManifestChecksumPtr of the Binary Manifest Header shall reference the Total Manifest Checksum .

requirement SWS_SwCluC_00072 [SWS_SwCluC_00072] 📄 PDF

⌊ DRAFT g The element SubscribedInterfaceValidi- tyMarkerPtr of the Binary Manifest Header shall reference the Subscribed Interface Validity Marker .

requirement SWS_SwCluC_00075 [SWS_SwCluC_00075] 📄 PDF

⌊ DRAFT g In the Host Software Cluster , the Soft- ware Cluster Base Configuration Check of the Software Cluster Con- nection shall create one Provide Resource Entry for each configured SwCluCBaseConfigurationCheck , and add it to the Binary Manifest .

requirement SWS_SwCluC_00076 [SWS_SwCluC_00076] 📄 PDF

⌊ DRAFT g In the Applicative Software Cluster , the Software Cluster Base Configuration Check of the Software Cluster Connection shall create one mandatory Require Resource Entry for each con- figured SwCluCBaseConfigurationCheck , and add them to the Binary Mani- fest .

requirement SWS_SwCluC_00077 [SWS_SwCluC_00077] 📄 PDF

⌊ DRAFT g The SwCluCBManifResourceGuardValue of the Resource Entrys of [SWS_SwCluC_00075] and [SWS_SwCluC_00076] shall be calculated out of the given multi line strings in SwCluCAutoBaseConfigDescrip- tor and SwCluCUserBaseConfigDescriptor .

requirement SWS_SwCluC_00079 [SWS_SwCluC_00079] 📄 PDF

⌊ DRAFT g The Binary Manifest of the Software Clus- ter Connection shall use the <feature> = BMANIF according to [SWS_- MemMap_00040] of document [8].

requirement SWS_SwCluC_00080 [SWS_SwCluC_00080] 📄 PDF

⌊ DRAFT g The Binary Manifest of the Software Clus- ter Connection shall map the Binary Manifest Header to a constant, 32 bit aligned memory section named CONST_IMMUTABLE_HEADER .

requirement SWS_SwCluC_00081 [SWS_SwCluC_00081] 📄 PDF

⌊ DRAFT g The Binary Manifest of the Software Clus- ter Connection shall map the immutable columns of all tables to a constant, 32 bit aligned memory section named CONST_IMMUTABLE_COLUMNS . The immutable columns are: • all columns of the Interface Descriptor Table • Offered Interface Handle Column • Subscribed Interface Default Handle Column

requirement SWS_SwCluC_00082 [SWS_SwCluC_00082] 📄 PDF

⌊ DRAFT g The Binary Manifest of the Software Clus- ter Connection shall map the modifiable columns to a constant, 32 bit aligned memory section named CONST_MODIFIABLE_COLUMNS The modifiable columns are • Subscribed Interface Handle Column • Subscribed Interface Connected SwClusterId Column .

requirement SWS_SwCluC_00083 [SWS_SwCluC_00083] 📄 PDF

⌊ DRAFT g The Binary Manifest of the Software Clus- ter Connection shall map the Immutable Tables Checksum to a constant, 32 bit aligned memory section named CONST_IMMUTABLE_TABLES_CHECKSUM .

requirement SWS_SwCluC_00084 [SWS_SwCluC_00084] 📄 PDF

⌊ DRAFT g The Binary Manifest of the Software Clus- ter Connection shall map the Total Manifest Checksum to a constant, 32 bit aligned memory section named CONST_TOTAL_TABLES_CHECKSUM .

requirement SWS_SwCluC_00085 [SWS_SwCluC_00085] 📄 PDF

⌊ DRAFT g The Binary Manifest of the Soft- ware Cluster Connection shall map the Subscribed Interface Va- lidity Marker to a constant, 32 bit aligned memory section named CONST_SUBSCRIBED_TABLES_MARKER .

requirement SWS_SwCluC_00086 [SWS_SwCluC_00086] 📄 PDF

of the generated Binary Man- ifest . This includes • the cpSoftwareCluster reference to the given CpSoftwareCluster • the softwareClusterId of the given CpSoftwareCluster • the metaDataField s for IMMUTABLE_TABLES_CHECKSUM and SUB- SCRIBED_INTERFACE_VALIDITY_MARKER • a provideResource s for each Provide Resource Entry • a requireResource s for each Require Resource Entry • a resourceDefinition s for each Resource Type

requirement SWS_SwCluC_00088 [SWS_SwCluC_00088] 📄 PDF

⌊ DRAFT g Number of offered and subscribed handles, de- pending on the resource direction Provide Handle Notifier Handle SINGLE_NOTIFIER_SET One handle in the Subscribed Interface per defined SwCluCBManifNotifierHan- dle The handles are initialized with the SwCluCBManifDefaultNoti- fierSymbol s in the given order. The Software Cluster Ids are set to SWCLUC_BMANIF_UNCONNECTED MULTIPLE_NOTIFIER_SETS Provided Resource One handle in the Offered Interface per defined SwCluCBManifProvideHandle The handles are initialized with the SwCluCBManifProvideSymbol s in the given order. One handle in the Subscribed Interface per defined SwCluCBManifNotifierHan- dle multiplied by SwCluCBManifMaxNum- berOfNotifierSets plus one The first handle is initialized to 0. The remaining handles are initialized with consecutive sets of SwCluCBManifDefaultNoti- fierSymbol s in the given order. The Software Cluster Ids are set to SWCLUC_BMANIF_UNCONNECTED . Required Resource One handle in the Subscribed Interface per defined SwCluCBManifProvideHandle The handles are initialized with the SwCluCBManifDefaultPro- videSymbol s in the given order. One handle in the Offered Interface per defined SwCluCBManifNotifierHan- dle The handles are initialized with the SwCluCBManifNotifierSym- bol s in the given order. Table 7.1: Number of offered and subscribed handles, depending on the resource direction

requirement SWS_SwCluC_00089 [SWS_SwCluC_00089] 📄 PDF

⌊ DRAFT g In case the provided resource supports multi- ple Notifier Handle Sets , the Software Cluster Connector shall write as first entry in the Subscribed Interface Connected SwClusterId Column the value 0xFE .

requirement SWS_SwCluC_00090 [SWS_SwCluC_00090] 📄 PDF

The reserved bits 5 .. 0 in the element of the 'resource prop- erties' column shall be set to 0

requirement SWS_SwCluC_00999 [SWS_SwCluC_00999] 📄 PDF

⌊ DRAFT g These requirements are not applicable to this spec- ification.

requirement SWS_SwCluC_01000 [SWS_SwCluC_01000] 📄 PDF

⌊ DRAFT g Symbolic name: SWCLUC_BMANIF_NO_OF_ENTRIES_<Resource Entry Group> Value: Number of Resource Entry s in the according Resource Entry Group Comments: n.a.

requirement SWS_SwCluC_01002 [SWS_SwCluC_01002] 📄 PDF

⌊ DRAFT g Symbolic name: SWCLUC_BMANIF_MAX_NO_OF_NOTIFIER_SETS_ <Resource Entry Group>_<Resource Entry> Value: Maximum number of notifier sets for the according Provide Resource En- try Comments: n.a.

requirement SWS_SwCluC_02000 [SWS_SwCluC_02000] 📄 PDF

⌊ DRAFT g The Proxy Module shall support that id values, re- quired to access the BSW service API of the Host Software Cluster , can change, without reconfiguration or rebuild of the Applicative Software Cluster using the BSW service.

requirement SWS_SwCluC_02001 [SWS_SwCluC_02001] 📄 PDF

⌊ DRAFT g The High Proxy shall provide the applicable Stan- dardized AUTOSAR Interfaces once per configured EcucPartition . In doing so, the APIs are provided with the orignal Mip , at the EcucPartition where the SwCluCNativeBswApi is set to true . For all the other BSW API instances, the Mip is replaced by <Mip>_<shortName of EcucPartition> .

requirement SWS_SwCluC_02002 [SWS_SwCluC_02002] 📄 PDF

⌊ DRAFT g The High Proxy shall create one partition specific Service Software Component per configured EcucPartition , with the name <Mip> _<EcucPartition shortName> .

requirement SWS_SwCluC_02003 [SWS_SwCluC_02003] 📄 PDF

⌊ DRAFT g The High Proxy shall provide the Ports belonging to a specific CpSoftwareClusterServiceResource , at the partition specific Service Software Component, to which the using SwComponentPrototype is mapped to.

requirement SWS_SwCluC_02004 [SWS_SwCluC_02004] 📄 PDF

⌊ DRAFT g The High Proxy shall implement a 'reasonable' be- havior for a service resource, if the connection to the resource provider does not exist. In any case, the OUT arguments of functions shall return a 'neutral' value, or the value which can be assumed after a reset. The functional behavior should be like the state directly after a reset, before further activity occured.

requirement SWS_SwCluC_02005 [SWS_SwCluC_02005] 📄 PDF

⌊ DRAFT g To resolve the ECU Configuration dependency, the Proxy Module implementation shall define a Vendor Specific Module Definition [10], where the ECU Configuration container and parameters are used to configure the in- terface towards the user of the substituted BSW Module.

requirement SWS_SwCluC_02006 [SWS_SwCluC_02006] 📄 PDF

⌊ DRAFT g The Proxy Module implementation shall define an EcucContainerDef , which defines a mapping between • the EcucContainerDef (s) identifying the module user channel in the StMD of substituted BSW Module AND • the CpSoftwareClusterServiceResource representing the user channel in the software cluster resource pool. The EcucForeignReferenceDef shall be named SwCluCResourceRef .

requirement SWS_SwCluC_02007 [SWS_SwCluC_02007] 📄 PDF

⌊ DRAFT g The Proxy Module implementation shall define, for each different Proxy Module, an EcucEnumerationParamDef named SwCluCProx- yGeneration<Mip> , with the literal s • PROXY_DISABLED , to disable the according Proxy Module code and AUTOSAR model generation • HIGH_PROXY , to enable the according High Proxy Module code and AUTOSAR model generation • LOW_PROXY , to enable the according Low Proxy Module code and AUTOSAR model generation

requirement SWS_SwCluC_02008 [SWS_SwCluC_02008] 📄 PDF

⌊ DRAFT g The Proxy Module implementation of the Soft- ware Cluster Connection shall put one Resource Entry , for each associated CpSoftwareClusterServiceResource , into the Binary Manifest .

requirement SWS_SwCluC_02101 [SWS_SwCluC_02101] 📄 PDF

⌊ DRAFT g The NvM High Proxy code, and related AUTOSAR model descriptions, shall only be created, if the configuration parameter SwCluCProx- yGenerationNvM is set to HIGH_PROXY .

requirement SWS_SwCluC_02103 [SWS_SwCluC_02103] 📄 PDF

⌊ DRAFT g The NvM High Proxy shall provide the symbolic name values for NvBlocks, for NvM users in the Applicative Software Clus- ter .

requirement SWS_SwCluC_02104 [SWS_SwCluC_02104] 📄 PDF

⌊ DRAFT g The NvM Proxy shall support that the BlockIds of the NvM of Host Software Cluster can change, without reconfiguration or rebuild of the Applicative Software Cluster using these NV blocks.

requirement SWS_SwCluC_02105 [SWS_SwCluC_02105] 📄 PDF

⌊ DRAFT g The NvM Proxy shall support that the NV block length used in the Applicative Software Cluster can be <= the NV block length configured in the NvM of the Host Software Cluster . In case NV block length in Applicative Software Cluster is smaller, the NV block is filled with default val- ues. The default fill value of a single byte is defined by the configuration parameter SwCluCNvMProxyNvBlockFillValue .

requirement SWS_SwCluC_02106 [SWS_SwCluC_02106] 📄 PDF

⌊ DRAFT g The NvM Proxy shall support that the NV block length used in the Applicative Software Cluster can be changed (in the range 0 <= NV block length configured in NvM), without reconfiguration or rebuild of the Host Software Cluster .

requirement SWS_SwCluC_02107 [SWS_SwCluC_02107] 📄 PDF

⌊ DRAFT g In case a NV block configured in the NvM High Proxy is not connected to any NvM Low Proxy, the NvM High Proxy shall initialize the Nv RAM Block, with the default values given by NvMRomBlockDataAddress and / or NvMInitBlockCallback .

requirement SWS_SwCluC_02108 [SWS_SwCluC_02108] 📄 PDF

⌊ DRAFT g In case a NV block configured in the NvM Low Proxy is not connected to any NvM High Proxy, the NvM Low Proxy implementation shall ensure that the content of the NV block is not modified by the NvM Low Proxy.

requirement SWS_SwCluC_02109 [SWS_SwCluC_02109] 📄 PDF

⌊ DRAFT g The NvM High Proxy shall support the optional con- figuration of a NvM_SingleBlockCallbackFunction , according to [ECUC_NvM_- 00562], [ECUC_NvM_00506] and [ECUC_NvM_00559].

requirement SWS_SwCluC_02110 [SWS_SwCluC_02110] 📄 PDF

⌊ DRAFT g The NvM High Proxy shall support the optional configuration of a NvM_PNJF_{Block} port for NvMNotifyJobFinished notification.

requirement SWS_SwCluC_02111 [SWS_SwCluC_02111] 📄 PDF

⌊ DRAFT g The NvM Low Proxy shall provide an instance of a NvM_SingleBlockCallbackFunction per configured NV block ( SwCluCNvM- ProxyNvBlock ) in the NvM Low Proxy.

requirement SWS_SwCluC_02112 [SWS_SwCluC_02112] 📄 PDF

⌊ DRAFT g In case it is configured in the NvM High Proxy, the NvM Proxy shall invoke the NvM_SingleBlockCallbackFunction or JobFin- ished operation, when the according instance of the NvM Low Proxy is called.

requirement SWS_SwCluC_02113 [SWS_SwCluC_02113] 📄 PDF

⌊ DRAFT g In case a NV block configured in the NvM High Proxy is not connected to any NvM Low Proxy, the function NvM_GetErrorSta- tus of the NvM High Proxy shall still return E_OK , and the request result is set to NVM_REQ_RESTORED_FROM_ROM .

requirement SWS_SwCluC_02114 [SWS_SwCluC_02114] 📄 PDF

⌊ DRAFT g In case a NV block configured in the NvM High Proxy is not connected to any NvM Low Proxy, the functions • NvM_SetDataIndex • NvM_GetDataIndex • NvM_SetBlockProtection • NvM_SetRamBlockStatus • NvM_SetBlockLockStatus • NvM_CancelJobs • NvM_ReadBlock • NvM_WriteBlock • NvM_RestoreBlockDefaults • NvM_EraseNvBlock • NvM_InvalidateNvBlock • NvM_ReadPRAMBlock • NvM_WritePRAMBlock • NvM_RestorePRAMBlockDefaults of the NvM High Proxy shall return E_NOT_OK .

requirement SWS_SwCluC_02115 [SWS_SwCluC_02115] 📄 PDF

⌊ DRAFT g The NvM High Proxy shall support the optional configuration of a NvM_InitBlockCallbackFunction , according to [ECUC_NvM_- 00561], [ECUC_NvM_00116] and [ECUC_NvM_00559].

requirement SWS_SwCluC_02116 [SWS_SwCluC_02116] 📄 PDF

⌊ DRAFT g The NvM High Proxy shall support the optional configuration of a NvM_PNIB_{Block} port for NvMNotifyInitBlock notification.

requirement SWS_SwCluC_02117 [SWS_SwCluC_02117] 📄 PDF

⌊ DRAFT g The NvM High Proxy shall support the optional configuration of a NvM_ReadRamBlockFromNvm , according to [ECUC_NvM_00521].

requirement SWS_SwCluC_02118 [SWS_SwCluC_02118] 📄 PDF

⌊ DRAFT g The NvM High Proxy shall support the optional configuration of a NvM_WriteRamBlockToNvm , according to [ECUC_NvM_00520].

requirement SWS_SwCluC_02119 [SWS_SwCluC_02119] 📄 PDF

⌊ DRAFT g The NvM High Proxy shall support the optional con- figuration of a NvM_PM_{Block} port for NvMMirror notification.

requirement SWS_SwCluC_02120 [SWS_SwCluC_02120] 📄 PDF

⌊ DRAFT g The NvM High Proxy shall create one partition spe- cific Service Software Component per configured EcucPartition , with the name NvM_<EcucPartition shortName> .

requirement SWS_SwCluC_02121 [SWS_SwCluC_02121] 📄 PDF

⌊ DRAFT g The NvM High Proxy shall provide the Ports be- longing to a specific Nv Block • NvM_PS_{Block} • NvM_PAdmin_{Block} • NvM_PNIB_{Block} • NvM_PNJF_{Block} • NvM_PM_{Block} at the partition specific Service Software Component, to which the using SwCompo- nentPrototype is mapped.

requirement SWS_SwCluC_02122 [SWS_SwCluC_02122] 📄 PDF

⌊ DRAFT g In case it is configured in the NvM High Proxy, the NvM Proxy shall invoke the NvM_InitBlockCallbackFunction or InitBlock op- eration, when the according instance of the NvM Low Proxy is called.

requirement SWS_SwCluC_02123 [SWS_SwCluC_02123] 📄 PDF

⌊ DRAFT g In case it is configured in the NvM High Proxy, the NvM Proxy shall invoke the NvM_ReadRamBlockFromNvm function or ReadRam- BlockFromNvM operation, when the according instance of the NvM Low Proxy is called.

requirement SWS_SwCluC_02124 [SWS_SwCluC_02124] 📄 PDF

⌊ DRAFT g In case it is configured in the NvM High Proxy, the NvM Proxy shall invoke the NvM_WriteRamBlockToNvm function or WriteRam- BlockToNvM operation, when the according instance of the NvM Low Proxy is called.

requirement SWS_SwCluC_02125 [SWS_SwCluC_02125] 📄 PDF

⌊ DRAFT g The NvM High Proxy shall provide the functions for single block requests • NvM_SetDataIndex • NvM_GetDataIndex • NvM_SetBlockProtection • NvM_GetErrorStatus • NvM_SetRamBlockStatus • NvM_SetBlockLockStatus • NvM_CancelJobs • NvM_ReadBlock • NvM_WriteBlock • NvM_RestoreBlockDefaults • NvM_EraseNvBlock • NvM_InvalidateNvBlock • NvM_ReadPRAMBlock • NvM_WritePRAMBlock • NvM_RestorePRAMBlockDefaults for NvM users in the Applicative Software Cluster .

requirement SWS_SwCluC_02126 [SWS_SwCluC_02126] 📄 PDF

⌊ DRAFT g The NvM High Proxy shall provide the functions for single block requests, according to [SWS_SwCluC_02103], once per configured SwCluCNvMBaseSocket . In doing so, the APIs are provided with the original Mip NvM at the EcucPartition , where the SwCluCNativeBswApi is set to true . For all the other SwCluCNvMBaseSocket instances, the Mip NvM is replaced by NvM_ <shortName of EcucPartition> .

requirement SWS_SwCluC_02127 [SWS_SwCluC_02127] 📄 PDF

⌊ DRAFT g The NvM Low Proxy shall provide an instance of a NvM_InitBlockCallbackFunction per configured NV block ( SwCluCNvMProx- yNvBlock ) in the NvM Low Proxy.

requirement SWS_SwCluC_02128 [SWS_SwCluC_02128] 📄 PDF

⌊ DRAFT g The NvM Low Proxy shall provide an instance of a NvM_ReadRamBlockFromNvm per configured NV block ( SwCluCNvMProxyNvBlock ) in the NvM Low Proxy.

requirement SWS_SwCluC_02129 [SWS_SwCluC_02129] 📄 PDF

⌊ DRAFT g The NvM Low Proxy shall provide an instance of a NvM_WriteRamBlockToNvm per configured NV block ( SwCluCNvMProxyNvBlock ) in the NvM Low Proxy.

requirement SWS_SwCluC_02132 [SWS_SwCluC_02132] 📄 PDF

⌊ DRAFT g The NvM Low Proxy shall provide the entry func- tions for single block requests, according to [SWS_SwCluC_02103], once per config- ured SwCluCNvMBaseSocket at the EcucPartition configured by SwCluCNvM- BaseSocket . SwCluCProxyEcucPartitionRef . In case the SwCluCNvMProxyUsedSatelliteRef is set, the EcucPartition shall be changed, before the NVM API is called.

requirement SWS_SwCluC_02133 [SWS_SwCluC_02133] 📄 PDF

⌊ DRAFT g The callback instances according to [SWS_SwCluC_02111], [SWS_SwCluC_02127], [SWS_SwCluC_02128], and [SWS_SwCluC_02129], are provided • at the EcucPartition referenced by SwCluCNvMProxyNvBlock . SwCluC- NvMProxyNvBlockEcucPartitionRef , if a SwCluCNvMBaseSocket is di- rectly available at this EcucPartition OR • at the EcucPartition of the SwCluCNvMBaseSocket referenced by the SwCluCNvMBaseSocket - via SwCluCNvMProxyUsedSatelliteRef , which is on the EcucPartition given by SwCluCNvMProxyNvBlock . SwCluCNvM- ProxyNvBlockEcucPartitionRef . In this case, the EcucPartition shall be changed, before the callback in the High Proxy is called.

requirement SWS_SwCluC_02136 [SWS_SwCluC_02136] 📄 PDF

⌊ DRAFT g The functions • NvM_ReadBlock • NvM_WriteBlock • NvM_RestoreBlockDefaults of the NvM High Proxy shall only accept single block requests, where the pointer to the RAM data block is set to NULL_PTR . Otherwise, E_NOT_OK is returned, and the request is discarded.

requirement SWS_SwCluC_02137 [SWS_SwCluC_02137] 📄 PDF

⌊ DRAFT g If development error detection is enabled for NvM High Proxy, the APIs • NvM_SetDataIndex • NvM_GetDataIndex • NvM_SetBlockProtection • NvM_GetErrorStatus • NvM_SetRamBlockStatus • NvM_SetBlockLockStatus • NvM_CancelJobs • NvM_ReadBlock • NvM_WriteBlock • NvM_RestoreBlockDefaults • NvM_EraseNvBlock • NvM_InvalidateNvBlock • NvM_ReadPRAMBlock • NvM_WritePRAMBlock • NvM_RestorePRAMBlockDefaults shall report the DET error NVM_E_UNINIT , when NVM High Proxy is not yet initialized.

requirement SWS_SwCluC_02138 [SWS_SwCluC_02138] 📄 PDF

⌊ DRAFT g If development error detection is enabled for NvM High Proxy, the APIs • NvM_SetDataIndex • NvM_GetDataIndex • NvM_SetBlockProtection • NvM_GetErrorStatus • NvM_SetRamBlockStatus • NvM_SetBlockLockStatus • NvM_CancelJobs • NvM_ReadBlock • NvM_WriteBlock • NvM_RestoreBlockDefaults • NvM_EraseNvBlock • NvM_InvalidateNvBlock • NvM_ReadPRAMBlock • NvM_WritePRAMBlock • NvM_RestorePRAMBlockDefaults shall report the DET error NVM_E_PARAM_BLOCK_ID , when the passed BlockId is out of range of the BlockIds configured in the NvM High Proxy.

requirement SWS_SwCluC_02139 [SWS_SwCluC_02139] 📄 PDF

⌊ DRAFT g If development error detection is enabled for NvM High Proxy, the APIs • NvM_ReadBlock • NvM_WriteBlock • NvM_RestoreBlockDefaults shall report the DET error NVM_E_PARAM_ADDRESS , when a RAM block address dif- ferent than NULL_PTR is passed.

requirement SWS_SwCluC_02140 [SWS_SwCluC_02140] 📄 PDF

⌊ DRAFT g Development Error Types of SwCluC NvM Proxy The development error types defined for the SwCluC NvM Proxy are listed in table Table 7.4.

requirement SWS_SwCluC_02142 [SWS_SwCluC_02142] 📄 PDF

⌊ DRAFT g The NvM Low Proxy implementation shall describe the NV blocks provided to NvM High Proxies via NvBlockNeeds , derived from the Cp- SoftwareClusterServiceResource . resourceNeeds .

requirement SWS_SwCluC_02143 [SWS_SwCluC_02143] 📄 PDF

⌊ DRAFT g The NvM Low Proxy shall provide, for each SwCluCNvMBaseSocket , a SwCluC_NvMProxy_Init API, to initialize the NvM High Proxy of an Applicative Software Cluster . This shall be one element of the service resource SwCluCNvMBaseSocket .

requirement SWS_SwCluC_02144 [SWS_SwCluC_02144] 📄 PDF

⌊ DRAFT g The NvM Low Proxy code, and related AUTOSAR model descriptions, shall only be created, if the configuration parameter SwCluCProx- yGenerationNvM is set to LOW_PROXY .

requirement SWS_SwCluC_02147 [SWS_SwCluC_02147] 📄 PDF

[SWS_SwCluC_02147] Upstream requirements: SRS_SwCluC_00206 ⌈The NvM High Proxy of a specific Application Software Cluster shall en- able the configuration ID check, if the parameter NvMDynamicConfigura- tion is set to TRUE in this Application Software Cluster.⌋ Note: The parameter NvMDynamicConfiguration is set in the NvM module config- uration of the respective Application Software Cluster. Like in the configuration of the NvM module in the Host Software Cluster, the block ID 1 is reserved for the Configuration ID block in each Application Software Cluster. This Configuration ID block to contain the stored NVRAM configuration ID. module

requirement SWS_SwCluC_02149 [SWS_SwCluC_02149] 📄 PDF

[SWS_SwCluC_02149] Upstream requirements: SRS_SwCluC_00206 ⌈The NvM High Proxy of a specific Application Software Cluster shall im- plement the Configuration ID block as redundant type with CRC32.⌋

requirement SWS_SwCluC_02150 [SWS_SwCluC_02150] 📄 PDF

[SWS_SwCluC_02150] Upstream requirements: SRS_SwCluC_00206 ⌈The job of the function NvM_WriteBlock for the Configuration ID block shall write the compiled NVRAM configuration ID to the stored NVRAM configura- tion ID (in the Configuration ID blocks) of this Application Software Cluster.⌋

requirement SWS_SwCluC_02151 [SWS_SwCluC_02151] 📄 PDF

[SWS_SwCluC_02151] Upstream requirements: SRS_SwCluC_00206 ⌈The job of the function NvM_WritePRAMBlock for the Configuration ID block shall write the compiled NVRAM configuration ID to the stored NVRAM configu- ration ID (in the Configuration ID blocks) of this Application Software Cluster.⌋

requirement SWS_SwCluC_02152 [SWS_SwCluC_02152] 📄 PDF

[SWS_SwCluC_02152] Upstream requirements: SRS_SwCluC_00206 ⌈The NvM_ReadRamBlockFromNvm call for the Configuration ID block shall validate the configuration ID by comparing the stored NVRAM configuration ID of this Application Software Cluster vs. the compiled NVRAM configuration ID of this Application Software Cluster.⌋

requirement SWS_SwCluC_02161 [SWS_SwCluC_02161] 📄 PDF

[SWS_SwCluC_02161] Unconnected-behavior of NvM_SingleBlockCallbackFunction Upstream requirements: SRS_SwCluC_00206, SRS_SwCluC_00213 ⌈TheNvM_SingleBlockCallbackFunction of NvM Low Proxy shall return E_NOT_OK, if the corresponding NV Block is not connected to an instance in the NvM High Proxy.⌋ module

requirement SWS_SwCluC_02162 [SWS_SwCluC_02162] 📄 PDF

[SWS_SwCluC_02162] Unconnected-behavior of NvM_InitBlockCallbackFunction Upstream requirements: SRS_SwCluC_00206, SRS_SwCluC_00213 ⌈TheNvM_InitBlockCallbackFunction of NvM Low Proxy shall return E_NOT_OK, if the corresponding NV Block is not connected to an instance in the NvM High Proxy.⌋

requirement SWS_SwCluC_02163 [SWS_SwCluC_02163] 📄 PDF

[SWS_SwCluC_02163] Unconnected-behavior of NvM_ReadRamBlockFromNvm Upstream requirements: SRS_SwCluC_00206, SRS_SwCluC_00213 ⌈TheNvM_ReadRamBlockFromNvm of NvM Low Proxy shall return E_NOT_OK, if the corresponding NV Block is not connected to an instance in the NvM High Proxy.⌋

requirement SWS_SwCluC_02164 [SWS_SwCluC_02164] 📄 PDF

[SWS_SwCluC_02164] Unconnected-behavior of NvM_WriteRamBlockToNvm Upstream requirements: SRS_SwCluC_00206, SRS_SwCluC_00213 ⌈TheNvM_WriteRamBlockToNvm of NvM Low Proxy shall return E_NOT_OK, if the corresponding NV Block is not connected to an instance in the NvM High Proxy.⌋

requirement SWS_SwCluC_02200 [SWS_SwCluC_02200] 📄 PDF

⌊ DRAFT g The OS High Proxy code, and related AUTOSAR model descriptions, shall only be created, if the configuration parameter SwCluCProx- yGenerationOs is set to HIGH_PROXY .

requirement SWS_SwCluC_02201 [SWS_SwCluC_02201] 📄 PDF

⌊ DRAFT g The OS LOW Proxy code, and related AUTOSAR model descriptions, shall only be created, if the configuration parameter SwCluCProx- yGenerationOs is set to LOW_PROXY .

requirement SWS_SwCluC_02202 [SWS_SwCluC_02202] 📄 PDF

⌊ DRAFT g The Os Proxy shall support the execution of Os- Tasks from an Applicative Software Cluster , in the context of the Host Software Cluster .

requirement SWS_SwCluC_02204 [SWS_SwCluC_02204] 📄 PDF

⌊ DRAFT g The Os Proxy shall support a socket mechanism to hook several Applicative Software Clusters onto the Host Software Cluster .

requirement SWS_SwCluC_02205 [SWS_SwCluC_02205] 📄 PDF

⌊ DRAFT g The Os High Proxy interfaces shall be described with the parameters, and according containers, as defined in Os EcucModuleDef .

requirement SWS_SwCluC_02206 [SWS_SwCluC_02206] 📄 PDF

⌊ DRAFT g The Os Proxy interfaces shall be configured as a service resource, with the parameters as defined in the SwCluCOsProxy container.

requirement SWS_SwCluC_02210 [SWS_SwCluC_02210] 📄 PDF

⌊ DRAFT g The Os High Proxy shall provide the header file Os.h and Os_Cfg.h .

requirement SWS_SwCluC_02211 [SWS_SwCluC_02211] 📄 PDF

⌊ DRAFT g The Os High Proxy shall provide a proxy Os- Task , to which events from the Applicative Software Cluster can be mapped, during the design of an Applicative Software Cluster .

requirement SWS_SwCluC_02212 [SWS_SwCluC_02212] 📄 PDF

⌊ DRAFT g The Os High Proxy shall provide a set of Os- Task specific APIs that are required by the Applicative Software Cluster : • ActivateTask • ChainTask • TerminateTask

requirement SWS_SwCluC_02213 [SWS_SwCluC_02213] 📄 PDF

⌊ DRAFT g If SwCluCOsProxyOsTask . SwCluCOsProxy- TaskActivation . PASS_TASK_ACTIVATION is set for a specific OsTask , the API ActivateTask called for this OS task shall trigger a task activation in the Host Software Cluster .

requirement SWS_SwCluC_02214 [SWS_SwCluC_02214] 📄 PDF

⌊ DRAFT g The API for ChainTask shall be implemented as macro with a return statement in the Applicative Software Cluster , to be used in the context of the task body, and will end the execution of the proxy task.

requirement SWS_SwCluC_02215 [SWS_SwCluC_02215] 📄 PDF

⌊ DRAFT g The API for TerminateTask shall be imple- mented as macro with a return statement in the Applicative Software Cluster , to be used in the context of the task body, to be able to end the proxy tasks execution.

requirement SWS_SwCluC_02216 [SWS_SwCluC_02216] 📄 PDF

⌊ DRAFT g The Os High Proxy shall provide default han- dles for resources, in case a connection to the host system could not be established successfully between Applicative Software Cluster and the Host Software Cluster . The default implementation shall be a neutral behavior, with the return value E_OK , to support "standard status" from OS.

requirement SWS_SwCluC_02217 [SWS_SwCluC_02217] 📄 PDF

⌊ DRAFT g The Os High Proxy shall have a service re- source SwCluCOsProxyOsTask , for each OsTask required in the Applicative Software Cluster . For this resource, an entry in the Binary Manifest shall be created, to be able to link the task to its OsLowProxy implementation in the Host Software Cluster . Since the content of the OsTask is created by the RTE, this API shall be used and registered as service resource. It is recommended that this resource is marked with the mandatory flag ( SwCluCBManifIsMandatory ).

requirement SWS_SwCluC_02218 [SWS_SwCluC_02218] 📄 PDF

⌊ DRAFT g The Os High Proxy shall contain a required ser- vice resource SwCluCOsProxyOsTaskDispatcher . The Proxy-OsTask shall be called in that context. For this resource, an entry in the Binary Manifest shall be created, to be able to link it to the OsLowProxy dispatcher in the Host Software Cluster . It is recommended that this resource is marked with the mandatory flag ( SwCluCBManifIsMandatory ).

requirement SWS_SwCluC_02219 [SWS_SwCluC_02219] 📄 PDF

⌊ DRAFT g The Os High Proxy shall contain a required ser- vice resource SwCluCOsProxyFunctionDispatcher . This function dispatcher is used to call functions in context of the Host Software Cluster . For this resource, an entry in the Binary Manifest shall be created, to be able to link it to the OsLow- Proxy dispatcher in the Host Software Cluster .

requirement SWS_SwCluC_02220 [SWS_SwCluC_02220] 📄 PDF

⌊ DRAFT g The Os High Proxy shall contain a required ser- vice resource SwCluCOsProxyOsBaseSocket . This collects all hooks needed to be linked to the Host Software Cluster . It also contains Applicative Software Cluster local Os specific functions for StartOs, initialize and shutdown. It should also cover the local IOC , if present. It is recommended that this resource is marked with the mandatory flag ( SwCluCBManifIsMandatory ).

requirement SWS_SwCluC_02221 [SWS_SwCluC_02221] 📄 PDF

⌊ DRAFT g Since a Applicative Software Cluster can contain several OS Applications , the Os High Proxy shall be able to provide a local IOC implementation for the cluster internal communication paths between OS Applications . The link to the Host Software Cluster shall be established as part of the SwCluCOsProxyOsBaseSocket service resource.

requirement SWS_SwCluC_02222 [SWS_SwCluC_02222] 📄 PDF

⌊ DRAFT g The Os High Proxy shall require a service re- source SwCluCOsProxyOsApplication , which is used in the Applicative Software Cluster , and needs to be matched to the Host Software Cluster .

requirement SWS_SwCluC_02223 [SWS_SwCluC_02223] 📄 PDF

⌊ DRAFT g The Os High Proxy shall require a service re- source SwCluCOsProxyOsResource , which is used in the Applicative Soft- ware Cluster , and needs to be matched to the Host Software Cluster .

requirement SWS_SwCluC_02224 [SWS_SwCluC_02224] 📄 PDF

⌊ DRAFT g The Os High Proxy shall require a service re- source SwCluCOsProxyOsSpinlock , which is used in the Applicative Soft- ware Cluster , and needs to be matched to the Host Software Cluster .

requirement SWS_SwCluC_02225 [SWS_SwCluC_02225] 📄 PDF

⌊ DRAFT g The Os High Proxy shall provide the following APIs for the Applicative Software Cluster : • GetResource • ReleaseResource • SuspendOSInterrupts • ResumeOSInterrupts • GetSpinlock • ReleaseSpinlock • GetApplicationID Each of these APIs corresponds to a service resource in the Os Low Proxy. There will be an entry in the Binary Manifest , to require these service resources, which are described here: SwCluCOsProxy .

requirement SWS_SwCluC_02226 [SWS_SwCluC_02226] 📄 PDF

⌊ DRAFT g The Os High Proxy shall NOT support the fol- lowing APIs for the Applicative Software Cluster . • StartScheduleTable • StopScheduleTable • Schedule • DisableAllInterrupts • EnableAllInterrupts • SuspendAllInterrupts • ResumeAllInterrupts

requirement SWS_SwCluC_02227 [SWS_SwCluC_02227] 📄 PDF

⌊ DRAFT g The configuration of the Os High Proxy for a complete Applicative Software Cluster shall be specified with a set of ECUC- parameters defined here: SwCluCOsProxy .

requirement SWS_SwCluC_02229 [SWS_SwCluC_02229] 📄 PDF

⌊ DRAFT g If SwCluCOsProxyOsTask . SwCluCOsProxy- TaskActivation . OMIT_TASK_ACTIVATION is set for a specific OsTask , the API ActivateTask called for this OS task returns without effect.

requirement SWS_SwCluC_02230 [SWS_SwCluC_02230] 📄 PDF

⌊ DRAFT g The Os High Proxy shall support the implemen- tation of a task body of the proxy OsTask , with the TASK() macro.

requirement SWS_SwCluC_02250 [SWS_SwCluC_02250] 📄 PDF

⌊ DRAFT g The Os Low Proxy shall only be provided by the Host Software Cluster .

requirement SWS_SwCluC_02251 [SWS_SwCluC_02251] 📄 PDF

⌊ DRAFT g The configuration of the Os Low Proxy for a com- plete Host Software Cluster shall be specified with a set of ECUC-parameters defined here: SwCluCOsProxy . The configuration of the Os Low Proxy shall be de- rived from the implemented configuration for the Os in the Host Software Clus- ter .

requirement SWS_SwCluC_02252 [SWS_SwCluC_02252] 📄 PDF

⌊ DRAFT g The Os Low Proxy shall provide a socket for the Os High Proxys of the Applicative Software Clusters . For each Applicative Software Cluster , a corresponding service resource SwClu- COsProxyOsBaseSocket and configuration shall be provided.

requirement SWS_SwCluC_02253 [SWS_SwCluC_02253] 📄 PDF

⌊ DRAFT g The Os Low Proxy shall provide for each SwCluCOsProxyOsBaseSocket a SwCluC_OsProxy_Init API, to initialize the Os High Proxy of an Applicative Software Cluster . This shall be one element of the service resource SwCluCOsProxyOsBaseSocket .

requirement SWS_SwCluC_02254 [SWS_SwCluC_02254] 📄 PDF

⌊ DRAFT g The Os Low Proxy shall provide an API to start the Os High Proxy of an Applicative Software Cluster . This shall be one element of the service resource SwCluCOsProxyOsBaseSocket .

requirement SWS_SwCluC_02255 [SWS_SwCluC_02255] 📄 PDF

⌊ DRAFT g The Os Low Proxy shall provide an API to shut- down the Os High Proxy of an Applicative Software Cluster . This shall be one element of the service resource SwCluCOsProxyOsBaseSocket .

requirement SWS_SwCluC_02256 [SWS_SwCluC_02256] 📄 PDF

⌊ DRAFT g The Os Low Proxy shall be able to provide an API to connect IOC from Os High Proxy of an Applicative Software Clus- ter . This shall be one element of the service resource SwCluCOsProxyOsBas- eSocket .

requirement SWS_SwCluC_02257 [SWS_SwCluC_02257] 📄 PDF

⌊ DRAFT g The Os Low Proxy shall provide a task dis- patcher, to call the connected Os High Proxy from Applicative Software Cluster .

requirement SWS_SwCluC_02258 [SWS_SwCluC_02258] 📄 PDF

⌊ DRAFT g The Os Low Proxy shall provide a service resource SwCluCOsProxyOsTaskDispatcher, for each Applicative Software Clusters configuration that the system shall be prepared for.

requirement SWS_SwCluC_02259 [SWS_SwCluC_02259] 📄 PDF

⌊ DRAFT g The Os Low Proxy shall provide a service re- source SwCluCOsProxyOsTask , for each Applicative Software Clusters task configuration that the system shall be prepared for. For this resource, an en- try in the Binary Manifest shall be created, to be able to link it to the Os High Proxy task in the Host Software Cluster .

requirement SWS_SwCluC_02260 [SWS_SwCluC_02260] 📄 PDF

⌊ DRAFT g The Os Low Proxy shall provide a function dis- patcher, to call the connected Os High Proxy from Applicative Software Cluster , to trigger general function calls.

requirement SWS_SwCluC_02261 [SWS_SwCluC_02261] 📄 PDF

⌊ DRAFT g The Os Low Proxy shall provide a service re- source SwCluCOsProxyOsFunctionDispatcher , for each Applicative Soft- ware Clusters configuration that the system shall be prepared for.

requirement SWS_SwCluC_02262 [SWS_SwCluC_02262] 📄 PDF

⌊ DRAFT g The Os Low Proxy shall provide a service re- source SwCluCOsProxyOsApplication , for each OsApplication that is con- figured in the Host Software Cluster , and prepared for use in Applicative Software Clusters .

requirement SWS_SwCluC_02263 [SWS_SwCluC_02263] 📄 PDF

⌊ DRAFT g The Os Low Proxy shall provide a service re- source SwCluCOsProxyOsResource , for each OsResource used in Applicative Software Clusters .

requirement SWS_SwCluC_02264 [SWS_SwCluC_02264] 📄 PDF

⌊ DRAFT g The Os Low Proxy shall provide a service re- source SwCluCOsProxyOsSpinlock , for each OsSpinlock used in Applicative Software Clusters .

requirement SWS_SwCluC_02265 [SWS_SwCluC_02265] 📄 PDF

⌊ DRAFT g The Os Low Proxy shall provide a basic service implementation for the following APIs, to be used and connected with an Applica- tive Software Cluster : • GetResource • ReleaseResource • SuspendOSInterrupts • ResumeOSInterrupts • ReleaseResource • GetSpinlock • ReleaseSpinlock • GetApplicationID These APIs shall be provided with a corresponding service resource from SwClu- COsProxy .

requirement SWS_SwCluC_02266 [SWS_SwCluC_02266] 📄 PDF

⌊ DRAFT g The Os Low Proxy shall provide default handles for resources, in case a connection could not be established successfully between Applicative Software Cluster and the Host Software Cluster .

requirement SWS_SwCluC_02270 [SWS_SwCluC_02270] 📄 PDF

The Os Low Proxy shall have a service resource SwClu- COsProxyOsTaskDispatcher , for each task dispatcher provided in the Host Software Cluster . For this resource, an entry in the Binary Manifest shall be created, to be able to link the task dispatcher to its Os High Proxy implementation in the Applicative Software Cluster .

requirement SWS_SwCluC_02271 [SWS_SwCluC_02271] 📄 PDF

The Os Low Proxy shall have a service resource SwClu- COsProxyFunctionDispatcher , for each function dispatcher provided in the Host Software Cluster . For this resource, an entry in the Binary Manifest shall be created, to be able to link the function dispatcher to its Os High Proxy implementa- tion in the Applicative Software Cluster .

requirement SWS_SwCluC_02272 [SWS_SwCluC_02272] 📄 PDF

The Os Low Proxy shall create one partition specific Ser- vice Software Component per configured EcucPartition for the dispatcher, with the name SwCluC_Dispatcher_<EcucPartition shortName> .

requirement SWS_SwCluC_02273 [SWS_SwCluC_02273] 📄 PDF

The Os Low Proxy shall create one RunnableEntity per configured SwCluCOsProxyOsTaskDispatcher container in the partition specific Service Software Component according [SWS_SwCluC_02272]. The EcucPartition is determined by the parameter SwCluCOsProxyEcucParti- tionRef , if configured or alternatively by the EcucPartition to which the related OsTask belongs. The attributes of the RunnableEntity shall be set as following: • minimumStartInterval is set to the parameter value SwCluCOsProxyMin- imumStartInterval • symbol is set to the name of the task dispatcher's C-function used for implemen- tation of [SWS_SwCluC_02270] • canBeInvokedConcurrently is set to false

requirement SWS_SwCluC_02274 [SWS_SwCluC_02274] 📄 PDF

The Os Low Proxy shall create one BackgroundE- vent per configured SwCluCOsProxyDispatcherBackgroundEvent con- tainer in the partition specific Service Software Component according [SWS_SwCluC_02272]. The attributes of the BackgroundEvent shall be set as following: • shortName is set according the container's shortName • startOnEvent is set to the RunnableEntity according [SWS_SwCluC_02273] related to the owning SwCluCOsProxyOsTaskDis- patcher container. • disabledMode (s) are created according the SwCluCOsProxyDisabledMod- eInstanceRef (s) where for each different PPortPrototype an RPortPro- totype is created at the owing Service Software Component according [SWS_SwCluC_02272] and used as contextPort .

requirement SWS_SwCluC_02275 [SWS_SwCluC_02275] 📄 PDF

The Os Low Proxy shall create one TimingEvent per configured SwCluCOsProxyDispatcherTimingEvent container in the partition specific Service Software Component according [SWS_SwCluC_02272]. The attributes of the TimingEvent shall be set as following: • shortName is set according the container's shortName • startOnEvent is set to the RunnableEntity according [SWS_SwCluC_02273] related to the owning SwCluCOsProxyOsTaskDis- patcher container • period value is set according the SwCluCOsProxyTimingEventPeriod pa- rameter • disabledMode (s) are created according the SwCluCOsProxyDisabledMod- eInstanceRef (s) where for each different PPortPrototype an RPortPro- totype is created at the owing Service Software Component according [SWS_SwCluC_02272] and used as contextPort .

requirement SWS_SwCluC_02276 [SWS_SwCluC_02276] 📄 PDF

The Os Low Proxy shall create one SwcMod- eSwitchEvent per configured SwCluCOsProxyDispatcherModeSwitchEvent container in the partition specific Service Software Component according [SWS_SwCluC_02272]. The attributes of the SwcModeSwitchEvent shall be set as following: • shortName is set according the container's shortName • startOnEvent is set to the RunnableEntity according [SWS_SwCluC_02273] related to the owning SwCluCOsProxyOsTaskDis- patcher container • activation value is set according the SwCluCOsProxyDispatcherActiva- tion parameter • mode s are created according the SwCluCOsProxyModeInstanceRef (s) where for each different PPortPrototype an RPortPrototype is created at the owing Service Software Component according [SWS_SwCluC_02272] and used as contextPort . • disabledMode (s) are created according the SwCluCOsProxyDisabledMod- eInstanceRef (s) where for each different PPortPrototype an RPortPro- totype is created at the owing Service Software Component according [SWS_SwCluC_02272] and used as contextPort .

requirement SWS_SwCluC_02277 [SWS_SwCluC_02277] 📄 PDF

The Os Low Proxy shall create one ExternalTrigge- rOccurredEvent per configured SwCluCOsProxyDispatcherExternalTrig- gerOccurredEvent container in the partition specific Service Software Com- ponent according [SWS_SwCluC_02272]. The attributes of the ExternalTrigge- rOccurredEvent shall be set as following: • shortName is set according the container's shortName • startOnEvent is set to the RunnableEntity according [SWS_SwCluC_02273] related to the owning SwCluCOsProxyOsTaskDis- patcher container • trigger is set according the SwCluCOsProxyTriggerInstanceRef where for each different PPortPrototype an RPortPrototype is created at the owing Service Software Component according [SWS_SwCluC_02272] and used as contextRPort . • disabledMode (s) are created according the SwCluCOsProxyDisabledMod- eInstanceRef (s) where for each different PPortPrototype an RPortPro- totype is created at the owing Service Software Component according [SWS_SwCluC_02272] and used as contextPort .

requirement SWS_SwCluC_02284 [SWS_SwCluC_02284] 📄 PDF

[SWS_SwCluC_02284] SwCluCBManifProvideResourceEntryGroup for SwCluCOsProxyOsTask ⌈For the Os Low Proxy, there shall be a SwCluCBManif- ProvideResourceEntryGroup, whose SwCluCBManifResourceTypeRef shall refer to a SwCluCBManifResourceType that contains one SwCluCBManifNoti- fierHandle, with SwCluCBManifNativeHandleType set to FUNCTION_REFER- ENCE. The SwCluCBManifMultipleNotifierSupport shall be set to MULTIPLE_- NOTIFIER_SETS.⌋

requirement SWS_SwCluC_02285 [SWS_SwCluC_02285] 📄 PDF

[SWS_SwCluC_02285] Semantics of SwCluCOsProxyMaxNumberOfCallee Upstream requirements: SRS_SwCluC_00214 ⌈For each SwCluCOsProxyOsTask, the Os Low Proxy shall put a SwCluCBMan- ifProvideResourceEntry into the binary manifest. If the proxy task’s SwCluCOsProxyOsTaskDispatcher has SwCluCOsProxy- MaxNumberOfCallee set to a value bigger than 1, the provide entry shall be placed in the SwCluCBManifProvideResourceEntryGroup defined in

requirement SWS_SwCluC_02301 [SWS_SwCluC_02301] 📄 PDF

⌊ DRAFT g The Dcm High Proxy shall support the con- figuration of DataServices_{Data} RPortPrototype s for synchronous ClientServerInterface DataServices_{Data} for a SwCluCDcmProxyDi- agnosticData referencing via SwCluCDcmProxyDataRef a DcmDspData or a DcmDspPidService01 .

requirement SWS_SwCluC_02302 [SWS_SwCluC_02302] 📄 PDF

⌊ DRAFT g The Dcm High Proxy shall support the con- figuration of DataServices_{Data} RPortPrototype s for asynchronous ClientServerInterface DataServices_{Data} without parameter Error- Code .

requirement SWS_SwCluC_02303 [SWS_SwCluC_02303] 📄 PDF

⌊ DRAFT g The Dcm High Proxy shall support the con- figuration of DataServices_{Data} RPortPrototype s for asynchronous ClientServerInterface DataServices_{Data} with parameter ErrorCode .

requirement SWS_SwCluC_02304 [SWS_SwCluC_02304] 📄 PDF

⌊ DRAFT g In case the SwCluCDcmProxyDiagnosticData channel related to a DataServices_{Data} PortPrototype s is connected, the Dcm Proxy shall invoke the • ReadData operation , when the corresponding Xxx_ReadData API is called in the Dcm Low Proxy , OR • WriteData operation , when the corresponding Xxx_WriteData API is called in the Dcm Low Proxy , OR • ReadDataLength operation , when the corresponding Xxx_ReadDataL- ength API is called in the Dcm Low Proxy , OR • ConditionCheckRead operation , when the corresponding Xxx_Condi- tionCheckRead API is called in the Dcm Low Proxy , OR • GetScalingInformation operation , when the corresponding Xxx_- GetScalingInformation API is called in the Dcm Low Proxy , OR • ReturnControlToEcu operation , when the corresponding Xxx_Return- ControlToEcu API is called in the Dcm Low Proxy , OR • ResetToDefault operation , when the corresponding Xxx_ResetToDe- fault API is called in the Dcm Low Proxy , OR • FreezeCurrentState operation , when the corresponding Xxx_Freeze- CurrentState API is called in the Dcm Low Proxy , OR • ShortTermAdjustment operation , when the corresponding Xxx_Short- TermAdjustment API is called in the Dcm Low Proxy . In that case, IN arguments ( Data (if applicable), OpStatus (if applicable), control- Mask (if applicable) and ControlStateInfo (if applicable)) are passed to the client, and OUT arguments ( Data (if applicable), ScalingInfo (if applicable), ErrorCode (if applicable)) and application errors are transferred back to the caller of the Dcm Low Proxy .

requirement SWS_SwCluC_02305 [SWS_SwCluC_02305] 📄 PDF

⌊ DRAFT g In case the operation s in the DataSer- vices_{Data} ClientServerInterface do not have a controlMask argu- ment configured, the value is discarded without checking the passed control- MaskLength .

requirement SWS_SwCluC_02306 [SWS_SwCluC_02306] 📄 PDF

⌊ DRAFT g In case the operation s in the DataSer- vices_{Data} ClientServerInterface do not have an ErrorCode argument configured, the default value DCM_POS_RESP is transferred back to the caller of the Dcm Low Proxy in case the caller returned E_OK .

requirement SWS_SwCluC_02307 [SWS_SwCluC_02307] 📄 PDF

⌊ DRAFT g In case the DataServices_{Data} RPortPro- totype is unconnected, the application error E_NOT_OK and the Error- Code DCM_E_REQUESTOUTOFRANGE is transferred back to the caller of the Dcm Low Proxy .

requirement SWS_SwCluC_02308 [SWS_SwCluC_02308] 📄 PDF

⌊ DRAFT g In case the passed DataLength , ScalingIn- foLength , or controlMaskLength (if applicable, see [SWS_SwCluC_02305]) of the caller of the Dcm Low Proxy do not match the configured data size in the Dcm configuration in the Applicative Software Cluster , the application error E_NOT_OK and the ErrorCode DCM_E_REQUESTOUTOFRANGE is transferred back to the caller of the Dcm Low Proxy . No data , scalingInfo or controlMask values shall be transferred in this case.

requirement SWS_SwCluC_02309 [SWS_SwCluC_02309] 📄 PDF

⌊ DRAFT g The Dcm High Proxy shall support the configu- ration of DataServices_{Data} RPortPrototype s for SenderReceiverInter- face / NvDataInterface DataServices_{Data} .

requirement SWS_SwCluC_02310 [SWS_SwCluC_02310] 📄 PDF

⌊ DRAFT g The Dcm High Proxy shall support the configu- ration of DataServices_{Data} PPortPrototype s for SenderReceiverInter- face / NvDataInterface DataServices_{Data} .

requirement SWS_SwCluC_02311 [SWS_SwCluC_02311] 📄 PDF

⌊ DRAFT g The Dcm High Proxy shall support the config- uration of DataServices_{Data} PRPortPrototype s for SenderReceiverIn- terface / NvDataInterface DataServices_{Data} .

requirement SWS_SwCluC_02312 [SWS_SwCluC_02312] 📄 PDF

⌊ DRAFT g In case the SwCluCDcmProxyDiagnosticData channel related to a DataServices_{Data} PortPrototype s is connected, the Dcm Proxy shall • read the dataElement / nvData , when the corresponding Xxx_ReadData API is called in the Dcm Low Proxy , OR • write the dataElement / nvData , when the corresponding Xxx_WriteData API is called in the Dcm Low Proxy . In that case IN argument Data (if applicable) is sent to the receiver, and OUT argument Data (if applicable) is transferred back to the caller of the Dcm Low Proxy .

requirement SWS_SwCluC_02313 [SWS_SwCluC_02313] 📄 PDF

⌊ DRAFT g In case the DataServices_{Data} Sender- ReceiverInterface / NvDataInterface is configured, the default value DCM_POS_RESP as ErrorCode is transferred back to the caller of the Dcm Low Proxy for any connected RPortPrototype and any connected or unconnected PPortPrototype or PRPortPrototype .

requirement SWS_SwCluC_02314 [SWS_SwCluC_02314] 📄 PDF

⌊ DRAFT g In case the DataServices_{Data} RPortPro- totype , PPortPrototype or PRPortPrototype is unconnected, the return value E_NOT_OK and the ErrorCode DCM_E_REQUESTOUTOFRANGE is transferred back to the caller of the Dcm Low Proxy .

requirement SWS_SwCluC_02315 [SWS_SwCluC_02315] 📄 PDF

⌊ DRAFT g In case the passed DataLength of the caller of the Dcm Low Proxy does not match the configured data size in the Dcm configuration in the Applicative Software Cluster , the return value E_NOT_OK and the ErrorCode DCM_E_REQUESTOUTOFRANGE is transferred back to the caller of the Dcm Low Proxy . No data shall be transferred in this case.

requirement SWS_SwCluC_02316 [SWS_SwCluC_02316] 📄 PDF

⌊ DRAFT g The Dcm High Proxy shall support the configu- ration of DataServices_{DID} RPortPrototype s for SenderReceiverInter- face DataServices_{DID} .

requirement SWS_SwCluC_02317 [SWS_SwCluC_02317] 📄 PDF

⌊ DRAFT g The Dcm High Proxy shall support the configu- ration of DataServices_{DID} PPortPrototype s for SenderReceiverInter- face DataServices_{DID} .

requirement SWS_SwCluC_02318 [SWS_SwCluC_02318] 📄 PDF

⌊ DRAFT g The Dcm High Proxy shall support the configu- ration of DataServices_{DID} PRPortPrototype s for SenderReceiverInter- face DataServices_{DID} .

requirement SWS_SwCluC_02319 [SWS_SwCluC_02319] 📄 PDF

⌊ DRAFT g In case the SwCluCDcmProxyDiagnosticData channel related to a DataServices_{DID} PortPrototype s is connected, the Dcm Proxy shall • read the dataElement , when the corresponding Xxx_ReadData API is called in the Dcm Low Proxy , OR • write the dataElement , when the corresponding Xxx_WriteData API is called in the Dcm Low Proxy , In that case, IN argument Data (if applicable) is sent to the receiver and OUT argument Data (if applicable) is transferred back to the caller of the Dcm Low Proxy .

requirement SWS_SwCluC_02320 [SWS_SwCluC_02320] 📄 PDF

⌊ DRAFT g In case the DataServices_{DID} Sender- ReceiverInterface is configured, the default value DCM_POS_RESP as Error- Code is transferred back to the caller of the Dcm Low Proxy for any connected RPortPrototype and any connected or unconnected PPortPrototype or PR- PortPrototype .

requirement SWS_SwCluC_02321 [SWS_SwCluC_02321] 📄 PDF

⌊ DRAFT g In case the DataServices_{DID} RPortPro- totype is unconnected, the return value E_NOT_OK and the ErrorCode DCM_E_REQUESTOUTOFRANGE is transferred back to the caller of the Dcm Low Proxy .

requirement SWS_SwCluC_02322 [SWS_SwCluC_02322] 📄 PDF

⌊ DRAFT g In case the passed DataLength of the caller of the Dcm Low Proxy does not match the configured data size in the Dcm configuration in the Applicative Software Cluster , the return value E_NOT_OK and the ErrorCode DCM_E_REQUESTOUTOFRANGE is transferred back to the caller of the Dcm Low Proxy . No data shall be transferred in this case.

requirement SWS_SwCluC_02323 [SWS_SwCluC_02323] 📄 PDF

⌊ DRAFT g The Dcm High Proxy shall support the configu- ration of IOControlRequest_{DID} RPortPrototype s for SenderReceiverIn- terface IOControlRequest_{DID} .

requirement SWS_SwCluC_02324 [SWS_SwCluC_02324] 📄 PDF

⌊ DRAFT g The Dcm High Proxy shall support the configu- ration of IOControlResponse_{DID} RPortPrototype s for SenderReceiver- Interface IOControlResponse_{DID} .

requirement SWS_SwCluC_02325 [SWS_SwCluC_02325] 📄 PDF

⌊ DRAFT g In case the SwCluCDcmProxyDiagnostic- Data channel, related to a IOControlRequest_{DID} and IOControlRe- sponse_{DID} sender-receiver port, is connected, the Dcm Proxy shall: • calculate the underControl , IOOperationRequest and controlState data elements, according to [SWS_Dcm_01435], [SWS_Dcm_00682], [SWS_- Dcm_01436], [SWS_Dcm_01437], [SWS_Dcm_01438], [SWS_Dcm_01275], [SWS_Dcm_01277] AND • return the IOOperationResponse , according to [SWS_Dcm_01439], [SWS_- Dcm_01440], and [SWS_Dcm_01441], when the corresponding Xxx_Read- Data , Xxx_WriteData , Xxx_ReturnControlToEcu , Xxx_ResetToDe- fault , Xxx_FreezeCurrentState , or Xxx_ShortTermAdjustment API is called in the Dcm Low Proxy .

requirement SWS_SwCluC_02330 [SWS_SwCluC_02330] 📄 PDF

⌊ DRAFT g The Dcm High Proxy shall support the configuration of RoutineServices_{RoutineName} RPortPrototype s for ClientServerInterface RoutineServices_{RoutineName} .

requirement SWS_SwCluC_02331 [SWS_SwCluC_02331] 📄 PDF

⌊ DRAFT g In case the SwCluCDcmProxyRoutineControl channel related to a RoutineServices_{RoutineName} RPortPrototype s is connected, the Dcm Proxy shall invoke the • Start operation , when the corresponding Xxx_Start API is called in the Dcm Low Proxy , OR • StartConfirmation operation , when the corresponding Xxx_StartCon- firmation API is called in the Dcm Low Proxy , OR • Stop operation , when the corresponding Xxx_Stop API is called in the Dcm Low Proxy , OR • StopConfirmation operation , when the corresponding Xxx_StopConfir- mation API is called in the Dcm Low Proxy , OR • RequestResults operation , when the corresponding Xxx_RequestRe- sults API is called in the Dcm Low Proxy , OR • RequestResultsConfirmation operation , when the corresponding Xxx_- RequestResultsConfirmation API is called in the Dcm Low Proxy , In this case, INOUT arguments ( dataInOut (if applicable)) are used to transfer the individual dataIn signals to the client, and to transfer back the individual dataOut signals as joint array to the caller of the Dcm Low Proxy . The configuration of the operation s in the ClientServerInterface s is according to the Dcm configura- tion of the Applicative Software Cluster . Additionally, IN arguments OpSta- tus (if applicable) and ConfirmationStatus (if applicable) are passed to the client, and OUT arguments ErrorCode (if applicable) and application errors are trans- ferred back to the caller of the Dcm Low Proxy .

requirement SWS_SwCluC_02332 [SWS_SwCluC_02332] 📄 PDF

⌊ DRAFT g In case the RoutineSer- vices_{RoutineName} RPortPrototype is unconnected, the return value E_NOT_OK and the ErrorCode DCM_E_REQUESTOUTOFRANGE (if applicable) is transferred back to the caller of the Dcm Low Proxy .

requirement SWS_SwCluC_02333 [SWS_SwCluC_02333] 📄 PDF

⌊ DRAFT g In case the passed DataLength of the caller of the Dcm Low Proxy does not match the configured data size in the Dcm configuration in the Applicative Software Cluster , the return value E_NOT_OK and the ErrorCode DCM_E_REQUESTOUTOFRANGE is transferred back to the caller of the Dcm Low Proxy . No data shall be transferred in this case.

requirement SWS_SwCluC_02334 [SWS_SwCluC_02334] 📄 PDF

⌊ DRAFT g The Dcm High Proxy shall support the configu- ration of ServiceRequestManufacturerNotification_{Name} RPortProto- type s for ClientServerInterface ServiceRequestManufacturerNotifi- cation_{Name} .

requirement SWS_SwCluC_02335 [SWS_SwCluC_02335] 📄 PDF

⌊ DRAFT g The Dcm High Proxy shall support the con- figuration of ServiceRequestSupplierNotification_{Name} RPortProto- type s for ClientServerInterface ServiceRequestSupplierNotifica- tion_{Name} .

requirement SWS_SwCluC_02336 [SWS_SwCluC_02336] 📄 PDF

⌊ DRAFT g In case the SwCluCDcmProxySer- viceRequestNotification channel related to a ServiceRequestManu- facturerNotification_{Name} or ServiceRequestSupplierNotifica- tion_{Name} RPortPrototype s is connected, the Dcm Proxy shall invoke the • Confirmation operation , when the corresponding Xxx_Confirmation API is called in the Dcm Low Proxy , OR • Indication operation , when the corresponding Xxx_Indication API is called in the Dcm Low Proxy . In this case, IN arguments [ SID (if applicable), ReqType (if applicable), Connec- tionId (if applicable), ConfirmationStatus (if applicable), ProtocolType (if applicable), TesterSourceAddress (if applicable), RequestData (if applicable), DataSize (if applicable)] are passed to the client and OUT arguments [ ErrorCode (if applicable)] and application errors are transferred back to the caller of the Dcm Low Proxy .

requirement SWS_SwCluC_02337 [SWS_SwCluC_02337] 📄 PDF

⌊ DRAFT g In case the ServiceRequestManufac- turerNotification_{Name} or ServiceRequestSupplierNotifica- tion_{Name} RPortPrototype is unconnected, the return value E_NOT_OK and the ErrorCode DCM_E_REQUESTOUTOFRANGE (if applicable) is transferred back to the caller of the Dcm Low Proxy .

requirement SWS_SwCluC_02338 [SWS_SwCluC_02338] 📄 PDF

⌊ DRAFT g The Dcm High Proxy code, and related AUTOSAR model descriptions, shall only be created if the configuration parame- ter SwCluCProxyGenerationDcm is set to HIGH_PROXY .

requirement SWS_SwCluC_02339 [SWS_SwCluC_02339] 📄 PDF

⌊ DRAFT g The Dcm Low Proxy code, and related AUTOSAR model descriptions, shall only be created if the configuration parame- ter SwCluCProxyGenerationDcm is set to LOW_PROXY .

requirement SWS_SwCluC_02341 [SWS_SwCluC_02341] 📄 PDF

⌊ DRAFT g The Dcm High Proxy shall create one partition specific Service Software Component per configured EcucPartition , with the name Dcm_<EcucPartition shortName> .

requirement SWS_SwCluC_02342 [SWS_SwCluC_02342] 📄 PDF

⌊ DRAFT g The Dcm High Proxy shall provide the Ports be- longing to a specific interface connection at the partition specific Service Software Component, at the given EcucPartition of the proxy channel, configured via • SwCluCDcmProxyDiagnosticData . SwCluCProxyEcucPartitionRef OR • SwCluCDcmProxyRoutineControl . SwCluCProxyEcucPartitionRef OR • SwCluCDcmProxyServiceRequestNotification . SwCluCProxyEcuc- PartitionRef

requirement SWS_SwCluC_02350 [SWS_SwCluC_02350] 📄 PDF

⌊ DRAFT g The Dcm Low Proxy shall provide an instance of a Xxx_ReadData function per configured SwCluCDcmProxyDiagnosticData con- tainer in the Dcm Low Proxy , if the diagnostic data element read access is enabled.

requirement SWS_SwCluC_02351 [SWS_SwCluC_02351] 📄 PDF

⌊ DRAFT g The Xxx_ReadData function shall be named SwCluC_DcmProxy_ReadData_<DDSN> , where <DDSN> is the shortName of the SwCluCDcmProxyRoutineControl container.

requirement SWS_SwCluC_02352 [SWS_SwCluC_02352] 📄 PDF

⌊ DRAFT g The diagnostic data element read ac- cess for a SwCluCDcmProxyDiagnosticData is enabled, if: • SwCluCDcmProxyDataRef references a DcmDspData AND the corresponding DcmDspDid has a DcmDspDidRead configured in its related DcmDspDidInfo OR • SwCluCDcmProxyDataRef references a DcmDspDid , which has a DcmDsp- DidRead configured in its related DcmDspDidInfo OR • SwCluCDcmProxyDataRef references a DcmDspPidService01 OR • SwCluCDcmProxyDataRef references a DemDataElementClass

requirement SWS_SwCluC_02353 [SWS_SwCluC_02353] 📄 PDF

⌊ DRAFT g The Dcm Low Proxy shall provide an instance of a Xxx_WriteData function per configured SwCluCDcmProxyDiagnosticData container in the Dcm Low Proxy , if the diagnostic data element write ac- cess is enabled.

requirement SWS_SwCluC_02354 [SWS_SwCluC_02354] 📄 PDF

⌊ DRAFT g The Xxx_WriteData function shall be named SwCluC_DcmProxy_WriteData_<DDSN> , where <DDSN> is the shortName of the SwCluCDcmProxyRoutineControl container.

requirement SWS_SwCluC_02355 [SWS_SwCluC_02355] 📄 PDF

⌊ DRAFT g The diagnostic data element write ac- cess for a SwCluCDcmProxyDiagnosticData is enabled, if: • SwCluCDcmProxyDataRef references a DcmDspData AND the corresponding DcmDspDid has a DcmDspDidWrite configured in its related DcmDspDidInfo OR • SwCluCDcmProxyDataRef references a DcmDspDid , which has a DcmDsp- DidWrite configured in its related DcmDspDidInfo

requirement SWS_SwCluC_02356 [SWS_SwCluC_02356] 📄 PDF

⌊ DRAFT g The Dcm Low Proxy shall provide an instance of a Xxx_ReadDataLength function per configured SwCluCDcmProxyDiagnostic- Data container in the Dcm Low Proxy , if the diagnostic data element read data length access is enabled.

requirement SWS_SwCluC_02357 [SWS_SwCluC_02357] 📄 PDF

⌊ DRAFT g The Xxx_ReadDataLength function shall be named SwCluC_DcmProxy_ReadDataLength_<DDSN> , where <DDSN> is the shortName of the SwCluCDcmProxyRoutineControl container.

requirement SWS_SwCluC_02358 [SWS_SwCluC_02358] 📄 PDF

⌊ DRAFT g The diagnostic data element read data length access for a SwCluCDcmProxyDiagnosticData is enabled, if: • SwCluCDcmProxyDataRef references a DcmDspData AND the corresponding DcmDspDid has a DcmDspDidRead configured in its related DcmDspDidInfo AND • the DcmDspDataType is set to UINT8_DYN .

requirement SWS_SwCluC_02359 [SWS_SwCluC_02359] 📄 PDF

⌊ DRAFT g The Dcm Low Proxy shall provide an instance of a Xxx_ConditionCheckRead function per configured SwCluCDcmProxyDiag- nosticData container in the Dcm Low Proxy , if the diagnostic data element condition check read access is enabled.

requirement SWS_SwCluC_02360 [SWS_SwCluC_02360] 📄 PDF

⌊ DRAFT g The Xxx_ConditionCheckRead function shall be named SwCluC_DcmProxy_ConditionCheckRead_<DDSN> , where <DDSN> is the shortName of the SwCluCDcmProxyRoutineControl container.

requirement SWS_SwCluC_02361 [SWS_SwCluC_02361] 📄 PDF

⌊ DRAFT g The diagnostic data element condition check read access for a SwCluCDcmProxyDiagnosticData is enabled, if: • SwCluCDcmProxyDataRef references a DcmDspData AND the corresponding DcmDspDid has a DcmDspDidRead configured in its related DcmDspDidInfo AND • the parameter DcmDspDataConditionCheckReadFncUsed is set to true .

requirement SWS_SwCluC_02362 [SWS_SwCluC_02362] 📄 PDF

⌊ DRAFT g The Dcm Low Proxy shall provide an instance of a Xxx_GetScalingInformation function per configured SwCluCDcmProxyDiag- nosticData container in the Dcm Low Proxy , if the diagnostic data element scaling information access is enabled.

requirement SWS_SwCluC_02363 [SWS_SwCluC_02363] 📄 PDF

⌊ DRAFT g The Xxx_GetScalingInformation function shall be named SwCluC_DcmProxy_GetScalingInformation_<DDSN> , where <DDSN> is the shortName of the SwCluCDcmProxyRoutineControl container.

requirement SWS_SwCluC_02364 [SWS_SwCluC_02364] 📄 PDF

⌊ DRAFT g The diagnostic data element scaling information access for a SwCluCDcmProxyDiagnosticData is enabled, if: • SwCluCDcmProxyDataRef references a DcmDspData AND • the corresponding DcmDspDataScalingInfoSize is configured in its related DcmDspDataInfo .

requirement SWS_SwCluC_02365 [SWS_SwCluC_02365] 📄 PDF

⌊ DRAFT g The Dcm Low Proxy shall provide an instance of a Xxx_ReturnControlToECU function per configured SwCluCDcmProxyDiag- nosticData container in the Dcm Low Proxy , if the diagnostic data element return control to ECU is enabled.

requirement SWS_SwCluC_02366 [SWS_SwCluC_02366] 📄 PDF

⌊ DRAFT g The Xxx_ReturnControlToECU function shall be named SwCluC_DcmProxy_ReturnControlToECU_<DDSN> , where <DDSN> is the shortName of the SwCluCDcmProxyRoutineControl container.

requirement SWS_SwCluC_02367 [SWS_SwCluC_02367] 📄 PDF

⌊ DRAFT g The diagnostic data element return control to ECU for a SwCluCDcmProxyDiagnosticData is enabled, if: • SwCluCDcmProxyDataRef references a DcmDspData AND • the corresponding DcmDspDid has a DcmDspDidControl configured in its re- lated DcmDspDidInfo AND • the parameter DcmDspDidFreezeCurrentState is set to true .

requirement SWS_SwCluC_02368 [SWS_SwCluC_02368] 📄 PDF

⌊ DRAFT g The Dcm Low Proxy shall provide an instance of a Xxx_ResetToDefault function per configured SwCluCDcmProxyDiagnostic- Data container in the Dcm Low Proxy , if the diagnostic data element reset to default is enabled.

requirement SWS_SwCluC_02369 [SWS_SwCluC_02369] 📄 PDF

⌊ DRAFT g The Xxx_ResetToDefault function shall be named SwCluC_DcmProxy_ResetToDefault_<DDSN> , where <DDSN> is the shortName of the SwCluCDcmProxyRoutineControl container.

requirement SWS_SwCluC_02370 [SWS_SwCluC_02370] 📄 PDF

⌊ DRAFT g The diagnostic data element reset to default for a SwCluCDcmProxyDiagnosticData is enabled, if: • SwCluCDcmProxyDataRef references a DcmDspData AND • the corresponding DcmDspDid has a DcmDspDidControl configured in its re- lated DcmDspDidInfo AND • the parameter DcmDspDidResetToDefault is set to true .

requirement SWS_SwCluC_02371 [SWS_SwCluC_02371] 📄 PDF

⌊ DRAFT g The Dcm Low Proxy shall provide an instance of a Xxx_FreezeCurrentState function per configured SwCluCDcmProxyDiag- nosticData container in the Dcm Low Proxy , if the diagnostic data element freeze current state is enabled.

requirement SWS_SwCluC_02372 [SWS_SwCluC_02372] 📄 PDF

⌊ DRAFT g The Xxx_FreezeCurrentState function shall be named SwCluC_DcmProxy_FreezeCurrentState_<DDSN> , where <DDSN> is the shortName of the SwCluCDcmProxyRoutineControl container.

requirement SWS_SwCluC_02373 [SWS_SwCluC_02373] 📄 PDF

⌊ DRAFT g The diagnostic data element freeze current state for a SwCluCDcmProxyDiagnosticData is enabled, if • SwCluCDcmProxyDataRef references a DcmDspData AND • the corresponding DcmDspDid has a DcmDspDidControl configured in its re- lated DcmDspDidInfo AND • the parameter DcmDspDidFreezeCurrentState is set to true .

requirement SWS_SwCluC_02374 [SWS_SwCluC_02374] 📄 PDF

⌊ DRAFT g The Dcm Low Proxy shall provide an instance of a Xxx_ShortTermAdjustment function per configured SwCluCDcmProxyDiag- nosticData container in the Dcm Low Proxy , if the diagnostic data element short term adjustment is enabled.

requirement SWS_SwCluC_02375 [SWS_SwCluC_02375] 📄 PDF

⌊ DRAFT g The Xxx_ShortTermAdjustment function shall be named SwCluC_DcmProxy_ShortTermAdjustment_<DDSN> , where <DDSN> is the shortName of the SwCluCDcmProxyRoutineControl container.

requirement SWS_SwCluC_02376 [SWS_SwCluC_02376] 📄 PDF

⌊ DRAFT g The diagnostic data element short term adjustment for a SwCluCDcmProxyDiagnosticData is enabled, if • SwCluCDcmProxyDataRef references a DcmDspData AND • the corresponding DcmDspDid has a DcmDspDidControl configured in its re- lated DcmDspDidInfo AND • the parameter DcmDspDidShortTermAdjustment is set to true .

requirement SWS_SwCluC_02380 [SWS_SwCluC_02380] 📄 PDF

⌊ DRAFT g The Xxx_ReadData function of Dcm Low Proxy shall return E_NOT_OK and the ErrorCode DCM_E_REQUESTOUTOFRANGE , if the cor- responding diagnostic data proxy is not connected to an instance in the Dcm High Proxy . No data is returned in this case.

requirement SWS_SwCluC_02381 [SWS_SwCluC_02381] 📄 PDF

⌊ DRAFT g The Xxx_WriteData function of Dcm Low Proxy shall return E_NOT_OK and the ErrorCode DCM_E_REQUESTOUTOFRANGE , if the corresponding diagnostic data proxy is not connected to an instance in the Dcm High Proxy .

requirement SWS_SwCluC_02382 [SWS_SwCluC_02382] 📄 PDF

⌊ DRAFT g The Xxx_ReadDataLength function of Dcm Low Proxy shall return E_NOT_OK , if the corresponding diagnostic data proxy is not connected to an instance in the Dcm High Proxy .

requirement SWS_SwCluC_02383 [SWS_SwCluC_02383] 📄 PDF

⌊ DRAFT g The Xxx_ConditionCheckRead function of Dcm Low Proxy shall return E_NOT_OK , if the corresponding diagnostic data proxy is not connected to an instance in the Dcm High Proxy .

requirement SWS_SwCluC_02384 [SWS_SwCluC_02384] 📄 PDF

⌊ DRAFT g The Xxx_GetScalingInformation function of Dcm Low Proxy shall return E_NOT_OK , if the corresponding diagnostic data proxy is not connected to an instance in the Dcm High Proxy .

requirement SWS_SwCluC_02385 [SWS_SwCluC_02385] 📄 PDF

⌊ DRAFT g The Xxx_ReturnControlToECU function of Dcm Low Proxy shall return E_NOT_OK , if the corresponding diagnostic data proxy is not connected to an instance in the Dcm High Proxy .

requirement SWS_SwCluC_02386 [SWS_SwCluC_02386] 📄 PDF

⌊ DRAFT g The Xxx_ResetToDefault function of Dcm Low Proxy shall return E_NOT_OK , if the corresponding diagnostic data proxy is not connected to an instance in the Dcm High Proxy .

requirement SWS_SwCluC_02387 [SWS_SwCluC_02387] 📄 PDF

⌊ DRAFT g The Xxx_FreezeCurrentState function of Dcm Low Proxy shall return E_NOT_OK , if the corresponding diagnostic data proxy is not connected to an instance in the Dcm High Proxy .

requirement SWS_SwCluC_02388 [SWS_SwCluC_02388] 📄 PDF

⌊ DRAFT g The Xxx_ShortTermAdjustment function of Dcm Low Proxy shall return E_NOT_OK , if the corresponding diagnostic data proxy is not connected to an instance in the Dcm High Proxy .

requirement SWS_SwCluC_02390 [SWS_SwCluC_02390] 📄 PDF

⌊ DRAFT g The Dcm High Proxy shall create for each SwCluCDcmProxyBaseSocket a required resource entry in the Binary Mani- fest .

requirement SWS_SwCluC_02391 [SWS_SwCluC_02391] 📄 PDF

⌊ DRAFT g The Dcm High Proxy shall create for each di- agnostic data proxy - configured via SwCluCDcmProxyDiagnosticData con- tainer - a provided resource entry in the Binary Manifest .

requirement SWS_SwCluC_02392 [SWS_SwCluC_02392] 📄 PDF

⌊ DRAFT g The Dcm High Proxy shall create for each rou- tine control proxy - configured via SwCluCDcmProxyRoutineControl con- tainer - a provided resource entry in the Binary Manifest .

requirement SWS_SwCluC_02393 [SWS_SwCluC_02393] 📄 PDF

⌊ DRAFT g The Dcm High Proxy shall create for each ser- vice request notification proxy - configured via SwCluCDcmProxySer- viceRequestNotification container - a provided resource entry in the Binary Manifest .

requirement SWS_SwCluC_02394 [SWS_SwCluC_02394] 📄 PDF

⌊ DRAFT g The Dcm Low Proxy shall create for each di- agnostic data proxy - configured via SwCluCDcmProxyDiagnosticData con- tainer - a required resource entry in the Binary Manifest .

requirement SWS_SwCluC_02395 [SWS_SwCluC_02395] 📄 PDF

⌊ DRAFT g The Dcm Low Proxy shall create for each rou- tine control proxy - configured via SwCluCDcmProxyRoutineControl con- tainer - a required resource entry in the Binary Manifest .

requirement SWS_SwCluC_02396 [SWS_SwCluC_02396] 📄 PDF

⌊ DRAFT g The Dcm Low Proxy shall create for each ser- vice request notification proxy - configured via SwCluCDcmProxySer- viceRequestNotification container - a required resource entry in the Binary Manifest .

requirement SWS_SwCluC_02397 [SWS_SwCluC_02397] 📄 PDF

⌊ DRAFT g The Dcm Low Proxy shall create for each SwCluCDcmProxyBaseSocket a provided resource entry in the Binary Mani- fest .

requirement SWS_SwCluC_02400 [SWS_SwCluC_02400] 📄 PDF

⌊ DRAFT g The Dcm Low Proxy shall provide an instance of a Xxx_Start function per configured SwCluCDcmProxyRoutineControl container in the Dcm Low Proxy .

requirement SWS_SwCluC_02401 [SWS_SwCluC_02401] 📄 PDF

⌊ DRAFT g The Xxx_Start function shall be named SwCluC_DcmProxy_Start_<RCSN> , where <RCSN> is the shortName of the SwCluCDcmProxyRoutineControl container.

requirement SWS_SwCluC_02402 [SWS_SwCluC_02402] 📄 PDF

⌊ DRAFT g The Xxx_Start function of Dcm Low Proxy shall return E_NOT_OK and the ErrorCode DCM_E_REQUESTOUTOFRANGE , if the cor- responding routine control proxy is not connected to an instance in the Dcm High Proxy .

requirement SWS_SwCluC_02403 [SWS_SwCluC_02403] 📄 PDF

⌊ DRAFT g The Dcm Low Proxy shall provide an instance of a Xxx_StartConfirmation function per configured SwCluCDcmProxyRou- tineControl container in the Dcm Low Proxy .

requirement SWS_SwCluC_02404 [SWS_SwCluC_02404] 📄 PDF

⌊ DRAFT g The Xxx_StartConfirmation function shall be named SwCluC_DcmProxy_StartConfirmation_<RCSN> , where <RCSN> is the shortName of the SwCluCDcmProxyRoutineControl container.

requirement SWS_SwCluC_02405 [SWS_SwCluC_02405] 📄 PDF

⌊ DRAFT g The Xxx_StartConfirmation function of Dcm Low Proxy shall return E_NOT_OK , if the corresponding routine control proxy is not connected to an instance in the Dcm High Proxy .

requirement SWS_SwCluC_02406 [SWS_SwCluC_02406] 📄 PDF

⌊ DRAFT g The Dcm Low Proxy shall provide an instance of a Xxx_Stop function per configured SwCluCDcmProxyRoutineControl container in the Dcm Low Proxy .

requirement SWS_SwCluC_02407 [SWS_SwCluC_02407] 📄 PDF

⌊ DRAFT g The Xxx_Stop function shall be named SwCluC_DcmProxy_Stop_<RCSN> , where <RCSN> is the shortName of the SwCluCDcmProxyRoutineControl container.

requirement SWS_SwCluC_02408 [SWS_SwCluC_02408] 📄 PDF

⌊ DRAFT g The Xxx_Stop function of Dcm Low Proxy shall return E_NOT_OK and the ErrorCode DCM_E_REQUESTOUTOFRANGE , if the corre- sponding routine control proxy is not connected to an instance in the Dcm High Proxy .

requirement SWS_SwCluC_02409 [SWS_SwCluC_02409] 📄 PDF

⌊ DRAFT g The Dcm Low Proxy shall provide an instance of a Xxx_StopConfirmation function per configured SwCluCDcmProxyRou- tineControl container in the Dcm Low Proxy .

requirement SWS_SwCluC_02410 [SWS_SwCluC_02410] 📄 PDF

⌊ DRAFT g The Xxx_StopConfirmation function shall be named SwCluC_DcmProxy_StopConfirmation_<RCSN> , where <RCSN> is the shortName of the SwCluCDcmProxyRoutineControl container.

requirement SWS_SwCluC_02411 [SWS_SwCluC_02411] 📄 PDF

⌊ DRAFT g The Xxx_StopConfirmation function of Dcm Low Proxy shall return E_NOT_OK if the corresponding routine control proxy is not connected to an instance in the Dcm High Proxy .

requirement SWS_SwCluC_02412 [SWS_SwCluC_02412] 📄 PDF

⌊ DRAFT g The Dcm Low Proxy shall provide an instance of a Xxx_RequestResults function per configured SwCluCDcmProxyRoutineCon- trol container in the Dcm Low Proxy .

requirement SWS_SwCluC_02413 [SWS_SwCluC_02413] 📄 PDF

⌊ DRAFT g The Xxx_RequestResults function shall be named SwCluC_DcmProxy_RequestResults_<RCSN> , where <RCSN> is the shortName of the SwCluCDcmProxyRoutineControl container.

requirement SWS_SwCluC_02414 [SWS_SwCluC_02414] 📄 PDF

⌊ DRAFT g The Xxx_RequestResults function of Dcm Low Proxy shall return E_NOT_OK and the ErrorCode DCM_E_REQUESTOUTOFRANGE , if the corresponding routine control proxy is not connected to an instance in the Dcm High Proxy .

requirement SWS_SwCluC_02415 [SWS_SwCluC_02415] 📄 PDF

⌊ DRAFT g The Dcm Low Proxy shall provide an instance of a Xxx_RequestResultsConfirmation function per configured SwCluCDcmProx- yRoutineControl container in the Dcm Low Proxy .

requirement SWS_SwCluC_02416 [SWS_SwCluC_02416] 📄 PDF

⌊ DRAFT g The Xxx_RequestResultsConfirmation function shall be named SwCluC_DcmProxy_RequestResultsConfirmation_<RCSN> , where <RCSN> is the shortName of the SwCluCDcmProxyRoutineControl con- tainer.

requirement SWS_SwCluC_02417 [SWS_SwCluC_02417] 📄 PDF

⌊ DRAFT g The Xxx_RequestResultsConfirmation function of Dcm Low Proxy shall return E_NOT_OK , if the corresponding rou- tine control proxy is not connected to an instance in the Dcm High Proxy .

requirement SWS_SwCluC_02418 [SWS_SwCluC_02418] 📄 PDF

⌊ DRAFT g The Dcm Low Proxy shall provide an instance of a Xxx_Indication function per configured SwCluCDcmProxyServiceRequest- Notification container in the Dcm Low Proxy .

requirement SWS_SwCluC_02419 [SWS_SwCluC_02419] 📄 PDF

⌊ DRAFT g The Xxx_Indication function shall be named SwCluC_DcmProxy_Indication_<SRNSN> , where <SRNSN> is the short- Name of the SwCluCDcmProxyServiceRequestNotification container.

requirement SWS_SwCluC_02420 [SWS_SwCluC_02420] 📄 PDF

⌊ DRAFT g The Xxx_Indication function of Dcm Low Proxy shall return E_NOT_OK and the ErrorCode DCM_E_REQUESTOUTOFRANGE , if the corresponding routine control proxy is not connected to an instance in the Dcm High Proxy .

requirement SWS_SwCluC_02421 [SWS_SwCluC_02421] 📄 PDF

⌊ DRAFT g The Dcm Low Proxy shall provide an in- stance of a Xxx_Confirmation function per configured SwCluCDcmProxySer- viceRequestNotification container in the Dcm Low Proxy .

requirement SWS_SwCluC_02422 [SWS_SwCluC_02422] 📄 PDF

⌊ DRAFT g The Xxx_Confirmation function shall be named SwCluC_DcmProxy_Confirmation_<SRNSN> , where <SRNSN> is the short- Name of the SwCluCDcmProxyServiceRequestNotification container.

requirement SWS_SwCluC_02423 [SWS_SwCluC_02423] 📄 PDF

⌊ DRAFT g The Xxx_Confirmation function of Dcm Low Proxy shall return E_NOT_OK and the ErrorCode DCM_E_REQUESTOUTOFRANGE , if the corresponding routine control proxy is not connected to an instance in the Dcm High Proxy .

requirement SWS_SwCluC_02424 [SWS_SwCluC_02424] 📄 PDF

⌊ DRAFT g The interface function instance for the diagnos- tic data proxy , routine control proxy and service request notifi- cation proxy , according to [SWS_SwCluC_02350], [SWS_SwCluC_02353], [SWS_SwCluC_02356], [SWS_SwCluC_02359], [SWS_SwCluC_02362], [SWS_SwCluC_02365], [SWS_SwCluC_02368], [SWS_SwCluC_02371], [SWS_SwCluC_02374], [SWS_SwCluC_02400], [SWS_SwCluC_02403], [SWS_SwCluC_02406], [SWS_SwCluC_02409], [SWS_SwCluC_02412], [SWS_SwCluC_02415], are provided either: • at the EcucPartition , referenced by – SwCluCDcmProxyDiagnosticData . SwCluCProxyEcucPartitionRef OR – SwCluCDcmProxyRoutineControl . SwCluCProxyEcucPartitionRef OR – SwCluCDcmProxyServiceRequestNotification . SwCluCProxyE- cucPartitionRef OR • if a SwCluCDcmProxyBaseSocket is directly available, at its EcucPartition OR • at the EcucPartition of the SwCluCDcmProxyBaseSocket , referenced by the SwCluCDcmProxyBaseSocket - via SwCluCDcmProxyUsedSatel- liteRef , applicable for the EcucPartition requested above. In this case, the EcucPartition shall be changed, before the callback in the High Proxy is called.

requirement SWS_SwCluC_02425 [SWS_SwCluC_02425] 📄 PDF

⌊ DRAFT g The Dcm Low Proxy shall provide, for each SwCluCDcmProxyBaseSocket , a SwCluC_DcmProxy_Init API, to initialize the Dcm High Proxy of an Applicative Software Cluster . This shall be one element of the service resource SwCluCDcmProxyBaseSocket .

requirement SWS_SwCluC_02426 [SWS_SwCluC_02426] 📄 PDF

⌊ DRAFT g Development Error Types of SwCluC Dcm Proxy The development error types defined for the SwCluC Dcm Proxy are listed in table Table 7.7.

requirement SWS_SwCluC_02500 [SWS_SwCluC_02500] 📄 PDF

⌊ DRAFT g The LdCom High Proxy code, and related AUTOSAR model descriptions, shall only be created, if the configuration parameter SwCluCProxyGenerationLdCom is set to HIGH_PROXY .

requirement SWS_SwCluC_02501 [SWS_SwCluC_02501] 📄 PDF

⌊ DRAFT g The LdCom Low Proxy code, and related AUTOSAR model descriptions, shall only be created, if the configuration parameter SwCluCProxyGenerationLdCom is set to LOW_PROXY .

requirement SWS_SwCluC_02502 [SWS_SwCluC_02502] 📄 PDF

⌊ DRAFT g The LdCom Proxy shall support that the Ld- ComIPdu Ids of the LdCom of the Host Software Cluster can change, without reconfiguration or rebuild of the Applicative Software Cluster using these Ld- ComIPdu s.

requirement SWS_SwCluC_02503 [SWS_SwCluC_02503] 📄 PDF

⌊ DRAFT g The LdCom Proxy shall support the invocation of LdCom API from an Applicative Software Cluster in context of the Host Software Cluster .

requirement SWS_SwCluC_02504 [SWS_SwCluC_02504] 📄 PDF

⌊ DRAFT g The LdCom Proxy shall support the invocation of LdCom Callback APIs from the Host Software Cluster in context of the Ap- plicative Software Cluster .

requirement SWS_SwCluC_02506 [SWS_SwCluC_02506] 📄 PDF

⌊ DRAFT g The LdCom High Proxy shall provide the sym- bolic name values for the LdComIPdu IDs, for LdCom users in the Applicative Software Cluster .

requirement SWS_SwCluC_02507 [SWS_SwCluC_02507] 📄 PDF

⌊ DRAFT g The LdCom High Proxy shall provide the func- tion w.r.t transmission request of a LdComIPdu • LdCom_Transmit required by the Applicative Software Cluster

requirement SWS_SwCluC_02508 [SWS_SwCluC_02508] 📄 PDF

⌊ DRAFT g If the LdCom High Proxy is not connected to the LdCom Low Proxy , the function • LdCom_Transmit of the LdCom High Proxy shall return E_NOT_OK .

requirement SWS_SwCluC_02509 [SWS_SwCluC_02509] 📄 PDF

⌊ DRAFT g The LdCom High Proxy shall provide the func- tion for transmission request of a signal, according to [SWS_SwCluC_02506], once per configured SwCluCLdComProxyBaseSocket . At the EcucPartition , where the SwCluCNativeBswApi is set to true , the API is provided with the original Mip LdCom . For all other SwCluCLdComProxyBaseSocket instances, the Mip LdCom is replaced by LdCom_<EcucPartition.ShortName> .

requirement SWS_SwCluC_02510 [SWS_SwCluC_02510] 📄 PDF

⌊ DRAFT g The LdCom High Proxy shall support the <Ld- ComUser_LdComCbkRxIndication> notification callback, configured via the Ld- ComUserCallbackName (See [ECUC_LdCom_00023]) parameter, where the LdCo- mUserCallbackType (See [ECUC_LdCom_00025]) is set to LDCOM_RX_INDICA- TION

requirement SWS_SwCluC_02511 [SWS_SwCluC_02511] 📄 PDF

⌊ DRAFT g The LdCom High Proxy shall support the op- tional <LdComUser_LdComCbkTxConfirmation> notification callback, configured via the LdComUserCallbackName (See [ECUC_LdCom_00023]) parameter, where the LdComUserCallbackType (See [ECUC_LdCom_00025]) is set to LDCOM_TX_- CONFIRMATION

requirement SWS_SwCluC_02512 [SWS_SwCluC_02512] 📄 PDF

⌊ DRAFT g The LdCom High Proxy shall support the op- tional <LdComUser_LdComCbkTriggerTransmit> notification callback, configured via the LdComUserCallbackName (See [ECUC_LdCom_00023]) parameter, where the LdComUserCallbackType (See [ECUC_LdCom_00025]) is set to LDCOM_TX_- TRIGGER_TRANSMIT

requirement SWS_SwCluC_02513 [SWS_SwCluC_02513] 📄 PDF

⌊ DRAFT g The LdCom High Proxy shall support the <Ld- ComUser_LdComCbkCopyRxData> notification callback, configured via the LdCo- mUserCallbackName (See [ECUC_LdCom_00023]) parameter, where the LdCo- mUserCallbackType (See [ECUC_LdCom_00025]) is set to LDCOM_TP_COPY_- RX_DATA

requirement SWS_SwCluC_02514 [SWS_SwCluC_02514] 📄 PDF

⌊ DRAFT g The LdCom High Proxy shall support the <Ld- ComUser_LdComCbkStartOfReception> notification callback configured via the LdComUserCallbackName (See [ECUC_LdCom_00023]) parameter where the LdComUserCallbackType (See [ECUC_LdCom_00025]) is set to LDCOM_RX_- START_OF_RECEPTION

requirement SWS_SwCluC_02515 [SWS_SwCluC_02515] 📄 PDF

⌊ DRAFT g The LdCom High Proxy shall support the <Ld- ComUser_LdComCbkTpRxIndication> notification callback, configured via the Ld- ComUserCallbackName (See [ECUC_LdCom_00023]) parameter, where the LdCo- mUserCallbackType (See [ECUC_LdCom_00025]) is set to LDCOM_TP_RX_INDI- CATION

requirement SWS_SwCluC_02516 [SWS_SwCluC_02516] 📄 PDF

⌊ DRAFT g The LdCom High Proxy shall support the <Ld- ComUser_LdComCbkTpTxConfirmation> notification callback, configured via the LdComUserCallbackName (See [ECUC_LdCom_00023]) parameter, where the Ld- ComUserCallbackType (See [ECUC_LdCom_00025]) is set to LDCOM_TP_TX_- CONFIRMATION

requirement SWS_SwCluC_02517 [SWS_SwCluC_02517] 📄 PDF

⌊ DRAFT g The LdCom High Proxy shall support the <Ld- ComUser_LdComCbkCopyTxData> notification callback, configured via the LdCo- mUserCallbackName (See [ECUC_LdCom_00023]) parameter, where the LdCo- mUserCallbackType (See [ECUC_LdCom_00025]) is set to LDCOM_TP_COPY_- TX_DATA

requirement SWS_SwCluC_02518 [SWS_SwCluC_02518] 📄 PDF

⌊ DRAFT g The LdCom Low Proxy shall provide the header file SwCluC_LdComProxy_Cbk.h .

requirement SWS_SwCluC_02519 [SWS_SwCluC_02519] 📄 PDF

⌊ DRAFT g The LdCom Low Proxy shall provide the entry function for transmission requests, according to [SWS_SwCluC_02506], once per configured SwCluCLdComProxyBaseSocket at the EcucPartition configured by SwCluCLdComProxyBaseSocket . SwCluCProxyEcucPartitionRef .

requirement SWS_SwCluC_02520 [SWS_SwCluC_02520] 📄 PDF

⌊ DRAFT g The LdCom Low Proxy shall provide for each SwCluCLdComProxyBaseSocket a SwCluC_LdComProxy_Init API, to initial- ize the LdCom High Proxy of an Applicative Software Cluster .

requirement SWS_SwCluC_02521 [SWS_SwCluC_02521] 📄 PDF

⌊ DRAFT g The LdCom Low Proxy shall provide an instance of all SwCluC_LdComProxy_LdComCbkRxIndication notification callbacks, con- figured via the LdComUserCallbackName (See [ECUC_LdCom_00023]) parameter, with LdComUserCallbackType (See [ECUC_LdCom_00025]) set to LDCOM_RX_- INDICATION .

requirement SWS_SwCluC_02522 [SWS_SwCluC_02522] 📄 PDF

⌊ DRAFT g The LdCom Low Proxy shall provide an instance of all LdComCbkTxConfirmation notification callbacks, configured via the LdCo- mUserCallbackName (See [ECUC_LdCom_00023]) parameter, with LdComUser- CallbackType (See [ECUC_LdCom_00025]) set to LDCOM_TX_CONFIRMATION .

requirement SWS_SwCluC_02523 [SWS_SwCluC_02523] 📄 PDF

⌊ DRAFT g The LdCom Low Proxy shall provide an instance of all LdComCbkTriggerTransmit notification callbacks, configured via the LdCo- mUserCallbackName (See [ECUC_LdCom_00023]) parameter, with LdComUser- CallbackType (See [ECUC_LdCom_00025]) set to LDCOM_TX_TRIGGER_TRANS- MIT .

requirement SWS_SwCluC_02524 [SWS_SwCluC_02524] 📄 PDF

⌊ DRAFT g The LdCom Low Proxy shall provide an instance of all LdComCbkCopyRxData notification callbacks, configured via the LdComUser- CallbackName (See [ECUC_LdCom_00023]) parameter, with LdComUserCall- backType (See [ECUC_LdCom_00025]) set to LDCOM_TP_COPY_RX_DATA .

requirement SWS_SwCluC_02525 [SWS_SwCluC_02525] 📄 PDF

⌊ DRAFT g The LdCom Low Proxy shall provide an instance of all LdComCbkStartOfReception notification callbacks, configured via the LdCo- mUserCallbackName (See [ECUC_LdCom_00023]) parameter, with LdComUser- CallbackType (See [ECUC_LdCom_00025]) set to LDCOM_RX_START_OF_RECEP- TION .

requirement SWS_SwCluC_02526 [SWS_SwCluC_02526] 📄 PDF

⌊ DRAFT g The LdCom Low Proxy shall provide an instance of all LdComCbkTpRxIndication notification callbacks, configured via the LdCo- mUserCallbackName (See [ECUC_LdCom_00023]) parameter, with LdComUser- CallbackType (See [ECUC_LdCom_00025]) set to LDCOM_TP_RX_INDICATION .

requirement SWS_SwCluC_02527 [SWS_SwCluC_02527] 📄 PDF

⌊ DRAFT g The LdCom Low Proxy shall provide an instance of all LdComCbkTpTxConfirmation notification callbacks, configured via the Ld- ComUserCallbackName (See [ECUC_LdCom_00023]) parameter, with the LdCo- mUserCallbackType (See [ECUC_LdCom_00025]) set to LDCOM_TP_TX_CONFIR- MATION .

requirement SWS_SwCluC_02528 [SWS_SwCluC_02528] 📄 PDF

⌊ DRAFT g The LdCom Low Proxy shall provide an instance of all SwCluC_LdComProxy_LdComCbkCopyTxData notification callbacks, config- ured via the LdComUserCallbackName (See [ECUC_LdCom_00023]) parameter, with the LdComUserCallbackType (See [ECUC_LdCom_00025]) set to LDCOM_- TP_COPY_TX_DATA .

requirement SWS_SwCluC_02529 [SWS_SwCluC_02529] 📄 PDF

⌊ DRAFT g The notification callback instances accord- ing to [SWS_SwCluC_02520], [SWS_SwCluC_02521], [SWS_SwCluC_02522], [SWS_SwCluC_02523], [SWS_SwCluC_02524], [SWS_SwCluC_02525], [SWS_SwCluC_02526], [SWS_SwCluC_02527] and [SWS_SwCluC_02528] are provided • at the EcucPartition of the SwCluCLdComProxyBaseSocket , referenced by the SwCluCLdComProxyBaseSocket - via SwCluCLdComProxyUsedSatel- liteRef .

requirement SWS_SwCluC_02530 [SWS_SwCluC_02530] 📄 PDF

⌊ DRAFT g If the LdCom Low Proxy is not connected to the LdCom High Proxy , the notification callback functions • SwCluC_LdComProxy_LdComCbkStartOfReception • SwCluC_LdComProxy_LdComCbkCopyRxData • SwCluC_LdComProxy_LdComCbkCopyTxData of the LdCom Low Proxy shall return BUFREQ_E_NOT_OK .

requirement SWS_SwCluC_02531 [SWS_SwCluC_02531] 📄 PDF

⌊ DRAFT g If the LdCom Low Proxy is not connected to the LdCom High Proxy , the notification callback function • SwCluC_LdComProxy_LdComCbkTriggerTransmit of the LdCom Low Proxy shall return E_NOT_OK .

requirement SWS_SwCluC_02532 [SWS_SwCluC_02532] 📄 PDF

⌊ DRAFT g If the LdCom Low Proxy is not connected to the LdCom High Proxy , the notification callback functions • SwCluC_LdComProxy_LdComCbkRxIndication • SwCluC_LdComProxy_LdComCbkTpRxIndication • SwCluC_LdComProxy_LdComCbkTxConfirmation • SwCluC_LdComProxy_LdComCbkTpTxConfirmation of the LdCom Low Proxy shall return without effect.

requirement SWS_SwCluC_02533 [SWS_SwCluC_02533] 📄 PDF

⌊ DRAFT g If the development error detection is enabled for the LdCom High Proxy , the API • LdCom_Transmit shall report the DET error LDCOM_E_UNINIT , in case the LdCom High Proxy is not initialized.

requirement SWS_SwCluC_02534 [SWS_SwCluC_02534] 📄 PDF

⌊ DRAFT g If the development error detection is enabled for the LdCom High Proxy , the API • LdCom_Transmit shall, when invoked with a NULL_PTR , report the DET error LD- COM_E_PARAM_POINTER .

requirement SWS_SwCluC_02535 [SWS_SwCluC_02535] 📄 PDF

⌊ DRAFT g If the <LdComUser_LdComCbkRxIndication> notification callback is configured in the LdCom High Proxy (via the LdComUser- CallbackName (See [ECUC_LdCom_00023]) parameter, where the LdComUser- CallbackType (See [ECUC_LdCom_00025]) is set to LDCOM_RX_INDICATION ), all the configured <LdComUser_LdComCbkRxIndication> callbacks shall be invoked, when the associated instance of the SwCluC_LdComProxy_LdComCbkRxIndica- tion from the LdCom Low Proxy is called.

requirement SWS_SwCluC_02536 [SWS_SwCluC_02536] 📄 PDF

⌊ DRAFT g If the <LdComUser_LdComCbkTxConfirma- tion> notification callback is configured in the LdCom High Proxy (via the Ld- ComUserCallbackName (See [ECUC_LdCom_00023]) parameter, where the LdCo- mUserCallbackType (See [ECUC_LdCom_00025]) is set to LDCOM_TX_CONFIR- MATION ), the configured <LdComUser_LdComCbkTxConfirmation> callback shall be invoked. when the associated instance of the SwCluC_LdComProxy_LdComCbk- TxConfirmation from the LdCom Low Proxy is called.

requirement SWS_SwCluC_02537 [SWS_SwCluC_02537] 📄 PDF

⌊ DRAFT g If the <LdComUser_LdComCbkTriggerTrans- mit> notification callback is configured in the LdCom High Proxy (via the LdComUserCallbackName (See [ECUC_LdCom_00023]) parameter, where the LdComUserCallbackType (See [ECUC_LdCom_00025]) is set to LDCOM_TX_- TRIGGER_TRANSMIT ), the configured <LdComUser_LdComCbkTriggerTransmit> callback shall be invoked, when the associated instance of the SwCluC_Ld- ComProxy_LdComCbkTriggerTransmit from the LdCom Low Proxy is called.

requirement SWS_SwCluC_02538 [SWS_SwCluC_02538] 📄 PDF

⌊ DRAFT g If the <LdComUser_LdComCbkCopyRxData> no- tification callback is configured in the LdCom High Proxy (via the LdComUserCall- backName (See [ECUC_LdCom_00023]) parameter, where the LdComUserCall- backType (See [ECUC_LdCom_00025]) is set to LDCOM_TP_COPY_RX_DATA ), the configured <LdComUser_LdComCbkCopyRxData> callback shall be invoked, when the associated instance of the SwCluC_LdComProxy_LdComCbkCopyRxData from the LdCom Low Proxy is called.

requirement SWS_SwCluC_02539 [SWS_SwCluC_02539] 📄 PDF

⌊ DRAFT g If the <LdComUser_LdComCbkStartOfRecep- tion> notification callback is configured in the LdCom High Proxy (via the LdComUserCallbackName (See [ECUC_LdCom_00023]) parameter, where the LdComUserCallbackType (See [ECUC_LdCom_00025]) is set to LDCOM_RX_- START_OF_RECEPTION ), the configured <LdComUser_LdComCbkStartOfRecep- tion> callback shall be invoked, when the associated instance of the SwCluC_Ld- ComProxy_LdComCbkStartOfReception from the LdCom Low Proxy is called.

requirement SWS_SwCluC_02540 [SWS_SwCluC_02540] 📄 PDF

⌊ DRAFT g If the <LdComUser_LdComCbkTpRxIndica- tion> notification callback is configured in the LdCom High Proxy (via the Ld- ComUserCallbackName (See [ECUC_LdCom_00023]) parameter, where the LdCo- mUserCallbackType (See [ECUC_LdCom_00025]) is set to LDCOM_TP_RX_INDI- CATION ), the configured <LdComUser_LdComCbkTpRxIndication> callback shall be invoked, when the associated instance of the SwCluC_LdComProxy_LdComCbk- TpRxIndication from the LdCom Low Proxy is called.

requirement SWS_SwCluC_02541 [SWS_SwCluC_02541] 📄 PDF

⌊ DRAFT g If the <LdComUser_LdComCbkTpTxConfirma- tion> notification callback is configured in the LdCom High Proxy (via the LdComUserCallbackName (See [ECUC_LdCom_00023]) parameter, where the LdComUserCallbackType (See [ECUC_LdCom_00025]) is set to LDCOM_TP_- TX_CONFIRMATION ), the configured <LdComUser_LdComCbkTpTxConfirmation> callback shall be invoked, when the associated instance of the SwCluC_Ld- ComProxy_LdComCbkTpTxConfirmation from the LdCom Low Proxy is called.

requirement SWS_SwCluC_02542 [SWS_SwCluC_02542] 📄 PDF

⌊ DRAFT g If the <LdComUser_LdComCbkCopyTxData> no- tification callback is configured in the LdCom High Proxy (via the LdComUserCall- backName (See [ECUC_LdCom_00023]) parameter, where the LdComUserCall- backType (See [ECUC_LdCom_00025]) is set to LDCOM_TP_COPY_TX_DATA ), the configured <LdComUser_LdComCbkCopyTxData> callback shall be invoked, when the associated instance of the SwCluC_LdComProxy_LdComCbkCopyTxData from the LdCom Low Proxy is called.

requirement SWS_SwCluC_02543 [SWS_SwCluC_02543] 📄 PDF

⌊ DRAFT g The Com High Proxy shall create, for each SwCluCLdComProxyBaseSocket , a required resource entry in the Binary Man- ifest .

requirement SWS_SwCluC_02544 [SWS_SwCluC_02544] 📄 PDF

⌊ DRAFT g The LdCom Low Proxy shall create for each SwCluCLdComProxyBaseSocket a provided resource entry in the Binary Man- ifest .

requirement SWS_SwCluC_02545 [SWS_SwCluC_02545] 📄 PDF

⌊ DRAFT g Development Error Types of SwCluC LdCom Proxy The development error types defined for the SwCluC LdCom Proxy are listed in table Table 7.6.

requirement SWS_SwCluC_02548 [SWS_SwCluC_02548] 📄 PDF

⌊ DRAFT g The LdCom Proxy shall support that the LdCo- mUserCbkHandleId of LdComUserIPdu s configured in LdCom users of the Ap- plicative Software Cluster can change, without reconfiguration or rebuild of the Host Software Cluster .

requirement SWS_SwCluC_02549 [SWS_SwCluC_02549] 📄 PDF

⌊ DRAFT g The LdCom Low Proxy shall provide in its Ld- ComUserModuleCnf containers the LdComUserCbkHandleId values for the config- ured LdComUserIPdu s, according to its internal implementation requirements (e.g. to address the LdCom Low Proxy 's data structures).

requirement SWS_SwCluC_02550 [SWS_SwCluC_02550] 📄 PDF

⌊ DRAFT g The LdCom base socket shall implement the connection of the related callback functions • SwCluC_LdComProxy_LdComCbkStartOfReception • SwCluC_LdComProxy_LdComCbkCopyRxData • SwCluC_LdComProxy_LdComCbkCopyTxData • SwCluC_LdComProxy_LdComCbkTriggerTransmit • SwCluC_LdComProxy_LdComCbkRxIndication • SwCluC_LdComProxy_LdComCbkTpRxIndication • SwCluC_LdComProxy_LdComCbkTxConfirmation • SwCluC_LdComProxy_LdComCbkTpTxConfirmation

requirement SWS_SwCluC_02551 [SWS_SwCluC_02551] 📄 PDF

⌊ DRAFT g The LdCom High Proxy shall create for each LdComIPdu configured in LdCom a required resource entry in the Binary Man- ifest . Where the EcucPartition of the LdComIPdu 's Pdu given via Pdu . EcucPduDefaultPartitionRef or Pdu . EcucPduDedicatedPartition . EcucP- duDedicatedPartitionRef are relevant to denote the EcucPartition .

requirement SWS_SwCluC_02552 [SWS_SwCluC_02552] 📄 PDF

⌊ DRAFT g The LdCom Low Proxy shall create, for each LdComUserIPdu configured in a SwCluCLdComProxyBaseSocket . LdComUser- ModuleCnf , a provided resource entry in the Binary Manifest .

requirement SWS_SwCluC_02600 [SWS_SwCluC_02600] 📄 PDF

⌊ DRAFT g The Com High Proxy code, and related AUTOSAR model descriptions, shall only be created, if the configuration param- eter SwCluCProxyGenerationCom is set to HIGH_PROXY .

requirement SWS_SwCluC_02601 [SWS_SwCluC_02601] 📄 PDF

⌊ DRAFT g The Com Low Proxy code, and related AUTOSAR model descriptions, shall only be created, if the configuration param- eter SwCluCProxyGenerationCom is set to LOW_PROXY .

requirement SWS_SwCluC_02602 [SWS_SwCluC_02602] 📄 PDF

⌊ DRAFT g The Com Proxy shall support that the ComHan- dleId of ComSignal s configured in Com of the Host Software Cluster can change, without reconfiguration or rebuild of the Applicative Software Cluster using these ComSignal s.

requirement SWS_SwCluC_02603 [SWS_SwCluC_02603] 📄 PDF

⌊ DRAFT g The Com Proxy shall support that the ComHan- dleId of ComSignalGroup s resp. ComGroupSignal s configured in the Com of the Host Software Cluster can change, without reconfiguration or rebuild of the Applicative Software Cluster using these ComSignalGroup s.

requirement SWS_SwCluC_02604 [SWS_SwCluC_02604] 📄 PDF

⌊ DRAFT g The Com Proxy shall support the invocation of Com APIs from an Applicative Software Cluster in context of the Host Software Cluster .

requirement SWS_SwCluC_02605 [SWS_SwCluC_02605] 📄 PDF

⌊ DRAFT g The Com Proxy shall support the invocation of Com callbacks from the Host Software Cluster in context of the Applicative Software Cluster .

requirement SWS_SwCluC_02607 [SWS_SwCluC_02607] 📄 PDF

⌊ DRAFT g The Com High Proxy shall provide the symbolic name values for the ComSignal s, for Com users in the Applicative Software Cluster .

requirement SWS_SwCluC_02608 [SWS_SwCluC_02608] 📄 PDF

⌊ DRAFT g The Com High Proxy shall provide the symbolic name values for the ComSignalGroup s resp. ComGroupSignal s, for Com users in the Applicative Software Cluster .

requirement SWS_SwCluC_02609 [SWS_SwCluC_02609] 📄 PDF

⌊ DRAFT g The Com High Proxy shall provide the functions for transmission requests of ComSignal s and ComSignalGroup s • Com_SendSignal • Com_SendDynSignal • Com_SendSignalGroup • Com_SendSignalGroupArray • Com_SendSignalWithMetaData • Com_SendDynSignalWithMetaData • Com_SendSignalGroupWithMetaData • Com_SendSignalGroupArrayWithMetaData required by the Com users in the Applicative Software Cluster .

requirement SWS_SwCluC_02610 [SWS_SwCluC_02610] 📄 PDF

⌊ DRAFT g The Com High Proxy shall provide the functions for reception requests of a ComSignal and ComSignalGroup • Com_ReceiveSignal • Com_ReceiveDynSignal • Com_ReceiveSignalGroup • Com_ReceiveSignalGroupArray • Com_ReceiveSignalWithMetaData • Com_ReceiveDynSignalWithMetaData • Com_ReceiveSignalGroupWithMetaData • Com_ReceiveSignalGroupArrayWithMetaData required by the Com users in the Applicative Software Cluster

requirement SWS_SwCluC_02611 [SWS_SwCluC_02611] 📄 PDF

⌊ DRAFT g The Com High Proxy shall provide the functions for invalidation requests of a ComSignal and ComSignalGroup • Com_InvalidateSignal • Com_InvalidateSignalGroup required by the Com users in the Applicative Software Cluster

requirement SWS_SwCluC_02612 [SWS_SwCluC_02612] 📄 PDF

⌊ DRAFT g If the Com High Proxy is not connected to the Com Low Proxy , the functions w.r.t transmission requests of ComSignal s and Com- SignalGroup s • Com_SendSignal • Com_SendDynSignal • Com_SendSignalGroup • Com_SendSignalGroupArray • Com_SendSignalWithMetaData • Com_SendDynSignalWithMetaData • Com_SendSignalGroupWithMetaData • Com_SendSignalGroupArrayWithMetaData of the Com High Proxy shall return COM_SERVICE_NOT_AVAILABLE .

requirement SWS_SwCluC_02613 [SWS_SwCluC_02613] 📄 PDF

⌊ DRAFT g If the Com High Proxy is not connected to the Com Low Proxy , the functions w.r.t reception requests of ComSignal s and ComSig- nalGroup s • Com_ReceiveSignal • Com_ReceiveDynSignal • Com_ReceiveSignalGroup • Com_ReceiveSignalGroupArray • Com_ReceiveSignalWithMetaData • Com_ReceiveDynSignalWithMetaData • Com_ReceiveSignalGroupWithMetaData • Com_ReceiveSignalGroupArrayWithMetaData • Com_ReceiveSignalWithMetaData • Com_ReceiveDynSignalWithMetaData of the Com High Proxy shall return COM_SERVICE_NOT_AVAILABLE .

requirement SWS_SwCluC_02614 [SWS_SwCluC_02614] 📄 PDF

⌊ DRAFT g If the Com High Proxy is not connected to the Com Low Proxy , the functions w.r.t invalidation requests of ComSignal s and Com- SignalGroup s • Com_InvalidateSignal • Com_InvalidateSignalGroup of the Com High Proxy shall return COM_SERVICE_NOT_AVAILABLE .

requirement SWS_SwCluC_02615 [SWS_SwCluC_02615] 📄 PDF

⌊ DRAFT g The Com High Proxy shall provide the functions for transmission request of a signal(group)s, according to [SWS_SwCluC_02609], once per configured SwCluCComProxyBaseSocket . At the EcucPartition where the SwCluCNativeBswApi is set to true , For all other SwCluCComProxyBas- eSocket instances, the Mip Com is replaced by Com_<EcucPartition.Short- Name> .

requirement SWS_SwCluC_02616 [SWS_SwCluC_02616] 📄 PDF

⌊ DRAFT g The Com High Proxy shall provide the functions for reception request of a signal(group)s, according to [SWS_SwCluC_02610], once per configured SwCluCComProxyBaseSocket . At the EcucPartition where the SwCluCNativeBswApi is set to true , the API is provided with the original Mip Com . For all the other SwCluCComProxyBaseSocket instances, the Mip Com is replaced by Com_<EcucPartition.ShortName> .

requirement SWS_SwCluC_02617 [SWS_SwCluC_02617] 📄 PDF

⌊ DRAFT g The Com High Proxy shall provide the functions for invalidation request of a signal(group)s, according to [SWS_SwCluC_02611], once per configured SwCluCComProxyBaseSocket . At the EcucPartition where the SwCluCNativeBswApi is set to true , the API is provided with the original Mip Com . For all the other SwCluCComProxyBaseSocket instances, the Mip Com is replaced by Com_<EcucPartition.ShortName> .

requirement SWS_SwCluC_02618 [SWS_SwCluC_02618] 📄 PDF

⌊ DRAFT g The Com High Proxy shall support the optional <ComUser_CbkRxAck> notification callback configured via the ComUserCallback- Name (See [ECUC_Com_10036]) parameter where the ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_RX_ACK .

requirement SWS_SwCluC_02619 [SWS_SwCluC_02619] 📄 PDF

⌊ DRAFT g The Com High Proxy shall support the optional invalid <ComUser_CbkInv> notification callback configured via the ComUserCall- backName (See [ECUC_Com_10036]) where the ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_RX_INV .

requirement SWS_SwCluC_02620 [SWS_SwCluC_02620] 📄 PDF

⌊ DRAFT g The Com High Proxy shall support the optional <ComUser_CbkRxTOut> timeout notification callback configured via the ComUser- CallbackName (See [ECUC_Com_10036]) where the ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_RX_TOUT .

requirement SWS_SwCluC_02621 [SWS_SwCluC_02621] 📄 PDF

⌊ DRAFT g The Com High Proxy shall support the optional <ComUser_CbkTxAck> notification callback configured via the ComUserCallback- Name (See [ECUC_Com_10036]) where the ComUserCallbackType (See [ECUC_- Com_10034]) is set to COM_TX_ACK .

requirement SWS_SwCluC_02622 [SWS_SwCluC_02622] 📄 PDF

⌊ DRAFT g The Com High Proxy shall support the optional <ComUser_CbkTxErr> error notification callback configured via the ComUserCall- backName (See [ECUC_Com_10036]) where the ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_TX_ERR .

requirement SWS_SwCluC_02623 [SWS_SwCluC_02623] 📄 PDF

⌊ DRAFT g The Com High Proxy shall support the optional <ComUser_CbkTxTOut> timeout notification callback configured via the ComUser- CallbackName (See [ECUC_Com_10036]) where the ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_TX_TOUT .

requirement SWS_SwCluC_02624 [SWS_SwCluC_02624] 📄 PDF

⌊ DRAFT g The Com Low Proxy shall provide the header file SwCluC_ComProxy_Cbk.h .

requirement SWS_SwCluC_02625 [SWS_SwCluC_02625] 📄 PDF

⌊ DRAFT g The Com Low Proxy shall provide the en- try function for transmission, reception and invalidation requests of ComSig- nal(Group)s, according to [SWS_SwCluC_02609], [SWS_SwCluC_02610] and [SWS_SwCluC_02611], once per configured SwCluCComProxyBaseSocket , at the EcucPartition configured by SwCluCComProxyBaseSocket . SwCluCProxyE- cucPartitionRef . In case the SwCluCComProxyUsedSatelliteRef is set, the EcucPartition shall be changed, before the Com API is called.

requirement SWS_SwCluC_02626 [SWS_SwCluC_02626] 📄 PDF

⌊ DRAFT g The Com Low Proxy shall provide for each SwCluCComProxyBaseSocket a SwCluC_ComProxy_Init API, to initialize the Com High Proxy of an Applicative Software Cluster .

requirement SWS_SwCluC_02627 [SWS_SwCluC_02627] 📄 PDF

⌊ DRAFT g The Com Low Proxy shall provide an instance of all SwCluC_ComProxy_CbkRxAck notification callbacks, configured via the Co- mUserCallbackName (See [ECUC_Com_10036]) parameter, with the ComUser- CallbackType (See [ECUC_Com_10034]) set to COM_RX_ACK .

requirement SWS_SwCluC_02628 [SWS_SwCluC_02628] 📄 PDF

⌊ DRAFT g The Com Low Proxy shall provide an instance of all SwCluC_ComProxy_COMCbkInv notification callbacks, configured on each Com- Signal(Group) via the ComUserCallbackName (See [ECUC_Com_10036]) parame- ter, with the ComUserCallbackType (See [ECUC_Com_10034]) set to COM_RX_- INV .

requirement SWS_SwCluC_02629 [SWS_SwCluC_02629] 📄 PDF

⌊ DRAFT g The Com Low Proxy shall provide an instance of all SwCluC_ComProxy_COMCbkRxTOut timeout notification callbacks configured on each ComSignal(Group), via the ComUserCallbackName (See [ECUC_Com_- 10036]), with the ComUserCallbackType (See [ECUC_Com_10034]) set to COM_- RX_TOUT .

requirement SWS_SwCluC_02630 [SWS_SwCluC_02630] 📄 PDF

⌊ DRAFT g The Com High Proxy shall provide an instance of all <ComUser_CbkTxAck> notification callbacks, configured via the ComUser- CallbackName (See [ECUC_Com_10036]), with the ComUserCallbackType (See [ECUC_Com_10034]) set to COM_TX_ACK .

requirement SWS_SwCluC_02631 [SWS_SwCluC_02631] 📄 PDF

⌊ DRAFT g The Com High Proxy shall provide an instance of all <ComUser_CbkTxErr> notification callbacks, configured via the ComUser- CallbackName (See [ECUC_Com_10036]), with the ComUserCallbackType (See [ECUC_Com_10034]) set to COM_TX_ERR .

requirement SWS_SwCluC_02632 [SWS_SwCluC_02632] 📄 PDF

⌊ DRAFT g The Com High Proxy shall provide an instance of all <ComUser_CbkTxTOut> notification callbacks, configured via the ComUser- CallbackName (See [ECUC_Com_10036]), with the ComUserCallbackType (See [ECUC_Com_10034]) set to COM_TX_TOUT .

requirement SWS_SwCluC_02633 [SWS_SwCluC_02633] 📄 PDF

⌊ DRAFT g The notification callback instances accord- ing to [SWS_SwCluC_02626], [SWS_SwCluC_02627], [SWS_SwCluC_02628], [SWS_SwCluC_02629], [SWS_SwCluC_02630], [SWS_SwCluC_02631] and [SWS_SwCluC_02632] are provided • at the EcucPartition of the SwCluCComProxyBaseSocket referenced by the SwCluCComProxyBaseSocket - via SwCluCComProxyUsedSatel- liteRef . In this case, the EcucPartition shall be changed, before the call- back in the High Proxy is called.

requirement SWS_SwCluC_02634 [SWS_SwCluC_02634] 📄 PDF

⌊ DRAFT g If the Com Low Proxy is not connected to the Com High Proxy , the callback functions • SwCluC_ComProxy_CbkRxAck • SwCluC_ComProxy_COMCbkInv • SwCluC_ComProxy_COMCbkRxTOut • SwCluC_ComProxy_COMCbkTAck • SwCluC_ComProxy_COMCbkTErr • SwCluC_ComProxy_COMCbkTxTOut of the Com Low Proxy shall return shall return without effect.

requirement SWS_SwCluC_02636 [SWS_SwCluC_02636] 📄 PDF

⌊ DRAFT g If the development error detection is enabled for the Com High Proxy , the APIs • Com_SendSignal • Com_SendDynSignal • Com_SendSignalGroup • Com_SendSignalGroupArray • Com_SendSignalWithMetaData • Com_SendDynSignalWithMetaData • Com_SendSignalGroupWithMetaData • Com_SendSignalGroupArrayWithMetaData • Com_ReceiveSignal • Com_ReceiveDynSignal • Com_ReceiveSignalGroup • Com_ReceiveSignalGroupArray • Com_ReceiveSignalWithMetaData • Com_ReceiveDynSignalWithMetaData • Com_ReceiveSignalGroupWithMetaData • Com_ReceiveSignalGroupArrayWithMetaData • Com_ReceiveSignalWithMetaData • Com_ReceiveDynSignalWithMetaData • Com_InvalidateSignal • Com_InvalidateSignalGroup shall report the DET error COM_E_UNINIT , in case the Com High Proxy is not ini- tialized.

requirement SWS_SwCluC_02637 [SWS_SwCluC_02637] 📄 PDF

⌊ DRAFT g If the development error detection is enabled for the Com High Proxy , the APIs • Com_SendSignal • Com_SendDynSignal • Com_SendSignalGroup • Com_SendSignalGroupArray • Com_SendSignalWithMetaData • Com_SendDynSignalWithMetaData • Com_SendSignalGroupWithMetaData • Com_SendSignalGroupArrayWithMetaData • Com_ReceiveSignal • Com_ReceiveDynSignal • Com_ReceiveSignalGroup • Com_ReceiveSignalGroupArray • Com_ReceiveSignalWithMetaData • Com_ReceiveDynSignalWithMetaData • Com_ReceiveSignalGroupWithMetaData • Com_ReceiveSignalGroupArrayWithMetaData • Com_ReceiveSignalWithMetaData • Com_ReceiveDynSignalWithMetaData • Com_InvalidateSignal • Com_InvalidateSignalGroup shall, when invoked with a NULL_PTR , report the DET error COM_E_PARAM_POINTER .

requirement SWS_SwCluC_02638 [SWS_SwCluC_02638] 📄 PDF

⌊ DRAFT g If the development error detection is enabled for the Com High Proxy , the APIs • Com_SendSignal • Com_SendDynSignal • Com_SendSignalGroup • Com_SendSignalGroupArray • Com_SendSignalWithMetaData • Com_SendDynSignalWithMetaData • Com_SendSignalGroupWithMetaData • Com_SendSignalGroupArrayWithMetaData • Com_ReceiveSignal • Com_ReceiveDynSignal • Com_ReceiveSignalGroup • Com_ReceiveSignalGroupArray • Com_ReceiveSignalWithMetaData • Com_ReceiveDynSignalWithMetaData • Com_ReceiveSignalGroupWithMetaData • Com_ReceiveSignalGroupArrayWithMetaData • Com_ReceiveSignalWithMetaData • Com_ReceiveDynSignalWithMetaData • Com_InvalidateSignal • Com_InvalidateSignalGroup shall, when invoked with a wrong parameter, report the DET error COM_E_PARAM .

requirement SWS_SwCluC_02639 [SWS_SwCluC_02639] 📄 PDF

⌊ DRAFT g If the <ComUser_CbkRxAck> notification call- back is configured in the Com High Proxy (via the ComUserCallbackName (See [ECUC_Com_10036]), where the respective ComUserCallbackType (See [ECUC_- Com_10034]) is set to COM_RX_ACK ) the configured <ComUser_CbkRxAck> callback shall be invoked when the associated SwCluC_ComProxy_CbkRxAck instance of the Com Low Proxy is called.

requirement SWS_SwCluC_02640 [SWS_SwCluC_02640] 📄 PDF

⌊ DRAFT g If the invalid <ComUser_CbkInv> notification call- back is configured in the Com High Proxy (via the ComUserCallbackName (See [ECUC_Com_10036]), where the respective ComUserCallbackType (See [ECUC_- Com_10034]) is set to COM_RX_INV ) the configured <ComUser_CbkInv> callback shall be invoked when the associated SwCluC_ComProxy_CbkInv instance of the Com Low Proxy is called.

requirement SWS_SwCluC_02642 [SWS_SwCluC_02642] 📄 PDF

⌊ DRAFT g If the <ComUser_CbkRxTOut> notification call- back is configured in the Com High Proxy (via the ComUserCallbackName (See [ECUC_Com_10036]), where the respective ComUserCallbackType (See [ECUC_- Com_10034]) is set to COM_RX_TOUT ) the configured <ComUser_CbkRxTOut> call- back shall be invoked when the associated SwCluC_ComProxy_CbkRxTOut instance of the Com Low Proxy is called.

requirement SWS_SwCluC_02643 [SWS_SwCluC_02643] 📄 PDF

⌊ DRAFT g If the <ComUser_CbkTxAck> notification call- back is configured in the Com High Proxy (via the ComUserCallbackName (See [ECUC_Com_10036]), where the respective ComUserCallbackType (See [ECUC_- Com_10034]) is set to COM_TX_ACK ) the configured <ComUser_CbkTxAck> callback shall be invoked when the associated instance of the Com Low Proxy is called.

requirement SWS_SwCluC_02644 [SWS_SwCluC_02644] 📄 PDF

⌊ DRAFT g If the <ComUser_CbkTxErr> notification call- back is configured in the Com High Proxy (via the ComUserCallbackName (See [ECUC_Com_10036]), where the respective ComUserCallbackType (See [ECUC_- Com_10034]) is set to COM_TX_ERR ) the configured <ComUser_CbkTxErr> callback shall be invoked when the associated SwCluC_ComProxy_COMCbkTErr instance of the Com Low Proxy is called.

requirement SWS_SwCluC_02645 [SWS_SwCluC_02645] 📄 PDF

⌊ DRAFT g If the <ComUser_CbkTxTOut> timeout notifica- tion callback is configured in the Com High Proxy (via the ComUserCallback- Name (See [ECUC_Com_10036]), where the respective ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_TX_TOUT ) the configured <ComUser_Cbk- TxTOut> callback shall be invoked when the associated SwCluC_ComProxy_COM- CbkTxTOut instance of the Com Low Proxy is called.

requirement SWS_SwCluC_02646 [SWS_SwCluC_02646] 📄 PDF

⌊ DRAFT g The Com Low Proxy shall create for each SwCluCComProxyBaseSocket a provided resource entry in the Binary Manifest .

requirement SWS_SwCluC_02647 [SWS_SwCluC_02647] 📄 PDF

⌊ DRAFT g The Com High Proxy shall create for each SwCluCComProxyBaseSocket a required resource entry in the Binary Mani- fest .

requirement SWS_SwCluC_02648 [SWS_SwCluC_02648] 📄 PDF

⌊ DRAFT g The function Com_ReceiveSignalGroup pro- vided by the Com High Proxy shall • invoke the Com_ReceiveSignalGroupArray API to fetch the data as uint8 array representation, AND • perform a transformation on the uint8 array to output the original data which will be passed to the RTE in the Applicative Software Cluster .

requirement SWS_SwCluC_02649 [SWS_SwCluC_02649] 📄 PDF

⌊ DRAFT g The function Com_ReceiveSignalGroupWith- MetaData provided by the Com High Proxy shall • invoke the Com_ReceiveSignalGroupArrayWithMetaData API to fetch the data as uint8 array representation, AND • perform a transformation on the uint8 array to output the original data which will be passed to the RTE in the Applicative Software Cluster .

requirement SWS_SwCluC_02650 [SWS_SwCluC_02650] 📄 PDF

⌊ DRAFT g Development Error Types of SwCluC Com Proxy The development error types defined for the SwCluC Com Proxy are listed in table Table 7.5.

requirement SWS_SwCluC_02651 [SWS_SwCluC_02651] 📄 PDF

⌊ DRAFT g The Com Low Proxy shall provide in its Co- mUserModuleCnf containers the ComUserCbkHandleId values for the configured ComUserSignal s and ComUserSignalGroup s, according to its internal implemen- tation requirements (e.g. to address the Com Low Proxy 's data structures).

requirement SWS_SwCluC_02652 [SWS_SwCluC_02652] 📄 PDF

⌊ DRAFT g The Com Proxy shall support that the ComUser- CbkHandleId of ComUserSignal s resp. ComUserSignalGroup s configured in Com users of the Applicative Software Cluster can change, without recon- figuration or rebuild of the Host Software Cluster .

requirement SWS_SwCluC_02661 [SWS_SwCluC_02661] 📄 PDF

⌊ DRAFT g The Com base socket shall implement the con- nection of the related callback functions • SwCluC_ComProxy_CbkRxAck • SwCluC_ComProxy_COMCbkInv • SwCluC_ComProxy_COMCbkRxTOut • SwCluC_ComProxy_COMCbkTAck • SwCluC_ComProxy_COMCbkTErr • SwCluC_ComProxy_COMCbkTxTOut

requirement SWS_SwCluC_02662 [SWS_SwCluC_02662] 📄 PDF

⌊ DRAFT g The Com High Proxy shall create for each Com- Signal and ComSignalGroup configured in Com a required resource entry in the Binary Manifest . Where the ComMainFunctionRx . ComMainRxPartitionRef and ComMainFunctionTx . ComMainTxPartitionRef are relevant to denote the EcucPartition .

requirement SWS_SwCluC_02663 [SWS_SwCluC_02663] 📄 PDF

⌊ DRAFT g The Com Low Proxy shall create for each Co- mUserSignal and ComUserSignalGroup configured in a SwCluCComProxyBas- eSocket . ComUserModuleCnf a provided resource entry in the Binary Mani- fest .

requirement SWS_SwCluC_02665 [SWS_SwCluC_02665] 📄 PDF

[SWS_SwCluC_02665] Serialization in Com_SendSignalGroup Status: DRAFT Upstream requirements: SRS_SwCluC_00211, SRS_SwCluC_00202 ⌈The function Com_SendSignalGroup provided by the Com High Proxy shall • perform a transformation from the original data passed from the RTE in Appli- cation Software Cluster to the uint8 array, AND • invoke the Com_SendSignalGroupArray API to send the data as uint8 array representation. ⌋

requirement SWS_SwCluC_02666 [SWS_SwCluC_02666] 📄 PDF

[SWS_SwCluC_02666] Serialization in Com_SendSignalGroupWithMetaData Status: DRAFT Upstream requirements: SRS_SwCluC_00211, SRS_SwCluC_00202 ⌈The function Com_SendSignalGroupWithMetaData provided by the Com High Proxy shall • perform a transformation from the original data passed from the RTE in Appli- cation Software Cluster to the uint8 array, AND • invoke the Com_SendSignalGroupArrayWithMetaData API to send the data as uint8 array representation. ⌋ module

requirement SWS_SwCluC_02669 [SWS_SwCluC_02669] 📄 PDF

[SWS_SwCluC_02669] Guard value calculation for ComSignal Upstream requirements: SRS_SwCluC_00211 ⌈The Com Proxy shall use the following attributes from an ComSignal for the guard value calculation • ComSignalEndianness • ComSignalType module • ComSignalLength • ComBitSize ⌋

requirement SWS_SwCluC_02670 [SWS_SwCluC_02670] 📄 PDF

[SWS_SwCluC_02670] Guard value calculation for ComSignalGroup Upstream requirements: SRS_SwCluC_00211 ⌈The Com Proxy shall use the following attributes from an ComSignalGroup for the guard value calculation • ComSignalGroupArrayAccess • From any ComGroupSignal of a ComSignalGroup – ComSignalEndianness – ComSignalType – ComSignalLength – ComBitSize ⌋

requirement SWS_SwCluC_02701 [SWS_SwCluC_02701] 📄 PDF

⌊ DRAFT g The Dem High Proxy shall provide the symbolic name values of DemEventId s for Diagnostic Monitor s in the Applicative Software Cluster .

requirement SWS_SwCluC_02702 [SWS_SwCluC_02702] 📄 PDF

⌊ DRAFT g The Dem High Proxy shall provide the functions for Diagnostic Monitor s reporting Diagnostic Event s • Dem_ClearPrestoredFreezeFrame • Dem_PrestoreFreezeFrame • Dem_ResetEventDebounceStatus • Dem_ResetEventStatus • Dem_SetEventDisabled • Dem_SetEventStatus in the Applicative Software Cluster .

requirement SWS_SwCluC_02703 [SWS_SwCluC_02703] 📄 PDF

⌊ DRAFT g The Dem High Proxy shall provide the functions for Diagnostic Info of Diagnostic Event s • Dem_GetDTCOfEvent • Dem_GetDebouncingOfEvent • Dem_GetEventAvailable • Dem_GetEventExtendedDataRecordEx • Dem_GetEventFreezeFrameDataEx • Dem_GetEventUdsStatus • Dem_GetFaultDetectionCounter • Dem_GetMonitorStatus in the Applicative Software Cluster .

requirement SWS_SwCluC_02704 [SWS_SwCluC_02704] 📄 PDF

⌊ DRAFT g The Dem High Proxy shall support the optional configuration of a <Module>_DemGetFaultDetectionCounter<ForEvent> call- back, according to [ECUC_Dem_00630] and [ECUC_Dem_00631].

requirement SWS_SwCluC_02705 [SWS_SwCluC_02705] 📄 PDF

⌊ DRAFT g The Dem High Proxy shall support the optional configuration of a <Module>_DemInitMonitorFor<EventName> callback, accord- ing to [ECUC_Dem_00632] and [ECUC_Dem_00601].

requirement SWS_SwCluC_02706 [SWS_SwCluC_02706] 📄 PDF

⌊ DRAFT g The Dem High Proxy shall support the optional configuration of a <Module>_DemTriggerOnMonitorStatus callback, according to [ECUC_Dem_00936] and [ECUC_Dem_00937].

requirement SWS_SwCluC_02707 [SWS_SwCluC_02707] 📄 PDF

⌊ DRAFT g The Dem High Proxy shall support the optional configuration of a <Module>_DemClearEventAllowed<ForCondition> callback, according to [ECUC_Dem_00607] and [ECUC_Dem_00609].

requirement SWS_SwCluC_02708 [SWS_SwCluC_02708] 📄 PDF

⌊ DRAFT g The Dem High Proxy shall create one partition spe- cific Service Software Component per configured EcucPartition , with the name Dem_<EcucPartition shortName> .

requirement SWS_SwCluC_02709 [SWS_SwCluC_02709] 📄 PDF

⌊ DRAFT g The Dem High Proxy shall provide the ports belonging to a specific interface connection at the partition specific Service Soft- ware Component, to which the using SwComponentPrototype is mapped.

requirement SWS_SwCluC_02710 [SWS_SwCluC_02710] 📄 PDF

⌊ DRAFT g In case a Diagnostic Event configured in the Dem High Proxy is not connected to any Dem Low Proxy , the functions / opera- tions • Dem_ClearPrestoredFreezeFrame / ClearPrestoredFreezeFrame • Dem_PrestoreFreezeFrame / PrestoreFreezeFrame • Dem_ResetEventDebounceStatus / ResetEventDebounceStatus • Dem_ResetEventStatus / ResetEventStatus • Dem_SetEventDisabled / SetEventDisabled • Dem_SetEventStatus / SetEventStatus • Dem_SetEventStatusWithMonitorData / SetEventStatusWithMoni- torData • Dem_SetWIRStatus / SetWIRStatus of the Dem High Proxy shall return E_NOT_OK .

requirement SWS_SwCluC_02711 [SWS_SwCluC_02711] 📄 PDF

⌊ DRAFT g In case a Diagnostic Event configured in the Dem High Proxy is not connected to any Dem Low Proxy , the Dem High Proxy shall return DEM_E_NO_DTC_AVAILABLE and the value 0 for the DTCOfEvent ar- gument, when Dem_GetDTCOfEvent / GetDTCOfEvent is called.

requirement SWS_SwCluC_02712 [SWS_SwCluC_02712] 📄 PDF

⌊ DRAFT g In case a Diagnostic Event configured in the Dem High Proxy is not connected to any Dem Low Proxy , the Dem High Proxy shall return E_NOT_OK and the value 0 for the DebouncingState argument, when Dem_GetDebouncingOfEvent / GetDebouncingOfEvent is called.

requirement SWS_SwCluC_02713 [SWS_SwCluC_02713] 📄 PDF

⌊ DRAFT g In case a Diagnostic Event configured in the Dem High Proxy is not connected to any Dem Low Proxy , the Dem High Proxy shall return E_NOT_OK and the value FALSE for the AvailableStatus argu- ment, when Dem_GetEventAvailable / GetEventAvailable is called.

requirement SWS_SwCluC_02714 [SWS_SwCluC_02714] 📄 PDF

⌊ DRAFT g In case a Diagnostic Event configured in the Dem High Proxy is not connected to any Dem Low Proxy , the Dem High Proxy shall return E_NOT_OK and the value 0 for the Bufsize argument, when Dem_GetEventExtendedDataRecordEx / GetEventExtendedDataRecordEx is called. The Bufsize argument stays unmodified.

requirement SWS_SwCluC_02715 [SWS_SwCluC_02715] 📄 PDF

⌊ DRAFT g In case a Diagnostic Event configured in the Dem High Proxy is not connected to any Dem Low Proxy , the Dem High Proxy shall return E_NOT_OK and the value 0 for the Bufsize argument, when Dem_- GetEventFreezeFrameDataEx / GetEventFreezeFrameDataEx is called. The Bufsize argument stays unmodified.

requirement SWS_SwCluC_02716 [SWS_SwCluC_02716] 📄 PDF

⌊ DRAFT g In case a Diagnostic Event configured in the Dem High Proxy is not connected to any Dem Low Proxy , the Dem High Proxy shall return E_NOT_OK and the value 0 for the UDSStatusByte argu- ment, when Dem_GetEventUdsStatus / GetEventUdsStatus is called.

requirement SWS_SwCluC_02717 [SWS_SwCluC_02717] 📄 PDF

⌊ DRAFT g In case a Diagnostic Event configured in the Dem High Proxy is not connected to any Dem Low Proxy , the Dem High Proxy shall return E_NOT_OK and the value 0 for the FaultDetectionCounter argu- ment, when Dem_GetFaultDetectionCounter / GetFaultDetectionCounter is called.

requirement SWS_SwCluC_02718 [SWS_SwCluC_02718] 📄 PDF

⌊ DRAFT g In case a Diagnostic Event configured in the Dem High Proxy is not connected to any Dem Low Proxy , the Dem High Proxy shall return E_NOT_OK and the value 0 for the MonitorStatus argument, when Dem_GetMonitorStatus / GetMonitorStatus is called.

requirement SWS_SwCluC_02719 [SWS_SwCluC_02719] 📄 PDF

⌊ DRAFT g The Dem Low Proxy shall provide the entry func- tions for Diagnostic Event reporting and info, according to [SWS_SwCluC_02702] and [SWS_SwCluC_02702], once per configured SwCluCDemProxyBaseSocket at the EcucPartition configured by SwCluCDemProxyBaseSocket . SwCluCProx- yEcucPartitionRef . In case the SwCluCDemProxyUsedSatelliteRef is set, the EcucPartition shall be changed, before the Dem API is called.

requirement SWS_SwCluC_02723 [SWS_SwCluC_02723] 📄 PDF

⌊ DRAFT g The Dem High Proxy shall provide the ports be- longing to a specific Diagnostic Event • Event_{Name} • EventStatus_{Name} at the partition specific Service Software Component, to which the using SwCompo- nentPrototype is mapped.

requirement SWS_SwCluC_02724 [SWS_SwCluC_02724] 📄 PDF

⌊ DRAFT g The Dem High Proxy shall provide the DiagnosticMonitor_MonitorData_{Name} port for each specific Di- agnostic Event , where DemEventReportingType is set to STAN- DARD_REPORTING_WITH_MONITOR_DATA at the partition specific Service Software Component, to which the using SwComponentPrototype is mapped.

requirement SWS_SwCluC_02725 [SWS_SwCluC_02725] 📄 PDF

⌊ DRAFT g The Dem High Proxy shall provide the CB- ClrEvt_{Name} port for each specific Diagnostic Event , where DemCallback- ClearEventAllowed is configured at the partition specific Service Software Com- ponent, to which the using SwComponentPrototype is mapped.

requirement SWS_SwCluC_02726 [SWS_SwCluC_02726] 📄 PDF

⌊ DRAFT g The Dem High Proxy shall provide the CB- FaultDetectCtr_{Name} port for each specific Diagnostic Event , where Dem- CallbackGetFDC is configured at the partition specific Service Software Component, to which the using SwComponentPrototype is mapped.

requirement SWS_SwCluC_02727 [SWS_SwCluC_02727] 📄 PDF

⌊ DRAFT g The Dem High Proxy shall provide the CBInitEvt_{Name} port for each specific Diagnostic Event , where DemCall- backInitMForE is configured at the partition specific Service Software Component, to which the using SwComponentPrototype is mapped.

requirement SWS_SwCluC_02728 [SWS_SwCluC_02728] 📄 PDF

⌊ DRAFT g The Dem Low Proxy shall provide, for each SwCluCDemProxyBaseSocket , a SwCluC_DemProxy_Init API, to initialize the Dem High Proxy of an Applicative Software Cluster . This shall be one element of the service resource SwCluCDemProxyBaseSocket .

requirement SWS_SwCluC_02729 [SWS_SwCluC_02729] 📄 PDF

⌊ DRAFT g The Dem Low Proxy shall provide an instance of a <Module>_DemGetFaultDetectionCounter<ForEvent> per configured Di- agnostic Event ( SwCluCDemProxyDiagnosticEvent ), in the Dem Low Proxy , if DemDebounceAlgorithmClass is set to DebounceMonitorInternal.

requirement SWS_SwCluC_02730 [SWS_SwCluC_02730] 📄 PDF

⌊ DRAFT g The Dem Low Proxy shall provide an instance of a <Module>_DemInitMonitorFor<EventName> per configured Diagnostic Event ( SwCluCDemProxyDiagnosticEvent ), in the Dem Low Proxy .

requirement SWS_SwCluC_02731 [SWS_SwCluC_02731] 📄 PDF

⌊ DRAFT g The Dem Low Proxy shall provide an instance of a <Module>_DemTriggerOnMonitorStatus per configured Diagnostic Event ( SwCluCDemProxyDiagnosticEvent ), in the Dem Low Proxy .

requirement SWS_SwCluC_02732 [SWS_SwCluC_02732] 📄 PDF

⌊ DRAFT g The Dem Low Proxy shall provide an instance of a <Module>_DemClearEventAllowed<ForCondition> per configured Diag- nostic Event ( SwCluCDemProxyDiagnosticEvent ), in the Dem Low Proxy .

requirement SWS_SwCluC_02733 [SWS_SwCluC_02733] 📄 PDF

⌊ DRAFT g The Dem Low Proxy implementation shall de- scribe the Diagnostic Events s provided to Dem High Proxy s via Diagnos- ticEventNeeds and DiagnosticEventInfoNeeds , derived from the CpSoft- wareClusterServiceResource . resourceNeeds .

requirement SWS_SwCluC_02734 [SWS_SwCluC_02734] 📄 PDF

⌊ DRAFT g In case a Diagnostic Event configured in the Dem Low Proxy is not connected to any Dem High Proxy , the callback functions • <Module>_DemGetFaultDetectionCounter<ForEvent> • <Module>_DemClearEventAllowed<ForCondition> of the Dem High Proxy shall return E_NOT_OK .

requirement SWS_SwCluC_02735 [SWS_SwCluC_02735] 📄 PDF

⌊ DRAFT g In case a Diagnostic Event configured in the Dem Low Proxy is not connected to any Dem High Proxy , the callback functions • <Module>_DemInitMonitorFor<EventName> • <Module>_DemTriggerOnMonitorStatus of the Dem High Proxy shall return E_OK .

requirement SWS_SwCluC_02736 [SWS_SwCluC_02736] 📄 PDF

⌊ DRAFT g The Dem High Proxy shall provide the function Dem_SetEventStatusWithMonitorData , for Diagnostic Monitor s reporting Diagnostic Event s with monitor data in the Applicative Software Clus- ter .

requirement SWS_SwCluC_02737 [SWS_SwCluC_02737] 📄 PDF

⌊ DRAFT g The Dem High Proxy shall support the optional configuration of a <Module>_DemTriggerOnEventData callback, according to [ECUC_Dem_00606] and [ECUC_Dem_00608].

requirement SWS_SwCluC_02738 [SWS_SwCluC_02738] 📄 PDF

⌊ DRAFT g The Dem High Proxy shall support the optional configuration of a <Module>_DemTriggerOnEventUdsStatus callback, according to [ECUC_Dem_00628] and [ECUC_Dem_00629].

requirement SWS_SwCluC_02739 [SWS_SwCluC_02739] 📄 PDF

⌊ DRAFT g The Dem High Proxy shall provide the function Dem_SetWIRStatus , for Diagnostic Monitor s reporting Diagnostic Event s in the Applicative Software Cluster .

requirement SWS_SwCluC_02740 [SWS_SwCluC_02740] 📄 PDF

⌊ DRAFT g The Dem High Proxy shall provide the EventStatus_{Name} port for each specific Diagnostic Event at the partition specific Service Software Component, to which the using SwComponentPrototype is mapped.

requirement SWS_SwCluC_02741 [SWS_SwCluC_02741] 📄 PDF

⌊ DRAFT g The Dem High Proxy shall provide the CB- DataEvt_{Name} port for each specific Diagnostic Event , where DemCall- backEventDataChanged is configured at the partition specific Service Software Component, to which the using SwComponentPrototype is mapped.

requirement SWS_SwCluC_02742 [SWS_SwCluC_02742] 📄 PDF

⌊ DRAFT g The Dem High Proxy shall provide the CBEven- tUdsStatusChanged_{EventName}_{CallbackName} port for each specific Di- agnostic Event , where DemCallbackEventUdsStatusChanged is configured at the partition specific Service Software Component, to which the using SwComponent- Prototype is mapped.

requirement SWS_SwCluC_02743 [SWS_SwCluC_02743] 📄 PDF

⌊ DRAFT g The Dem High Proxy shall provide the CBMon- itorStatusChanged_{EventName}_{CallbackName} port for each specific Di- agnostic Event , where DemCallbackMonitorStatusChanged is configured at the partition specific Service Software Component, to which the using SwComponent- Prototype is mapped.

requirement SWS_SwCluC_02744 [SWS_SwCluC_02744] 📄 PDF

⌊ DRAFT g The Dem High Proxy shall create for each SwCluCDcmProxyBaseSocket a required resource entry in the Binary Mani- fest .

requirement SWS_SwCluC_02745 [SWS_SwCluC_02745] 📄 PDF

⌊ DRAFT g The Dem High Proxy shall create for each di- agnostic event proxy - configured via SwCluCDemProxyDiagnosticEvent container - a required resource entry in the Binary Manifest .

requirement SWS_SwCluC_02746 [SWS_SwCluC_02746] 📄 PDF

⌊ DRAFT g The Dem Low Proxy shall create, for each SwCluCDcmProxyBaseSocket , a provided resource entry in the Binary Mani- fest .

requirement SWS_SwCluC_02747 [SWS_SwCluC_02747] 📄 PDF

⌊ DRAFT g The Dem Low Proxy shall create for, each diag- nostic event proxy - configured via SwCluCDemProxyDiagnosticEvent con- tainer -, a provided resource entry in the Binary Manifest .

requirement SWS_SwCluC_02748 [SWS_SwCluC_02748] 📄 PDF

⌊ DRAFT g The Dem High Proxy code, and related AUTOSAR model descriptions, shall only be created, if the configuration param- eter SwCluCProxyGenerationDem is set to HIGH_PROXY .

requirement SWS_SwCluC_02749 [SWS_SwCluC_02749] 📄 PDF

⌊ DRAFT g The Dem Low Proxy code, and related AUTOSAR model descriptions, shall only be created, if the configuration param- eter SwCluCProxyGenerationDem is set to LOW_PROXY .

requirement SWS_SwCluC_02750 [SWS_SwCluC_02750] 📄 PDF

⌊ DRAFT g Development Error Types of SwCluC Dem Proxy The development error types defined for the SwCluC Dem Proxy are listed in table Table 7.8.

requirement SWS_SwCluC_02751 [SWS_SwCluC_02751] 📄 PDF

⌊ DRAFT g If development error detection is enabled for Dem High Proxy , the APIs • Dem_ClearPrestoredFreezeFrame • Dem_PrestoreFreezeFrame • Dem_ResetEventDebounceStatus • Dem_ResetEventStatus • Dem_SetEventDisabled • Dem_SetEventStatus • Dem_GetDTCOfEvent • Dem_GetDebouncingOfEvent • Dem_GetEventAvailable • Dem_GetEventExtendedDataRecordEx • Dem_GetEventFreezeFrameDataEx • Dem_GetEventUdsStatus • Dem_GetFaultDetectionCounter • Dem_GetMonitorStatus • Dem_SetEventStatusWithMonitorData • Dem_SetWIRStatus shall report the DET error DEM_E_UNINIT , when Dem High Proxy is not yet initial- ized.

requirement SWS_SwCluC_03000 [SWS_SwCluC_03000] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall implement a Cross Software Cluster Communication Plug-In according to document [9].

requirement SWS_SwCluC_03001 [SWS_SwCluC_03001] 📄 PDF

⌊ DRAFT g The Vendor Specific Module Definition (see document [10]) of the Software Cluster Connection shall provide a defi- nition of the container RteRipsPluginProps as a subContainer of the container SwCluCXcc with the shortName RteRipsPluginProps .

requirement SWS_SwCluC_03002 [SWS_SwCluC_03002] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall implement the RTE Implementation Plug-In functionality for a Communication Graph , if • a FlatInstanceDescriptor references the Communication Graph AND • and the rtePluginProps . associatedCrossSwClusterComRtePlugin ref- erences the RteRipsPluginProps container of this Cross Cluster Com- munication implementation.

requirement SWS_SwCluC_03003 [SWS_SwCluC_03003] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall put one Resource Entry for each associ- ated Communication Graph into the Binary Manifest .

requirement SWS_SwCluC_03004 [SWS_SwCluC_03004] 📄 PDF

⌊ DRAFT g The SwCluCBManifResourceRef of the Re- source Entry shall reference the CpSoftwareClusterCommunicationRe- source which is mapped by the PortElementToCommunicationResourceMap- ping to the Communication Graph .

requirement SWS_SwCluC_03005 [SWS_SwCluC_03005] 📄 PDF

⌊ DRAFT g The SwCluCBManifResourceGuardValue of the Resource Entry shall be calculated out of the following properties: • data range • resolution • physical meaning • encoding • structure in memory

requirement SWS_SwCluC_03006 [SWS_SwCluC_03006] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall provide one constant default parameter in- stance for each assigned Parameter Communication Graph , which contains NO PPortPrototype .

requirement SWS_SwCluC_03007 [SWS_SwCluC_03007] 📄 PDF

⌊ DRAFT g The default value instance shall be mapped to a CALPRM memory section, according to document [8].

requirement SWS_SwCluC_03008 [SWS_SwCluC_03008] 📄 PDF

⌊ DRAFT g The default value instance shall be initialized ac- cording to the ParameterRequireComSpec . initValue , in the RPortPrototype at the CompositionSwComponentType of the rootSoftwareComposition of the Ecu Extract .

requirement SWS_SwCluC_03009 [SWS_SwCluC_03009] 📄 PDF

⌊ DRAFT g If the corresponding resource in the Binary Man- ifest is connected, the Rte_Rips_Prm shall return the value of the connected pa- rameter.

requirement SWS_SwCluC_03010 [SWS_SwCluC_03010] 📄 PDF

⌊ DRAFT g If the corresponding resource in the Binary Man- ifest is NOT connected, the Rte_Rips_Prm shall return the value of the default pa- rameter instance of [SWS_SwCluC_03006].

requirement SWS_SwCluC_03011 [SWS_SwCluC_03011] 📄 PDF

⌊ DRAFT g For each assigned Parameter Communication Graph , which contains the PPortPrototype , the Cross Cluster Communica- tion of the Software Cluster Connection shall make the parameter in- stance , according to [SWS_Rte_80130], accessible for other Software Cluster s, via a Resource Entry in the Binary Manifest .

requirement SWS_SwCluC_03012 [SWS_SwCluC_03012] 📄 PDF

⌊ DRAFT g If the implementation of a Cross Cluster Com- munication requires some basic infrastructure from the Host Software Clus- ter , it shall use the means of the SwCluCXccBaseSocket configuration to link to the resource pool.

requirement SWS_SwCluC_03013 [SWS_SwCluC_03013] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall put one Resource Entry for each asso- ciated SwCluCXccBaseSocket into the Binary Manifest .

requirement SWS_SwCluC_03015 [SWS_SwCluC_03015] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication shall provide a Complex Driver Software Component on each EcucPartition where a mode switch port needs to be provided. This component is later called mode proxy component .

requirement SWS_SwCluC_03016 [SWS_SwCluC_03016] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication shall provide a provided mode switch port on each mode proxy component where a mode switch port needs to be provided.

requirement SWS_SwCluC_03017 [SWS_SwCluC_03017] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication shall provide the AssemblySwConnector s between the provided mode switch ports and the required mode switch ports at the software components requiring the mode.

requirement SWS_SwCluC_03018 [SWS_SwCluC_03018] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication shall provide a mode switch notification runnable with an OsTaskExecution- Event , for each mode on each partition where a mode switch notification is configured. The RunnableEntity shall define a ModeSwitchPoint .

requirement SWS_SwCluC_03019 [SWS_SwCluC_03019] 📄 PDF

⌊ DRAFT g When the mode switch notification runnable is executed, it shall write the actual on-transition value via Rte_Switch to the RTE.

requirement SWS_SwCluC_03022 [SWS_SwCluC_03022] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication shall sig- nal the current on-transition value to other Software Clusters , before the mode switch according to [SWS_Rte_02665] starts.

requirement SWS_SwCluC_03023 [SWS_SwCluC_03023] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication of the Host Software Cluster shall implement a mode manager for each mode which needs to be provided by an Applicative Software Cluster .

requirement SWS_SwCluC_03024 [SWS_SwCluC_03024] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication of the Host Software Cluster shall enqueue the current on-transition values sig- naled by Applicative Software Cluster , via the related mode manager . ([SWS_SwCluC_03023])

requirement SWS_SwCluC_03025 [SWS_SwCluC_03025] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication of the Host Software Cluster shall notify the Applicative Software Cluster , when a mode switch tasks starts.

requirement SWS_SwCluC_03026 [SWS_SwCluC_03026] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication of the Host Software Cluster shall notify the Cross Cluster Communication of the Applicative Software Cluster , when all mode switch tasks run to end.

requirement SWS_SwCluC_03027 [SWS_SwCluC_03027] 📄 PDF

⌊ DRAFT g In case the Applicative Software Cluster provides the mode, the Cross Cluster Communication of the Host Software Cluster shall notify the Cross Cluster Communication of the Applicative Software Cluster , when mode switch tasks run to end.

requirement SWS_SwCluC_03028 [SWS_SwCluC_03028] 📄 PDF

⌊ DRAFT g In case the Applicative Software Cluster provides the mode, the Cross Cluster Communication of the Applicative Software Cluster notifies the RTE via Rte_Rips_DequeueModeSwitch , when a mode switch task known by this RTE runs to end. The Cross Cluster Communi- cation has to guarantee that the last call of Rte_Rips_DequeueModeSwitch is not done before the last on-entry ExecutableEntity in the whole clustered system terminated.

requirement SWS_SwCluC_03029 [SWS_SwCluC_03029] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication shall provide a Complex Driver Software Component on each EcucPartition , where mode switch task are configured. This component is later called mode proxy com- ponent .

requirement SWS_SwCluC_03030 [SWS_SwCluC_03030] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication shall provide RunnableEntity s to detect the start and end of any mode switch task, which is related to mode communication cross Software Clusters .

requirement SWS_SwCluC_03031 [SWS_SwCluC_03031] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication shall provide the AssemblySwConnector s between the provided mode switch ports of the mode proxy component and the required mode switch ports at the soft- ware components requiring the mode, if the mode is required by the Host Software Cluster .

requirement SWS_SwCluC_03033 [SWS_SwCluC_03033] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall normalize the numerical values of attributes, before using them for the SwCluCBManifResourceGuardValue calculation, in such a way that compatible numerical values according to [TPS_GST_02501] result in the identical guard value.

requirement SWS_SwCluC_03034 [SWS_SwCluC_03034] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication shall use the following attributes for the SwCluCBManifResourceGuardValue calculation for a Data Communication Graph : • PPortPrototype . providedInterface • RPortPrototype . requiredInterface • CpSoftwareClusterCommunicationResource . comProps . sendIndica- tion – in case of SenderReceiverInterface  VariableDataPrototype . type  VariableDataPrototype . swDataDefProps  SenderReceiverInterface . invalidationPolicy . handleIn- valid (if existing for the VariableDataPrototype , else dontIn- validate applies) – in case of NvDataInterface  VariableDataPrototype . type  VariableDataPrototype . swDataDefProps – in case of ParameterInterface  ParameterDataPrototype . type  ParameterDataPrototype . swDataDefProps Additionally, attributes of VariableDataPrototype / ParameterDataPro- totype . type according to [SWS_SwCluC_03035] and [SWS_SwCluC_03036] apply.

requirement SWS_SwCluC_03035 [SWS_SwCluC_03035] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication shall use the following attributes for the referenced ApplicationDataType for the SwCluCB- ManifResourceGuardValue calculation: • in case the AutosarDataPrototype . type refers to a ApplicationPrimi- tiveDataType – ApplicationPrimitiveDataType . category – ApplicationPrimitiveDataType . swDataDefProps • in case the AutosarDataPrototype . type refers to a ApplicationArray- DataType – ApplicationArrayDataType . dynamicArraySizeProfile (if exist- ing) – ApplicationArrayDataType . element – ApplicationArrayElement . type – ApplicationArrayElement . arraySizeSemantics (if existing, else fixedSize applies) – ApplicationArrayElement . arraySizeHandling (if existing) – ApplicationArrayElement . maxNumberOfElements • in case the AutosarDataPrototype . type refers to a ApplicationRecord- DataType – ApplicationRecordDataType . element s {ordered} – ApplicationRecordElement . type – ApplicationRecordElement . isOptional (if existing, else false ap- plies) Additionally, the attributes of the mapped ImplementationDataType according to [SWS_SwCluC_03036] and the attributes of SwDataDefProps according to [SWS_SwCluC_03037] apply.

requirement SWS_SwCluC_03036 [SWS_SwCluC_03036] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication shall use the following attributes for the referenced or mapped ImplementationDataType for the SwCluCBManifResourceGuardValue calculation: • in case the AutosarDataPrototype . type refers to an Implementation- DataType of category TYPE_REFERENCE or the ApplicationDataType ac- cording to [SWS_SwCluC_03036] is mapped to an ImplementationDataType of category TYPE_REFERENCE – ImplementationDataType . swDataDefProps in case the AutosarDataPrototype . type refers to an Implementation- DataType of category VALUE or the ApplicationDataType according to [SWS_SwCluC_03036] is mapped to an ImplementationDataType of cate- gory VALUE – ImplementationDataType . swDataDefProps • in case the AutosarDataPrototype . type refers to an Implementation- DataType of category ARRAY or the ApplicationDataType according to [SWS_SwCluC_03036] is mapped to an ImplementationDataType of cate- gory ARRAY – ImplementationDataType . dynamicArraySizeProfile (if existing) – ImplementationDataType . swDataDefProps – ImplementationDataType . subElement – ImplementationDataTypeElement . arraySizeSemantics (if exist- ing, else fixedSize applies) – ImplementationDataTypeElement . arraySizeHandling (if existing) – ImplementationDataTypeElement . swDataDefProps • in case AutosarDataPrototype . type refers to an Implementation- DataType of category STRUCTURE or the ApplicationDataType according to [SWS_SwCluC_03036] is mapped to an ImplementationDataType of cat- egory STRUCTURE – ImplementationDataType . swDataDefProps – ImplementationDataType . isStructWithOptionalElement (if exist- ing, else false applies) – ImplementationDataType . subElement {ordered} – ImplementationDataTypeElement . arraySizeSemantics (if exist- ing, else fixedSize applies) – ImplementationDataTypeElement . arraySizeHandling (if existing) – ImplementationDataTypeElement . swDataDefProps Additionally, the attributes of SwDataDefProps according to [SWS_SwCluC_03037] apply.

requirement SWS_SwCluC_03037 [SWS_SwCluC_03037] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication shall use the following attributes for the given SwDataDefProps for the SwCluCBManifRe- sourceGuardValue calculation: • SwDataDefProps . additionalNativeTypeQualifier (if existing) • SwDataDefProps . swImplPolicy (if existing, else standard applies) • SwDataDefProps . invalidValue (if existing) • SwDataDefProps . unit (if existing, else CompuMethod . unit applies) • SwDataDefProps . dataConstr (if existing) • SwDataDefProps . compuMethod (if existing) • SwDataDefProps . swTextProps (if existing) • SwDataDefProps . baseType (if existing) • SwDataDefProps . swValueBlockSize (if existing) • SwDataDefProps . swValueBlockSizeMult (if existing) • SwDataDefProps . valueAxisDataType (if existing) • SwDataDefProps . implementationDataType (if existing) Here, the prioritization of SwDataDefProps attributes according to [constr_- 1015] applies. Only the most prior SwDataDefProps attributes are considered. Additionally, the attributes of Unit , CompuMethod , DataConstr , and BaseType according to [SWS_SwCluC_03038], [SWS_SwCluC_03039], [SWS_SwCluC_03042], [SWS_SwCluC_03043], and [SWS_SwCluC_03044] apply.

requirement SWS_SwCluC_03038 [SWS_SwCluC_03038] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication shall use the following attributes for the given Unit for the SwCluCBManifResourceGuard- Value calculation: • Unit . factorSiToUnit (if existing, else 1 applies) • Unit . offsetSiToUnit (if existing, else 0 applies) • Unit . physicalDimension (if existing, else [SWS_SwCluC_03041] applies) Additionally, the attributes of PhysicalDimension according to [SWS_SwCluC_03040] and [SWS_SwCluC_03041] apply.

requirement SWS_SwCluC_03039 [SWS_SwCluC_03039] 📄 PDF

⌊ DRAFT g In case no Unit is given for the SwCluCBMan- ifResourceGuardValue calculation, the Cross Cluster Communication shall use the following attribute values: • Unit . factorSiToUnit = 1 • Unit . offsetSiToUnit = 0 • Unit . physicalDimension according to [SWS_SwCluC_03041] Additionally, the attributes of PhysicalDimension according to [SWS_SwCluC_03041] apply.

requirement SWS_SwCluC_03040 [SWS_SwCluC_03040] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication shall use the following attributes for the given PhysicalDimension for the SwCluCBMani- fResourceGuardValue calculation: • PhysicalDimension . shortName • PhysicalDimension . currentExp (if existing, else 0 applies) • PhysicalDimension . lengthExp (if existing, else 0 applies) • PhysicalDimension . luminousIntensityExp (if existing, else 0 applies) • PhysicalDimension . massExp (if existing, else 0 applies) • PhysicalDimension . molarAmountExp (if existing, else 0 applies) • PhysicalDimension . temperatureExp (if existing, else 0 applies) • PhysicalDimension . timeExp (if existing, else 0 applies)

requirement SWS_SwCluC_03041 [SWS_SwCluC_03041] 📄 PDF

⌊ DRAFT g In case no PhysicalDimension is given, the Cross Cluster Communication shall use the following attribute values for the SwCluCBManifResourceGuardValue calculation: • PhysicalDimension . shortName = NoDimension • PhysicalDimension . currentExp = 0 • PhysicalDimension . lengthExp = 0 • PhysicalDimension . luminousIntensityExp = 0 • PhysicalDimension . massExp = 0 • PhysicalDimension . molarAmountExp = 0 • PhysicalDimension . temperatureExp = 0 • PhysicalDimension . timeExp = 0

requirement SWS_SwCluC_03042 [SWS_SwCluC_03042] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication shall use the following attributes for the given CompuMethod for the SwCluCBManifRe- sourceGuardValue calculation: • CompuMethod . unit • in case the CompuMethod . category is IDENTICAL – it is treated like a CompuMethod where the category is LINEAR where the CompuMethod . compuPhysToInternal . compuScale yield the con- version int = N 0 + N 1  phys D 0 if N 0  0 && N 1  1 && D 0  0 • in case the CompuMethod . category is LINEAR – CompuMethod . compuPhysToInternal . compuScale OR – CompuMethod . compuInternalToPhys . compuScale where the compuInternalToPhys coefficients are converted to equivalent compuPhysToInternal coefficients.  CompuScale . compuNumerator . v s {ordered}  CompuScale . compuDenominator . v • in case the CompuMethod . category is SCALE_LINEAR – CompuMethod . compuPhysToInternal . compuScale s – CompuMethod . compuPhysToInternal . compuDefaultValue (if exist- ing) OR – CompuMethod . compuInternalToPhys . compuScale s – CompuMethod . compuInternalToPhys . compuDefaultValue (if exist- ing)  CompuScale . upperLimit  CompuScale . lowerLimit  CompuScale . compuNumerator . v s {ordered}  CompuScale . compuDenominator . v • in case the CompuMethod . category is RAT_FUNC with 2 compuNumerator coefficients and 1 compuDenominator coefficient – this case is treated like a CompuMethod where the category is LINEAR • in case the CompuMethod . category is RAT_FUNC not matching the LINEAR case – CompuMethod . compuPhysToInternal . compuScale – CompuMethod . compuPhysToInternal . compuDefaultValue (if exist- ing) AND – CompuMethod . compuInternalToPhys . compuScale – CompuMethod . compuInternalToPhys . compuDefaultValue (if exist- ing)  CompuScale . upperLimit  CompuScale . lowerLimit  CompuScale . compuInverseValue . vf (if existing)  CompuScale . compuNumerator . v s {ordered}  CompuScale . compuDenominator . v {ordered} • in case the CompuMethod . category is SCALE_RAT_FUNC – CompuMethod . compuPhysToInternal . compuScale s – CompuMethod . compuPhysToInternal . compuDefaultValue (if exist- ing) AND – CompuMethod . compuInternalToPhys . compuScale s – CompuMethod . compuInternalToPhys . compuDefaultValue (if exist- ing)  CompuScale . upperLimit  CompuScale . lowerLimit  CompuScale . compuInverseValue . vf (if existing)  CompuScale . compuNumerator . v s {ordered}  CompuScale . compuDenominator . v {ordered} • in case the CompuMethod . category is TEXTTABLE – CompuMethod . compuInternalToPhys . compuScale s – CompuMethod . compuInternalToPhys . compuDefaultValue (if exist- ing)  CompuScale . upperLimit  CompuScale . lowerLimit  CompuScale . compuInverseValue . vf (if existing)  CompuScale . compuConst . vt • in case the CompuMethod . category is BITFIELD_TEXTTABLE – CompuMethod . compuInternalToPhys . compuScale s – CompuMethod . compuInternalToPhys . compuDefaultValue (if exist- ing)  CompuScale . upperLimit  CompuScale . lowerLimit  CompuScale . mask  CompuScale . compuInverseValue . vf (if existing)  CompuScale . compuConst . vt • in case the CompuMethod . category is SCALE_LINEAR_AND_TEXTTABLE – CompuMethod . compuInternalToPhys . compuScale s – CompuMethod . compuInternalToPhys . compuDefaultValue (if exist- ing)  CompuScale . upperLimit  CompuScale . lowerLimit  CompuScale . mask  CompuScale . compuInverseValue . vf (if existing)  CompuScale . compuConst . vt (if existing)  CompuScale . compuNumerator . v s {ordered} (if existing)  CompuScale . compuDenominator . v (if existing) • in case the CompuMethod . category is SCALE_RATIONAL_AND_TEXTTABLE – CompuMethod . compuPhysToInternal . compuScale s – CompuMethod . compuPhysToInternal . compuDefaultValue (if exist- ing) AND – CompuMethod . compuInternalToPhys . compuScale s – CompuMethod . compuInternalToPhys . compuDefaultValue (if exist- ing)  CompuScale . upperLimit  CompuScale . lowerLimit  CompuScale . mask  CompuScale . compuInverseValue . vf (if existing)  CompuScale . compuConst . vt (if existing)  CompuScale . compuNumerator . v s {ordered} (if existing)  CompuScale . compuDenominator . v {ordered} (if existing) • in case the CompuMethod . category is TAB_NOINTP – CompuMethod . compuInternalToPhys . compuScale s – CompuMethod . compuInternalToPhys . compuDefaultValue (if exist- ing)  CompuScale . upperLimit  CompuScale . lowerLimit  CompuScale . compuInverseValue . vf (if existing)  CompuScale . compuConst . vt (if existing) Additionally, the attributes of Unit according to [SWS_SwCluC_03038], [SWS_SwCluC_03039] apply.

requirement SWS_SwCluC_03043 [SWS_SwCluC_03043] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication shall use the following attributes for the given DataConstr for the SwCluCBManifResource- GuardValue calculation: • DataConstr . dataConstrRule . physConstrs . upperLimit (if existing) • DataConstr . dataConstrRule . physConstrs . lowerLimit (if existing) • DataConstr . dataConstrRule . physConstrs . monotony (if existing) • DataConstr . dataConstrRule . physConstrs . maxGradient (if existing) • DataConstr . dataConstrRule . physConstrs . maxDiff (if existing) • DataConstr . dataConstrRule . internalConstrs . upperLimit (if existing, else based on baseTypeEncoding and baseTypeSize the technical upper limit is taken) • DataConstr . dataConstrRule . internalConstrs . lowerLimit (if existing, else based on baseTypeEncoding and baseTypeSize the technical lower limit is taken) • DataConstr . dataConstrRule . internalConstrs . monotony (if existing, else noMonotony ) • DataConstr . dataConstrRule . internalConstrs . maxGradient (if exist- ing) • DataConstr . dataConstrRule . internalConstrs . maxDiff (if existing)

requirement SWS_SwCluC_03044 [SWS_SwCluC_03044] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication shall use the following attributes for the given SwBaseType for the SwCluCBManifResource- GuardValue calculation: • SwBaseType . baseTypeEncoding • SwBaseType . baseTypeSize • SwBaseType . byteOrder • SwBaseType . nativeDeclaration • SwBaseType . memAlignment (if existing, else 0 applies)

requirement SWS_SwCluC_03045 [SWS_SwCluC_03045] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication shall use the following attributes for the SwCluCBManifResourceGuardValue calculation for a Mode Communication Graph : • PPortPrototype . providedInterface • RPortPrototype . requiredInterface • ModeDeclarationGroupPrototype . type • ModeDeclarationGroup . category • ModeDeclarationGroup . initialMode • ModeDeclarationGroup . modeDeclaration s • ModeDeclarationGroup . onTransitionValue (in case ModeDeclara- tionGroup . category == EXPLICIT_ORDER ) • ModeDeclarationGroup . modeUserErrorBehavior (if existing) • ModeDeclarationGroup . modeManagerErrorBehavior (if existing) • ModeDeclarationGroup . modeTransition s (if existing) for each ModeDec- laration the following attributes apply: – ModeDeclaration . shortName – ModeDeclaration . value (in case ModeDeclarationGroup . category == EXPLICIT_ORDER ) for each ModeErrorBehavior the following attributes apply: – ModeErrorBehavior . errorReactionPolicy – ModeErrorBehavior . defaultMode (if existing) for each ModeTransition the following attributes apply: – ModeTransition . exitedMode – ModeTransition . enteredMode

requirement SWS_SwCluC_03046 [SWS_SwCluC_03046] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication shall use the following attributes for the SwCluCBManifResourceGuardValue calculation for a Trigger Communication Graph : • PPortPrototype . providedInterface • RPortPrototype . requiredInterface • Trigger . swImplPolicy (if existing, else standard applies)

requirement SWS_SwCluC_03047 [SWS_SwCluC_03047] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication shall use the following attributes for the SwCluCBManifResourceGuardValue calculation for a Client Server Communication Graph : • PPortPrototype . providedInterface • RPortPrototype . requiredInterface – ClientServerOperation . argument s {ordered}  ArgumentDataPrototype . type  ArgumentDataPrototype . direction – ClientServerOperation . possibleError . errorCode (if existing, else one errorCode = 0 is applied) Additionally, attributes of ArgumentDataPrototype . type according to [SWS_SwCluC_03035] and [SWS_SwCluC_03036] apply.

requirement SWS_SwCluC_03048 [SWS_SwCluC_03048] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication shall provide a Complex Driver Software Component, on each EcucPartition where a trigger port needs to be provided. This component is later called trigger proxy component .

requirement SWS_SwCluC_03049 [SWS_SwCluC_03049] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication shall provide a provided trigger port , on each trigger proxy component .

requirement SWS_SwCluC_03050 [SWS_SwCluC_03050] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication shall provide the AssemblySwConnector s between the provided trigger ports and the required trigger ports , at the software components requiring the trigger.

requirement SWS_SwCluC_03051 [SWS_SwCluC_03051] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication shall provide a trigger notification runnable with an OsTaskExecutionEvent , for each trigger on each partition a trigger notification is configured. The RunnableEntity shall define a ExternalTriggeringPoint .

requirement SWS_SwCluC_03052 [SWS_SwCluC_03052] 📄 PDF

⌊ DRAFT g When the trigger notification runnable is executed, it shall raise the trigger via Rte_Trigger to the RTE.

requirement SWS_SwCluC_03055 [SWS_SwCluC_03055] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication shall sig- nal to other Software Clusters that a trigger was raised.

requirement SWS_SwCluC_03056 [SWS_SwCluC_03056] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication shall, at the Software Cluster providing the trigger, add a Provided Resource En- try and, at Software Clusters requiring the trigger, an according Require Re- source Entry in the Binary Manifest .

requirement SWS_SwCluC_03057 [SWS_SwCluC_03057] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication shall add at the Software Cluster providing the mode a Provided Resource Entry , and at any Software Cluster requiring the trigger an according Require Resource Entry in the Binary Manifest .

requirement SWS_SwCluC_03058 [SWS_SwCluC_03058] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication of the Host Software Cluster shall implement a trigger source for each trigger, which needs to be provided by an Applicative Software Cluster .

requirement SWS_SwCluC_03060 [SWS_SwCluC_03060] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication of the Host Software Cluster shall raise the triggers signaled by Applicative Software Clusters , via the related trigger source . ([SWS_SwCluC_03058])

requirement SWS_SwCluC_03061 [SWS_SwCluC_03061] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication of the Host Software Cluster shall notify the Applicative Software Cluster , when the execution of a trigger tasks starts.

requirement SWS_SwCluC_03062 [SWS_SwCluC_03062] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication shall provide a Complex Driver Software Component on each EcucPartition , where a trigger source according to [SWS_SwCluC_03058] is configured. This compo- nent is later called trigger proxy component .

requirement SWS_SwCluC_03063 [SWS_SwCluC_03063] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication shall provide the AssemblySwConnector s between the provided trigger ports of the trigger proxy component , and the required trigger ports at the software components requiring the trigger, if the trigger is required by the Host Software Cluster .

requirement SWS_SwCluC_03064 [SWS_SwCluC_03064] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall reject the configuration, if there is a “N:1” sender-receiver communication with last-is-the-best semantic.

requirement SWS_SwCluC_03065 [SWS_SwCluC_03065] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall reject the configuration, if there is a “1:N” sender-receiver communication with event semantic (queued communication).

requirement SWS_SwCluC_03068 [SWS_SwCluC_03068] 📄 PDF

⌊ DRAFT g The implementation of a Cross Cluster Com- munication shall support that Data Communication Graphs between Ap- plicative Software Clusters can be added, without modification of the Host Software Cluster .

requirement SWS_SwCluC_03072 [SWS_SwCluC_03072] 📄 PDF

⌊ DRAFT g The McSupportData element begin part of [SWS_SwCluC_03071] and its sub-structure shall be self-contained, in the sense that there is no need to deliver the whole upstream descriptions of the ECU (including the ECU Extract , Software Component descriptions, Basic Software Module descrip- tions, ECU Configuration Values descriptions, etc.), in order to later generate the final "A2L"-file. This means that the Cross Cluster Communication generator has to copy the required information from the upstream descriptions into the McSupport- Data element.

requirement SWS_SwCluC_03073 [SWS_SwCluC_03073] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication genera- tor shall export the effective SwDataDefProps (including all of the referenced and aggregated sub-elements like e.g. CompuMethod or SwRecordLayout ) in the role resultingProperties , for each McDataInstance , after resolving the precedence rules defined in the SW-Component Template [11] chapter Properties of Data Defini- tions . Thereby, the ImplementationDataType properties compuMethod and dat- aConstraint are not taken in consideration for effective SwDataDefProps of the McDataInstance , due to their refinement nature of C and AI .

requirement SWS_SwCluC_03074 [SWS_SwCluC_03074] 📄 PDF

⌊ DRAFT g If the parameter SwCluCXccSwCluCXccDe- faultDataHandling is set to DEFAULTS_AS_CALPRMS , the Cross Cluster Communication generator shall export one entry in the McSupportData , describing the default data instance according to [SWS_SwCluC_03120], with the role mcParam- eterInstance , with the following attributes: • swCalibrationAccess set to readWrite • effective SwDataDefProps according to [SWS_SwCluC_03073] • McDataInstance . subElement s for array elements or structure elements, if ap- plicable • symbol set to the C-symbol name used for the default data instance

requirement SWS_SwCluC_03075 [SWS_SwCluC_03075] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication genera- tor shall export one entry in the McSupportData , describing the default parameter instance according to [SWS_SwCluC_03006], with the role mcParameterInstance , with the following attributes: • swCalibrationAccess set to readWrite • effective SwDataDefProps according to [SWS_SwCluC_03073] • McDataInstance . subElement s for array elements or structure elements, if ap- plicable • symbol set to the C-symbol name used for the default parameter instance

requirement SWS_SwCluC_03076 [SWS_SwCluC_03076] 📄 PDF

⌊ DRAFT g If the swCalibrationAccess of a Variable- DataPrototype instance in the delegation PPortPrototype at the Composition- SwComponentType at the CompositionSwComponentType of the rootSoft- wareComposition of the Ecu Extract is set to readOnly or readWrite , the Cross Cluster Communication generator shall export one entry in the McSup- portData , describing the data instance according to [SWS_SwCluC_03101], with the role mcVariableInstance , with the following attributes: • effective SwDataDefProps (inclusive swCalibrationAccess ) according to [SWS_SwCluC_03073] • McDataInstance . subElement s for array elements or structure elements, if ap- plicable • symbol set to the C-symbol name used for the default parameter instance • if applicable, flatMapEntry referencing to the corresponding FlatIn- stanceDescriptor element of the VariableDataPrototype

requirement SWS_SwCluC_03077 [SWS_SwCluC_03077] 📄 PDF

⌊ DRAFT g If the parameter SwCluCXccSwCluCXccDe- faultDataHandling is set to DEFAULTS_AS_CONSTANTS , the Cross Cluster Communication generator shall export one entry in the McSupportData , describing the default data instance according to [SWS_SwCluC_03120], with the role mcParam- eterInstance , with the following attributes: • swCalibrationAccess set to readOnly • effective SwDataDefProps according to [SWS_SwCluC_03073] • McDataInstance . subElement s for array elements or structure elements, if ap- plicable • symbol set to the C-symbol name used for the default data instance

requirement SWS_SwCluC_03080 [SWS_SwCluC_03080] 📄 PDF

When implicit or explicit unqueued communication applies and the attribute sendIndication is set to anySendOperation for the Data Communication Graph , the call of the Rte_Rips_Write shall indicate the occur- rence of a send operation for the related data instance.

requirement SWS_SwCluC_03081 [SWS_SwCluC_03081] 📄 PDF

The Rte_Rips_DataIsUpdated shall return TRUE if • explicit unqueued communication applies AND • the Resource Entry in the Binary Manifest created according to [SWS_SwCluC_03126] is connected AND • the occurrence of a send operation was indicated after previous calls of Rte_- Read or Rte_DRead related to this reading software component.

requirement SWS_SwCluC_03082 [SWS_SwCluC_03082] 📄 PDF

The Rte_Rips_DataIsUpdated_EventActivation shall return TRUE if • the Resource Entry in the Binary Manifest created according to [SWS_SwCluC_03126] or [SWS_SwCluC_03136] is connected AND – the occurrence of a send operation was indicated after previous calls of this instance of the Rte_Rips_DataIsUpdated_EventActivation OR – a enqueue operation occurred after previous calls of this instance of the Rte_Rips_DataIsUpdated_EventActivation

requirement SWS_SwCluC_03101 [SWS_SwCluC_03101] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall provide one data instance, for each as- signed Data Communication Graph • where the referenced VariableDataPrototype is owned by a delegation PPortPrototype at the CompositionSwComponentType at the Composi- tionSwComponentType of the rootSoftwareComposition of the Ecu Ex- tract AND • where implicit communication applies to that VariableDataPrototype OR • where explicit unqueued communication applies to that VariableDataProto- type

requirement SWS_SwCluC_03102 [SWS_SwCluC_03102] 📄 PDF

⌊ DRAFT g The data instance created according to [SWS_SwCluC_03101] shall be mapped to a VAR memory section, according to document [8].

requirement SWS_SwCluC_03103 [SWS_SwCluC_03103] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall make the data instance created accord- ing to [SWS_SwCluC_03101], accessible to other Software Cluster s via a Re- source Entry in the Binary Manifest .

requirement SWS_SwCluC_03106 [SWS_SwCluC_03106] 📄 PDF

⌊ DRAFT g When implicit or explicit unqueued communica- tion applies, the Rte_Rips_Write shall update the data instance created accord- ing to [SWS_SwCluC_03101]), and return RTE_E_OK .

requirement SWS_SwCluC_03107 [SWS_SwCluC_03107] 📄 PDF

⌊ DRAFT g When explicit queued communication applies, and the Resource Entry created according to [SWS_SwCluC_03142] is not connected, the Rte_Rips_Write shall discard the write access, and return RTE_E_OK .

requirement SWS_SwCluC_03108 [SWS_SwCluC_03108] 📄 PDF

⌊ DRAFT g When explicit queued communication applies, and the Resource Entry created according to [SWS_SwCluC_03142] is connected, the Rte_Rips_Write shall check the queue status (See [SWS_SwCluC_03135]), to de- termine whether or not the data can be enqueued.

requirement SWS_SwCluC_03109 [SWS_SwCluC_03109] 📄 PDF

⌊ DRAFT g When explicit queued communication applies, and the Resource Entry created according to [SWS_SwCluC_03142] is con- nected, and the queue is not full, the Rte_Rips_Write shall enqueue the data and return RTE_E_OK (See [SWS_SwCluC_03135]).

requirement SWS_SwCluC_03110 [SWS_SwCluC_03110] 📄 PDF

⌊ DRAFT g When explicit queued communication applies, and the Resource Entry created according to [SWS_SwCluC_03142] is connected, but the queue is full, the Rte_Rips_Write shall discard the write access and return RTE_E_LIMIT (See [SWS_SwCluC_03135]).

requirement SWS_SwCluC_03111 [SWS_SwCluC_03111] 📄 PDF

⌊ DRAFT g The data instance created according to [SWS_SwCluC_03101] shall be initialized according to the NonqueuedSenderCom- Spec . initValue in the PPortPrototype at the CompositionSwComponentType of the rootSoftwareComposition of the Ecu Extract .

requirement SWS_SwCluC_03112 [SWS_SwCluC_03112] 📄 PDF

⌊ DRAFT g If acknowledgment is enabled, and the resource created according to [SWS_SwCluC_03103] is not connected, the Rte_Rips_- Feedback API shall return RTE_E_UNCONNECTED .

requirement SWS_SwCluC_03113 [SWS_SwCluC_03113] 📄 PDF

⌊ DRAFT g If acknowledgement is enabled, and the resource created according to [SWS_SwCluC_03103] is connected, the Rte_Rips_Feedback API shall return RTE_E_TRANSMIT_ACK .

requirement SWS_SwCluC_03120 [SWS_SwCluC_03120] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall provide one default data instance, for each assigned Data Communication Graph • where the referenced VariableDataPrototype is owned by a delegation RPortPrototype at the CompositionSwComponentType at the Composi- tionSwComponentType of the rootSoftwareComposition of the Ecu Ex- tract AND • where implicit communication applies to that VariableDataPrototype OR • where explicit unqueued communication applies to that VariableDataProto- type

requirement SWS_SwCluC_03121 [SWS_SwCluC_03121] 📄 PDF

⌊ DRAFT g If the parameter SwCluCXccSwCluCXccDe- faultDataHandling is set to DEFAULTS_AS_CALPRMS , the default data instance created according to [SWS_SwCluC_03120] shall be mapped to a CALPRM memory section, according to document [8].

requirement SWS_SwCluC_03122 [SWS_SwCluC_03122] 📄 PDF

⌊ DRAFT g If the parameter SwCluCXccSwCluCXccDe- faultDataHandling is set to DEFAULTS_AS_CONSTANTS , the default data instance created according to [SWS_SwCluC_03120] shall be mapped to a CONST memory sec- tion, according to document [8].

requirement SWS_SwCluC_03123 [SWS_SwCluC_03123] 📄 PDF

⌊ DRAFT g The data instances created according to [SWS_SwCluC_03120], [SWS_SwCluC_03133] and [SWS_SwCluC_03135] shall be mapped to a VAR memory section, according to document [8].

requirement SWS_SwCluC_03124 [SWS_SwCluC_03124] 📄 PDF

⌊ DRAFT g The default data instance created according to [SWS_SwCluC_03120] shall be initialized according to the NonqueuedReceiver- ComSpec . initValue in the RPortPrototype at the CompositionSwComponent- Type of the rootSoftwareComposition of the Ecu Extract .

requirement SWS_SwCluC_03126 [SWS_SwCluC_03126] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall use the default data instance created ac- cording to [SWS_SwCluC_03120] as default handle in the corresponding Resource Entry in the Binary Manifest .

requirement SWS_SwCluC_03130 [SWS_SwCluC_03130] 📄 PDF

⌊ DRAFT g When explicit unqueued communication via dataReceivePointByArgument s applies, and the Resource Entry created ac- cording to[SWS_SwCluC_03126] is not connected, the Rte_Rips_Read shall copy the value of default data instance created according to [SWS_SwCluC_03120] to the location of the OUT parameter <data>, and shall return RTE_E_UNCONNECTED .

requirement SWS_SwCluC_03131 [SWS_SwCluC_03131] 📄 PDF

⌊ DRAFT g When explicit unqueued communication via dataReceivePointByValue s applies, and the Resource Entry created accord- ing to [SWS_SwCluC_03126] is not connected, the Rte_Rips_DRead shall return the value of default data instance created according to [SWS_SwCluC_03120].

requirement SWS_SwCluC_03132 [SWS_SwCluC_03132] 📄 PDF

⌊ DRAFT g When explicit unqueued communication via dataReceivePointByArgument s applies, and the Resource Entry created ac- cording to [SWS_SwCluC_03126] is connected, the Rte_Rips_Read shall copy the value of the corresponding data instance of the provider to the location of the OUT pa- rameter <data>, and shall return RTE_E_OK .

requirement SWS_SwCluC_03133 [SWS_SwCluC_03133] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall provide a queue data instance (where the queue size corresponds to the specified queue length), for each assigned Data Com- munication Graph • where the referenced VariableDataPrototype is owned by a delegation RPortPrototype at the CompositionSwComponentType at the Composi- tionSwComponentType of the rootSoftwareComposition of the Ecu Ex- tract AND • where explicit queued communication applies to that VariableDataProto- type

requirement SWS_SwCluC_03134 [SWS_SwCluC_03134] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall determine the queue size according to the queueLength attribute of the QueuedReceiverComSpec

requirement SWS_SwCluC_03135 [SWS_SwCluC_03135] 📄 PDF

⌊ DRAFT g When [SWS_SwCluC_03133] applies, the Cross Cluster Communication of the Software Cluster Connection shall provide a data instance, representing the number of possible entries in the queue.

requirement SWS_SwCluC_03136 [SWS_SwCluC_03136] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall make the data instance created according to [SWS_SwCluC_03133] accessible from other Software Clusters , via a Re- source Entry in the Binary Manifest .

requirement SWS_SwCluC_03137 [SWS_SwCluC_03137] 📄 PDF

⌊ DRAFT g When explicit queued communication applies, and the resource created according to [SWS_SwCluC_03136] is not connected, the Rte_- Rips_Read shall discard the read access, and return RTE_E_UNCONNECTED .

requirement SWS_SwCluC_03138 [SWS_SwCluC_03138] 📄 PDF

⌊ DRAFT g When explicit queued communication applies, and the Resource Entry created according to [SWS_SwCluC_03136] is connected, but no entry is available in the queue, the Rte_Rips_Read shall discard the read access, and return RTE_E_NO_DATA .

requirement SWS_SwCluC_03139 [SWS_SwCluC_03139] 📄 PDF

⌊ DRAFT g When explicit queued communication applies, and the Resource Entry created according to [SWS_SwCluC_03136] is connected, the Rte_Rips_Read shall copy the value of the first available entry of the corresponding data instance to the location of the OUT parameter <data>, and return RTE_E_OK .

requirement SWS_SwCluC_03140 [SWS_SwCluC_03140] 📄 PDF

⌊ DRAFT g When [SWS_SwCluC_03139] applies, the Rte_- Rips_Read shall dequeue the data from the corresponding queue.

requirement SWS_SwCluC_03142 [SWS_SwCluC_03142] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall provide one Resource Entry , for each assigned Data Communication Graph • where the referenced VariableDataPrototype is owned by a delegation PPortPrototype at the CompositionSwComponentType at the Composi- tionSwComponentType of the rootSoftwareComposition of the Ecu Ex- tract AND • where explicit queued communication applies to that VariableDataProto- type This Resource Entry shall be used to link the access of the related Rte_Rips_- Write service to the according queue instance on the receiving Software Clus- ter .

requirement SWS_SwCluC_03143 [SWS_SwCluC_03143] 📄 PDF

⌊ DRAFT g If explicit unqueued communication applies, and the Resource Entry in the Binary Manifest created according to [SWS_SwCluC_03126] is not connected, the Rte_Rips_DataIsUpdated shall re- turn FALSE .

requirement SWS_SwCluC_03144 [SWS_SwCluC_03144] 📄 PDF

⌊ DRAFT g If explicit unqueued communication applies, and the Resource Entry in the Binary Manifest created according to [SWS_SwCluC_03126] is connected, and the sender has updated the data since the previous execution of the corresponding Rte_Rips_Read service, the Rte_Rips_- DataIsUpdated shall return TRUE

requirement SWS_SwCluC_03145 [SWS_SwCluC_03145] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall ensure that the result of a ClientServer- Operation is dispatched to the correct client, if more than one client invokes the ClientServerOperation

requirement SWS_SwCluC_03146 [SWS_SwCluC_03146] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication shall support multiple Clients invoking the same ClientServerOperation on a server ('N:1' Communication where N  1).

requirement SWS_SwCluC_03147 [SWS_SwCluC_03147] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall ensure that timeout monitoring is performed for client-server communication.

requirement SWS_SwCluC_03150 [SWS_SwCluC_03150] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication on the client side of the Software Cluster Connection shall provide a request queue (with queue length 1) for each assigned Client Server Communication Graph , where the referenced ClientServerOperation is owned by a delegation RPort- Prototype at the CompositionSwComponentType of the rootSoftwareCompo- sition of the Ecu Extract . Note: The structure of the queue is implementation specific, but the Cross Cluster Communication has to store at least the IN parameters and IN/OUT parameters, the transaction handle and the status code of the communication.

requirement SWS_SwCluC_03151 [SWS_SwCluC_03151] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication on the client side of the Software Cluster Connection shall provide a response queue (with queue length 1), for each assigned Client Server Communication Graph , where the referenced ClientServerOperation is owned by a delegation RPort- Prototype at the CompositionSwComponentType of the rootSoftwareCompo- sition of the Ecu Extract . Note: The structure of the queue is implementation specific, but the Cross Clus- ter Communication has to store at least the IN/OUT and OUT parameters, the transaction handle and the status code of the communication.

requirement SWS_SwCluC_03152 [SWS_SwCluC_03152] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication on the server side of the Software Cluster Connection shall provide a request queue with the specified queue length (See [SWS_SwCluC_03154]), for each assigned Client Server Communication Graph , where the referenced ClientServer- Operation is owned by a delegation PPortPrototype at the Composition- SwComponentType of the rootSoftwareComposition of the Ecu Extract . Note: The structure of the queue is implementation specific, but the Cross Clus- ter Communication has to store at least the IN/OUT and OUT parameters, the transaction handle and the status code of the communication.

requirement SWS_SwCluC_03153 [SWS_SwCluC_03153] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication on the server side of the Software Cluster Connection shall provide N response queues (where N corresponds to the specified queue length), for each assigned Client Server Communication Graph , where the referenced ClientServer- Operation is owned by a delegation PPortPrototype at the Composition- SwComponentType of the rootSoftwareComposition of the Ecu Extract . Note: The structure of the queue is implementation specific, but the Cross Clus- ter Communication has to store at least the IN/OUT and OUT parameters, the transaction handle and the status code of the communication.

requirement SWS_SwCluC_03154 [SWS_SwCluC_03154] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication on the server side of the Software Cluster Connection shall determine the queue length according to the following priority rules (highest priority first): 1. value of the ECU-C parameter RteServerQueueLength 2. value of the queueLength attribute of the ServerComSpec

requirement SWS_SwCluC_03155 [SWS_SwCluC_03155] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication on the server side of the Software Cluster Connection shall handle the requests in a first-in-first-out queue.

requirement SWS_SwCluC_03156 [SWS_SwCluC_03156] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall make the request queue instance created according to [SWS_SwCluC_03150] accessible for the Software Cluster imple- menting the server, via a Resource Entry in the Binary Manifest .

requirement SWS_SwCluC_03157 [SWS_SwCluC_03157] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall make the response queue instance created according to [SWS_SwCluC_03151] accessible to the Software Cluster , via a Re- source Entry in the Binary Manifest .

requirement SWS_SwCluC_03158 [SWS_SwCluC_03158] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall make each request queue instance created according to [SWS_SwCluC_03152] accessible to the Software Cluster , via a Re- source Entry in the Binary Manifest .

requirement SWS_SwCluC_03159 [SWS_SwCluC_03159] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall make each response queue instance cre- ated according to [SWS_SwCluC_03153] accessible to the Software Clusters , via a Resource Entry in the Binary Manifest .

requirement SWS_SwCluC_03160 [SWS_SwCluC_03160] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall use a transaction handle that contains three parts, of unsigned integer type: • Software Cluster Identifier • Client Identifier • Client Sequence Counter

requirement SWS_SwCluC_03161 [SWS_SwCluC_03161] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall use the transaction handle for the iden- tification of client server transactions, communicated between the clusters.

requirement SWS_SwCluC_03162 [SWS_SwCluC_03162] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication on the server side of the Software Cluster Connection shall return the transaction han- dle of the request, without modification, together with the response.

requirement SWS_SwCluC_03163 [SWS_SwCluC_03163] 📄 PDF

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall allow only one request per client and server operation at any time.

requirement SWS_SwCluC_03164 [SWS_SwCluC_03164] 📄 PDF

⌊ DRAFT g If the corresponding resource in the Binary Man- ifest representing the response queue (See [SWS_SwCluC_03157]) is not con- nected, the Rte_Rips_Invoke shall return RTE_E_UNCONNECTED immediately.

requirement SWS_SwCluC_03165 [SWS_SwCluC_03165] 📄 PDF

⌊ DRAFT g If the corresponding resource in the Binary Man- ifest representing the response queue (See [SWS_SwCluC_03157]) is connected, the Rte_Rips_Invoke shall copy the IN and IN/OUT parameters, inform the server via a status flag, and return RTE_E_OK.

requirement SWS_SwCluC_03166 [SWS_SwCluC_03166] 📄 PDF

⌊ DRAFT g If the corresponding resource in the Binary Man- ifest representing the response queue (See [SWS_SwCluC_03157]) is connected, the Rte_Rips_Invoke shall return RTE_E_LIMIT, until the server's result has been successfully passed to the client, and no timeout occurred. The IN and IN/OUT param- eters shall not be modified by Rte_Rips_Invoke .

requirement SWS_SwCluC_03167 [SWS_SwCluC_03167] 📄 PDF

⌊ DRAFT g If the corresponding resource in the Binary Man- ifest representing the response queue (See [SWS_SwCluC_03157]) is not con- nected, the Rte_Rips_ReturnResult shall return RTE_E_UNCONNECTED imme- diately.

requirement SWS_SwCluC_03168 [SWS_SwCluC_03168] 📄 PDF

⌊ DRAFT g If the corresponding resource in the Binary Man- ifest representing the response queue (See [SWS_SwCluC_03157]) is connected, the Rte_Rips_ReturnResult shall return RTE_E_NO_DATA, until the server's re- sult has been successfully passed to the client and no timeout occurred.

requirement SWS_SwCluC_03169 [SWS_SwCluC_03169] 📄 PDF

⌊ DRAFT g If the corresponding resource in the Binary Man- ifest representing the response queue (See [SWS_SwCluC_03157]) is connected, and the server's result was not available within the specified timeout, the Rte_- Rips_ReturnResult shall return RTE_E_TIMEOUT.

requirement SWS_SwCluC_03170 [SWS_SwCluC_03170] 📄 PDF

⌊ DRAFT g If the corresponding resource in the Binary Man- ifest representing the response queue (See [SWS_SwCluC_03157]) is connected, and an AsynchronousServerCallReturnsEvent exists, the Rte_Rips_Invo- cationHandler shall poll the corresponding response queue status to determine whether or not the server's result is available.

requirement SWS_SwCluC_03171 [SWS_SwCluC_03171] 📄 PDF

⌊ DRAFT g If the corresponding resource in the Binary Man- ifest representing the response queue (See [SWS_SwCluC_03157]) is connected, and an AsynchronousServerCallReturnsEvent exists, the Rte_Rips_Invo- cationHandler shall call the corresponding ACSR Runnable .

requirement SWS_SwCluC_03173 [SWS_SwCluC_03173] 📄 PDF

⌊ DRAFT g If the corresponding resource in the Binary Man- ifest representing the request queue (See [SWS_SwCluC_03158]) is connected, the Rte_Rips_InvocationHandler shall poll the corresponding request queue status to determine whether or not there is a pending request.

requirement SWS_SwCluC_03174 [SWS_SwCluC_03174] 📄 PDF

⌊ DRAFT g If the corresponding resource in the Binary Man- ifest representing the request queue (See [SWS_SwCluC_03158]) is connected, the Rte_Rips_InvocationHandler shall invoke the server with IN, IN/OUT and OUT parameters of request resp. response queue.

requirement SWS_SwCluC_03175 [SWS_SwCluC_03175] 📄 PDF

⌊ DRAFT g If the corresponding resource in the Binary Manifest representing the response queue (See [SWS_SwCluC_03157]) is con- nected, the Rte_Rips_InvocationHandler shall call the corresponding server Runnable .

requirement SWS_SwCluC_03176 [SWS_SwCluC_03176] 📄 PDF

⌊ DRAFT g If the corresponding resource in the Binary Man- ifest representing the request queue (See [SWS_SwCluC_03158]) is connected, the Rte_Rips_InvocationHandler shall dequeue the server queue after successful invocation of the server queue.

requirement SWS_SwCluC_03177 [SWS_SwCluC_03177] 📄 PDF

⌊ DRAFT g If the corresponding resource in the Binary Man- ifest representing the request queue (See [SWS_SwCluC_03158]) is connected, the Rte_Rips_InvocationHandler shall set the status of the response queue (See [SWS_SwCluC_03159]) accordingly, to inform the client that the request has been processed.

requirement SWS_SwCluC_03201 [SWS_SwCluC_03201] 📄 PDF

⌊ DRAFT g The FiM High Proxy shall provide the symbolic name values for FiMFID s, for FiM users in the Applicative Software Cluster .

requirement SWS_SwCluC_03202 [SWS_SwCluC_03202] 📄 PDF

⌊ DRAFT g The FiM High Proxy shall provide the functions for Function Inhibition s • FiM_GetFunctionPermission • FiM_SetFunctionAvailable for FiM users in the Applicative Software Cluster .

requirement SWS_SwCluC_03203 [SWS_SwCluC_03203] 📄 PDF

⌊ DRAFT g The FiM High Proxy shall create one partition specific Service Software Component per configured EcucPartition , with the name FiM_<EcucPartition shortName> .

requirement SWS_SwCluC_03204 [SWS_SwCluC_03204] 📄 PDF

⌊ DRAFT g The FiM High Proxy shall provide the ports be- longing to a specific Function Inhibition • Func_{Name} • Control_{Name} at the partition specific Service Software Component, to which the using SwCompo- nentPrototype is mapped.

requirement SWS_SwCluC_03205 [SWS_SwCluC_03205] 📄 PDF

⌊ DRAFT g In case a Function Inhibition configured in the FiM High Proxy is not connected to any FiM Low Proxy , the FiM High Proxy shall return E_NOT_OK and the value FALSE for the Permission , when FiM_- GetFunctionPermission / GetFunctionPermission is called.

requirement SWS_SwCluC_03206 [SWS_SwCluC_03206] 📄 PDF

⌊ DRAFT g In case a Function Inhibition configured in the FiM High Proxy is not connected to any FiM Low Proxy , the FiM High Proxy shall return E_NOT_OK , when FiM_SetFunctionAvailable / SetFunc- tionAvailable is called.

requirement SWS_SwCluC_03207 [SWS_SwCluC_03207] 📄 PDF

⌊ DRAFT g The FiM Low Proxy implementation shall de- scribe the Function Inhibition s provided to FiM High Proxy s via Function- InhibitionNeeds , derived from the CpSoftwareClusterServiceResource . resourceNeeds .

requirement SWS_SwCluC_03208 [SWS_SwCluC_03208] 📄 PDF

⌊ DRAFT g The FiM Low Proxy implementation shall de- scribe the control function s for Function Inhibition s provided to FiM High Proxies via FunctionInhibitionAvailabilityNeeds , derived from the Cp- SoftwareClusterServiceResource . resourceNeeds .

requirement SWS_SwCluC_03209 [SWS_SwCluC_03209] 📄 PDF

⌊ DRAFT g The FiM Low Proxy shall provide, for each SwCluCFiMProxyBaseSocket , a SwCluC_FiMProxy_Init API, to initialize the FiM High Proxy of an Applicative Software Cluster . This shall be one element of the service resource SwCluCFiMProxyBaseSocket .

requirement SWS_SwCluC_03210 [SWS_SwCluC_03210] 📄 PDF

⌊ DRAFT g The FiM High Proxy shall create for each SwCluCFiMProxyBaseSocket a required resource entry in the Binary Mani- fest .

requirement SWS_SwCluC_03211 [SWS_SwCluC_03211] 📄 PDF

⌊ DRAFT g The FiM High Proxy shall create for each di- agnostic function inhibition proxy - configured via SwCluCFiMProxyFID container - a required resource entry in the Binary Manifest .

requirement SWS_SwCluC_03212 [SWS_SwCluC_03212] 📄 PDF

⌊ DRAFT g The FiM Low Proxy shall create for each SwCluCDcmProxyBaseSocket a provided resource entry in the Binary Mani- fest .

requirement SWS_SwCluC_03213 [SWS_SwCluC_03213] 📄 PDF

⌊ DRAFT g The FiM Low Proxy shall create for each di- agnostic function inhibition proxy - configured via SwCluCFiMProxyFID container - a provided resource entry in the Binary Manifest .

requirement SWS_SwCluC_03214 [SWS_SwCluC_03214] 📄 PDF

⌊ DRAFT g The FiM High Proxy code, and related AUTOSAR model descriptions, shall only be created, if the configuration param- eter SwCluCProxyGenerationFiM is set to HIGH_PROXY .

requirement SWS_SwCluC_03215 [SWS_SwCluC_03215] 📄 PDF

⌊ DRAFT g The FiM Low Proxy code, and related AUTOSAR model descriptions, shall only be created, if the configuration param- eter SwCluCProxyGenerationFiM is set to LOW_PROXY .

requirement SWS_SwCluC_03216 [SWS_SwCluC_03216] 📄 PDF

⌊ DRAFT g Development Error Types of SwCluC FiM Proxy The development error types defined for the SwCluC FiM Proxy are listed in table Table 7.9.

requirement SWS_SwCluC_03217 [SWS_SwCluC_03217] 📄 PDF

⌊ DRAFT g If development error detection is enabled for FiM High Proxy , the APIs • FiM_GetFunctionPermission • FiM_SetFunctionAvailable shall report the DET error FIM_E_UNINIT , when FiM High Proxy is not yet initial- ized.

requirement SWS_SwCluC_03218 [SWS_SwCluC_03218] 📄 PDF

⌊ DRAFT g If development error detection is enabled for FiM High Proxy , the APIs • FiM_GetFunctionPermission • FiM_SetFunctionAvailable shall report the DET error FIM_E_FID_OUT_OF_RANGE , if the functions are called with wrong FID value

requirement SWS_SwCluC_03502 [SWS_SwCluC_03502] 📄 PDF

[SWS_SwCluC_03502] Support of changing Host Software Cluster without rebuilding Application Software Cluster Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈The Com Proxy shall support that the ComIPdu Ids of the Com of the Host Soft- ware Cluster can change, without reconfiguration or rebuild of the Application Software Cluster using these ComIPdus.⌋

requirement SWS_SwCluC_03506 [SWS_SwCluC_03506] 📄 PDF

[SWS_SwCluC_03506] The Com High Proxy shall provide the symbolic name values for the ComIPdu IDs Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈The Com High Proxy shall provide the symbolic name values for the ComIPdu IDs, for Com users in the Application Software Cluster.⌋ Note: According parameters are called TxPduId in Com_Transmit and id in the callback function for Large Data Path in Com.

requirement SWS_SwCluC_03507 [SWS_SwCluC_03507] 📄 PDF

[SWS_SwCluC_03507] Com High Proxy shall provide Com_Transmit Status: DRAFT Upstream requirements: SRS_SwCluC_00211, SRS_SwCluC_00202 ⌈The Com High Proxy shall provide the function w.r.t transmission request of a ComIPdu • Com_Transmit required by the Application Software Cluster ⌋

requirement SWS_SwCluC_03508 [SWS_SwCluC_03508] 📄 PDF

[SWS_SwCluC_03508] Behaviour if Com_Transmit is called and Com High Proxy ia not connected to Com Low Proxy Status: DRAFT Upstream requirements: SRS_SwCluC_00211, SRS_SwCluC_00213 ⌈If the Com High Proxy is not connected to the Com Low Proxy, the function • Com_Transmit of the Com High Proxy shall return E_NOT_OK.⌋

requirement SWS_SwCluC_03509 [SWS_SwCluC_03509] 📄 PDF

[SWS_SwCluC_03509] The Com High Proxy shall provide the function for trans- mission request of a signal Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈The Com High Proxy shall provide the function for transmission request of a sig- nal, according to [SWS_SwCluC_03506], once per configured SwCluCComProxy- BaseSocket. At the EcucPartition, where the SwCluCNativeBswApi is set to true, the API is provided with the original Mip Com. For all other SwCluC- ComProxyBaseSocket instances, the Mip Com is replaced by Com_<EcucParti- tion.ShortName>.⌋ module Callback Functions

requirement SWS_SwCluC_03510 [SWS_SwCluC_03510] 📄 PDF

[SWS_SwCluC_03510] Support of <ComUser_ComCbkRxIndication> notifica- tion callback Status: DRAFT Upstream requirements: SRS_SwCluC_00211, SRS_SwCluC_00202 ⌈The Com High Proxy shall support the <ComUser_ComCbkRxIndication> no- tification callback, configured via the ComUserCallbackName (See [ECUC_Com_- 10036]) parameter, where the ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_RX_INDICATION⌋

requirement SWS_SwCluC_03511 [SWS_SwCluC_03511] 📄 PDF

[SWS_SwCluC_03511] Support of optional <ComUser_ComCbkTxConfirma- tion> notification callback Status: DRAFT Upstream requirements: SRS_SwCluC_00211, SRS_SwCluC_00202 ⌈The Com High Proxy shall support the optional <ComUser_ComCbkTxConfir- mation> notification callback, configured via the ComUserCallbackName (See [ECUC_Com_10036]) parameter, where the ComUserCallbackType (See [ECUC_ Com_10034]) is set to COM_TX_CONFIRMATION⌋ Please note that only a single Com user can be notified with <ComUser_ComCbkTx- Confirmation>.

requirement SWS_SwCluC_03512 [SWS_SwCluC_03512] 📄 PDF

[SWS_SwCluC_03512] Support the optional <ComUser_ComCbkTriggerTrans- mit> notification callback Status: DRAFT Upstream requirements: SRS_SwCluC_00211, SRS_SwCluC_00202 ⌈The Com High Proxy shall support the optional <ComUser_ComCbkTrigger- Transmit> notification callback, configured via the ComUserCallbackName (See [ECUC_Com_10036]) parameter, where the ComUserCallbackType (See [ECUC_ Com_10034]) is set to COM_TX_TRIGGER_TRANSMIT⌋ Please note that only a single Com user can be notified with <ComUser_ComCbk- TriggerTransmit>.

requirement SWS_SwCluC_03513 [SWS_SwCluC_03513] 📄 PDF

[SWS_SwCluC_03513] Support the <ComUser_ComCbkCopyRxData> notification callback Status: DRAFT Upstream requirements: SRS_SwCluC_00211, SRS_SwCluC_00202 ⌈The Com High Proxy shall support the <ComUser_ComCbkCopyRxData> notifica- tion callback, configured via the ComUserCallbackName (See [ECUC_Com_10036]) parameter, where the ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_TP_COPY_RX_DATA⌋ Please note that only a single Com user can be notified with <ComUser_Com- CbkCopyRxData>. module

requirement SWS_SwCluC_03514 [SWS_SwCluC_03514] 📄 PDF

[SWS_SwCluC_03514] Support of <ComUser_ComCbkStartOfReception> noti- fication callback Status: DRAFT Upstream requirements: SRS_SwCluC_00211, SRS_SwCluC_00202 ⌈The Com High Proxy shall support the <ComUser_ComCbkStartOfReception> notification callback configured via the ComUserCallbackName (See [ECUC_Com_ 10036]) parameter where the ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_RX_START_OF_RECEPTION⌋ Please note that only a single Com user can be notified with <ComUser_Com- CbkStartOfReception>.

requirement SWS_SwCluC_03515 [SWS_SwCluC_03515] 📄 PDF

[SWS_SwCluC_03515] Support the <ComUser_ComCbkTpRxIndication> notifi- cation callback Status: DRAFT Upstream requirements: SRS_SwCluC_00211, SRS_SwCluC_00202 ⌈The Com High Proxy shall support the <ComUser_ComCbkTpRxIndication> notification callback, configured via the ComUserCallbackName (See [ECUC_Com_ 10036]) parameter, where the ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_TP_RX_INDICATION⌋ Please note that only a single Com user can be notified with <ComUser_ComCbkT- pRxIndication>.

requirement SWS_SwCluC_03516 [SWS_SwCluC_03516] 📄 PDF

[SWS_SwCluC_03516] Support of <ComUser_ComCbkTpTxConfirmation> noti- fication callback Status: DRAFT Upstream requirements: SRS_SwCluC_00211, SRS_SwCluC_00202 ⌈The Com High Proxy shall support the <ComUser_ComCbkTpTxConfirmation> notification callback, configured via the ComUserCallbackName (See [ECUC_Com_ 10036]) parameter, where the ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_TP_TX_CONFIRMATION⌋ Please note that only a single Com user can be notified with <ComUser_ComCbkTp- TxConfirmation>.

requirement SWS_SwCluC_03517 [SWS_SwCluC_03517] 📄 PDF

[SWS_SwCluC_03517] Support of <ComUser_ComCbkCopyTxData> notification callback Status: DRAFT Upstream requirements: SRS_SwCluC_00211, SRS_SwCluC_00202 ⌈The Com High Proxy shall support the <ComUser_ComCbkCopyTxData> notifica- tion callback, configured via the ComUserCallbackName (See [ECUC_Com_10036]) parameter, where the ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_TP_COPY_TX_DATA⌋ module Please note that only a single Com user can be notified with <ComUser_Com- CbkCopyTxData>. Please note as well [SWS_SwCluC_CONSTR_02667]!

requirement SWS_SwCluC_03519 [SWS_SwCluC_03519] 📄 PDF

[SWS_SwCluC_03519] The Com Low Proxy shall provide the entry function for transmission requests Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈The Com Low Proxy shall provide the entry function for transmission requests, according to [SWS_SwCluC_03506], once per configured SwCluCComProxyBas- eSocket at the EcucPartition configured by SwCluCComProxyBaseSocket. SwCluCProxyEcucPartitionRef. ⌋

requirement SWS_SwCluC_03521 [SWS_SwCluC_03521] 📄 PDF

[SWS_SwCluC_03521] Provide an instance of all SwCluC_ComProxy_Com- CbkRxIndication notification callbacks Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈The Com Low Proxy shall provide an instance of all SwCluC_ComProxy_Com- CbkRxIndication notification callbacks, configured via the ComUserCallback- Name (See [ECUC_Com_10036]) parameter, with ComUserCallbackType (See [ECUC_Com_10034]) set to COM_RX_INDICATION.⌋ module

requirement SWS_SwCluC_03522 [SWS_SwCluC_03522] 📄 PDF

[SWS_SwCluC_03522] Provide an instance of all SwCluC_ComProxy_ComCbkTx- Confirmation notification callbacks Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈The Com Low Proxy shall provide an instance of all SwCluC_ComProxy_ComCbk- TxConfirmation notification callbacks, configured via the ComUserCallbackName (See [ECUC_Com_10036]) parameter, with ComUserCallbackType (See [ECUC_ Com_10034]) set to COM_TX_CONFIRMATION.⌋

requirement SWS_SwCluC_03523 [SWS_SwCluC_03523] 📄 PDF

[SWS_SwCluC_03523] Provide an instance of all SwCluC_ComProxy_ComCbk- TriggerTransmit notification callbacks Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈The Com Low Proxy shall provide an instance of all SwCluC_ComProxy_ComCbk- TriggerTransmit notification callbacks, configured via the ComUserCallback- Name (See [ECUC_Com_10036]) parameter, with ComUserCallbackType (See [ECUC_Com_10034]) set to COM_TX_TRIGGER_TRANSMIT.⌋

requirement SWS_SwCluC_03524 [SWS_SwCluC_03524] 📄 PDF

[SWS_SwCluC_03524] Provide an instance of all SwCluC_ComProxy_Com- CbkCopyRxData notification callbacks Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈The Com Low Proxy shall provide an instance of all SwCluC_ComProxy_Com- CbkCopyRxData notification callbacks, configured via the ComUserCallbackName (See [ECUC_Com_10036]) parameter, with ComUserCallbackType (See [ECUC_ Com_10034]) set to COM_TP_COPY_RX_DATA.⌋

requirement SWS_SwCluC_03525 [SWS_SwCluC_03525] 📄 PDF

[SWS_SwCluC_03525] Provide an instance of all SwCluC_ComProxy_Com- CbkStartOfReception notification callbacks Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈The Com Low Proxy shall provide an instance of all SwCluC_ComProxy_Com- CbkStartOfReception notification callbacks, configured via the ComUserCall- backName (See [ECUC_Com_10036]) parameter, with ComUserCallbackType (See [ECUC_Com_10034]) set to COM_RX_START_OF_RECEPTION.⌋

requirement SWS_SwCluC_03526 [SWS_SwCluC_03526] 📄 PDF

[SWS_SwCluC_03526] Provide an instance of all SwCluC_ComProxy_ComCbkT- pRxIndication notification callbacks Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈The Com Low Proxy shall provide an instance of all SwCluC_ComProxy_ComCbk- TpRxIndication notification callbacks, configured via the ComUserCallbackName (See [ECUC_Com_10036]) parameter, with ComUserCallbackType (See [ECUC_ Com_10034]) set to COM_TP_RX_INDICATION.⌋

requirement SWS_SwCluC_03527 [SWS_SwCluC_03527] 📄 PDF

[SWS_SwCluC_03527] Provide an instance of all SwCluC_ComProxy_ComCbkTp- TxConfirmation notification callbacks Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈The Com Low Proxy shall provide an instance of all SwCluC_ComProxy_ComCbk- TpTxConfirmation notification callbacks, configured via the ComUserCallback- Name (See [ECUC_Com_10036]) parameter, with the ComUserCallbackType (See [ECUC_Com_10034]) set to COM_TP_TX_CONFIRMATION.⌋

requirement SWS_SwCluC_03533 [SWS_SwCluC_03533] 📄 PDF

[SWS_SwCluC_03533]DET error handling if Com_Transmit is called for an unini- tialized Com High Proxy Status: DRAFT Upstream requirements: SRS_SwCluC_00211, SRS_BSW_00369, SRS_BSW_00323, SRS_- BSW_00350 ⌈If the development error detection is enabled for the Com High Proxy, the API • Com_Transmit shall report the DET error COM_E_UNINIT, in case the Com High Proxy is not initial- ized.⌋

requirement SWS_SwCluC_03534 [SWS_SwCluC_03534] 📄 PDF

[SWS_SwCluC_03534] DET error handling if Com_Transmit is invoked with a NULL_PTR Status: DRAFT Upstream requirements: SRS_SwCluC_00211, SRS_BSW_00369, SRS_BSW_00323, SRS_- BSW_00350 ⌈If the development error detection is enabled for the Com High Proxy, the API • Com_Transmit shall, when invoked with a NULL_PTR, report the DET error COM_E_PARAM_POINTER. ⌋

requirement SWS_SwCluC_03535 [SWS_SwCluC_03535] 📄 PDF

[SWS_SwCluC_03535] Invoke all the configured <ComUser_ComCbkRxIndica- tion> if SwCluC_ComProxy_ComCbkRxIndication is called Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈If the <ComUser_ComCbkRxIndication> notification callback is configured in the Com High Proxy (via the ComUserCallbackName (See [ECUC_Com_10036]) pa- rameter, where the ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_RX_INDICATION), all the configured <ComUser_ComCbkRxIndication> call- backs shall be invoked, when the associated instance of the SwCluC_ComProxy_ ComCbkRxIndication from the Com Low Proxy is called.⌋ module

requirement SWS_SwCluC_03536 [SWS_SwCluC_03536] 📄 PDF

[SWS_SwCluC_03536] Invoke the configured <ComUser_ComCbkTxConfirma- tion> if SwCluC_ComProxy_ComCbkRxIndication is called Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈If the <ComUser_ComCbkTxConfirmation> notification callback is configured in the Com High Proxy (via the ComUserCallbackName (See [ECUC_Com_10036]) parameter, where the ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_TX_CONFIRMATION), the configured <ComUser_ComCbkTxConfirmation> callback shall be invoked. when the associated instance of the SwCluC_ComProxy_ ComCbkTxConfirmation from the Com Low Proxy is called.⌋

requirement SWS_SwCluC_03537 [SWS_SwCluC_03537] 📄 PDF

[SWS_SwCluC_03537] Invoke the configured <ComUser_ComCbkTrigger- Transmit> if SwCluC_ComProxy_ComCbkTriggerTransmit is called Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈If the <ComUser_ComCbkTriggerTransmit> notification callback is configured in the Com High Proxy (via the ComUserCallbackName (See [ECUC_Com_10036]) parameter, where the ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_TX_TRIGGER_TRANSMIT), the configured <ComUser_ComCbkTriggerTrans- mit> callback shall be invoked, when the associated instance of the SwCluC_- ComProxy_ComCbkTriggerTransmit from the Com Low Proxy is called.⌋

requirement SWS_SwCluC_03538 [SWS_SwCluC_03538] 📄 PDF

[SWS_SwCluC_03538] Invoke the configured <ComUser_ComCbkCopyRxData> if SwCluC_ComProxy_ComCbkCopyRxData is called Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈If the <ComUser_ComCbkCopyRxData> notification callback is configured in the Com High Proxy (via the ComUserCallbackName (See [ECUC_Com_10036]) pa- rameter, where the ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_TP_COPY_RX_DATA), the configured <ComUser_ComCbkCopyRxData> call- back shall be invoked, when the associated instance of the SwCluC_ComProxy_- ComCbkCopyRxData from the Com Low Proxy is called.⌋

requirement SWS_SwCluC_03539 [SWS_SwCluC_03539] 📄 PDF

[SWS_SwCluC_03539] Invoke the configured <ComUser_ComCbkStartOfRe- ception> if SwCluC_ComProxy_ComCbkStartOfReception is called Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈If the <ComUser_ComCbkStartOfReception> notification callback is configured in the Com High Proxy (via the ComUserCallbackName (See [ECUC_Com_10036]) parameter, where the ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_RX_START_OF_RECEPTION), the configured <ComUser_ComCbkStartOfRe- ception> callback shall be invoked, when the associated instance of the SwCluC_ ComProxy_ComCbkStartOfReception from the Com Low Proxy is called.⌋ module

requirement SWS_SwCluC_03540 [SWS_SwCluC_03540] 📄 PDF

[SWS_SwCluC_03540] Invoke the configured <ComUser_ComCbkTpRxIndica- tion> if SwCluC_ComProxy_ComCbkTpRxIndication is called Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈If the <ComUser_ComCbkTpRxIndication> notification callback is configured in the Com High Proxy (via the ComUserCallbackName (See [ECUC_Com_10036]) parameter, where the ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_TP_RX_INDICATION), the configured <ComUser_ComCbkTpRxIndication> callback shall be invoked, when the associated instance of the SwCluC_ComProxy_ ComCbkTpRxIndication from the Com Low Proxy is called.⌋

requirement SWS_SwCluC_03541 [SWS_SwCluC_03541] 📄 PDF

[SWS_SwCluC_03541] Invoke the configured <ComUser_ComCbkTpTxConfir- mation> if SwCluC_ComProxy_ComCbkTpTxConfirmation is called Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈If the <ComUser_ComCbkTpTxConfirmation> notification callback is configured in the Com High Proxy (via the ComUserCallbackName (See [ECUC_Com_10036]) parameter, where the ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_TP_TX_CONFIRMATION), the configured <ComUser_ComCbkTpTxConfirma- tion> callback shall be invoked, when the associated instance of the SwCluC_- ComProxy_ComCbkTpTxConfirmation from the Com Low Proxy is called.⌋

requirement SWS_SwCluC_03542 [SWS_SwCluC_03542] 📄 PDF

[SWS_SwCluC_03542] Invoke the configured <ComUser_ComCbkCopyTxData> if SwCluC_ComProxy_ComCbkCopyTxData is called Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈If the <ComUser_ComCbkCopyTxData> notification callback is configured in the Com High Proxy (via the ComUserCallbackName (See [ECUC_Com_10036]) pa- rameter, where the ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_TP_COPY_TX_DATA), the configured <ComUser_ComCbkCopyTxData> call- back shall be invoked, when the associated instance of the SwCluC_ComProxy_- ComCbkCopyTxData from the Com Low Proxy is called.⌋

requirement SWS_SwCluC_03543 [SWS_SwCluC_03543] 📄 PDF

[SWS_SwCluC_03543] Create a required resource entry in the Binary Mani- fest Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈The Com High Proxy shall create, for each SwCluCComProxyBaseSocket, a re- quired resource entry in the Binary Manifest.⌋ Please note that the callbacks of the Application Software Cluster • <ComUser_ComCbkStartOfReception> • <ComUser_ComCbkCopyRxData> • <ComUser_ComCbkCopyTxData> • <ComUser_ComCbkTriggerTransmit> • <ComUser_ComCbkRxIndication> • <ComUser_ComCbkTpRxIndication> • <ComUser_ComCbkTxConfirmation> • <ComUser_ComCbkTpTxConfirmation> are connected to the Host Software Cluster via the Com base socket. See

requirement SWS_SwCluC_03548 [SWS_SwCluC_03548] 📄 PDF

[SWS_SwCluC_03548] Support of changing Application Software Cluster without rebuilding Host Software Cluster Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈The Com Proxy shall support that the ComUserCbkHandleId of ComUserIPdus configured in Com users of the Application Software Cluster can change, without reconfiguration or rebuild of the Host Software Cluster.⌋

requirement SWS_SwCluC_03549 [SWS_SwCluC_03549] 📄 PDF

[SWS_SwCluC_03549] Provision of ComUserCbkHandleId values Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈The Com Low Proxy shall provide in its ComUserModuleCnf containers the Co- mUserCbkHandleId values for the configured ComUserIPdus, according to its inter- nal implementation requirements (e.g. to address the Com Low Proxy’s data struc- tures).⌋

requirement SWS_SwCluC_03550 [SWS_SwCluC_03550] 📄 PDF

[SWS_SwCluC_03550] In the Application Software Cluster, the relationship between a Co- mUserIPdu and the related Base Socket is given indirectly, via the common EcucPartition(s) of the SwCluCComProxyBaseSocket.SwCluCProxyEcucPar- titionRef and the EcucPartition of the ComIPdu’s referenced Pdu. Where the EcucPartition of the Pdu is given via Pdu.EcucPduDefaultPartitionRef or Pdu.EcucPduDedicatedPartition.EcucPduDedicatedPartitionRef, where EcucPduDedicatedPartition applies for Com configuration. Those relationships are illustrated in figure 7.14. The reason not to define a dedicated EcuC configuration structure for this purpose, is the assumption that the same tools are used to derive the Com configuration for an Application Software Cluster and a Host Soft- ware Cluster. Those relationships are illustrated in figure 7.14.

requirement SWS_SwCluC_03554 [SWS_SwCluC_03554] 📄 PDF

[SWS_SwCluC_03554] Guard value calculation for ComIPdu Upstream requirements: SRS_SwCluC_00211 ⌈The Com Proxy shall use the following attributes from an ComIPdu for the guard value calculation • ComIPduDirection • ComIPduType ⌋ module

requirement SWS_SwCluC_90000 [SWS_SwCluC_90000] 📄 PDF

/ Restrictions Guard Value relevant no standardized resourceNeeds Table 7.11: SWCLUSTER_RES_BASE_CNF

requirement SWS_SwCluC_90001 [SWS_SwCluC_90001] 📄 PDF

/ Restrictions Guard Value relevant NvM/NvMBlockDescriptor NvMBlockManagementType 1 Value NvM/NvMBlockDescriptor NvMBlockUseAutoValidation 1 Value NvM/NvMBlockDescriptor NvMBlockUseCrc 1 Value NvM/NvMBlockDescriptor NvMBlockUseSetRamBlock Status 1 Value NvM/NvMBlockDescriptor NvMBlockWriteProt 1 Value NvM/NvMBlockDescriptor NvMCalcRamBlockCrc 1 Value NvM/NvMBlockDescriptor NvMResistantToChangedSw 1 Value NvM/NvMBlockDescriptor NvMRomBlockNum 1 Value NvM/NvMBlockDescriptor NvMSelectBlockForReadAll 1 Value NvM/NvMBlockDescriptor NvMSelectBlockForWriteAll 1 Value NvM/NvMBlockDescriptor NvMWriteBlockOnce 1 Value NvM/NvMCommon NvMSetRamBlockStatusApi 1 Value SwCluC/SwCluCProxies/Sw CluCNvMProxy/SwCluCNv MProxyNvBlock SwCluCNvMProxyNvBlockMax Length 1 Value Table 7.21: SWCLUSTER_RES_NV_BLOCK

requirement SWS_SwCluC_90002 [SWS_SwCluC_90002] 📄 PDF

/ Restrictions Guard Value relevant no standardized resourceNeeds Table 7.13: SWCLUSTER_RES_OS_BASE_SOCKET

requirement SWS_SwCluC_90003 [SWS_SwCluC_90003] 📄 PDF

/ Restrictions Guard Value relevant no standardized resourceNeeds Table 7.14: SWCLUSTER_RES_OS_APPLICATION

requirement SWS_SwCluC_90004 [SWS_SwCluC_90004] 📄 PDF

/ Restrictions Guard Value relevant Os/OsTask OsTaskPriority 1 Value Os/OsTask OsTaskSchedule 1 Value Table 7.15: SWCLUSTER_RES_OS_TASK

requirement SWS_SwCluC_90005 [SWS_SwCluC_90005] 📄 PDF

/ Restrictions Guard Value relevant no standardized resourceNeeds Table 7.16: SWCLUSTER_RES_OS_RESOURCE

requirement SWS_SwCluC_90006 [SWS_SwCluC_90006] 📄 PDF

/ Restrictions Guard Value relevant no standardized resourceNeeds Table 7.17: SWCLUSTER_RES_OS_SPINLOCK

requirement SWS_SwCluC_90007 [SWS_SwCluC_90007] 📄 PDF

/ Restrictions Guard Value relevant Os/OsTask OsTaskPriority 1 Value Os/OsTask OsTaskSchedule 1 Value Table 7.18: SWCLUSTER_RES_OS_TASK_DISPATCHER

requirement SWS_SwCluC_90008 [SWS_SwCluC_90008] 📄 PDF

/ Restrictions Guard Value relevant no standardized resourceNeeds Table 7.12: SWCLUSTER_RES_XCC_BASE_SOCKET

requirement SWS_SwCluC_90009 [SWS_SwCluC_90009] 📄 PDF

/ Restrictions Guard Value relevant no standardized resourceNeeds Table 7.19: SWCLUSTER_RES_OS_FNC_DISPATCHER

requirement SWS_SwCluC_90010 [SWS_SwCluC_90010] 📄 PDF

/ Restrictions Guard Value relevant no standardized resourceNeeds Table 7.20: SWCLUSTER_RES_NVM_BASE_SOCKET

requirement SWS_SwCluC_90011 [SWS_SwCluC_90011] 📄 PDF

/ Restrictions Guard Value relevant no standardized resourceNeeds Table 7.22: SWCLUSTER_RES_COM_BASE_SOCKET

requirement SWS_SwCluC_90012 [SWS_SwCluC_90012] 📄 PDF

/ Restrictions Guard Value relevant no standardized resourceNeeds Table 7.23: SWCLUSTER_RES_LDCOM_BASE_SOCKET

requirement SWS_SwCluC_90013 [SWS_SwCluC_90013] 📄 PDF

/ Restrictions Guard Value relevant no standardized resourceNeeds Table 7.24: SWCLUSTER_RES_DCM_BASE_SOCKET

requirement SWS_SwCluC_90014 [SWS_SwCluC_90014] 📄 PDF

/ Restrictions Guard Value relevant no standardized resourceNeeds Table 7.25: SWCLUSTER_RES_DCM_DIAGNOSTIC_DATA

requirement SWS_SwCluC_90015 [SWS_SwCluC_90015] 📄 PDF

/ Restrictions Guard Value relevant no standardized resourceNeeds Table 7.26: SWCLUSTER_RES_DCM_ROUTINE_CONTROL

requirement SWS_SwCluC_90016 [SWS_SwCluC_90016] 📄 PDF

/ Restrictions Guard Value relevant no standardized resourceNeeds Table 7.27: SWCLUSTER_RES_DCM_SERVICE_REQUEST_NOTIFICATION

requirement SWS_SwCluC_90017 [SWS_SwCluC_90017] 📄 PDF

/ Restrictions Guard Value relevant no standardized resourceNeeds Table 7.28: SWCLUSTER_RES_DEM_BASE_SOCKET

requirement SWS_SwCluC_90018 [SWS_SwCluC_90018] 📄 PDF

/ Restrictions Guard Value relevant Dem/DemConfigSet/Dem EventParameter DemDebounceAlgorithmClass 1 choice of debouncing without contained parameters Choice Dem/DemConfigSet/Dem EventParameter DemEventReportingType 1 Value Table 7.29: SWCLUSTER_RES_DEM_DIAGNOSTIC_EVENT

requirement SWS_SwCluC_90019 [SWS_SwCluC_90019] 📄 PDF

/ Restrictions Guard Value relevant no standardized resourceNeeds Table 7.30: SWCLUSTER_RES_FIM_BASE_SOCKET

requirement SWS_SwCluC_90020 [SWS_SwCluC_90020] 📄 PDF

/ Restrictions Guard Value relevant no standardized resourceNeeds Table 7.31: SWCLUSTER_RES_FIM_FID

requirement SWS_SwCluC_90021 [SWS_SwCluC_90021] 📄 PDF

/ Restrictions Guard Value relevant no standardized resourceNeeds Table 7.32: SWCLUSTER_RES_WDGM_BASE_SOCKET

requirement SWS_SwCluC_90022 [SWS_SwCluC_90022] 📄 PDF

/ Restrictions Guard Value relevant no standardized resourceNeeds Table 7.33: SWCLUSTER_RES_WDGM_TRANSITION

requirement SWS_SwCluC_CONSTR_00073 [SWS_SwCluC_CONSTR_00073] 📄 PDF

⌊ DRAFT g The Immutable Tables Checksum shall be calculated on the binary representation in memory of the immutable mem- ory area (inclusive reserved memory space) in ascending order of memory address as CRC32 according to 32-bit Ethernet CRC Calculation as described in docu- ment [7].

requirement SWS_SwCluC_CONSTR_00074 [SWS_SwCluC_CONSTR_00074] 📄 PDF

⌊ DRAFT g The Total Manifest Checksum shall be calculated on the binary representation in memory of the immutable memory area and modifiable memory area (inclusive reserved memory space) in ascending order of memory address as CRC32, according to 32-bit Ethernet CRC Calcu- lation as described in document [7].

requirement SWS_SwCluC_CONSTR_00078 [SWS_SwCluC_CONSTR_00078] 📄 PDF

⌊ DRAFT g SwCluCBaseConfigurationCheck relates only to a CpSoftwareClusterServiceResource of category SWCLUS- TER_RES_BASE_CNF The SwCluCBaseConfigurationCheck . SwCluCRe- sourceRef shall only reference a CpSoftwareClusterServiceResource of category SWCLUSTER_RES_BASE_CNF .

requirement SWS_SwCluC_CONSTR_00091 [SWS_SwCluC_CONSTR_00091] 📄 PDF

In a set of SwCluCBManifProvideHandle in a SwCluCBManifResourceType it is not permitted to set SwCluCBManifIsOp- tional to false , if any preceding SwCluCBManifProvideHandle has already set SwCluCBManifIsOptional to true .

requirement SWS_SwCluC_CONSTR_00092 [SWS_SwCluC_CONSTR_00092] 📄 PDF

In a set of SwCluCBManifNotifierHandle in a SwCluCBManifResourceType it is not permitted to set SwCluCBManifIsOp- tional to false , if any preceding SwCluCBManifNotifierHandle has already set SwCluCBManifIsOptional to true .

requirement SWS_SwCluC_CONSTR_00093 [SWS_SwCluC_CONSTR_00093] 📄 PDF

In a set of SwCluCBManifProvideHandle in a SwCluCBManifResourceType at most one optional handle shall exist.

requirement SWS_SwCluC_CONSTR_00094 [SWS_SwCluC_CONSTR_00094] 📄 PDF

In a set of SwCluCBManifNotifierHandle in a SwCluCBManifResourceType at most one optional handle shall exist.

requirement SWS_SwCluC_CONSTR_02130 [SWS_SwCluC_CONSTR_02130] 📄 PDF

⌊ DRAFT g SwCluCNvMBaseSocket relates only to a CpSoftwareClusterServiceResource of category SWCLUSTER_RES_- NVM_BASE_SOCKET The SwCluCNvMBaseSocket . SwCluCResourceRef shall only reference a CpSoftwareClusterServiceResource of category SWCLUSTER_- RES_NVM_BASE_SOCKET .

requirement SWS_SwCluC_CONSTR_02131 [SWS_SwCluC_CONSTR_02131] 📄 PDF

⌊ DRAFT g SwCluCNvMProxyNvBlock relates only to a CpSoftwareClusterServiceResource of category SWCLUSTER_- RES_NV_BLOCK The SwCluCNvMProxyNvBlock . SwCluCResourceRef shall only reference a CpSoftwareClusterServiceResource of category SWCLUSTER_- RES_NV_BLOCK .

requirement SWS_SwCluC_CONSTR_02135 [SWS_SwCluC_CONSTR_02135] 📄 PDF

⌊ DRAFT g The NvM High Proxy shall reject config- urations, where no ROM block is configured via the parameter NvMRomBlockDataAd- dress , or the parameter NvMInitBlockCallback .

requirement SWS_SwCluC_CONSTR_02141 [SWS_SwCluC_CONSTR_02141] 📄 PDF

⌊ DRAFT g The NvM High Proxy shall reject con- figurations, where the NV Block length given by NvMNvBlockLength is larger than the maximum size foreseen in the Host Software Cluster , given by SwCluCN- vMProxyNvBlockMaxLength .

requirement SWS_SwCluC_CONSTR_02145 [SWS_SwCluC_CONSTR_02145] 📄 PDF

[SWS_SwCluC_CONSTR_02145] Application Software Cluster’s NvBlocks are treated as ’resistant to changed SW’ by NvM in Host Software Cluster Upstream requirements: SRS_SwCluC_00206, SRS_BSW_00167 ⌈For any NVRAM Block belonging to an Application Software Cluster (NvM Low Proxy of the SwCluC occurs as block user) the parameter NvMResistant- ToChangedSw shall be set to TRUE in the Host Software Cluster.⌋ Note: This includes the NVRAM Blocks used to store the configuration ID of a specific Application Software Cluster In addition, the NvBlocks in the Host Software Cluster have to be configured such, that the Configuration ID block of an Application Software Clus- ter is restored before the regular NvBlocks of that Application Software Clus- ter. Since the NvM ensures the processing order of NvM Blocks during a NvM_- ReadAll job by the Block Id ([SWS_NvM_00244]). This enables that the NvM High Proxy can process its Config Block ID handling before that recovery of the regular NvBlocks.

requirement SWS_SwCluC_CONSTR_02146 [SWS_SwCluC_CONSTR_02146] 📄 PDF

[SWS_SwCluC_CONSTR_02146] Block IDs of Application Software Clus- ter’s Configuration ID blocks in Host Software Cluster Upstream requirements: SRS_SwCluC_00206, SRS_BSW_00167 ⌈In the NvM module of the Host Software Cluster the Configuration ID block of an Application Software Cluster shall be configured with a lower block ID than all the other NvBlocks of the identical Application Software Clus- ter.⌋ Please note, that the configured Block IDs of an Application Software Clus- ter’s NvBlock can differ in the configuration in the NvM High Proxy and the NvM of the Host Software Cluster. The Block ID numbers are translated during the API calls from Application Soft- ware Cluster to the Host Software Cluster. Hence, a valid configuration of Block IDs in the Host Software Cluster can look like following example as shown in figure 7.12. module Figure 7.12: Example configuration of NvBlocks used by Application Software Clusters

requirement SWS_SwCluC_CONSTR_02148 [SWS_SwCluC_CONSTR_02148] 📄 PDF

Figure 7.12: Example configuration of NvBlocks used by Application Software Clusters [SWS_SwCluC_02147] Upstream requirements: SRS_SwCluC_00206 ⌈The NvM High Proxy of a specific Application Software Cluster shall en- able the configuration ID check , if the parameter NvMDynamicConfigura- tion is set to TRUE in this Application Software Cluster .⌋ Note: The parameter NvMDynamicConfiguration is set in the NvM module config- uration of the respective Application Software Cluster . Like in the configuration of the NvM module in the Host Software Cluster , the block ID 1 is reserved for the Configuration ID block in each Application Software Cluster . This Configuration ID block to contain the stored NVRAM configuration ID .

requirement SWS_SwCluC_CONSTR_02160 [SWS_SwCluC_CONSTR_02160] 📄 PDF

[SWS_SwCluC_CONSTR_02160] NvBlock configuration of Application Soft- ware Cluster’s Configuration ID blocks in Host Software Cluster Upstream requirements: SRS_SwCluC_00206 ⌈In the NvM module of the Host Software Cluster the Configuration ID block of an Application Software Cluster shall be configured with NvM- BlockManagementType == NVM_BLOCK_REDUNDANT and NvMBlockCrcType == NVM_CRC32.⌋

requirement SWS_SwCluC_CONSTR_02203 [SWS_SwCluC_CONSTR_02203] 📄 PDF

⌊ DRAFT g Constraint for Interrupts Interrupts are not supported for an Applicative Software Cluster , since it does not have ac- cess to the hardware or peripherials.

requirement SWS_SwCluC_CONSTR_02228 [SWS_SwCluC_CONSTR_02228] 📄 PDF

⌊ DRAFT g Constraint for ActivateTask Acti- vateTask is only allowed to be called in the task body of the Applicative Soft- ware Cluster .

requirement SWS_SwCluC_CONSTR_02229 [SWS_SwCluC_CONSTR_02229] 📄 PDF

⌊ DRAFT g Constraint for ChainTask Chain- Task is only allowed to be called in the task body of the Applicative Software Cluster .

requirement SWS_SwCluC_CONSTR_02230 [SWS_SwCluC_CONSTR_02230] 📄 PDF

⌊ DRAFT g Constraint for TerminateTask Ter- minateTask is only allowed to be called in the task body of the Applicative Soft- ware Cluster .

requirement SWS_SwCluC_CONSTR_02231 [SWS_SwCluC_CONSTR_02231] 📄 PDF

⌊ DRAFT g SwCluCOsProxyOsBaseSocket re- lates only to a CpSoftwareClusterServiceResource of category SWCLUS- TER_RES_OS_BASE_SOCKET The SwCluCOsProxyOsBaseSocket . SwCluCRe- sourceRef shall only reference a CpSoftwareClusterServiceResource of category SWCLUSTER_RES_OS_BASE_SOCKET .

requirement SWS_SwCluC_CONSTR_02232 [SWS_SwCluC_CONSTR_02232] 📄 PDF

⌊ DRAFT g SwCluCOsProxyOsApplication re- lates only to a CpSoftwareClusterServiceResource of category SWCLUS- TER_RES_OS_APPLICATION The SwCluCOsProxyOsApplication . SwCluCRe- sourceRef shall only reference a CpSoftwareClusterServiceResource of category SWCLUSTER_RES_OS_APPLICATION .

requirement SWS_SwCluC_CONSTR_02233 [SWS_SwCluC_CONSTR_02233] 📄 PDF

⌊ DRAFT g SwCluCOsProxyOsTask relates only to a CpSoftwareClusterServiceResource of category SWCLUSTER_RES_- OS_TASK The SwCluCOsProxyOsTask . SwCluCResourceRef shall only reference a CpSoftwareClusterServiceResource of category SWCLUSTER_RES_OS_- TASK .

requirement SWS_SwCluC_CONSTR_02234 [SWS_SwCluC_CONSTR_02234] 📄 PDF

⌊ DRAFT g SwCluCOsProxyOsResource relates only to a CpSoftwareClusterServiceResource of category SWCLUSTER_- RES_OS_RESOURCE The SwCluCOsProxyOsResource . SwCluCResourceRef shall only reference a CpSoftwareClusterServiceResource of category SWCLUSTER_RES_OS_RESOURCE .

requirement SWS_SwCluC_CONSTR_02235 [SWS_SwCluC_CONSTR_02235] 📄 PDF

⌊ DRAFT g SwCluCOsProxyOsSpinlock relates only to a CpSoftwareClusterServiceResource of category SWCLUSTER_- RES_OS_SPINLOCK The SwCluCOsProxyOsSpinlock . SwCluCResourceRef shall only reference a CpSoftwareClusterServiceResource of category SWCLUSTER_RES_OS_SPINLOCK .

requirement SWS_SwCluC_CONSTR_02236 [SWS_SwCluC_CONSTR_02236] 📄 PDF

⌊ DRAFT g SwCluCOsProxyOsTaskDispatcher relates only to a CpSoftwareClusterServiceResource of category SWCLUS- TER_RES_OS_TASK_DISPATCHER The SwCluCOsProxyOsTaskDispatcher . SwCluCResourceRef shall only reference a CpSoftwareClusterServiceRe- source of category SWCLUSTER_RES_OS_TASK_DISPATCHER .

requirement SWS_SwCluC_CONSTR_02237 [SWS_SwCluC_CONSTR_02237] 📄 PDF

⌊ DRAFT g SwCluCOsProxyFunctionDis- patcher relates only to a CpSoftwareClusterServiceResource of category SWCLUSTER_RES_OS_FNC_DISPATCHER The SwCluCOsProxyFunctionDis- patcher . SwCluCResourceRef shall only reference a CpSoftwareClusterSer- viceResource of category SWCLUSTER_RES_OS_FNC_DISPATCHER .

requirement SWS_SwCluC_CONSTR_02282 [SWS_SwCluC_CONSTR_02282] 📄 PDF

[SWS_SwCluC_CONSTR_02282] Constraint for ChainTask Upstream requirements: SRS_SwCluC_00214 ⌈In an Application Software Cluster, the ’ChainTask’ API shall only be called at the end of the function body of an ’OS Task’.⌋

requirement SWS_SwCluC_CONSTR_02283 [SWS_SwCluC_CONSTR_02283] 📄 PDF

[SWS_SwCluC_CONSTR_02283] Constraint for TerminateTask Upstream requirements: SRS_SwCluC_00214 ⌈In an Application Software Cluster, the ’TerminateTask’ API shall only be called at the end of the function body of an ’OS Task’.⌋ Rationale: When developing an Application Software Cluster, the Os High Proxy has no ability to call to the ’real’ Os to activate or terminate tasks based on calls to ’Chain- Task’, ’ActivateTask’ or ’TerminateTask’. However, this does not mean that calls to these functions cannot exist within application cluster code. It simply means that a SwCluC module implementation must contain ’stub’ representations of these functions module in an Os High Proxy which have no effect when called within an application cluster which has not been integrated in the final system which includes a Host Software Cluster. However, given that application clusters will eventually be integrated together with a host cluster, code in an application cluster must follow some rules to ensure that their usage of task management APIs do not clash with the intended use case of cyclic execution in cluster based configurations. Note: Where constraints

requirement SWS_SwCluC_CONSTR_02427 [SWS_SwCluC_CONSTR_02427] 📄 PDF

⌊ DRAFT g SwCluCDcmProxyDiagnosticData relates only to a CpSoftwareClusterServiceResource of category SWCLUS- TER_RES_DIAGNOSTIC_DATA The SwCluCDcmProxyDiagnosticData . SwClu- CResourceRef shall only reference a CpSoftwareClusterServiceResource of category SWCLUSTER_RES_DIAGNOSTIC_DATA .

requirement SWS_SwCluC_CONSTR_02428 [SWS_SwCluC_CONSTR_02428] 📄 PDF

⌊ DRAFT g SwCluCDcmProxyRoutineControl relates only to a CpSoftwareClusterServiceResource of category SWCLUS- TER_RES_DCM_ROUTINE_CONTROL The SwCluCDcmProxyRoutineControl . SwCluCResourceRef shall only reference a CpSoftwareClusterServiceRe- source of category SWCLUSTER_RES_DCM_ROUTINE_CONTROL .

requirement SWS_SwCluC_CONSTR_02429 [SWS_SwCluC_CONSTR_02429] 📄 PDF

⌊ DRAFT g SwCluCDcmProxyServiceRequest- Notification relates only to a CpSoftwareClusterServiceResource of category SWCLUSTER_RES_DCM_SERVICE_REQUEST_NOTIFICATION The SwCluCDcmProxyServiceRequestNotification . SwCluCResourceRef shall only reference a CpSoftwareClusterServiceResource of category SWCLUS- TER_RES_DCM_SERVICE_REQUEST_NOTIFICATION .

requirement SWS_SwCluC_CONSTR_02547 [SWS_SwCluC_CONSTR_02547] 📄 PDF

⌊ DRAFT g LdComIPdu s sent or received via trans- port protocol API shall be provided to at most one Applicative Software Clus- ter .

requirement SWS_SwCluC_CONSTR_02553 [SWS_SwCluC_CONSTR_02553] 📄 PDF

⌊ DRAFT g SwCluCLdComProxyBaseSocket re- lates only to a CpSoftwareClusterServiceResource of category SWCLUS- TER_RES_LDCOM_BASE_SOCKET The SwCluCLdComProxyBaseSocket . SwClu- CResourceRef shall only reference a CpSoftwareClusterServiceResource of category SWCLUSTER_RES_LDCOM_BASE_SOCKET .

requirement SWS_SwCluC_CONSTR_02554 [SWS_SwCluC_CONSTR_02554] 📄 PDF

⌊ DRAFT g The LdComUserHeaderInclude pa- rameter shall be configured as SwCluC_LdComProxy_Cbk.h .

requirement SWS_SwCluC_CONSTR_02555 [SWS_SwCluC_CONSTR_02555] 📄 PDF

⌊ DRAFT g Each SwCluC_LdComProxy_LdCom- CbkRxIndication notification callback, where the parameter LdComUserCall- backType (See [ECUC_LdCom_00025]) is set to LDCOM_RX_INDICATION , shall be configured as SwCluC_LdComProxy_<BS>_LdComCbkRxIndication , where <BS> is the shortName of the SwCluCLdComProxyBaseSocket container.

requirement SWS_SwCluC_CONSTR_02556 [SWS_SwCluC_CONSTR_02556] 📄 PDF

⌊ DRAFT g Each SwCluC_LdComProxy_LdCom- CbkTxConfirmation notification callback, where the parameter LdComUserCall- backType (See [ECUC_LdCom_00025]) is set to LDCOM_TX_CONFIRMATION , shall be configured as SwCluC_LdComProxy_<BS>_LdComCbkTxConfirmation , where <BS> is the shortName of the SwCluCLdComProxyBaseSocket container.

requirement SWS_SwCluC_CONSTR_02557 [SWS_SwCluC_CONSTR_02557] 📄 PDF

⌊ DRAFT g Each SwCluC_LdComProxy_LdCom- CbkTriggerTransmit notification callback, where the parameter LdComUserCall- backType (See [ECUC_LdCom_00025]) is set to LDCOM_TX_TRIGGER_TRANSMIT , shall be configured as SwCluC_LdComProxy_<BS>_LdComCbkTriggerTransmit , where <BS> is the shortName of the SwCluCLdComProxyBaseSocket container.

requirement SWS_SwCluC_CONSTR_02558 [SWS_SwCluC_CONSTR_02558] 📄 PDF

⌊ DRAFT g Each SwCluC_LdComProxy_LdCom- CbkCopyRxData notification callback, where the parameter LdComUserCallback- Type (See [ECUC_LdCom_00025]) is set to LDCOM_TP_COPY_RX_DATA , shall be configured as SwCluC_LdComProxy_<BS>_LdComCbkCopyRxData , where <BS> is the shortName of the SwCluCLdComProxyBaseSocket container.

requirement SWS_SwCluC_CONSTR_02559 [SWS_SwCluC_CONSTR_02559] 📄 PDF

⌊ DRAFT g Each SwCluC_LdComProxy_LdCom- CbkStartOfReception notification callback, where the parameter LdComUser- CallbackType (See [ECUC_LdCom_00025]) is set to LDCOM_TP_COPY_RX_DATA , shall be configured as SwCluC_LdComProxy_<BS>_LdComCbkCopyRxData , where <BS> is the shortName of the SwCluCLdComProxyBaseSocket container.

requirement SWS_SwCluC_CONSTR_02560 [SWS_SwCluC_CONSTR_02560] 📄 PDF

⌊ DRAFT g Each SwCluC_LdComProxy_LdCom- CbkTpRxIndication notification callback, where the parameter LdComUserCall- backType (See [ECUC_LdCom_00025]) is set to LDCOM_TP_RX_INDICATION , shall be configured as SwCluC_LdComProxy_<BS>_LdComCbkTpRxIndication , where <BS> is the shortName of the SwCluCLdComProxyBaseSocket container.

requirement SWS_SwCluC_CONSTR_02561 [SWS_SwCluC_CONSTR_02561] 📄 PDF

⌊ DRAFT g Each SwCluC_LdCom- Proxy_LdComCbkTpTxConfirmation notification callback, where the parameter LdComUserCallbackType (See [ECUC_LdCom_00025]) is set to LDCOM_TP_TX_CONFIRMATION , shall be configured as SwCluC_LdComProxy_<BS>_LdComCbkTpTxConfirmation , where <BS> is the shortName of the SwCluCLdComProxyBaseSocket container.

requirement SWS_SwCluC_CONSTR_02562 [SWS_SwCluC_CONSTR_02562] 📄 PDF

⌊ DRAFT g Each SwCluC_LdComProxy_LdCom- CbkCopyTxData notification callback, where the parameter LdComUserCallback- Type (See [ECUC_LdCom_00025]) is set to LDCOM_TP_COPY_TX_DATA , shall be configured as SwCluC_LdComProxy_<BS>_LdComCbkCopyTxData , where <BS> is the shortName of the SwCluCLdComProxyBaseSocket container.

requirement SWS_SwCluC_CONSTR_02653 [SWS_SwCluC_CONSTR_02653] 📄 PDF

⌊ DRAFT g Sent signals or signal groups shall be provided to at most one Applicative Software Cluster .

requirement SWS_SwCluC_CONSTR_02654 [SWS_SwCluC_CONSTR_02654] 📄 PDF

⌊ DRAFT g The ComUserHeaderInclude param- eter shall be configured as SwCluC_ComProxy_Cbk.h .

requirement SWS_SwCluC_CONSTR_02655 [SWS_SwCluC_CONSTR_02655] 📄 PDF

⌊ DRAFT g Each notification callback, where the parameter ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_RX_- ACK , shall be configured as SwCluC_ComProxy_<BS>_CbkRxAck , where <BS> is the shortName of the SwCluCComProxyBaseSocket container

requirement SWS_SwCluC_CONSTR_02656 [SWS_SwCluC_CONSTR_02656] 📄 PDF

⌊ DRAFT g Each notification callback, where the parameter ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_RX_- INV , shall be configured as SwCluC_ComProxy_<BS>_CbkInv , where <BS> is the shortName of the SwCluCComProxyBaseSocket container.

requirement SWS_SwCluC_CONSTR_02657 [SWS_SwCluC_CONSTR_02657] 📄 PDF

⌊ DRAFT g Each notification callback where the pa- rameter ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_RX_TOUT shall be configured as SwCluC_ComProxy_<BS>_CbkRxTOut where <BS> is the shortName of the SwCluCComProxyBaseSocket container

requirement SWS_SwCluC_CONSTR_02658 [SWS_SwCluC_CONSTR_02658] 📄 PDF

⌊ DRAFT g Each notification callback, where the parameter ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_TX_- ACK , shall be configured as SwCluC_ComProxy_<BS>_CbkTxAck , where <BS> is the shortName of the SwCluCComProxyBaseSocket container.

requirement SWS_SwCluC_CONSTR_02659 [SWS_SwCluC_CONSTR_02659] 📄 PDF

⌊ DRAFT g Each notification callback, where the parameter ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_TX_- ERR , shall be configured as SwCluC_ComProxy_<BS>_CbkTErr , where <BS> is the shortName of the SwCluCComProxyBaseSocket container

requirement SWS_SwCluC_CONSTR_02660 [SWS_SwCluC_CONSTR_02660] 📄 PDF

⌊ DRAFT g Each notification callback, where the parameter ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_TX_- TOUT , shall be configured as SwCluC_ComProxy_<BS>_CbkTxTOut , where <BS> is the shortName of the SwCluCComProxyBaseSocket container

requirement SWS_SwCluC_CONSTR_02664 [SWS_SwCluC_CONSTR_02664] 📄 PDF

⌊ DRAFT g SwCluCComProxyBaseSocket relates only to a CpSoftwareClusterServiceResource of category SWCLUS- TER_RES_COM_BASE_SOCKET The SwCluCComProxyBaseSocket . SwCluCRe- sourceRef shall only reference a CpSoftwareClusterServiceResource of category SWCLUSTER_RES_COM_BASE_SOCKET .

requirement SWS_SwCluC_CONSTR_02720 [SWS_SwCluC_CONSTR_02720] 📄 PDF

⌊ DRAFT g SwCluCDemProxyBaseSocket relates only to a CpSoftwareClusterServiceResource of category SWCLUS- TER_RES_DEM_BASE_SOCKET The SwCluCDemProxyBaseSocket . SwCluCRe- sourceRef shall only reference a CpSoftwareClusterServiceResource of category SWCLUSTER_RES_DEM_BASE_SOCKET .

requirement SWS_SwCluC_CONSTR_02721 [SWS_SwCluC_CONSTR_02721] 📄 PDF

⌊ DRAFT g SwCluCDemProxyDiagnosticEvent relates only to a CpSoftwareClusterServiceResource of category SWCLUS- TER_RES_DIAGNOSTIC_EVENT The SwCluCDemProxyDiagnosticEvent . SwCluCResourceRef shall only reference a CpSoftwareClusterServiceRe- source of category SWCLUSTER_RES_DIAGNOSTIC_EVENT .

requirement SWS_SwCluC_CONSTR_02752 [SWS_SwCluC_CONSTR_02752] 📄 PDF

⌊ DRAFT g SwCluCDemProxyBaseSocket relates only to a CpSoftwareClusterServiceResource of category SWCLUS- TER_RES_DCM_BASE_SOCKET The SwCluCDcmProxyBaseSocket . SwCluCRe- sourceRef shall only reference a CpSoftwareClusterServiceResource of category SWCLUSTER_RES_DCM_BASE_SOCKET .

requirement SWS_SwCluC_CONSTR_03020 [SWS_SwCluC_CONSTR_03020] 📄 PDF

⌊ DRAFT g For each EcucPartition on which the mode switch notification is configured for a ModeDeclarationGroup- Prototype required by an Applicative Software Cluster , a OsTask with a related SwCluCOsProxyOsTask and SwCluCOsProxyOsTaskDispatcher shall be configured.

requirement SWS_SwCluC_CONSTR_03021 [SWS_SwCluC_CONSTR_03021] 📄 PDF

⌊ DRAFT g For each required ModeDeclara- tionGroupPrototype and EcucPartition on which the mode switch noti- fication is configured, a OsTask with a related SwCluCOsProxyOsTask and SwCluCOsProxyOsTaskDispatcher shall be configured.

requirement SWS_SwCluC_CONSTR_03032 [SWS_SwCluC_CONSTR_03032] 📄 PDF

⌊ DRAFT g For each mode provided by an Ap- plicative Software Cluster , the Ecu Extract of the Host Software Cluster shall own a required mode switch port at the CompositionSwCompo- nentType of the rootSoftwareComposition .

requirement SWS_SwCluC_CONSTR_03053 [SWS_SwCluC_CONSTR_03053] 📄 PDF

⌊ DRAFT g For each EcucPartition on which the trigger notification is configured for a trigger required by an Applica- tive Software Cluster , a OsTask , with a related SwCluCOsProxyOsTask and SwCluCOsProxyOsTaskDispatcher , shall be configured.

requirement SWS_SwCluC_CONSTR_03054 [SWS_SwCluC_CONSTR_03054] 📄 PDF

⌊ DRAFT g For each required trigger and Ecuc- Partition on which triggered ExecutableEntitys needs to be executed, at least one OsTask , with a related SwCluCOsProxyOsTask and SwCluCOsProx- yOsTaskDispatcher , shall be configured.

requirement SWS_SwCluC_CONSTR_03059 [SWS_SwCluC_CONSTR_03059] 📄 PDF

⌊ DRAFT g The Ecu Extract of the Host Soft- ware Cluster shall, for each trigger provided by an Applicative Software Cluster , own a required trigger port at the CompositionSwComponentType of the rootSoftwareComposition .

requirement SWS_SwCluC_CONSTR_03063 [SWS_SwCluC_CONSTR_03063] 📄 PDF

⌊ DRAFT g SwCluCXccBaseSocket relates only to a CpSoftwareClusterServiceResource of category SWCLUSTER_RES_- XCC_BASE_SOCKET The SwCluCXccBaseSocket . SwCluCResourceRef shall only reference a CpSoftwareClusterServiceResource of category SWCLUSTER_- RES_XCC_BASE_SOCKET .

requirement SWS_SwCluC_CONSTR_03066 [SWS_SwCluC_CONSTR_03066] 📄 PDF

⌊ DRAFT g The implementation of a Cross Clus- ter Communication of an Applicative Software Clusters shall not exe- cute code belonging to any other Software Cluster , except from special entry points provided by the Host Software Cluster (e.g. to implement event passing)

requirement SWS_SwCluC_CONSTR_03067 [SWS_SwCluC_CONSTR_03067] 📄 PDF

⌊ DRAFT g The implementation of a Cross Clus- ter Communication of an Applicative Software Cluster shall only write into the memory of other Software Clusters , if that write does not cross a Par- tition border. To determine this, the Applicative Software Cluster needs to determine if the CpSoftwareClusterResource is assigned to the same partition.

requirement SWS_SwCluC_CONSTR_03069 [SWS_SwCluC_CONSTR_03069] 📄 PDF

⌊ DRAFT g The EcucModuleConfigurationVa- lues of the SwCluC module shall set the RteRipsPluginCommunicationScope to RTE_RIPS_CROSS_SW_CLUSTER_COM .

requirement SWS_SwCluC_CONSTR_03093 [SWS_SwCluC_CONSTR_03093] 📄 PDF

[SWS_SwCluC_CONSTR_03093] [SWS_SwCluC_CONSTR_03400] [SWS_ SwCluC_CONSTR_03403] [SWS_SwCluC_NA_00999] F.3.2 Changed Specification Items in R22-11

requirement SWS_SwCluC_CONSTR_03210 [SWS_SwCluC_CONSTR_03210] 📄 PDF

⌊ DRAFT g SwCluCFiMProxyBaseSocket relates only to a CpSoftwareClusterServiceResource of category SWCLUS- TER_RES_FIM_BASE_SOCKET The SwCluCFiMProxyBaseSocket . SwCluCRe- sourceRef shall only reference a CpSoftwareClusterServiceResource of category SWCLUSTER_RES_FIM_BASE_SOCKET .

requirement SWS_SwCluC_CONSTR_03211 [SWS_SwCluC_CONSTR_03211] 📄 PDF

⌊ DRAFT g SwCluCFiMProxyFID relates only to a CpSoftwareClusterServiceResource of category SWCLUSTER_RES_FID The SwCluCFIMProxyFID . SwCluCResourceRef shall only reference a CpSoft- wareClusterServiceResource of category SWCLUSTER_RES_FIM_FID .

requirement SWS_SwCluC_CONSTR_03400 [SWS_SwCluC_CONSTR_03400] 📄 PDF

[SWS_SwCluC_CONSTR_03400] [SWS_ SwCluC_CONSTR_03403] [SWS_SwCluC_NA_00999] F.3.2 Changed Specification Items in R22-11

requirement SWS_SwCluC_CONSTR_03546 [SWS_SwCluC_CONSTR_03546] 📄 PDF

[SWS_SwCluC_CONSTR_03546] Multiplicity of provided ComIPdus Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈Sent ComIPdu shall be provided to at most one Application Software Clus- ter.⌋ In addition, the Com Proxy does not support a fan out of ComIPdus sent or received via transport protocol API. Please note that the PduR supports a fan-out of TP-connections to upper layers.

requirement SWS_SwCluC_CONSTR_03555 [SWS_SwCluC_CONSTR_03555] 📄 PDF

[SWS_SwCluC_CONSTR_03555] Existence of SwCluC_ComProxy_Com- CbkRxIndication Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈Each SwCluC_ComProxy_ComCbkRxIndication notification call- back, where the parameter ComUserCallbackType (See [ECUC_- Com_10034]) is set to COM_RX_INDICATION, shall be configured as SwCluC_ComProxy_<BS>_ComCbkRxIndication, where <BS> is the short- Name of the SwCluCComProxyBaseSocket container.⌋

requirement SWS_SwCluC_CONSTR_03556 [SWS_SwCluC_CONSTR_03556] 📄 PDF

[SWS_SwCluC_CONSTR_03556] Existence of SwCluC_ComProxy_ComCbkTx- Confirmation Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈Each SwCluC_ComProxy_ComCbkTxConfirmation notification call- back, where the parameter ComUserCallbackType (See [ECUC_- Com_10034]) is set to COM_TX_CONFIRMATION, shall be configured as SwCluC_ComProxy_<BS>_ComCbkTxConfirmation, where <BS> is the short- Name of the SwCluCComProxyBaseSocket container.⌋

requirement SWS_SwCluC_CONSTR_03557 [SWS_SwCluC_CONSTR_03557] 📄 PDF

[SWS_SwCluC_CONSTR_03557] Existence of SwCluC_ComProxy_ComCbkTrig- gerTransmit Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈Each SwCluC_ComProxy_ComCbkTriggerTransmit notification call- back, where the parameter ComUserCallbackType (See [ECUC_Com_- 10034]) is set to COM_TX_TRIGGER_TRANSMIT, shall be configured as module SwCluC_ComProxy_<BS>_ComCbkTriggerTransmit, where <BS> is the shortName of the SwCluCComProxyBaseSocket container.⌋

requirement SWS_SwCluC_CONSTR_03558 [SWS_SwCluC_CONSTR_03558] 📄 PDF

[SWS_SwCluC_CONSTR_03558] Existence of SwCluC_ComProxy_ComCbkCopy- RxData Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈Each SwCluC_ComProxy_ComCbkCopyRxData notification callback, where the parameter ComUserCallbackType (See [ECUC_Com_- 10034]) is set to COM_TP_COPY_RX_DATA, shall be configured as SwCluC_ComProxy_<BS>_ComCbkCopyRxData, where <BS> is the shortName of the SwCluCComProxyBaseSocket container.⌋

requirement SWS_SwCluC_CONSTR_03559 [SWS_SwCluC_CONSTR_03559] 📄 PDF

[SWS_SwCluC_CONSTR_03559] Existence of SwCluC_ComProxy_Com- CbkStartOfReception Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈Each SwCluC_ComProxy_ComCbkStartOfReception notification call- back, where the parameter ComUserCallbackType (See [ECUC_- Com_10034]) is set to COM_TP_COPY_RX_DATA, shall be configured as SwCluC_ComProxy_<BS>_ComCbkCopyRxData, where <BS> is the shortName of the SwCluCComProxyBaseSocket container.⌋ module

requirement SWS_SwCluC_CONSTR_03560 [SWS_SwCluC_CONSTR_03560] 📄 PDF

[SWS_SwCluC_CONSTR_03560] Existence of SwCluC_ComProxy_ComCbkT- pRxIndication Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈Each SwCluC_ComProxy_ComCbkTpRxIndication notification call- back, where the parameter ComUserCallbackType (See [ECUC_Com_- 10034]) is set to COM_TP_RX_INDICATION, shall be configured as SwCluC_ComProxy_<BS>_ComCbkTpRxIndication, where <BS> is the short- Name of the SwCluCComProxyBaseSocket container.⌋

requirement SWS_SwCluC_CONSTR_03561 [SWS_SwCluC_CONSTR_03561] 📄 PDF

[SWS_SwCluC_CONSTR_03561] Existence of SwCluC_ComProxy_ComCbkTpTx- Confirmation Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈Each SwCluC_ComProxy_ComCbkTpTxConfirmation notification call- back, where the parameter ComUserCallbackType (See [ECUC_Com_- 10034]) is set to COM_TP_TX_CONFIRMATION, shall be configured as SwCluC_ComProxy_<BS>_ComCbkTpTxConfirmation, where <BS> is the shortName of the SwCluCComProxyBaseSocket container.⌋

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

Record
AUTOSAR/AP/record/CP_MOD_SwCluC
Status
unspecified
Version
AUTOSAR/AP/record/CP_MOD_SwCluC@rel:R20-11#7307d2c3
Content hash
7307d2c3
Source
https://www.autosar.org/fileadmin/standards/R20-11/CP/AUTOSAR_SWS_SoftwareClusterConnection.pdf#nameddest=SWS_SwCluC_10020

Mapa de temas

Callouts e interfaces esperadas

2

Requisitos

780
SWS_SwCluC_00001SWS_SwCluC_00002SWS_SwCluC_00003SWS_SwCluC_00004SWS_SwCluC_00005SWS_SwCluC_00006SWS_SwCluC_00007SWS_SwCluC_00008SWS_SwCluC_00009SWS_SwCluC_00010SWS_SwCluC_00011SWS_SwCluC_00012SWS_SwCluC_00013SWS_SwCluC_00014SWS_SwCluC_00015SWS_SwCluC_00016SWS_SwCluC_00017SWS_SwCluC_00018SWS_SwCluC_00019SWS_SwCluC_00020SWS_SwCluC_00021SWS_SwCluC_00022SWS_SwCluC_00023SWS_SwCluC_00024SWS_SwCluC_00025SWS_SwCluC_00026SWS_SwCluC_00027SWS_SwCluC_00028SWS_SwCluC_00029SWS_SwCluC_00030SWS_SwCluC_00031SWS_SwCluC_00032SWS_SwCluC_00033SWS_SwCluC_00034SWS_SwCluC_00035SWS_SwCluC_00036SWS_SwCluC_00037SWS_SwCluC_00038SWS_SwCluC_00039SWS_SwCluC_00040SWS_SwCluC_00041SWS_SwCluC_00042SWS_SwCluC_00043SWS_SwCluC_00044SWS_SwCluC_00045SWS_SwCluC_00046SWS_SwCluC_00047SWS_SwCluC_00048SWS_SwCluC_00049SWS_SwCluC_00050SWS_SwCluC_00051SWS_SwCluC_00052SWS_SwCluC_00053SWS_SwCluC_00054SWS_SwCluC_00055SWS_SwCluC_00056SWS_SwCluC_00057SWS_SwCluC_00058SWS_SwCluC_00059SWS_SwCluC_00060SWS_SwCluC_00061SWS_SwCluC_00062SWS_SwCluC_00063SWS_SwCluC_00064SWS_SwCluC_00065SWS_SwCluC_00066SWS_SwCluC_00067SWS_SwCluC_00068SWS_SwCluC_00069SWS_SwCluC_00070SWS_SwCluC_00071SWS_SwCluC_00072SWS_SwCluC_00075SWS_SwCluC_00076SWS_SwCluC_00077SWS_SwCluC_00079SWS_SwCluC_00080SWS_SwCluC_00081SWS_SwCluC_00082SWS_SwCluC_00083SWS_SwCluC_00084SWS_SwCluC_00085SWS_SwCluC_00086SWS_SwCluC_00088SWS_SwCluC_00089SWS_SwCluC_00090SWS_SwCluC_00095SWS_SwCluC_00999SWS_SwCluC_01000SWS_SwCluC_01002SWS_SwCluC_02000SWS_SwCluC_02001SWS_SwCluC_02002SWS_SwCluC_02003SWS_SwCluC_02004SWS_SwCluC_02005SWS_SwCluC_02006SWS_SwCluC_02007SWS_SwCluC_02008SWS_SwCluC_02101SWS_SwCluC_02102SWS_SwCluC_02103SWS_SwCluC_02104SWS_SwCluC_02105SWS_SwCluC_02106SWS_SwCluC_02107SWS_SwCluC_02108SWS_SwCluC_02109SWS_SwCluC_02110SWS_SwCluC_02111SWS_SwCluC_02112SWS_SwCluC_02113SWS_SwCluC_02114SWS_SwCluC_02115SWS_SwCluC_02116SWS_SwCluC_02117SWS_SwCluC_02118SWS_SwCluC_02119SWS_SwCluC_02120SWS_SwCluC_02121SWS_SwCluC_02122SWS_SwCluC_02123SWS_SwCluC_02124SWS_SwCluC_02125SWS_SwCluC_02126SWS_SwCluC_02127SWS_SwCluC_02128SWS_SwCluC_02129SWS_SwCluC_02132SWS_SwCluC_02133SWS_SwCluC_02136SWS_SwCluC_02137SWS_SwCluC_02138SWS_SwCluC_02139SWS_SwCluC_02140SWS_SwCluC_02142SWS_SwCluC_02143SWS_SwCluC_02144SWS_SwCluC_02147SWS_SwCluC_02149SWS_SwCluC_02150SWS_SwCluC_02151SWS_SwCluC_02152SWS_SwCluC_02161SWS_SwCluC_02162SWS_SwCluC_02163SWS_SwCluC_02164SWS_SwCluC_02200SWS_SwCluC_02201SWS_SwCluC_02202SWS_SwCluC_02204SWS_SwCluC_02205SWS_SwCluC_02206SWS_SwCluC_02210SWS_SwCluC_02211SWS_SwCluC_02212SWS_SwCluC_02213SWS_SwCluC_02214SWS_SwCluC_02215SWS_SwCluC_02216SWS_SwCluC_02217SWS_SwCluC_02218SWS_SwCluC_02219SWS_SwCluC_02220SWS_SwCluC_02221SWS_SwCluC_02222SWS_SwCluC_02223SWS_SwCluC_02224SWS_SwCluC_02225SWS_SwCluC_02226SWS_SwCluC_02227SWS_SwCluC_02229SWS_SwCluC_02230SWS_SwCluC_02250SWS_SwCluC_02251SWS_SwCluC_02252SWS_SwCluC_02253SWS_SwCluC_02254SWS_SwCluC_02255SWS_SwCluC_02256SWS_SwCluC_02257SWS_SwCluC_02258SWS_SwCluC_02259SWS_SwCluC_02260SWS_SwCluC_02261SWS_SwCluC_02262SWS_SwCluC_02263SWS_SwCluC_02264SWS_SwCluC_02265SWS_SwCluC_02266SWS_SwCluC_02270SWS_SwCluC_02271SWS_SwCluC_02272SWS_SwCluC_02273SWS_SwCluC_02274SWS_SwCluC_02275SWS_SwCluC_02276SWS_SwCluC_02277SWS_SwCluC_02278SWS_SwCluC_02279SWS_SwCluC_02284SWS_SwCluC_02285SWS_SwCluC_02300SWS_SwCluC_02301SWS_SwCluC_02302SWS_SwCluC_02303SWS_SwCluC_02304SWS_SwCluC_02305SWS_SwCluC_02306SWS_SwCluC_02307SWS_SwCluC_02308SWS_SwCluC_02309SWS_SwCluC_02310SWS_SwCluC_02311SWS_SwCluC_02312SWS_SwCluC_02313SWS_SwCluC_02314SWS_SwCluC_02315SWS_SwCluC_02316SWS_SwCluC_02317SWS_SwCluC_02318SWS_SwCluC_02319SWS_SwCluC_02320SWS_SwCluC_02321SWS_SwCluC_02322SWS_SwCluC_02323SWS_SwCluC_02324SWS_SwCluC_02325SWS_SwCluC_02330SWS_SwCluC_02331SWS_SwCluC_02332SWS_SwCluC_02333SWS_SwCluC_02334SWS_SwCluC_02335SWS_SwCluC_02336SWS_SwCluC_02337SWS_SwCluC_02338SWS_SwCluC_02339SWS_SwCluC_02341SWS_SwCluC_02342SWS_SwCluC_02350SWS_SwCluC_02351SWS_SwCluC_02352SWS_SwCluC_02353SWS_SwCluC_02354SWS_SwCluC_02355SWS_SwCluC_02356SWS_SwCluC_02357SWS_SwCluC_02358SWS_SwCluC_02359SWS_SwCluC_02360SWS_SwCluC_02361SWS_SwCluC_02362SWS_SwCluC_02363SWS_SwCluC_02364SWS_SwCluC_02365SWS_SwCluC_02366SWS_SwCluC_02367SWS_SwCluC_02368SWS_SwCluC_02369SWS_SwCluC_02370SWS_SwCluC_02371SWS_SwCluC_02372SWS_SwCluC_02373SWS_SwCluC_02374SWS_SwCluC_02375SWS_SwCluC_02376SWS_SwCluC_02380SWS_SwCluC_02381SWS_SwCluC_02382SWS_SwCluC_02383SWS_SwCluC_02384SWS_SwCluC_02385SWS_SwCluC_02386SWS_SwCluC_02387SWS_SwCluC_02388SWS_SwCluC_02390SWS_SwCluC_02391SWS_SwCluC_02392SWS_SwCluC_02393SWS_SwCluC_02394SWS_SwCluC_02395SWS_SwCluC_02396SWS_SwCluC_02397SWS_SwCluC_02400SWS_SwCluC_02401SWS_SwCluC_02402SWS_SwCluC_02403SWS_SwCluC_02404SWS_SwCluC_02405SWS_SwCluC_02406SWS_SwCluC_02407SWS_SwCluC_02408SWS_SwCluC_02409SWS_SwCluC_02410SWS_SwCluC_02411SWS_SwCluC_02412SWS_SwCluC_02413SWS_SwCluC_02414SWS_SwCluC_02415SWS_SwCluC_02416SWS_SwCluC_02417SWS_SwCluC_02418SWS_SwCluC_02419SWS_SwCluC_02420SWS_SwCluC_02421SWS_SwCluC_02422SWS_SwCluC_02423SWS_SwCluC_02424SWS_SwCluC_02425SWS_SwCluC_02426SWS_SwCluC_02500SWS_SwCluC_02501SWS_SwCluC_02502SWS_SwCluC_02503SWS_SwCluC_02504SWS_SwCluC_02505SWS_SwCluC_02506SWS_SwCluC_02507SWS_SwCluC_02508SWS_SwCluC_02509SWS_SwCluC_02510SWS_SwCluC_02511SWS_SwCluC_02512SWS_SwCluC_02513SWS_SwCluC_02514SWS_SwCluC_02515SWS_SwCluC_02516SWS_SwCluC_02517SWS_SwCluC_02518SWS_SwCluC_02519SWS_SwCluC_02520SWS_SwCluC_02521SWS_SwCluC_02522SWS_SwCluC_02523SWS_SwCluC_02524SWS_SwCluC_02525SWS_SwCluC_02526SWS_SwCluC_02527SWS_SwCluC_02528SWS_SwCluC_02529SWS_SwCluC_02530SWS_SwCluC_02531SWS_SwCluC_02532SWS_SwCluC_02533SWS_SwCluC_02534SWS_SwCluC_02535SWS_SwCluC_02536SWS_SwCluC_02537SWS_SwCluC_02538SWS_SwCluC_02539SWS_SwCluC_02540SWS_SwCluC_02541SWS_SwCluC_02542SWS_SwCluC_02543SWS_SwCluC_02544SWS_SwCluC_02545SWS_SwCluC_02548SWS_SwCluC_02549SWS_SwCluC_02550SWS_SwCluC_02551SWS_SwCluC_02552SWS_SwCluC_02600SWS_SwCluC_02601SWS_SwCluC_02602SWS_SwCluC_02603SWS_SwCluC_02604SWS_SwCluC_02605SWS_SwCluC_02606SWS_SwCluC_02607SWS_SwCluC_02608SWS_SwCluC_02609SWS_SwCluC_02610SWS_SwCluC_02611SWS_SwCluC_02612SWS_SwCluC_02613SWS_SwCluC_02614SWS_SwCluC_02615SWS_SwCluC_02616SWS_SwCluC_02617SWS_SwCluC_02618SWS_SwCluC_02619SWS_SwCluC_02620SWS_SwCluC_02621SWS_SwCluC_02622SWS_SwCluC_02623SWS_SwCluC_02624SWS_SwCluC_02625SWS_SwCluC_02626SWS_SwCluC_02627SWS_SwCluC_02628SWS_SwCluC_02629SWS_SwCluC_02630SWS_SwCluC_02631SWS_SwCluC_02632SWS_SwCluC_02633SWS_SwCluC_02634SWS_SwCluC_02636SWS_SwCluC_02637SWS_SwCluC_02638SWS_SwCluC_02639SWS_SwCluC_02640SWS_SwCluC_02642SWS_SwCluC_02643SWS_SwCluC_02644SWS_SwCluC_02645SWS_SwCluC_02646SWS_SwCluC_02647SWS_SwCluC_02648SWS_SwCluC_02649SWS_SwCluC_02650SWS_SwCluC_02651SWS_SwCluC_02652SWS_SwCluC_02661SWS_SwCluC_02662SWS_SwCluC_02663SWS_SwCluC_02665SWS_SwCluC_02666SWS_SwCluC_02669SWS_SwCluC_02670SWS_SwCluC_02700SWS_SwCluC_02701SWS_SwCluC_02702SWS_SwCluC_02703SWS_SwCluC_02704SWS_SwCluC_02705SWS_SwCluC_02706SWS_SwCluC_02707SWS_SwCluC_02708SWS_SwCluC_02709SWS_SwCluC_02710SWS_SwCluC_02711SWS_SwCluC_02712SWS_SwCluC_02713SWS_SwCluC_02714SWS_SwCluC_02715SWS_SwCluC_02716SWS_SwCluC_02717SWS_SwCluC_02718SWS_SwCluC_02719SWS_SwCluC_02723SWS_SwCluC_02724SWS_SwCluC_02725SWS_SwCluC_02726SWS_SwCluC_02727SWS_SwCluC_02728SWS_SwCluC_02729SWS_SwCluC_02730SWS_SwCluC_02731SWS_SwCluC_02732SWS_SwCluC_02733SWS_SwCluC_02734SWS_SwCluC_02735SWS_SwCluC_02736SWS_SwCluC_02737SWS_SwCluC_02738SWS_SwCluC_02739SWS_SwCluC_02740SWS_SwCluC_02741SWS_SwCluC_02742SWS_SwCluC_02743SWS_SwCluC_02744SWS_SwCluC_02745SWS_SwCluC_02746SWS_SwCluC_02747SWS_SwCluC_02748SWS_SwCluC_02749SWS_SwCluC_02750SWS_SwCluC_02751SWS_SwCluC_03000SWS_SwCluC_03001SWS_SwCluC_03002SWS_SwCluC_03003SWS_SwCluC_03004SWS_SwCluC_03005SWS_SwCluC_03006SWS_SwCluC_03007SWS_SwCluC_03008SWS_SwCluC_03009SWS_SwCluC_03010SWS_SwCluC_03011SWS_SwCluC_03012SWS_SwCluC_03013SWS_SwCluC_03015SWS_SwCluC_03016SWS_SwCluC_03017SWS_SwCluC_03018SWS_SwCluC_03019SWS_SwCluC_03022SWS_SwCluC_03023SWS_SwCluC_03024SWS_SwCluC_03025SWS_SwCluC_03026SWS_SwCluC_03027SWS_SwCluC_03028SWS_SwCluC_03029SWS_SwCluC_03030SWS_SwCluC_03031SWS_SwCluC_03033SWS_SwCluC_03034SWS_SwCluC_03035SWS_SwCluC_03036SWS_SwCluC_03037SWS_SwCluC_03038SWS_SwCluC_03039SWS_SwCluC_03040SWS_SwCluC_03041SWS_SwCluC_03042SWS_SwCluC_03043SWS_SwCluC_03044SWS_SwCluC_03045SWS_SwCluC_03046SWS_SwCluC_03047SWS_SwCluC_03048SWS_SwCluC_03049SWS_SwCluC_03050SWS_SwCluC_03051SWS_SwCluC_03052SWS_SwCluC_03055SWS_SwCluC_03056SWS_SwCluC_03057SWS_SwCluC_03058SWS_SwCluC_03060SWS_SwCluC_03061SWS_SwCluC_03062SWS_SwCluC_03063SWS_SwCluC_03064SWS_SwCluC_03065SWS_SwCluC_03068SWS_SwCluC_03071SWS_SwCluC_03072SWS_SwCluC_03073SWS_SwCluC_03074SWS_SwCluC_03075SWS_SwCluC_03076SWS_SwCluC_03077SWS_SwCluC_03080SWS_SwCluC_03081SWS_SwCluC_03082SWS_SwCluC_03083SWS_SwCluC_03084SWS_SwCluC_03086SWS_SwCluC_03087SWS_SwCluC_03088SWS_SwCluC_03089SWS_SwCluC_03090SWS_SwCluC_03091SWS_SwCluC_03094SWS_SwCluC_03095SWS_SwCluC_03097SWS_SwCluC_03098SWS_SwCluC_03099SWS_SwCluC_03101SWS_SwCluC_03102SWS_SwCluC_03103SWS_SwCluC_03106SWS_SwCluC_03107SWS_SwCluC_03108SWS_SwCluC_03109SWS_SwCluC_03110SWS_SwCluC_03111SWS_SwCluC_03112SWS_SwCluC_03113SWS_SwCluC_03120SWS_SwCluC_03121SWS_SwCluC_03122SWS_SwCluC_03123SWS_SwCluC_03124SWS_SwCluC_03126SWS_SwCluC_03130SWS_SwCluC_03131SWS_SwCluC_03132SWS_SwCluC_03133SWS_SwCluC_03134SWS_SwCluC_03135SWS_SwCluC_03136SWS_SwCluC_03137SWS_SwCluC_03138SWS_SwCluC_03139SWS_SwCluC_03140SWS_SwCluC_03142SWS_SwCluC_03143SWS_SwCluC_03144SWS_SwCluC_03145SWS_SwCluC_03146SWS_SwCluC_03147SWS_SwCluC_03150SWS_SwCluC_03151SWS_SwCluC_03152SWS_SwCluC_03153SWS_SwCluC_03154SWS_SwCluC_03155SWS_SwCluC_03156SWS_SwCluC_03157SWS_SwCluC_03158SWS_SwCluC_03159SWS_SwCluC_03160SWS_SwCluC_03161SWS_SwCluC_03162SWS_SwCluC_03163SWS_SwCluC_03164SWS_SwCluC_03165SWS_SwCluC_03166SWS_SwCluC_03167SWS_SwCluC_03168SWS_SwCluC_03169SWS_SwCluC_03170SWS_SwCluC_03171SWS_SwCluC_03173SWS_SwCluC_03174SWS_SwCluC_03175SWS_SwCluC_03176SWS_SwCluC_03177SWS_SwCluC_03178SWS_SwCluC_03200SWS_SwCluC_03201SWS_SwCluC_03202SWS_SwCluC_03203SWS_SwCluC_03204SWS_SwCluC_03205SWS_SwCluC_03206SWS_SwCluC_03207SWS_SwCluC_03208SWS_SwCluC_03209SWS_SwCluC_03210SWS_SwCluC_03211SWS_SwCluC_03212SWS_SwCluC_03213SWS_SwCluC_03214SWS_SwCluC_03215SWS_SwCluC_03216SWS_SwCluC_03217SWS_SwCluC_03218SWS_SwCluC_03401SWS_SwCluC_03402SWS_SwCluC_03502SWS_SwCluC_03506SWS_SwCluC_03507SWS_SwCluC_03508SWS_SwCluC_03509SWS_SwCluC_03510SWS_SwCluC_03511SWS_SwCluC_03512SWS_SwCluC_03513SWS_SwCluC_03514SWS_SwCluC_03515SWS_SwCluC_03516SWS_SwCluC_03517SWS_SwCluC_03519SWS_SwCluC_03521SWS_SwCluC_03522SWS_SwCluC_03523SWS_SwCluC_03524SWS_SwCluC_03525SWS_SwCluC_03526SWS_SwCluC_03527SWS_SwCluC_03533SWS_SwCluC_03534SWS_SwCluC_03535SWS_SwCluC_03536SWS_SwCluC_03537SWS_SwCluC_03538SWS_SwCluC_03539SWS_SwCluC_03540SWS_SwCluC_03541SWS_SwCluC_03542SWS_SwCluC_03543SWS_SwCluC_03548SWS_SwCluC_03549SWS_SwCluC_03550SWS_SwCluC_03554SWS_SwCluC_09001SWS_SwCluC_10010SWS_SwCluC_10012SWS_SwCluC_90000SWS_SwCluC_90001SWS_SwCluC_90002SWS_SwCluC_90003SWS_SwCluC_90004SWS_SwCluC_90005SWS_SwCluC_90006SWS_SwCluC_90007SWS_SwCluC_90008SWS_SwCluC_90009SWS_SwCluC_90010SWS_SwCluC_90011SWS_SwCluC_90012SWS_SwCluC_90013SWS_SwCluC_90014SWS_SwCluC_90015SWS_SwCluC_90016SWS_SwCluC_90017SWS_SwCluC_90018SWS_SwCluC_90019SWS_SwCluC_90020SWS_SwCluC_90021SWS_SwCluC_90022SWS_SwCluC_91002SWS_SwCluC_CONSTR_00073SWS_SwCluC_CONSTR_00074SWS_SwCluC_CONSTR_00078SWS_SwCluC_CONSTR_00087SWS_SwCluC_CONSTR_00091SWS_SwCluC_CONSTR_00092SWS_SwCluC_CONSTR_00093SWS_SwCluC_CONSTR_00094SWS_SwCluC_CONSTR_00096SWS_SwCluC_CONSTR_02130SWS_SwCluC_CONSTR_02131SWS_SwCluC_CONSTR_02134SWS_SwCluC_CONSTR_02135SWS_SwCluC_CONSTR_02141SWS_SwCluC_CONSTR_02145SWS_SwCluC_CONSTR_02146SWS_SwCluC_CONSTR_02148SWS_SwCluC_CONSTR_02160SWS_SwCluC_CONSTR_02203SWS_SwCluC_CONSTR_02228SWS_SwCluC_CONSTR_02229SWS_SwCluC_CONSTR_02230SWS_SwCluC_CONSTR_02231SWS_SwCluC_CONSTR_02232SWS_SwCluC_CONSTR_02233SWS_SwCluC_CONSTR_02234SWS_SwCluC_CONSTR_02235SWS_SwCluC_CONSTR_02236SWS_SwCluC_CONSTR_02237SWS_SwCluC_CONSTR_02282SWS_SwCluC_CONSTR_02283SWS_SwCluC_CONSTR_02427SWS_SwCluC_CONSTR_02428SWS_SwCluC_CONSTR_02429SWS_SwCluC_CONSTR_02546SWS_SwCluC_CONSTR_02547SWS_SwCluC_CONSTR_02553SWS_SwCluC_CONSTR_02554SWS_SwCluC_CONSTR_02555SWS_SwCluC_CONSTR_02556SWS_SwCluC_CONSTR_02557SWS_SwCluC_CONSTR_02558SWS_SwCluC_CONSTR_02559SWS_SwCluC_CONSTR_02560SWS_SwCluC_CONSTR_02561SWS_SwCluC_CONSTR_02562SWS_SwCluC_CONSTR_02653SWS_SwCluC_CONSTR_02654SWS_SwCluC_CONSTR_02655SWS_SwCluC_CONSTR_02656SWS_SwCluC_CONSTR_02657SWS_SwCluC_CONSTR_02658SWS_SwCluC_CONSTR_02659SWS_SwCluC_CONSTR_02660SWS_SwCluC_CONSTR_02664SWS_SwCluC_CONSTR_02667SWS_SwCluC_CONSTR_02720SWS_SwCluC_CONSTR_02721SWS_SwCluC_CONSTR_02752SWS_SwCluC_CONSTR_03020SWS_SwCluC_CONSTR_03021SWS_SwCluC_CONSTR_03032SWS_SwCluC_CONSTR_03053SWS_SwCluC_CONSTR_03054SWS_SwCluC_CONSTR_03059SWS_SwCluC_CONSTR_03063SWS_SwCluC_CONSTR_03066SWS_SwCluC_CONSTR_03067SWS_SwCluC_CONSTR_03069SWS_SwCluC_CONSTR_03093SWS_SwCluC_CONSTR_03210SWS_SwCluC_CONSTR_03211SWS_SwCluC_CONSTR_03400SWS_SwCluC_CONSTR_03546SWS_SwCluC_CONSTR_03555SWS_SwCluC_CONSTR_03556SWS_SwCluC_CONSTR_03557SWS_SwCluC_CONSTR_03558SWS_SwCluC_CONSTR_03559SWS_SwCluC_CONSTR_03560SWS_SwCluC_CONSTR_03561SWS_SwCluC_NA_00999

Vista de detalhes

Selecione uma entrada no índice.

Serviços

Returns the Id of the connected Software Cluster for a Notifier Handle of a Provide Resource Entry or Provide Handle of a Require Resource Entry Tags: atp.Status=draft

SwCluC_BManif_SwClusterIdType SwCluC_BManif_GetConSwClusterId_< ResourceEntryGroup>_<Handle>(SwCluC_BManif_TableIndexType resIndex, SwCluC_BManif_HandleIndexType notifierSetIndex);

Returns the Id of the connected Software Cluster for a Notifier Handle of a Provide Resource Entry or a Provide Handle of a Require Resource Entry Tags: atp.Status=draft

SwCluC_BManif_SwClusterIdType SwCluC_BManif_GetConSwClusterId_< ResourceEntryGroup>_<ResourceEntry>_<Handle>(SwCluC_BManif_HandleIndexType notifierSetIndex);

Returns the Id of the connected Software Cluster for a Notifier Handle of a Provide Resource Entry or a Provide Handle of a Require Resource Entry Tags: atp.Status=draft

<handleType> SwCluC_BManif_GetHandle_<ResourceEntryGroup>_<Handle>(SwCluC_BManif_TableIndexType resIndex, SwCluC_BManif_HandleIndexType notifierSetIndex);

Returns a handle of a Resource Entry in a Resource Entry Group Tags: atp.Status=draft

<handleType> SwCluC_BManif_GetHandle_<ResourceEntryGroup>_< ResourceEntry>_<Handle>(SwCluC_BManif_HandleIndexType notifierSetIndex);

Returns the value of the Subscribed Interface Validity Marker. Tags: atp.Status=draft

uint32 SwCluC_BManif_GetValidityMarker(void);

This function is called to acquire the transmit data of an I-PDU segment (N-PDU). Each call to this function provides the next part of the I-PDU data unless retry->TpDataState is TP_ DATARETRY. In this case the function restarts to copy the data beginning at the offset from the current position indicated by retry->TxTpDataCnt. The size of the remaining data is written to the position indicated by availableDataPtr Tags: atp.Status=draft

BufReq_ReturnType SwCluC_ComProxy_<BS>_ComCbkCopyTxData(CbkHandleIdType ComUserCbkHandleId, const PduInfoType* info, const RetryInfoType* retry, PduLengthType* availableDataPtr);

This callback function indicates that COM has received a signal and parsed it as "invalid". It is an implementation of a <ComUser_CbkInv> callback. Tags: atp.Status=draft

void SwCluC_ComProxy_<BS>_COMCbkInv(CbkHandleIdType ComUserCbkHandleId);

This callback function indicates that the aliveTimeout after the last successful reception of the signal of the data item/event has expired (data element outdated). It is an implementation of a <ComUser_CbkRxTOut> callback. Tags: atp.Status=draft

void SwCluC_ComProxy_<BS>_COMCbkRxTOut(CbkHandleIdType ComUserCbkHandleId);

This callback function indicates that the signal of the data item/event is already handed over by COM to the PDU router. It is an implementation of a <ComUser_CbkTxAck> callback. Tags: atp.Status=draft

void SwCluC_ComProxy_<BS>_COMCbkTAck(CbkHandleIdType ComUserCbkHandleId);

This callback function indicates that an error occurred when the signal of the data item/event was handed over by COM to the PDU router. It is an implementation of a <ComUser_CbkTx Err> callback. Tags: atp.Status=draft

void SwCluC_ComProxy_<BS>_COMCbkTErr(CbkHandleIdType ComUserCbkHandleId);

Within this API, the upper layer module (called module) shall check whether the available data fits into the buffer size reported by PduInfoPtr->SduLength. If it fits, it shall copy its data into the buffer provided by PduInfoPtr->SduDataPtr and update the length of the actual copied data in PduInfoPtr->SduLength. If not, it returns E_NOT_OK without changing PduInfoPtr. Tags: atp.Status=draft

Std_ReturnType SwCluC_ComProxy_<BS>_ComCbkTriggerTransmit(CbkHandleIdType ComUserCbkHandleId, PduInfoType* PduInfoPtr);

This callback function indicates that the timeout of TransmissionAcknowledgementRequest for sending the signal of the data item/event has expired. It is an implementation of a <ComUser_ CbkTxTOut> callback. Tags: atp.Status=draft

void SwCluC_ComProxy_<BS>_COMCbkTxTOut(CbkHandleIdType ComUserCbkHandleId);

SwCluC_ComProxy_Init is intended to allocate and initialize system resources used by the ComProxy linked to this specific socked. Tags: atp.Status=draft

void SwCluC_ComProxy_Init_<SwCluCComBaseSocket>(void);

SwCluC_DcmProxy_Init is intended to allocate and initialize system resources used by the Dcm Proxy linked to this specific socked. Tags: atp.Status=draft

void SwCluC_DcmProxy_Init_<SwCluCDcmBaseSocket>(void);

SwCluC_DemProxy_Init is intended to allocate and initialize system resources used by the Dem Proxy linked to this specific socked. Tags: atp.Status=draft

void SwCluC_DemProxy_Init_<SwCluCDemBaseSocket>(void);

SwCluC_FiMProxy_Init is intended to allocate and initialize system resources used by the FiM Proxy linked to this specific socked. Tags: atp.Status=draft

void SwCluC_FiMProxy_Init_<SwCluCFiMBaseSocket>(void);

This function is called to provide the received data of an I-PDU segment (N-PDU) to the upper layer. Each call to this function provides the next part of the I-PDU data. The size of the remaining data is written to the position indicated by bufferSizePtr. Tags: atp.Status=draft

BufReq_ReturnType SwCluC_LdComProxy_<BS>_LdComCbkCopyRxData(CbkHandleIdType LdComUserCbkHandleId, const PduInfoType* info, PduLengthType* bufferSizePtr);

This function is called to acquire the transmit data of an I-PDU segment (N-PDU). Each call to this function provides the next part of the I-PDU data unless retry->TpDataState is TP_ DATARETRY. In this case the function restarts to copy the data beginning at the offset from the current position indicated by retry->TxTpDataCnt. The size of the remaining data is written to the position indicated by availableDataPtr Tags: atp.Status=draft

BufReq_ReturnType SwCluC_LdComProxy_<BS>_LdComCbkCopyTxData(CbkHandleIdType LdComUserCbkHandleId, const PduInfoType* info, const RetryInfoType* retry, PduLengthType* availableDataPtr);

This function is called at the start of receiving an N-SDU. The N-SDU might be fragmented into multiple N-PDUs (FF with one or more following CFs) or might consist of a single N-PDU (SF). The service shall provide the currently available maximum buffer size when invoked with TpSdu Length equal to 0. Tags: atp.Status=draft

BufReq_ReturnType SwCluC_LdComProxy_<BS>_LdComCbkStartOfReception(CbkHandleIdType LdComUserCbkHandleId, const PduInfoType* info, PduLengthType TpSduLength, PduLengthType* bufferSizePtr);

Within this API, the upper layer module (called module) shall check whether the available data fits into the buffer size reported by PduInfoPtr->SduLength. If it fits, it shall copy its data into the buffer provided by PduInfoPtr->SduDataPtr and update the length of the actual copied data in PduInfoPtr->SduLength. If not, it returns E_NOT_OK without changing PduInfoPtr. Tags: atp.Status=draft

Std_ReturnType SwCluC_LdComProxy_<BS>_LdComCbkTriggerTransmit(CbkHandleIdType LdComUserCbkHandleId, PduInfoType* PduInfoPtr);

SwCluC_LdComProxy_Init is intended to allocate and initialize system resources used by the LdComProxy linked to this specific socked. Tags: atp.Status=draft

void SwCluC_LdComProxy_Init_<SwCluCLdComBaseSocket>(void);

SwCluC_NvMProxy_Init is intended to allocate and initialize system resources used by the Nv MProxy linked to this specific socked. Tags: atp.Status=draft

void SwCluC_NvMProxy_Init_<SwCluCNvMBaseSocket>(void);

This function informs the NvM proxy of the SwCluC about the end of the NvM_ReadAll job.

void SwCluC_NvMProxy_MultiBlockReadAllJobFinished(void);

SwCluC_OsProxy_Init is intended to allocate and initialize system resources used by the Os Proxy linked to this specific socked Tags: atp.Status=draft

void SwCluC_OsProxy_Init_<SwCluCOsProxyOsBaseSocket>(void);

SwCluC_Xcc_Init is intended to allocate and initialize system resources used by the Software Cluster Connection. It initializes interface memory which might be needed to be read by other Software Clusters but it is not allowed to do any read access to memory of any another Software Cluster. Tags: atp.Status=draft

void SwCluC_Xcc_Init1(void);

SwCluC_Xcc_Init2 is intended to allocate and initialize system resources used by the Software Cluster Connection. It can execute initializations which require a read access to interface memory of another Software Clusters. Tags: atp.Status=draft

void SwCluC_Xcc_Init2(void);

Callbacks

This callback function indicates that the signal of the primitive data item/event is ready for reception. It is an implementation of a <ComUser_CbkRxAck> callback. Tags: atp.Status=draft

void SwCluC_ComProxy_<BS>_CbkRxAck(CbkHandleIdType ComUserCbkHandleId);

Indication of a received PDU from a lower layer communication interface module. Tags: atp.Status=draft

void SwCluC_ComProxy_<BS>_ComCbkRxIndication(CbkHandleIdType ComUserCbkHandleId, const PduInfoType* PduInfoPtr);

Called after an I-PDU has been received via the TP API, the result indicates whether the transmission was successful or not. Tags: atp.Status=draft

void SwCluC_ComProxy_<BS>_ComCbkTpRxIndication(CbkHandleIdType ComUserCbkHandleId, Std_ReturnType result);

The lower layer communication interface module confirms the transmission of a PDU, or the failure to transmit a PDU. Tags: atp.Status=draft

void SwCluC_ComProxy_<BS>_ComCbkTxConfirmation(CbkHandleIdType ComUserCbkHandleId, Std_ReturnType result);

Indication of a received PDU from a lower layer communication interface module. Tags: atp.Status=draft

void SwCluC_LdComProxy_<BS>_LdComCbkRxIndication(CbkHandleIdType LdComUserCbkHandleId, const PduInfoType* PduInfoPtr);

Called after an I-PDU has been received via the TP API, the result indicates whether the transmission was successful or not. Tags: atp.Status=draft

void SwCluC_LdComProxy_<BS>_LdComCbkTpRxIndication(CbkHandleIdType LdComUserCbkHandleId, Std_ReturnType result);

This function is called after a Signal has been transmitted via the TP-API on its network. Tags: atp.Status=draft

void SwCluC_LdComProxy_<BS>_LdComCbkTpTxConfirmation(CbkHandleIdType LdComUserCbkHandleId, Std_ReturnType result);

The lower layer communication interface module confirms the transmission of a PDU, or the failure to transmit a PDU. Tags: atp.Status=draft

void SwCluC_LdComProxy_<BS>_LdComCbkTxConfirmation(CbkHandleIdType LdComUserCbkHandleId, Std_ReturnType result);

Callouts e interfaces esperadas

Returns the number of actually used - and thereby connected - handle sets Tags: atp.Status=draft

SwCluC_BManif_HandleIndexType SwCluC_BManif_GetNoOfHandleSets_< Resource Entry Group>_<Resource Entry>(void);

Returns the number of actually used - and thereby connected - handle sets. Tags: atp.Status=draft

SwCluC_BManif_HandleIndexType SwCluC_BManif_GetNoOfHandleSets_< Resource Entry Group>(SwCluC_BManif_TableIndexType resIndex);

Tipos

Type to code control flags for the connection process. Bit 0..14 are reserved. Tags: atp.Status=draft

Type for the global ID value of a resource Tags: atp.Status=draft

Index type to address a set of handles in the immutable and modifiable interface table Tags: atp.Status=draft

Tags: atp.Status=draft

Type for the global ID value of a resource Tags: atp.Status=draft

Type for the guard value of a resource Tags: atp.Status=draft

Type to code the properties of a resource. Bit 0..5 are reserved. Tags: atp.Status=draft

Type to code the type of a resource Tags: atp.Status=draft

Type of the Software Cluster's ID value Tags: atp.Status=draft

Index type to address the immutable and modifiable interface table Tags: atp.Status=draft

Generic function pointer type according C default type for functions Tags: atp.Status=draft

Requisitos

SWS_SwCluC_00001 requirement

⌊ DRAFT g The Binary Manifest of the Software Clus- ter Connection shall provide exactly one instance of the Binary Manifest Header 1 const SwCluC_BManif_HeaderType SwCluC_BManif_Header = 2 { <initialization> };

SWS_SwCluC_00002 requirement

⌊ DRAFT g The header file SwCluC_BManif.h shall export the declaration of the Binary Manifest Header 1 extern const SwCluC_BManif_HeaderType SwCluC_BManif_Header;

SWS_SwCluC_00003 requirement

⌊ DRAFT g The element Preamble of the Binary Mani- fest Header shall be set to the value 0x41524350464C4558 .

SWS_SwCluC_00004 requirement

⌊ DRAFT g The element ManifestMajorVersion of the Binary Manifest Header shall be set to the value 0x01 .

SWS_SwCluC_00005 requirement

⌊ DRAFT g The element ManifestMinorVersion of the Binary Manifest Header shall be set to the value 0x01 .

SWS_SwCluC_00006 requirement

⌊ DRAFT g The element SwClusterId of the Binary Man- ifest Header shall be set to the value of the configuration parameter SwCluC- SoftwareClusterId of the selected SwCluCDefinition .

SWS_SwCluC_00007 requirement

⌊ DRAFT g The element MachineId of the Binary Mani- fest Header shall be set to the value of the configuration parameter SwCluC- MachineId of the selected SwCluCDefinition .

SWS_SwCluC_00008 requirement

⌊ DRAFT g The element SwClusterType of the Binary Manifest Header shall be set according to the value of the configuration param- eter SwCluCSoftwareClusterType of the selected SwCluCDefinition with the following encoding: • HOST_SWCL : 0x00 • APPLICATIVE_SWCL : 0x01 • SUBSTITUTION_SWCL : 0xFF

SWS_SwCluC_00009 requirement

⌊ DRAFT g The bit SWCLUC_BMANIF_DISABLE_ON_ECU_ CONNECTION in the element ConnectorControlFlags of the Binary Mani- fest Header shall be set if the SwCluCBManifOnBoardConnectorControl is set to DISABLE_ON_ECU_CONNECTOR . Otherwise, the bit is not set (value 0).

SWS_SwCluC_00010 requirement

⌊ DRAFT g The element NoOfInterfaceDescriptors of the Binary Manifest Header shall be set to the number of SwCluCBManif- ProvideResourceEntry + number of SwCluCBManifRequireResourceEntry containers in the configuration.

SWS_SwCluC_00011 requirement

⌊ DRAFT g The element NoOfOfferedInterfaceHandles of the Binary Manifest Header shall be set to the number of offered handles.

SWS_SwCluC_00012 requirement

⌊ DRAFT g The element NoOfSubscribedInterfaceHan- dles of the Binary Manifest Header shall be set to the number of handles in the Subscribed Interface .

SWS_SwCluC_00013 requirement

⌊ DRAFT g The Binary Manifest of the Software Clus- ter Connection shall provide the header file SwCluC_BManif.h .

SWS_SwCluC_00014 requirement

⌊ DRAFT g The header file SwCluC_BManif.h shall include all header files configured in SwCluCBManifHeaderInclude s in the containers SwCluCBManifProvideResourceEntryGroup and SwCluCBManifRequireRe- sourceEntryGroup .

SWS_SwCluC_00015 requirement

⌊ DRAFT g If the SwCluCBManifDescriptorTreatment is set to EMBED_DESCRIPTORS the Binary Manifest of the Software Cluster Connection shall provide exactly one instance of the Interface Descriptor Table composed out of the following column arrays: 1 / * descriptor table column for resource properties * / 2 const SwCluC_BManif_ResourcePropertiesType SwCluC_BManif_ResourcePropertiesDescriptorColumn[ SWCLUC_BMANIF_NO_OF_DESCRIPTORS] = { <initialization> }; 3 4 / * descriptor table column for resource type Ids * / 5 const SwCluC_BManif_ResourceTypeIdType SwCluC_BManif_ResourceTypeIdDescriptorColumn[ SWCLUC_BMANIF_NO_OF_DESCRIPTORS] = { <initialization> }; 6 7 / * descriptor table column for global resource Ids * / 8 const SwCluC_BManif_GlobalResourceIdType SwCluC_BManif_GlobalResourceIdDescriptorColumn[ SWCLUC_BMANIF_NO_OF_DESCRIPTORS] = { <initialization> }; 9 10 / * descriptor table column for guard values * / 11 const SwCluC_BManif_ResourceGuardValueType SwCluC_BManif_ResourceGuardValueDescriptorColumn[ SWCLUC_BMANIF_NO_OF_DESCRIPTORS] = { <initialization> }; 12 13 / * descriptor table column for offered interface table index * / 14 const SwCluC_BManif_TableIndexType SwCluC_BManif_OfferedInterfaceIndexDescriptorColumn[ SWCLUC_BMANIF_NO_OF_DESCRIPTORS] = { <initialization> }; 15 16 / * descriptor table column for number of handles in offered interface table * / 17 const SwCluC_BManif_HandleIndexType SwCluC_BManif_OfferedInterfaceNoOfHandlesDescriptorColumn[ SWCLUC_BMANIF_NO_OF_DESCRIPTORS] = { <initialization> }; 18 19 / * descriptor table column for subscribed interface table index * / 20 const SwCluC_BManif_TableIndexType SwCluC_BManif_SubscribedInterfaceIndexDescriptorColumn[ SWCLUC_BMANIF_NO_OF_DESCRIPTORS] = { <initialization> }; 21 22 / * descriptor table column for number of handles in subscribed interface table * / 23 const SwCluC_BManif_HandleIndexType SwCluC_BManif_SubscribedInterfaceNoOfHandlesDescriptorColumn[ SWCLUC_BMANIF_NO_OF_DESCRIPTORS] = { <initialization> }; 24 25 / * descriptor table column for number of handle sets in subscribed interface table * / 26 const SwCluC_BManif_HandleIndexType SwCluC_BManif_SubscribedInterfaceNoOfHandleSetsDescriptorColumn[ SWCLUC_BMANIF_NO_OF_DESCRIPTORS] = { <initialization> };

SWS_SwCluC_00016 requirement

⌊ DRAFT g For each SwCluCBManifProvideResourceEn- try and SwCluCBManifRequireResourceEntry in a Software Cluster 's con- figuration, the Binary Manifest of the Software Cluster Connection shall provide one row in the Interface Descriptor Table .

SWS_SwCluC_00017 requirement

⌊ DRAFT g The rows in the Interface Descriptor Ta- ble shall be sorted in ascending order of resource type Ids and rows with equal re- source type Ids shall be sorted in turn in ascending order of global resource Ids.

SWS_SwCluC_00018 requirement

⌊ DRAFT g The bit SWCLUC_BMANIF_PROVIDED_RESOURCE in the element of the 'resource properties' column shall be set, if the row belongs to a SwCluCBManifProvideResourceEntry . Otherwise the bit SWCLUC_BMANIF_PROVIDED_RESOURCE shall not be set.

SWS_SwCluC_00019 requirement

⌊ DRAFT g The bit SWCLUC_BMANIF_MANDATORY_RE- SOURCE in the element of the 'resource properties' column shall be set, if the row be- longs to a SwCluCBManifRequireResourceEntry where the SwCluCBManifIs- Mandatory is true . Otherwise the bit SWCLUC_BMANIF_MANDATORY_RESOURCE shall not be set.

SWS_SwCluC_00020 requirement

⌊ DRAFT g The element in the 'resource type Id' column shall be set to the SwCluCBManifResourceId of the applicable SwCluCBManifRe- sourceType .

SWS_SwCluC_00021 requirement

⌊ DRAFT g The element in the 'global resource Id' column shall be set to the attribute value globalResourceId of the referenced CpSoft- wareClusterResource as given via SwCluCBManifResourceRef . If the refer- ence SwCluCBManifResourceRef is not set, the element in the global resource Id column shall be set to 0.

SWS_SwCluC_00022 requirement

⌊ DRAFT g The element in the 'guard value' column shall be set to the SwCluCBManifResourceGuardValue of the SwCluCBManif- ProvideResourceEntry / SwCluCBManifRequireResourceEntry container in the configuration.

SWS_SwCluC_00023 requirement

⌊ DRAFT g The element in the 'offered interface table index' column shall be set to the index of the Offered Interface where the first offered handle for this resource is allocated. In case the resource has no offered handle the value is set to NO_TABLE_ENTRY .

SWS_SwCluC_00024 requirement

⌊ DRAFT g The element in the 'number of handles in offered interface table' column shall be set to number of offered handles for this resource. In case the resource has no offered handle, the value is set to 0.

SWS_SwCluC_00025 requirement

⌊ DRAFT g The element in the 'subscribed interface table in- dex' column shall be set to the index of the Subscribed Interface where the first subscribed handle for this resource is allocated. In case the resource has no sub- scribed handle the value is set to NO_TABLE_ENTRY .

SWS_SwCluC_00026 requirement

⌊ DRAFT g The element in the 'number of handles in sub- scribed interface table' column shall be set to number of subscribed handles for this resource. In case the resource has no subscribed handle, the value is set to 0.

SWS_SwCluC_00027 requirement

⌊ DRAFT g The element in the 'number of handle sets in sub- scribed interface table' column shall be set to the SwCluCBManifMaxNumberOfNo- tifierSets if the applicable SwCluCBManifResourceType has set SwCluCB- ManifMultipleNotifierSupport to MULTIPLE_NOTIFIER_SETS . Otherwise the value is set to 0.

SWS_SwCluC_00028 requirement

⌊ DRAFT g The Binary Manifest of the Software Clus- ter Connection shall provide exactly one instance of the Offered Interface Handle Column 1 const SwCluC_BManif_HandleType SwCluC_BManif_OfferedInterfaceHandleColumn[ SWCLUC_BMANIF_NO_OF_OFFERED_HANDLES] = { <initialization> };

SWS_SwCluC_00029 requirement

⌊ DRAFT g The Binary Manifest of the Software Clus- ter Connection shall allocate and initialize the number of handles in the Of- fered Interface according to [SWS_SwCluC_00088].

SWS_SwCluC_00030 requirement

⌊ DRAFT g The Binary Manifest of the Software Clus- ter Connection shall provide exactly one instance of the Subscribed Inter- face Default Handle Column 1 const SwCluC_BManif_HandleType SwCluC_BManif_SubscribedInterfaceDefaultHandleColumn[ SWCLUC_BMANIF_NO_OF_SUBSCRIBED_HANDLES] = { <initialization> };

SWS_SwCluC_00031 requirement

⌊ DRAFT g The Binary Manifest of the Software Cluster Connection shall allocate and initialize the number of handles in the Subscribed Interface Default Handle Column according to [SWS_SwCluC_00088].

SWS_SwCluC_00032 requirement

⌊ DRAFT g The Binary Manifest of the Software Clus- ter Connection shall provide exactly one instance of the Subscribed Inter- face Handle Column 1 const SwCluC_BManif_HandleType SwCluC_BManif_SubscribedInterfaceHandleColumn[ SWCLUC_BMANIF_NO_OF_SUBSCRIBED_HANDLES] = { <initialization> };

SWS_SwCluC_00033 requirement

⌊ DRAFT g The Binary Manifest of the Software Clus- ter Connection shall allocate and initialize the number of handles in the Subscribed Interface Handle Column according to [SWS_SwCluC_00088].

SWS_SwCluC_00034 requirement

⌊ DRAFT g The Binary Manifest of the Software Clus- ter Connection shall provide exactly one instance of the Subscribed Inter- face Connected SwClusterId Column 1 const SwCluC_BManif_SwClusterIdType SwCluC_BManif_SubscribedInterfaceConnectedSwClusterIdColumn[ SWCLUC_BMANIF_NO_OF_SUBSCRIBED_HANDLES] = { <initialization> };

SWS_SwCluC_00035 requirement

⌊ DRAFT g The Binary Manifest of the Software Cluster Connection shall allocate and initialize the number of handles in the Subscribed Interface Connected SwClusterId Column according to [SWS_SwCluC_00088].

SWS_SwCluC_00036 requirement

⌊ DRAFT g The Binary Manifest of the Software Clus- ter Connection shall provide exactly one instance of the Immutable Tables Checksum 1 const uint32 SwCluC_BManif_ImmutableTablesChecksum = <initialization>;

SWS_SwCluC_00037 requirement

⌊ DRAFT g The Immutable Tables Checksum shall be set to the value of the configuration parameter SwCluCBManifImmutableTa- blesChecksum .

SWS_SwCluC_00038 requirement

⌊ DRAFT g The Binary Manifest of the Software Clus- ter Connection shall provide exactly one instance of the Total Manifest Checksum 1 const uint32 SwCluC_BManif_TotalManifestChecksum = <initialization>;

SWS_SwCluC_00039 requirement

⌊ DRAFT g Initially (before the connection process), the Total Manifest Checksum shall be set to the value of the configuration pa- rameter SwCluCBManifTotalManifestChecksum .

SWS_SwCluC_00040 requirement

⌊ DRAFT g The Binary Manifest of the Software Clus- ter Connection shall provide exactly one instance of the Subscribed Inter- face Validity Marker 1 const uint32 SwCluC_BManif_SubscribedInterfaceValidityMarker = < initialization>;

SWS_SwCluC_00041 requirement

⌊ DRAFT g Initially, and after a completed connection pro- cess, the Subscribed Interface Validity Marker shall be set to the value of the configuration parameter SwCluCBManifSubscribedInterfaceValidity- Marker .

SWS_SwCluC_00042 requirement

⌊ DRAFT g The elements • ResourcePropertiesDescriptorColumnPtr • ResourceTypeDescriptorColumnPtr • GlobalResourceIdDescriptorColumnPtr • ResourceGuardValueDescriptorColumnPtr • OfferedInterfaceIndexDescriptorColumnPtr • OfferedInterfaceNoOfHandlesDescriptorColumnPtr • SubscribedInterfaceIndexDescriptorColumnPtr • SubscribedInterfaceNoOfHandlesDescriptorColumnPtr • SubscribedInterfaceNoOfHandleSetsDescriptorColumnPtr • OfferedInterfaceHandleColumnPtr • SubscribedInterfaceHandleDefaultColumnPtr • SubscribedInterfaceHandleColumnPtr • SubscribedInterfaceConnectedSwClusterIdColumnPtr of the Binary Manifest Header shall reference the according array of the Inter- face Descriptor Table if the SwCluCBManifDescriptorTreatment is set to EMBED_DESCRIPTORS . Otherwise the elements are initialized to NULL_PTR .

SWS_SwCluC_00043 requirement

⌊ DRAFT g The Software Cluster Connector shall con- nect a required resource with a provided resource, if all of the following conditions are fulfilled: • the machine Id of the Software Cluster providing the resource and the ma- chine Id of the Software Cluster (s) requesting the resource are identical • the global resource Id of provided resource and required resource(s) are equal • the global resource Id is not 0 • the resource type Id of provided resource and required resource is equal • the guard value of provided resource and required resource is equal • the number of Provide Handles of provided resource and required resource is equal • the number of Notifier Handles of provided resource and required resource is equal • in case Notifier Handles exist, the provided resource has a Notifier Handle Sets available for the required resource

SWS_SwCluC_00044 requirement

⌊ DRAFT g The Software Cluster Connector shall copy the Subscribed Interface Default Handle Column entries to the Subscribed Interface Handle Column , and set the related en- tries in the Subscribed Interface Connected SwClusterId Column to SWCLUC_BMANIF_UNCONNECTED for • all Provide Handles of any required resources, for which no connect was ap- plied AND • all Notifier Handles of any provided resources, for which no connect was applied

SWS_SwCluC_00045 requirement

⌊ DRAFT g In case the provided resource supports multiple Notifier Handle Sets , the Software Cluster Connector shall sort the No- tifier Handle Sets in ascending order of Software Cluster Id of the according re- quired resource(s), and place them in the Subscribed Interface Handle Col- umn of the providing Software Cluster , starting at the second handle.

SWS_SwCluC_00046 requirement

⌊ DRAFT g In case the provided resource supports multiple Notifier Handle Sets , the Software Cluster Connector shall write as first entry the actual number of used Notifier Handle Sets in the Subscribed In- terface Handle Column .

SWS_SwCluC_00047 requirement

⌊ DRAFT g In case the provide resource supports multiple Notifier Handle Sets , and less required resources are connected, the Soft- ware Cluster Connector shall fill the remaining handles in the Subscribed Interface Handle Column with the default values from the Subscribed In- terface Default Handle Column of the Software Cluster providing the re- source.

SWS_SwCluC_00048 requirement

⌊ DRAFT g The Software Cluster Connector shall de- tect, if the ManifestMajorVersion and ManifestMinorVersion numbers given in the Binary Manifest Header are compatible to the Software Cluster Con- nector 's implementation. In case of any incompatible version number, the connection process for this specific machine shall be aborted.

SWS_SwCluC_00049 requirement

⌊ DRAFT g The Software Cluster Connector shall de- tect, if the Software Cluster Ids of all Software Clusters belonging to same ma- chine are not unique. In this case, the connection process for this specific machine shall be aborted

SWS_SwCluC_00050 requirement

⌊ DRAFT g The Software Cluster Connector shall de- tect, if for a Software Cluster any mandatory required resource is not provided by any other Software Cluster . In this case, the connection process for this specific Software Cluster shall be aborted.

SWS_SwCluC_00051 requirement

⌊ DRAFT g The Software Cluster Connector shall de- tect, if for a machine a resource with the identical resource type id and identical global resource Id is provided twice by Software Clusters , none of which is a Substi- tution Software Cluster . In this case, the connection process for this specific machine shall be aborted.

SWS_SwCluC_00052 requirement

⌊ DRAFT g In case the resource does not support multiple noti- fier sets, but uses Notifier Handles , the Software Cluster Connector shall detect if for a machine a resource with the identical resource type id and identical global resource Id is required more than one time. In this case, the connection process for this specific machine shall be aborted.

SWS_SwCluC_00053 requirement

⌊ DRAFT g In case the resource does support multiple notifier sets, the Software Cluster Connector shall detect if for a machine a resource with the identical resource type id and identical global resource Id is required more often as notifier sets are available. In this case, the connection process for this specific machine shall be aborted.

SWS_SwCluC_00054 requirement

⌊ DRAFT g In case a resource is provided by the Substitu- tion Software Cluster , the Software Cluster Connector shall connect all Software Clusters requiring the resource, except the Substitution Software Cluster itself, to the resource of the Substitution Software Cluster . This happens, regardless if another Software Cluster provides the resource as well. Nevertheless, the matching criteria defined in [SWS_SwCluC_00043] apply.

SWS_SwCluC_00055 requirement

⌊ DRAFT g In case a resource is required by a Substitution Software Cluster , the Software Cluster Connector shall connect this re- quired resource only to provided resources of Software Clusters not being a Substitution Software Cluster . Nevertheless, the matching criteria defined in [SWS_SwCluC_00043] apply.

SWS_SwCluC_00056 requirement

⌊ DRAFT g If the bit SWCLUC_BMANIF_DISABLE_ON_ECU_ CONNECTION in the ConnectorControlFlags of the Binary Manifest Header of the Host Software Cluster is set, the Software Cluster Connection On-board for this machine is not executed.

SWS_SwCluC_00057 requirement

⌊ DRAFT g The functions SwCluC_BManif_GetH- andle , SwCluC_BManif_GetConSwClusterId , and SwCluC_BManif_Get- NoOfHandleSets , according to [SWS_SwCluC_10020], [SWS_SwCluC_10021], [SWS_SwCluC_10022], [SWS_SwCluC_10023], [SWS_SwCluC_10032], and [SWS_SwCluC_10033], shall each be implemented as a C-function-like macro.

SWS_SwCluC_00058 requirement

⌊ DRAFT g <Resource Entry Group> is the shortName of either the SwCluCBManifProvideResourceEntryGroup or SwCluCBManifRe- quireResourceEntryGroup .

SWS_SwCluC_00059 requirement

⌊ DRAFT g <Resource Entry> is the shortName of ei- ther the SwCluCBManifProvideResourceEntry or SwCluCBManifRequireRe- sourceEntry .

SWS_SwCluC_00060 requirement

⌊ DRAFT g <Handle> is the shortName of either the SwCluCBManifProvideHandle or SwCluCBManifNotifierHandle of the SwCluCBManifResourceType , referenced by SwCluCBManifProvideRe- sourceEntryGroup or SwCluCBManifRequireResourceEntryGroup .

SWS_SwCluC_00061 requirement

⌊ DRAFT g <handleType> is either • the referenced ImplementationDataType , if the SwCluCBManifHandleIm- pleTypeRef is defined for a Provide Handle of Notifier Handle . OR • uint32 , if the SwCluCBManifHandleImpleTypeRef is not defined, and SwCluCBManifNativeHandleType is set to VALUE OR • void * , if the SwCluCBManifHandleImpleTypeRef is not defined, and SwCluCBManifNativeHandleType is set to DATA_REFERENCE OR • SwCluC_BManif_VoidFncPtrType , if the SwCluCBManifHandleImple- TypeRef is not defined, and SwCluCBManifNativeHandleType is set to FUNCTION_REFERENCE

SWS_SwCluC_00062 requirement

⌊ DRAFT g The function SwCluC_BManif_GetHandle ac- cording to [SWS_SwCluC_10020] shall exist for each SwCluCBManifProvide- Handle and SwCluCBManifNotifierHandle defined for each SwCluCBMan- ifProvideResourceEntry and SwCluCBManifRequireResourceEntry in a SwCluCBManifProvideResourceEntryGroup and SwCluCBManifRequireRe- sourceEntryGroup .

SWS_SwCluC_00063 requirement

⌊ DRAFT g The function SwCluC_BManif_GetConSwClus- terId according to [SWS_SwCluC_10021] shall exist • for each SwCluCBManifNotifierHandle defined for each SwCluCBMan- ifProvideResourceEntry in a SwCluCBManifProvideResourceEntry- Group AND • for each SwCluCBManifProvideHandle defined for each SwCluCBManifRe- quireResourceEntry in a SwCluCBManifRequireResourceEntryGroup .

SWS_SwCluC_00064 requirement

⌊ DRAFT g The function SwCluC_BManif_GetHandle ac- cording to [SWS_SwCluC_10022] shall exist for each SwCluCBManifProvide- Handle and SwCluCBManifNotifierHandle defined for each SwCluCBManif- ProvideResourceEntryGroup and SwCluCBManifRequireResourceEntry- Group .

SWS_SwCluC_00065 requirement

⌊ DRAFT g The function SwCluC_BManif_GetConSwClus- terId according to [SWS_SwCluC_10023] shall exist • for each SwCluCBManifNotifierHandle defined for a SwCluCBManif- ProvideResourceEntryGroup AND • for each SwCluCBManifProvideHandle defined for a SwCluCBManifRe- quireResourceEntryGroup .

SWS_SwCluC_00066 requirement

⌊ DRAFT g The function SwCluC_BManif_GetNoOfHan- dleSets according to [SWS_SwCluC_10032] shall exist for each SwCluCBMan- ifProvideResourceEntry in a SwCluCBManifProvideResourceEntryGroup where the parameter SwCluCBManifMultipleNotifierSupport is set to MULTI- PLE_NOTIFIER_SETS .

SWS_SwCluC_00067 requirement

⌊ DRAFT g The function SwCluC_BManif_GetNoOfHan- dleSets according to [SWS_SwCluC_10033] shall exist for each SwCluCBMan- ifProvideResourceEntryGroup where the parameter SwCluCBManifMulti- pleNotifierSupport is set to MULTIPLE_NOTIFIER_SETS .

SWS_SwCluC_00068 requirement

⌊ DRAFT g The definition SWCLUC_BMANIF_NO_OF_ENTRIES according to [SWS_SwCluC_01000] shall exist for each SwCluCBManifProvideRe- sourceEntryGroup .

SWS_SwCluC_00069 requirement

⌊ DRAFT g The definition SWCLUC_BMANIF_NO_OF_NOTIFIER_SETS according to [SWS_SwCluC_01002] shall exist for each SwCluCBManifProvideRe- sourceEntry in a SwCluCBManifProvideResourceEntryGroup where the parameter SwCluCBManifMultipleNotifierSupport is set to MULTI- PLE_NOTIFIER_SETS .

SWS_SwCluC_00070 requirement

⌊ DRAFT g The element ImmutableTablesChecksumPtr of the Binary Manifest Header shall reference the Immutable Tables Checksum .

SWS_SwCluC_00071 requirement

⌊ DRAFT g The element TotalManifestChecksumPtr of the Binary Manifest Header shall reference the Total Manifest Checksum .

SWS_SwCluC_00072 requirement

⌊ DRAFT g The element SubscribedInterfaceValidi- tyMarkerPtr of the Binary Manifest Header shall reference the Subscribed Interface Validity Marker .

SWS_SwCluC_00075 requirement

⌊ DRAFT g In the Host Software Cluster , the Soft- ware Cluster Base Configuration Check of the Software Cluster Con- nection shall create one Provide Resource Entry for each configured SwCluCBaseConfigurationCheck , and add it to the Binary Manifest .

SWS_SwCluC_00076 requirement

⌊ DRAFT g In the Applicative Software Cluster , the Software Cluster Base Configuration Check of the Software Cluster Connection shall create one mandatory Require Resource Entry for each con- figured SwCluCBaseConfigurationCheck , and add them to the Binary Mani- fest .

SWS_SwCluC_00077 requirement

⌊ DRAFT g The SwCluCBManifResourceGuardValue of the Resource Entrys of [SWS_SwCluC_00075] and [SWS_SwCluC_00076] shall be calculated out of the given multi line strings in SwCluCAutoBaseConfigDescrip- tor and SwCluCUserBaseConfigDescriptor .

SWS_SwCluC_00079 requirement

⌊ DRAFT g The Binary Manifest of the Software Clus- ter Connection shall use the <feature> = BMANIF according to [SWS_- MemMap_00040] of document [8].

SWS_SwCluC_00080 requirement

⌊ DRAFT g The Binary Manifest of the Software Clus- ter Connection shall map the Binary Manifest Header to a constant, 32 bit aligned memory section named CONST_IMMUTABLE_HEADER .

SWS_SwCluC_00081 requirement

⌊ DRAFT g The Binary Manifest of the Software Clus- ter Connection shall map the immutable columns of all tables to a constant, 32 bit aligned memory section named CONST_IMMUTABLE_COLUMNS . The immutable columns are: • all columns of the Interface Descriptor Table • Offered Interface Handle Column • Subscribed Interface Default Handle Column

SWS_SwCluC_00082 requirement

⌊ DRAFT g The Binary Manifest of the Software Clus- ter Connection shall map the modifiable columns to a constant, 32 bit aligned memory section named CONST_MODIFIABLE_COLUMNS The modifiable columns are • Subscribed Interface Handle Column • Subscribed Interface Connected SwClusterId Column .

SWS_SwCluC_00083 requirement

⌊ DRAFT g The Binary Manifest of the Software Clus- ter Connection shall map the Immutable Tables Checksum to a constant, 32 bit aligned memory section named CONST_IMMUTABLE_TABLES_CHECKSUM .

SWS_SwCluC_00084 requirement

⌊ DRAFT g The Binary Manifest of the Software Clus- ter Connection shall map the Total Manifest Checksum to a constant, 32 bit aligned memory section named CONST_TOTAL_TABLES_CHECKSUM .

SWS_SwCluC_00085 requirement

⌊ DRAFT g The Binary Manifest of the Soft- ware Cluster Connection shall map the Subscribed Interface Va- lidity Marker to a constant, 32 bit aligned memory section named CONST_SUBSCRIBED_TABLES_MARKER .

SWS_SwCluC_00086 requirement

of the generated Binary Man- ifest . This includes • the cpSoftwareCluster reference to the given CpSoftwareCluster • the softwareClusterId of the given CpSoftwareCluster • the metaDataField s for IMMUTABLE_TABLES_CHECKSUM and SUB- SCRIBED_INTERFACE_VALIDITY_MARKER • a provideResource s for each Provide Resource Entry • a requireResource s for each Require Resource Entry • a resourceDefinition s for each Resource Type

SWS_SwCluC_00088 requirement

⌊ DRAFT g Number of offered and subscribed handles, de- pending on the resource direction Provide Handle Notifier Handle SINGLE_NOTIFIER_SET One handle in the Subscribed Interface per defined SwCluCBManifNotifierHan- dle The handles are initialized with the SwCluCBManifDefaultNoti- fierSymbol s in the given order. The Software Cluster Ids are set to SWCLUC_BMANIF_UNCONNECTED MULTIPLE_NOTIFIER_SETS Provided Resource One handle in the Offered Interface per defined SwCluCBManifProvideHandle The handles are initialized with the SwCluCBManifProvideSymbol s in the given order. One handle in the Subscribed Interface per defined SwCluCBManifNotifierHan- dle multiplied by SwCluCBManifMaxNum- berOfNotifierSets plus one The first handle is initialized to 0. The remaining handles are initialized with consecutive sets of SwCluCBManifDefaultNoti- fierSymbol s in the given order. The Software Cluster Ids are set to SWCLUC_BMANIF_UNCONNECTED . Required Resource One handle in the Subscribed Interface per defined SwCluCBManifProvideHandle The handles are initialized with the SwCluCBManifDefaultPro- videSymbol s in the given order. One handle in the Offered Interface per defined SwCluCBManifNotifierHan- dle The handles are initialized with the SwCluCBManifNotifierSym- bol s in the given order. Table 7.1: Number of offered and subscribed handles, depending on the resource direction

SWS_SwCluC_00089 requirement

⌊ DRAFT g In case the provided resource supports multi- ple Notifier Handle Sets , the Software Cluster Connector shall write as first entry in the Subscribed Interface Connected SwClusterId Column the value 0xFE .

SWS_SwCluC_00090 requirement

The reserved bits 5 .. 0 in the element of the 'resource prop- erties' column shall be set to 0

SWS_SwCluC_00095 requirement

[SWS_SwCluC_00095]

SWS_SwCluC_00999 requirement

⌊ DRAFT g These requirements are not applicable to this spec- ification.

SWS_SwCluC_01000 requirement

⌊ DRAFT g Symbolic name: SWCLUC_BMANIF_NO_OF_ENTRIES_<Resource Entry Group> Value: Number of Resource Entry s in the according Resource Entry Group Comments: n.a.

SWS_SwCluC_01002 requirement

⌊ DRAFT g Symbolic name: SWCLUC_BMANIF_MAX_NO_OF_NOTIFIER_SETS_ <Resource Entry Group>_<Resource Entry> Value: Maximum number of notifier sets for the according Provide Resource En- try Comments: n.a.

SWS_SwCluC_02000 requirement

⌊ DRAFT g The Proxy Module shall support that id values, re- quired to access the BSW service API of the Host Software Cluster , can change, without reconfiguration or rebuild of the Applicative Software Cluster using the BSW service.

SWS_SwCluC_02001 requirement

⌊ DRAFT g The High Proxy shall provide the applicable Stan- dardized AUTOSAR Interfaces once per configured EcucPartition . In doing so, the APIs are provided with the orignal Mip , at the EcucPartition where the SwCluCNativeBswApi is set to true . For all the other BSW API instances, the Mip is replaced by <Mip>_<shortName of EcucPartition> .

SWS_SwCluC_02002 requirement

⌊ DRAFT g The High Proxy shall create one partition specific Service Software Component per configured EcucPartition , with the name <Mip> _<EcucPartition shortName> .

SWS_SwCluC_02003 requirement

⌊ DRAFT g The High Proxy shall provide the Ports belonging to a specific CpSoftwareClusterServiceResource , at the partition specific Service Software Component, to which the using SwComponentPrototype is mapped to.

SWS_SwCluC_02004 requirement

⌊ DRAFT g The High Proxy shall implement a 'reasonable' be- havior for a service resource, if the connection to the resource provider does not exist. In any case, the OUT arguments of functions shall return a 'neutral' value, or the value which can be assumed after a reset. The functional behavior should be like the state directly after a reset, before further activity occured.

SWS_SwCluC_02005 requirement

⌊ DRAFT g To resolve the ECU Configuration dependency, the Proxy Module implementation shall define a Vendor Specific Module Definition [10], where the ECU Configuration container and parameters are used to configure the in- terface towards the user of the substituted BSW Module.

SWS_SwCluC_02006 requirement

⌊ DRAFT g The Proxy Module implementation shall define an EcucContainerDef , which defines a mapping between • the EcucContainerDef (s) identifying the module user channel in the StMD of substituted BSW Module AND • the CpSoftwareClusterServiceResource representing the user channel in the software cluster resource pool. The EcucForeignReferenceDef shall be named SwCluCResourceRef .

SWS_SwCluC_02007 requirement

⌊ DRAFT g The Proxy Module implementation shall define, for each different Proxy Module, an EcucEnumerationParamDef named SwCluCProx- yGeneration<Mip> , with the literal s • PROXY_DISABLED , to disable the according Proxy Module code and AUTOSAR model generation • HIGH_PROXY , to enable the according High Proxy Module code and AUTOSAR model generation • LOW_PROXY , to enable the according Low Proxy Module code and AUTOSAR model generation

SWS_SwCluC_02008 requirement

⌊ DRAFT g The Proxy Module implementation of the Soft- ware Cluster Connection shall put one Resource Entry , for each associated CpSoftwareClusterServiceResource , into the Binary Manifest .

SWS_SwCluC_02101 requirement

⌊ DRAFT g The NvM High Proxy code, and related AUTOSAR model descriptions, shall only be created, if the configuration parameter SwCluCProx- yGenerationNvM is set to HIGH_PROXY .

SWS_SwCluC_02102 requirement

⌊ DRAFT g The NvM High Proxy shall provide the header file NvM.h .

SWS_SwCluC_02103 requirement

⌊ DRAFT g The NvM High Proxy shall provide the symbolic name values for NvBlocks, for NvM users in the Applicative Software Clus- ter .

SWS_SwCluC_02104 requirement

⌊ DRAFT g The NvM Proxy shall support that the BlockIds of the NvM of Host Software Cluster can change, without reconfiguration or rebuild of the Applicative Software Cluster using these NV blocks.

SWS_SwCluC_02105 requirement

⌊ DRAFT g The NvM Proxy shall support that the NV block length used in the Applicative Software Cluster can be <= the NV block length configured in the NvM of the Host Software Cluster . In case NV block length in Applicative Software Cluster is smaller, the NV block is filled with default val- ues. The default fill value of a single byte is defined by the configuration parameter SwCluCNvMProxyNvBlockFillValue .

SWS_SwCluC_02106 requirement

⌊ DRAFT g The NvM Proxy shall support that the NV block length used in the Applicative Software Cluster can be changed (in the range 0 <= NV block length configured in NvM), without reconfiguration or rebuild of the Host Software Cluster .

SWS_SwCluC_02107 requirement

⌊ DRAFT g In case a NV block configured in the NvM High Proxy is not connected to any NvM Low Proxy, the NvM High Proxy shall initialize the Nv RAM Block, with the default values given by NvMRomBlockDataAddress and / or NvMInitBlockCallback .

SWS_SwCluC_02108 requirement

⌊ DRAFT g In case a NV block configured in the NvM Low Proxy is not connected to any NvM High Proxy, the NvM Low Proxy implementation shall ensure that the content of the NV block is not modified by the NvM Low Proxy.

SWS_SwCluC_02109 requirement

⌊ DRAFT g The NvM High Proxy shall support the optional con- figuration of a NvM_SingleBlockCallbackFunction , according to [ECUC_NvM_- 00562], [ECUC_NvM_00506] and [ECUC_NvM_00559].

SWS_SwCluC_02110 requirement

⌊ DRAFT g The NvM High Proxy shall support the optional configuration of a NvM_PNJF_{Block} port for NvMNotifyJobFinished notification.

SWS_SwCluC_02111 requirement

⌊ DRAFT g The NvM Low Proxy shall provide an instance of a NvM_SingleBlockCallbackFunction per configured NV block ( SwCluCNvM- ProxyNvBlock ) in the NvM Low Proxy.

SWS_SwCluC_02112 requirement

⌊ DRAFT g In case it is configured in the NvM High Proxy, the NvM Proxy shall invoke the NvM_SingleBlockCallbackFunction or JobFin- ished operation, when the according instance of the NvM Low Proxy is called.

SWS_SwCluC_02113 requirement

⌊ DRAFT g In case a NV block configured in the NvM High Proxy is not connected to any NvM Low Proxy, the function NvM_GetErrorSta- tus of the NvM High Proxy shall still return E_OK , and the request result is set to NVM_REQ_RESTORED_FROM_ROM .

SWS_SwCluC_02114 requirement

⌊ DRAFT g In case a NV block configured in the NvM High Proxy is not connected to any NvM Low Proxy, the functions • NvM_SetDataIndex • NvM_GetDataIndex • NvM_SetBlockProtection • NvM_SetRamBlockStatus • NvM_SetBlockLockStatus • NvM_CancelJobs • NvM_ReadBlock • NvM_WriteBlock • NvM_RestoreBlockDefaults • NvM_EraseNvBlock • NvM_InvalidateNvBlock • NvM_ReadPRAMBlock • NvM_WritePRAMBlock • NvM_RestorePRAMBlockDefaults of the NvM High Proxy shall return E_NOT_OK .

SWS_SwCluC_02115 requirement

⌊ DRAFT g The NvM High Proxy shall support the optional configuration of a NvM_InitBlockCallbackFunction , according to [ECUC_NvM_- 00561], [ECUC_NvM_00116] and [ECUC_NvM_00559].

SWS_SwCluC_02116 requirement

⌊ DRAFT g The NvM High Proxy shall support the optional configuration of a NvM_PNIB_{Block} port for NvMNotifyInitBlock notification.

SWS_SwCluC_02117 requirement

⌊ DRAFT g The NvM High Proxy shall support the optional configuration of a NvM_ReadRamBlockFromNvm , according to [ECUC_NvM_00521].

SWS_SwCluC_02118 requirement

⌊ DRAFT g The NvM High Proxy shall support the optional configuration of a NvM_WriteRamBlockToNvm , according to [ECUC_NvM_00520].

SWS_SwCluC_02119 requirement

⌊ DRAFT g The NvM High Proxy shall support the optional con- figuration of a NvM_PM_{Block} port for NvMMirror notification.

SWS_SwCluC_02120 requirement

⌊ DRAFT g The NvM High Proxy shall create one partition spe- cific Service Software Component per configured EcucPartition , with the name NvM_<EcucPartition shortName> .

SWS_SwCluC_02121 requirement

⌊ DRAFT g The NvM High Proxy shall provide the Ports be- longing to a specific Nv Block • NvM_PS_{Block} • NvM_PAdmin_{Block} • NvM_PNIB_{Block} • NvM_PNJF_{Block} • NvM_PM_{Block} at the partition specific Service Software Component, to which the using SwCompo- nentPrototype is mapped.

SWS_SwCluC_02122 requirement

⌊ DRAFT g In case it is configured in the NvM High Proxy, the NvM Proxy shall invoke the NvM_InitBlockCallbackFunction or InitBlock op- eration, when the according instance of the NvM Low Proxy is called.

SWS_SwCluC_02123 requirement

⌊ DRAFT g In case it is configured in the NvM High Proxy, the NvM Proxy shall invoke the NvM_ReadRamBlockFromNvm function or ReadRam- BlockFromNvM operation, when the according instance of the NvM Low Proxy is called.

SWS_SwCluC_02124 requirement

⌊ DRAFT g In case it is configured in the NvM High Proxy, the NvM Proxy shall invoke the NvM_WriteRamBlockToNvm function or WriteRam- BlockToNvM operation, when the according instance of the NvM Low Proxy is called.

SWS_SwCluC_02125 requirement

⌊ DRAFT g The NvM High Proxy shall provide the functions for single block requests • NvM_SetDataIndex • NvM_GetDataIndex • NvM_SetBlockProtection • NvM_GetErrorStatus • NvM_SetRamBlockStatus • NvM_SetBlockLockStatus • NvM_CancelJobs • NvM_ReadBlock • NvM_WriteBlock • NvM_RestoreBlockDefaults • NvM_EraseNvBlock • NvM_InvalidateNvBlock • NvM_ReadPRAMBlock • NvM_WritePRAMBlock • NvM_RestorePRAMBlockDefaults for NvM users in the Applicative Software Cluster .

SWS_SwCluC_02126 requirement

⌊ DRAFT g The NvM High Proxy shall provide the functions for single block requests, according to [SWS_SwCluC_02103], once per configured SwCluCNvMBaseSocket . In doing so, the APIs are provided with the original Mip NvM at the EcucPartition , where the SwCluCNativeBswApi is set to true . For all the other SwCluCNvMBaseSocket instances, the Mip NvM is replaced by NvM_ <shortName of EcucPartition> .

SWS_SwCluC_02127 requirement

⌊ DRAFT g The NvM Low Proxy shall provide an instance of a NvM_InitBlockCallbackFunction per configured NV block ( SwCluCNvMProx- yNvBlock ) in the NvM Low Proxy.

SWS_SwCluC_02128 requirement

⌊ DRAFT g The NvM Low Proxy shall provide an instance of a NvM_ReadRamBlockFromNvm per configured NV block ( SwCluCNvMProxyNvBlock ) in the NvM Low Proxy.

SWS_SwCluC_02129 requirement

⌊ DRAFT g The NvM Low Proxy shall provide an instance of a NvM_WriteRamBlockToNvm per configured NV block ( SwCluCNvMProxyNvBlock ) in the NvM Low Proxy.

SWS_SwCluC_02132 requirement

⌊ DRAFT g The NvM Low Proxy shall provide the entry func- tions for single block requests, according to [SWS_SwCluC_02103], once per config- ured SwCluCNvMBaseSocket at the EcucPartition configured by SwCluCNvM- BaseSocket . SwCluCProxyEcucPartitionRef . In case the SwCluCNvMProxyUsedSatelliteRef is set, the EcucPartition shall be changed, before the NVM API is called.

SWS_SwCluC_02133 requirement

⌊ DRAFT g The callback instances according to [SWS_SwCluC_02111], [SWS_SwCluC_02127], [SWS_SwCluC_02128], and [SWS_SwCluC_02129], are provided • at the EcucPartition referenced by SwCluCNvMProxyNvBlock . SwCluC- NvMProxyNvBlockEcucPartitionRef , if a SwCluCNvMBaseSocket is di- rectly available at this EcucPartition OR • at the EcucPartition of the SwCluCNvMBaseSocket referenced by the SwCluCNvMBaseSocket - via SwCluCNvMProxyUsedSatelliteRef , which is on the EcucPartition given by SwCluCNvMProxyNvBlock . SwCluCNvM- ProxyNvBlockEcucPartitionRef . In this case, the EcucPartition shall be changed, before the callback in the High Proxy is called.

SWS_SwCluC_02136 requirement

⌊ DRAFT g The functions • NvM_ReadBlock • NvM_WriteBlock • NvM_RestoreBlockDefaults of the NvM High Proxy shall only accept single block requests, where the pointer to the RAM data block is set to NULL_PTR . Otherwise, E_NOT_OK is returned, and the request is discarded.

SWS_SwCluC_02137 requirement

⌊ DRAFT g If development error detection is enabled for NvM High Proxy, the APIs • NvM_SetDataIndex • NvM_GetDataIndex • NvM_SetBlockProtection • NvM_GetErrorStatus • NvM_SetRamBlockStatus • NvM_SetBlockLockStatus • NvM_CancelJobs • NvM_ReadBlock • NvM_WriteBlock • NvM_RestoreBlockDefaults • NvM_EraseNvBlock • NvM_InvalidateNvBlock • NvM_ReadPRAMBlock • NvM_WritePRAMBlock • NvM_RestorePRAMBlockDefaults shall report the DET error NVM_E_UNINIT , when NVM High Proxy is not yet initialized.

SWS_SwCluC_02138 requirement

⌊ DRAFT g If development error detection is enabled for NvM High Proxy, the APIs • NvM_SetDataIndex • NvM_GetDataIndex • NvM_SetBlockProtection • NvM_GetErrorStatus • NvM_SetRamBlockStatus • NvM_SetBlockLockStatus • NvM_CancelJobs • NvM_ReadBlock • NvM_WriteBlock • NvM_RestoreBlockDefaults • NvM_EraseNvBlock • NvM_InvalidateNvBlock • NvM_ReadPRAMBlock • NvM_WritePRAMBlock • NvM_RestorePRAMBlockDefaults shall report the DET error NVM_E_PARAM_BLOCK_ID , when the passed BlockId is out of range of the BlockIds configured in the NvM High Proxy.

SWS_SwCluC_02139 requirement

⌊ DRAFT g If development error detection is enabled for NvM High Proxy, the APIs • NvM_ReadBlock • NvM_WriteBlock • NvM_RestoreBlockDefaults shall report the DET error NVM_E_PARAM_ADDRESS , when a RAM block address dif- ferent than NULL_PTR is passed.

SWS_SwCluC_02140 requirement

⌊ DRAFT g Development Error Types of SwCluC NvM Proxy The development error types defined for the SwCluC NvM Proxy are listed in table Table 7.4.

SWS_SwCluC_02142 requirement

⌊ DRAFT g The NvM Low Proxy implementation shall describe the NV blocks provided to NvM High Proxies via NvBlockNeeds , derived from the Cp- SoftwareClusterServiceResource . resourceNeeds .

SWS_SwCluC_02143 requirement

⌊ DRAFT g The NvM Low Proxy shall provide, for each SwCluCNvMBaseSocket , a SwCluC_NvMProxy_Init API, to initialize the NvM High Proxy of an Applicative Software Cluster . This shall be one element of the service resource SwCluCNvMBaseSocket .

SWS_SwCluC_02144 requirement

⌊ DRAFT g The NvM Low Proxy code, and related AUTOSAR model descriptions, shall only be created, if the configuration parameter SwCluCProx- yGenerationNvM is set to LOW_PROXY .

SWS_SwCluC_02147 requirement

[SWS_SwCluC_02147] Upstream requirements: SRS_SwCluC_00206 ⌈The NvM High Proxy of a specific Application Software Cluster shall en- able the configuration ID check, if the parameter NvMDynamicConfigura- tion is set to TRUE in this Application Software Cluster.⌋ Note: The parameter NvMDynamicConfiguration is set in the NvM module config- uration of the respective Application Software Cluster. Like in the configuration of the NvM module in the Host Software Cluster, the block ID 1 is reserved for the Configuration ID block in each Application Software Cluster. This Configuration ID block to contain the stored NVRAM configuration ID. module

SWS_SwCluC_02149 requirement

[SWS_SwCluC_02149] Upstream requirements: SRS_SwCluC_00206 ⌈The NvM High Proxy of a specific Application Software Cluster shall im- plement the Configuration ID block as redundant type with CRC32.⌋

SWS_SwCluC_02150 requirement

[SWS_SwCluC_02150] Upstream requirements: SRS_SwCluC_00206 ⌈The job of the function NvM_WriteBlock for the Configuration ID block shall write the compiled NVRAM configuration ID to the stored NVRAM configura- tion ID (in the Configuration ID blocks) of this Application Software Cluster.⌋

SWS_SwCluC_02151 requirement

[SWS_SwCluC_02151] Upstream requirements: SRS_SwCluC_00206 ⌈The job of the function NvM_WritePRAMBlock for the Configuration ID block shall write the compiled NVRAM configuration ID to the stored NVRAM configu- ration ID (in the Configuration ID blocks) of this Application Software Cluster.⌋

SWS_SwCluC_02152 requirement

[SWS_SwCluC_02152] Upstream requirements: SRS_SwCluC_00206 ⌈The NvM_ReadRamBlockFromNvm call for the Configuration ID block shall validate the configuration ID by comparing the stored NVRAM configuration ID of this Application Software Cluster vs. the compiled NVRAM configuration ID of this Application Software Cluster.⌋

SWS_SwCluC_02161 requirement

[SWS_SwCluC_02161] Unconnected-behavior of NvM_SingleBlockCallbackFunction Upstream requirements: SRS_SwCluC_00206, SRS_SwCluC_00213 ⌈TheNvM_SingleBlockCallbackFunction of NvM Low Proxy shall return E_NOT_OK, if the corresponding NV Block is not connected to an instance in the NvM High Proxy.⌋ module

SWS_SwCluC_02162 requirement

[SWS_SwCluC_02162] Unconnected-behavior of NvM_InitBlockCallbackFunction Upstream requirements: SRS_SwCluC_00206, SRS_SwCluC_00213 ⌈TheNvM_InitBlockCallbackFunction of NvM Low Proxy shall return E_NOT_OK, if the corresponding NV Block is not connected to an instance in the NvM High Proxy.⌋

SWS_SwCluC_02163 requirement

[SWS_SwCluC_02163] Unconnected-behavior of NvM_ReadRamBlockFromNvm Upstream requirements: SRS_SwCluC_00206, SRS_SwCluC_00213 ⌈TheNvM_ReadRamBlockFromNvm of NvM Low Proxy shall return E_NOT_OK, if the corresponding NV Block is not connected to an instance in the NvM High Proxy.⌋

SWS_SwCluC_02164 requirement

[SWS_SwCluC_02164] Unconnected-behavior of NvM_WriteRamBlockToNvm Upstream requirements: SRS_SwCluC_00206, SRS_SwCluC_00213 ⌈TheNvM_WriteRamBlockToNvm of NvM Low Proxy shall return E_NOT_OK, if the corresponding NV Block is not connected to an instance in the NvM High Proxy.⌋

SWS_SwCluC_02200 requirement

⌊ DRAFT g The OS High Proxy code, and related AUTOSAR model descriptions, shall only be created, if the configuration parameter SwCluCProx- yGenerationOs is set to HIGH_PROXY .

SWS_SwCluC_02201 requirement

⌊ DRAFT g The OS LOW Proxy code, and related AUTOSAR model descriptions, shall only be created, if the configuration parameter SwCluCProx- yGenerationOs is set to LOW_PROXY .

SWS_SwCluC_02202 requirement

⌊ DRAFT g The Os Proxy shall support the execution of Os- Tasks from an Applicative Software Cluster , in the context of the Host Software Cluster .

SWS_SwCluC_02204 requirement

⌊ DRAFT g The Os Proxy shall support a socket mechanism to hook several Applicative Software Clusters onto the Host Software Cluster .

SWS_SwCluC_02205 requirement

⌊ DRAFT g The Os High Proxy interfaces shall be described with the parameters, and according containers, as defined in Os EcucModuleDef .

SWS_SwCluC_02206 requirement

⌊ DRAFT g The Os Proxy interfaces shall be configured as a service resource, with the parameters as defined in the SwCluCOsProxy container.

SWS_SwCluC_02210 requirement

⌊ DRAFT g The Os High Proxy shall provide the header file Os.h and Os_Cfg.h .

SWS_SwCluC_02211 requirement

⌊ DRAFT g The Os High Proxy shall provide a proxy Os- Task , to which events from the Applicative Software Cluster can be mapped, during the design of an Applicative Software Cluster .

SWS_SwCluC_02212 requirement

⌊ DRAFT g The Os High Proxy shall provide a set of Os- Task specific APIs that are required by the Applicative Software Cluster : • ActivateTask • ChainTask • TerminateTask

SWS_SwCluC_02213 requirement

⌊ DRAFT g If SwCluCOsProxyOsTask . SwCluCOsProxy- TaskActivation . PASS_TASK_ACTIVATION is set for a specific OsTask , the API ActivateTask called for this OS task shall trigger a task activation in the Host Software Cluster .

SWS_SwCluC_02214 requirement

⌊ DRAFT g The API for ChainTask shall be implemented as macro with a return statement in the Applicative Software Cluster , to be used in the context of the task body, and will end the execution of the proxy task.

SWS_SwCluC_02215 requirement

⌊ DRAFT g The API for TerminateTask shall be imple- mented as macro with a return statement in the Applicative Software Cluster , to be used in the context of the task body, to be able to end the proxy tasks execution.

SWS_SwCluC_02216 requirement

⌊ DRAFT g The Os High Proxy shall provide default han- dles for resources, in case a connection to the host system could not be established successfully between Applicative Software Cluster and the Host Software Cluster . The default implementation shall be a neutral behavior, with the return value E_OK , to support "standard status" from OS.

SWS_SwCluC_02217 requirement

⌊ DRAFT g The Os High Proxy shall have a service re- source SwCluCOsProxyOsTask , for each OsTask required in the Applicative Software Cluster . For this resource, an entry in the Binary Manifest shall be created, to be able to link the task to its OsLowProxy implementation in the Host Software Cluster . Since the content of the OsTask is created by the RTE, this API shall be used and registered as service resource. It is recommended that this resource is marked with the mandatory flag ( SwCluCBManifIsMandatory ).

SWS_SwCluC_02218 requirement

⌊ DRAFT g The Os High Proxy shall contain a required ser- vice resource SwCluCOsProxyOsTaskDispatcher . The Proxy-OsTask shall be called in that context. For this resource, an entry in the Binary Manifest shall be created, to be able to link it to the OsLowProxy dispatcher in the Host Software Cluster . It is recommended that this resource is marked with the mandatory flag ( SwCluCBManifIsMandatory ).

SWS_SwCluC_02219 requirement

⌊ DRAFT g The Os High Proxy shall contain a required ser- vice resource SwCluCOsProxyFunctionDispatcher . This function dispatcher is used to call functions in context of the Host Software Cluster . For this resource, an entry in the Binary Manifest shall be created, to be able to link it to the OsLow- Proxy dispatcher in the Host Software Cluster .

SWS_SwCluC_02220 requirement

⌊ DRAFT g The Os High Proxy shall contain a required ser- vice resource SwCluCOsProxyOsBaseSocket . This collects all hooks needed to be linked to the Host Software Cluster . It also contains Applicative Software Cluster local Os specific functions for StartOs, initialize and shutdown. It should also cover the local IOC , if present. It is recommended that this resource is marked with the mandatory flag ( SwCluCBManifIsMandatory ).

SWS_SwCluC_02221 requirement

⌊ DRAFT g Since a Applicative Software Cluster can contain several OS Applications , the Os High Proxy shall be able to provide a local IOC implementation for the cluster internal communication paths between OS Applications . The link to the Host Software Cluster shall be established as part of the SwCluCOsProxyOsBaseSocket service resource.

SWS_SwCluC_02222 requirement

⌊ DRAFT g The Os High Proxy shall require a service re- source SwCluCOsProxyOsApplication , which is used in the Applicative Software Cluster , and needs to be matched to the Host Software Cluster .

SWS_SwCluC_02223 requirement

⌊ DRAFT g The Os High Proxy shall require a service re- source SwCluCOsProxyOsResource , which is used in the Applicative Soft- ware Cluster , and needs to be matched to the Host Software Cluster .

SWS_SwCluC_02224 requirement

⌊ DRAFT g The Os High Proxy shall require a service re- source SwCluCOsProxyOsSpinlock , which is used in the Applicative Soft- ware Cluster , and needs to be matched to the Host Software Cluster .

SWS_SwCluC_02225 requirement

⌊ DRAFT g The Os High Proxy shall provide the following APIs for the Applicative Software Cluster : • GetResource • ReleaseResource • SuspendOSInterrupts • ResumeOSInterrupts • GetSpinlock • ReleaseSpinlock • GetApplicationID Each of these APIs corresponds to a service resource in the Os Low Proxy. There will be an entry in the Binary Manifest , to require these service resources, which are described here: SwCluCOsProxy .

SWS_SwCluC_02226 requirement

⌊ DRAFT g The Os High Proxy shall NOT support the fol- lowing APIs for the Applicative Software Cluster . • StartScheduleTable • StopScheduleTable • Schedule • DisableAllInterrupts • EnableAllInterrupts • SuspendAllInterrupts • ResumeAllInterrupts

SWS_SwCluC_02227 requirement

⌊ DRAFT g The configuration of the Os High Proxy for a complete Applicative Software Cluster shall be specified with a set of ECUC- parameters defined here: SwCluCOsProxy .

SWS_SwCluC_02229 requirement

⌊ DRAFT g If SwCluCOsProxyOsTask . SwCluCOsProxy- TaskActivation . OMIT_TASK_ACTIVATION is set for a specific OsTask , the API ActivateTask called for this OS task returns without effect.

SWS_SwCluC_02230 requirement

⌊ DRAFT g The Os High Proxy shall support the implemen- tation of a task body of the proxy OsTask , with the TASK() macro.

SWS_SwCluC_02250 requirement

⌊ DRAFT g The Os Low Proxy shall only be provided by the Host Software Cluster .

SWS_SwCluC_02251 requirement

⌊ DRAFT g The configuration of the Os Low Proxy for a com- plete Host Software Cluster shall be specified with a set of ECUC-parameters defined here: SwCluCOsProxy . The configuration of the Os Low Proxy shall be de- rived from the implemented configuration for the Os in the Host Software Clus- ter .

SWS_SwCluC_02252 requirement

⌊ DRAFT g The Os Low Proxy shall provide a socket for the Os High Proxys of the Applicative Software Clusters . For each Applicative Software Cluster , a corresponding service resource SwClu- COsProxyOsBaseSocket and configuration shall be provided.

SWS_SwCluC_02253 requirement

⌊ DRAFT g The Os Low Proxy shall provide for each SwCluCOsProxyOsBaseSocket a SwCluC_OsProxy_Init API, to initialize the Os High Proxy of an Applicative Software Cluster . This shall be one element of the service resource SwCluCOsProxyOsBaseSocket .

SWS_SwCluC_02254 requirement

⌊ DRAFT g The Os Low Proxy shall provide an API to start the Os High Proxy of an Applicative Software Cluster . This shall be one element of the service resource SwCluCOsProxyOsBaseSocket .

SWS_SwCluC_02255 requirement

⌊ DRAFT g The Os Low Proxy shall provide an API to shut- down the Os High Proxy of an Applicative Software Cluster . This shall be one element of the service resource SwCluCOsProxyOsBaseSocket .

SWS_SwCluC_02256 requirement

⌊ DRAFT g The Os Low Proxy shall be able to provide an API to connect IOC from Os High Proxy of an Applicative Software Clus- ter . This shall be one element of the service resource SwCluCOsProxyOsBas- eSocket .

SWS_SwCluC_02257 requirement

⌊ DRAFT g The Os Low Proxy shall provide a task dis- patcher, to call the connected Os High Proxy from Applicative Software Cluster .

SWS_SwCluC_02258 requirement

⌊ DRAFT g The Os Low Proxy shall provide a service resource SwCluCOsProxyOsTaskDispatcher, for each Applicative Software Clusters configuration that the system shall be prepared for.

SWS_SwCluC_02259 requirement

⌊ DRAFT g The Os Low Proxy shall provide a service re- source SwCluCOsProxyOsTask , for each Applicative Software Clusters task configuration that the system shall be prepared for. For this resource, an en- try in the Binary Manifest shall be created, to be able to link it to the Os High Proxy task in the Host Software Cluster .

SWS_SwCluC_02260 requirement

⌊ DRAFT g The Os Low Proxy shall provide a function dis- patcher, to call the connected Os High Proxy from Applicative Software Cluster , to trigger general function calls.

SWS_SwCluC_02261 requirement

⌊ DRAFT g The Os Low Proxy shall provide a service re- source SwCluCOsProxyOsFunctionDispatcher , for each Applicative Soft- ware Clusters configuration that the system shall be prepared for.

SWS_SwCluC_02262 requirement

⌊ DRAFT g The Os Low Proxy shall provide a service re- source SwCluCOsProxyOsApplication , for each OsApplication that is con- figured in the Host Software Cluster , and prepared for use in Applicative Software Clusters .

SWS_SwCluC_02263 requirement

⌊ DRAFT g The Os Low Proxy shall provide a service re- source SwCluCOsProxyOsResource , for each OsResource used in Applicative Software Clusters .

SWS_SwCluC_02264 requirement

⌊ DRAFT g The Os Low Proxy shall provide a service re- source SwCluCOsProxyOsSpinlock , for each OsSpinlock used in Applicative Software Clusters .

SWS_SwCluC_02265 requirement

⌊ DRAFT g The Os Low Proxy shall provide a basic service implementation for the following APIs, to be used and connected with an Applica- tive Software Cluster : • GetResource • ReleaseResource • SuspendOSInterrupts • ResumeOSInterrupts • ReleaseResource • GetSpinlock • ReleaseSpinlock • GetApplicationID These APIs shall be provided with a corresponding service resource from SwClu- COsProxy .

SWS_SwCluC_02266 requirement

⌊ DRAFT g The Os Low Proxy shall provide default handles for resources, in case a connection could not be established successfully between Applicative Software Cluster and the Host Software Cluster .

SWS_SwCluC_02270 requirement

The Os Low Proxy shall have a service resource SwClu- COsProxyOsTaskDispatcher , for each task dispatcher provided in the Host Software Cluster . For this resource, an entry in the Binary Manifest shall be created, to be able to link the task dispatcher to its Os High Proxy implementation in the Applicative Software Cluster .

SWS_SwCluC_02271 requirement

The Os Low Proxy shall have a service resource SwClu- COsProxyFunctionDispatcher , for each function dispatcher provided in the Host Software Cluster . For this resource, an entry in the Binary Manifest shall be created, to be able to link the function dispatcher to its Os High Proxy implementa- tion in the Applicative Software Cluster .

SWS_SwCluC_02272 requirement

The Os Low Proxy shall create one partition specific Ser- vice Software Component per configured EcucPartition for the dispatcher, with the name SwCluC_Dispatcher_<EcucPartition shortName> .

SWS_SwCluC_02273 requirement

The Os Low Proxy shall create one RunnableEntity per configured SwCluCOsProxyOsTaskDispatcher container in the partition specific Service Software Component according [SWS_SwCluC_02272]. The EcucPartition is determined by the parameter SwCluCOsProxyEcucParti- tionRef , if configured or alternatively by the EcucPartition to which the related OsTask belongs. The attributes of the RunnableEntity shall be set as following: • minimumStartInterval is set to the parameter value SwCluCOsProxyMin- imumStartInterval • symbol is set to the name of the task dispatcher's C-function used for implemen- tation of [SWS_SwCluC_02270] • canBeInvokedConcurrently is set to false

SWS_SwCluC_02274 requirement

The Os Low Proxy shall create one BackgroundE- vent per configured SwCluCOsProxyDispatcherBackgroundEvent con- tainer in the partition specific Service Software Component according [SWS_SwCluC_02272]. The attributes of the BackgroundEvent shall be set as following: • shortName is set according the container's shortName • startOnEvent is set to the RunnableEntity according [SWS_SwCluC_02273] related to the owning SwCluCOsProxyOsTaskDis- patcher container. • disabledMode (s) are created according the SwCluCOsProxyDisabledMod- eInstanceRef (s) where for each different PPortPrototype an RPortPro- totype is created at the owing Service Software Component according [SWS_SwCluC_02272] and used as contextPort .

SWS_SwCluC_02275 requirement

The Os Low Proxy shall create one TimingEvent per configured SwCluCOsProxyDispatcherTimingEvent container in the partition specific Service Software Component according [SWS_SwCluC_02272]. The attributes of the TimingEvent shall be set as following: • shortName is set according the container's shortName • startOnEvent is set to the RunnableEntity according [SWS_SwCluC_02273] related to the owning SwCluCOsProxyOsTaskDis- patcher container • period value is set according the SwCluCOsProxyTimingEventPeriod pa- rameter • disabledMode (s) are created according the SwCluCOsProxyDisabledMod- eInstanceRef (s) where for each different PPortPrototype an RPortPro- totype is created at the owing Service Software Component according [SWS_SwCluC_02272] and used as contextPort .

SWS_SwCluC_02276 requirement

The Os Low Proxy shall create one SwcMod- eSwitchEvent per configured SwCluCOsProxyDispatcherModeSwitchEvent container in the partition specific Service Software Component according [SWS_SwCluC_02272]. The attributes of the SwcModeSwitchEvent shall be set as following: • shortName is set according the container's shortName • startOnEvent is set to the RunnableEntity according [SWS_SwCluC_02273] related to the owning SwCluCOsProxyOsTaskDis- patcher container • activation value is set according the SwCluCOsProxyDispatcherActiva- tion parameter • mode s are created according the SwCluCOsProxyModeInstanceRef (s) where for each different PPortPrototype an RPortPrototype is created at the owing Service Software Component according [SWS_SwCluC_02272] and used as contextPort . • disabledMode (s) are created according the SwCluCOsProxyDisabledMod- eInstanceRef (s) where for each different PPortPrototype an RPortPro- totype is created at the owing Service Software Component according [SWS_SwCluC_02272] and used as contextPort .

SWS_SwCluC_02277 requirement

The Os Low Proxy shall create one ExternalTrigge- rOccurredEvent per configured SwCluCOsProxyDispatcherExternalTrig- gerOccurredEvent container in the partition specific Service Software Com- ponent according [SWS_SwCluC_02272]. The attributes of the ExternalTrigge- rOccurredEvent shall be set as following: • shortName is set according the container's shortName • startOnEvent is set to the RunnableEntity according [SWS_SwCluC_02273] related to the owning SwCluCOsProxyOsTaskDis- patcher container • trigger is set according the SwCluCOsProxyTriggerInstanceRef where for each different PPortPrototype an RPortPrototype is created at the owing Service Software Component according [SWS_SwCluC_02272] and used as contextRPort . • disabledMode (s) are created according the SwCluCOsProxyDisabledMod- eInstanceRef (s) where for each different PPortPrototype an RPortPro- totype is created at the owing Service Software Component according [SWS_SwCluC_02272] and used as contextPort .

SWS_SwCluC_02278 requirement

[SWS_SwCluC_02278]

SWS_SwCluC_02279 requirement

[SWS_SwCluC_02279]

SWS_SwCluC_02284 requirement

[SWS_SwCluC_02284] SwCluCBManifProvideResourceEntryGroup for SwCluCOsProxyOsTask ⌈For the Os Low Proxy, there shall be a SwCluCBManif- ProvideResourceEntryGroup, whose SwCluCBManifResourceTypeRef shall refer to a SwCluCBManifResourceType that contains one SwCluCBManifNoti- fierHandle, with SwCluCBManifNativeHandleType set to FUNCTION_REFER- ENCE. The SwCluCBManifMultipleNotifierSupport shall be set to MULTIPLE_- NOTIFIER_SETS.⌋

SWS_SwCluC_02285 requirement

[SWS_SwCluC_02285] Semantics of SwCluCOsProxyMaxNumberOfCallee Upstream requirements: SRS_SwCluC_00214 ⌈For each SwCluCOsProxyOsTask, the Os Low Proxy shall put a SwCluCBMan- ifProvideResourceEntry into the binary manifest. If the proxy task’s SwCluCOsProxyOsTaskDispatcher has SwCluCOsProxy- MaxNumberOfCallee set to a value bigger than 1, the provide entry shall be placed in the SwCluCBManifProvideResourceEntryGroup defined in

SWS_SwCluC_02300 requirement

⌊ DRAFT g The Dcm High Proxy shall provide the header file Dcm.h .

SWS_SwCluC_02301 requirement

⌊ DRAFT g The Dcm High Proxy shall support the con- figuration of DataServices_{Data} RPortPrototype s for synchronous ClientServerInterface DataServices_{Data} for a SwCluCDcmProxyDi- agnosticData referencing via SwCluCDcmProxyDataRef a DcmDspData or a DcmDspPidService01 .

SWS_SwCluC_02302 requirement

⌊ DRAFT g The Dcm High Proxy shall support the con- figuration of DataServices_{Data} RPortPrototype s for asynchronous ClientServerInterface DataServices_{Data} without parameter Error- Code .

SWS_SwCluC_02303 requirement

⌊ DRAFT g The Dcm High Proxy shall support the con- figuration of DataServices_{Data} RPortPrototype s for asynchronous ClientServerInterface DataServices_{Data} with parameter ErrorCode .

SWS_SwCluC_02304 requirement

⌊ DRAFT g In case the SwCluCDcmProxyDiagnosticData channel related to a DataServices_{Data} PortPrototype s is connected, the Dcm Proxy shall invoke the • ReadData operation , when the corresponding Xxx_ReadData API is called in the Dcm Low Proxy , OR • WriteData operation , when the corresponding Xxx_WriteData API is called in the Dcm Low Proxy , OR • ReadDataLength operation , when the corresponding Xxx_ReadDataL- ength API is called in the Dcm Low Proxy , OR • ConditionCheckRead operation , when the corresponding Xxx_Condi- tionCheckRead API is called in the Dcm Low Proxy , OR • GetScalingInformation operation , when the corresponding Xxx_- GetScalingInformation API is called in the Dcm Low Proxy , OR • ReturnControlToEcu operation , when the corresponding Xxx_Return- ControlToEcu API is called in the Dcm Low Proxy , OR • ResetToDefault operation , when the corresponding Xxx_ResetToDe- fault API is called in the Dcm Low Proxy , OR • FreezeCurrentState operation , when the corresponding Xxx_Freeze- CurrentState API is called in the Dcm Low Proxy , OR • ShortTermAdjustment operation , when the corresponding Xxx_Short- TermAdjustment API is called in the Dcm Low Proxy . In that case, IN arguments ( Data (if applicable), OpStatus (if applicable), control- Mask (if applicable) and ControlStateInfo (if applicable)) are passed to the client, and OUT arguments ( Data (if applicable), ScalingInfo (if applicable), ErrorCode (if applicable)) and application errors are transferred back to the caller of the Dcm Low Proxy .

SWS_SwCluC_02305 requirement

⌊ DRAFT g In case the operation s in the DataSer- vices_{Data} ClientServerInterface do not have a controlMask argu- ment configured, the value is discarded without checking the passed control- MaskLength .

SWS_SwCluC_02306 requirement

⌊ DRAFT g In case the operation s in the DataSer- vices_{Data} ClientServerInterface do not have an ErrorCode argument configured, the default value DCM_POS_RESP is transferred back to the caller of the Dcm Low Proxy in case the caller returned E_OK .

SWS_SwCluC_02307 requirement

⌊ DRAFT g In case the DataServices_{Data} RPortPro- totype is unconnected, the application error E_NOT_OK and the Error- Code DCM_E_REQUESTOUTOFRANGE is transferred back to the caller of the Dcm Low Proxy .

SWS_SwCluC_02308 requirement

⌊ DRAFT g In case the passed DataLength , ScalingIn- foLength , or controlMaskLength (if applicable, see [SWS_SwCluC_02305]) of the caller of the Dcm Low Proxy do not match the configured data size in the Dcm configuration in the Applicative Software Cluster , the application error E_NOT_OK and the ErrorCode DCM_E_REQUESTOUTOFRANGE is transferred back to the caller of the Dcm Low Proxy . No data , scalingInfo or controlMask values shall be transferred in this case.

SWS_SwCluC_02309 requirement

⌊ DRAFT g The Dcm High Proxy shall support the configu- ration of DataServices_{Data} RPortPrototype s for SenderReceiverInter- face / NvDataInterface DataServices_{Data} .

SWS_SwCluC_02310 requirement

⌊ DRAFT g The Dcm High Proxy shall support the configu- ration of DataServices_{Data} PPortPrototype s for SenderReceiverInter- face / NvDataInterface DataServices_{Data} .

SWS_SwCluC_02311 requirement

⌊ DRAFT g The Dcm High Proxy shall support the config- uration of DataServices_{Data} PRPortPrototype s for SenderReceiverIn- terface / NvDataInterface DataServices_{Data} .

SWS_SwCluC_02312 requirement

⌊ DRAFT g In case the SwCluCDcmProxyDiagnosticData channel related to a DataServices_{Data} PortPrototype s is connected, the Dcm Proxy shall • read the dataElement / nvData , when the corresponding Xxx_ReadData API is called in the Dcm Low Proxy , OR • write the dataElement / nvData , when the corresponding Xxx_WriteData API is called in the Dcm Low Proxy . In that case IN argument Data (if applicable) is sent to the receiver, and OUT argument Data (if applicable) is transferred back to the caller of the Dcm Low Proxy .

SWS_SwCluC_02313 requirement

⌊ DRAFT g In case the DataServices_{Data} Sender- ReceiverInterface / NvDataInterface is configured, the default value DCM_POS_RESP as ErrorCode is transferred back to the caller of the Dcm Low Proxy for any connected RPortPrototype and any connected or unconnected PPortPrototype or PRPortPrototype .

SWS_SwCluC_02314 requirement

⌊ DRAFT g In case the DataServices_{Data} RPortPro- totype , PPortPrototype or PRPortPrototype is unconnected, the return value E_NOT_OK and the ErrorCode DCM_E_REQUESTOUTOFRANGE is transferred back to the caller of the Dcm Low Proxy .

SWS_SwCluC_02315 requirement

⌊ DRAFT g In case the passed DataLength of the caller of the Dcm Low Proxy does not match the configured data size in the Dcm configuration in the Applicative Software Cluster , the return value E_NOT_OK and the ErrorCode DCM_E_REQUESTOUTOFRANGE is transferred back to the caller of the Dcm Low Proxy . No data shall be transferred in this case.

SWS_SwCluC_02316 requirement

⌊ DRAFT g The Dcm High Proxy shall support the configu- ration of DataServices_{DID} RPortPrototype s for SenderReceiverInter- face DataServices_{DID} .

SWS_SwCluC_02317 requirement

⌊ DRAFT g The Dcm High Proxy shall support the configu- ration of DataServices_{DID} PPortPrototype s for SenderReceiverInter- face DataServices_{DID} .

SWS_SwCluC_02318 requirement

⌊ DRAFT g The Dcm High Proxy shall support the configu- ration of DataServices_{DID} PRPortPrototype s for SenderReceiverInter- face DataServices_{DID} .

SWS_SwCluC_02319 requirement

⌊ DRAFT g In case the SwCluCDcmProxyDiagnosticData channel related to a DataServices_{DID} PortPrototype s is connected, the Dcm Proxy shall • read the dataElement , when the corresponding Xxx_ReadData API is called in the Dcm Low Proxy , OR • write the dataElement , when the corresponding Xxx_WriteData API is called in the Dcm Low Proxy , In that case, IN argument Data (if applicable) is sent to the receiver and OUT argument Data (if applicable) is transferred back to the caller of the Dcm Low Proxy .

SWS_SwCluC_02320 requirement

⌊ DRAFT g In case the DataServices_{DID} Sender- ReceiverInterface is configured, the default value DCM_POS_RESP as Error- Code is transferred back to the caller of the Dcm Low Proxy for any connected RPortPrototype and any connected or unconnected PPortPrototype or PR- PortPrototype .

SWS_SwCluC_02321 requirement

⌊ DRAFT g In case the DataServices_{DID} RPortPro- totype is unconnected, the return value E_NOT_OK and the ErrorCode DCM_E_REQUESTOUTOFRANGE is transferred back to the caller of the Dcm Low Proxy .

SWS_SwCluC_02322 requirement

⌊ DRAFT g In case the passed DataLength of the caller of the Dcm Low Proxy does not match the configured data size in the Dcm configuration in the Applicative Software Cluster , the return value E_NOT_OK and the ErrorCode DCM_E_REQUESTOUTOFRANGE is transferred back to the caller of the Dcm Low Proxy . No data shall be transferred in this case.

SWS_SwCluC_02323 requirement

⌊ DRAFT g The Dcm High Proxy shall support the configu- ration of IOControlRequest_{DID} RPortPrototype s for SenderReceiverIn- terface IOControlRequest_{DID} .

SWS_SwCluC_02324 requirement

⌊ DRAFT g The Dcm High Proxy shall support the configu- ration of IOControlResponse_{DID} RPortPrototype s for SenderReceiver- Interface IOControlResponse_{DID} .

SWS_SwCluC_02325 requirement

⌊ DRAFT g In case the SwCluCDcmProxyDiagnostic- Data channel, related to a IOControlRequest_{DID} and IOControlRe- sponse_{DID} sender-receiver port, is connected, the Dcm Proxy shall: • calculate the underControl , IOOperationRequest and controlState data elements, according to [SWS_Dcm_01435], [SWS_Dcm_00682], [SWS_- Dcm_01436], [SWS_Dcm_01437], [SWS_Dcm_01438], [SWS_Dcm_01275], [SWS_Dcm_01277] AND • return the IOOperationResponse , according to [SWS_Dcm_01439], [SWS_- Dcm_01440], and [SWS_Dcm_01441], when the corresponding Xxx_Read- Data , Xxx_WriteData , Xxx_ReturnControlToEcu , Xxx_ResetToDe- fault , Xxx_FreezeCurrentState , or Xxx_ShortTermAdjustment API is called in the Dcm Low Proxy .

SWS_SwCluC_02330 requirement

⌊ DRAFT g The Dcm High Proxy shall support the configuration of RoutineServices_{RoutineName} RPortPrototype s for ClientServerInterface RoutineServices_{RoutineName} .

SWS_SwCluC_02331 requirement

⌊ DRAFT g In case the SwCluCDcmProxyRoutineControl channel related to a RoutineServices_{RoutineName} RPortPrototype s is connected, the Dcm Proxy shall invoke the • Start operation , when the corresponding Xxx_Start API is called in the Dcm Low Proxy , OR • StartConfirmation operation , when the corresponding Xxx_StartCon- firmation API is called in the Dcm Low Proxy , OR • Stop operation , when the corresponding Xxx_Stop API is called in the Dcm Low Proxy , OR • StopConfirmation operation , when the corresponding Xxx_StopConfir- mation API is called in the Dcm Low Proxy , OR • RequestResults operation , when the corresponding Xxx_RequestRe- sults API is called in the Dcm Low Proxy , OR • RequestResultsConfirmation operation , when the corresponding Xxx_- RequestResultsConfirmation API is called in the Dcm Low Proxy , In this case, INOUT arguments ( dataInOut (if applicable)) are used to transfer the individual dataIn signals to the client, and to transfer back the individual dataOut signals as joint array to the caller of the Dcm Low Proxy . The configuration of the operation s in the ClientServerInterface s is according to the Dcm configura- tion of the Applicative Software Cluster . Additionally, IN arguments OpSta- tus (if applicable) and ConfirmationStatus (if applicable) are passed to the client, and OUT arguments ErrorCode (if applicable) and application errors are trans- ferred back to the caller of the Dcm Low Proxy .

SWS_SwCluC_02332 requirement

⌊ DRAFT g In case the RoutineSer- vices_{RoutineName} RPortPrototype is unconnected, the return value E_NOT_OK and the ErrorCode DCM_E_REQUESTOUTOFRANGE (if applicable) is transferred back to the caller of the Dcm Low Proxy .

SWS_SwCluC_02333 requirement

⌊ DRAFT g In case the passed DataLength of the caller of the Dcm Low Proxy does not match the configured data size in the Dcm configuration in the Applicative Software Cluster , the return value E_NOT_OK and the ErrorCode DCM_E_REQUESTOUTOFRANGE is transferred back to the caller of the Dcm Low Proxy . No data shall be transferred in this case.

SWS_SwCluC_02334 requirement

⌊ DRAFT g The Dcm High Proxy shall support the configu- ration of ServiceRequestManufacturerNotification_{Name} RPortProto- type s for ClientServerInterface ServiceRequestManufacturerNotifi- cation_{Name} .

SWS_SwCluC_02335 requirement

⌊ DRAFT g The Dcm High Proxy shall support the con- figuration of ServiceRequestSupplierNotification_{Name} RPortProto- type s for ClientServerInterface ServiceRequestSupplierNotifica- tion_{Name} .

SWS_SwCluC_02336 requirement

⌊ DRAFT g In case the SwCluCDcmProxySer- viceRequestNotification channel related to a ServiceRequestManu- facturerNotification_{Name} or ServiceRequestSupplierNotifica- tion_{Name} RPortPrototype s is connected, the Dcm Proxy shall invoke the • Confirmation operation , when the corresponding Xxx_Confirmation API is called in the Dcm Low Proxy , OR • Indication operation , when the corresponding Xxx_Indication API is called in the Dcm Low Proxy . In this case, IN arguments [ SID (if applicable), ReqType (if applicable), Connec- tionId (if applicable), ConfirmationStatus (if applicable), ProtocolType (if applicable), TesterSourceAddress (if applicable), RequestData (if applicable), DataSize (if applicable)] are passed to the client and OUT arguments [ ErrorCode (if applicable)] and application errors are transferred back to the caller of the Dcm Low Proxy .

SWS_SwCluC_02337 requirement

⌊ DRAFT g In case the ServiceRequestManufac- turerNotification_{Name} or ServiceRequestSupplierNotifica- tion_{Name} RPortPrototype is unconnected, the return value E_NOT_OK and the ErrorCode DCM_E_REQUESTOUTOFRANGE (if applicable) is transferred back to the caller of the Dcm Low Proxy .

SWS_SwCluC_02338 requirement

⌊ DRAFT g The Dcm High Proxy code, and related AUTOSAR model descriptions, shall only be created if the configuration parame- ter SwCluCProxyGenerationDcm is set to HIGH_PROXY .

SWS_SwCluC_02339 requirement

⌊ DRAFT g The Dcm Low Proxy code, and related AUTOSAR model descriptions, shall only be created if the configuration parame- ter SwCluCProxyGenerationDcm is set to LOW_PROXY .

SWS_SwCluC_02341 requirement

⌊ DRAFT g The Dcm High Proxy shall create one partition specific Service Software Component per configured EcucPartition , with the name Dcm_<EcucPartition shortName> .

SWS_SwCluC_02342 requirement

⌊ DRAFT g The Dcm High Proxy shall provide the Ports be- longing to a specific interface connection at the partition specific Service Software Component, at the given EcucPartition of the proxy channel, configured via • SwCluCDcmProxyDiagnosticData . SwCluCProxyEcucPartitionRef OR • SwCluCDcmProxyRoutineControl . SwCluCProxyEcucPartitionRef OR • SwCluCDcmProxyServiceRequestNotification . SwCluCProxyEcuc- PartitionRef

SWS_SwCluC_02350 requirement

⌊ DRAFT g The Dcm Low Proxy shall provide an instance of a Xxx_ReadData function per configured SwCluCDcmProxyDiagnosticData con- tainer in the Dcm Low Proxy , if the diagnostic data element read access is enabled.

SWS_SwCluC_02351 requirement

⌊ DRAFT g The Xxx_ReadData function shall be named SwCluC_DcmProxy_ReadData_<DDSN> , where <DDSN> is the shortName of the SwCluCDcmProxyRoutineControl container.

SWS_SwCluC_02352 requirement

⌊ DRAFT g The diagnostic data element read ac- cess for a SwCluCDcmProxyDiagnosticData is enabled, if: • SwCluCDcmProxyDataRef references a DcmDspData AND the corresponding DcmDspDid has a DcmDspDidRead configured in its related DcmDspDidInfo OR • SwCluCDcmProxyDataRef references a DcmDspDid , which has a DcmDsp- DidRead configured in its related DcmDspDidInfo OR • SwCluCDcmProxyDataRef references a DcmDspPidService01 OR • SwCluCDcmProxyDataRef references a DemDataElementClass

SWS_SwCluC_02353 requirement

⌊ DRAFT g The Dcm Low Proxy shall provide an instance of a Xxx_WriteData function per configured SwCluCDcmProxyDiagnosticData container in the Dcm Low Proxy , if the diagnostic data element write ac- cess is enabled.

SWS_SwCluC_02354 requirement

⌊ DRAFT g The Xxx_WriteData function shall be named SwCluC_DcmProxy_WriteData_<DDSN> , where <DDSN> is the shortName of the SwCluCDcmProxyRoutineControl container.

SWS_SwCluC_02355 requirement

⌊ DRAFT g The diagnostic data element write ac- cess for a SwCluCDcmProxyDiagnosticData is enabled, if: • SwCluCDcmProxyDataRef references a DcmDspData AND the corresponding DcmDspDid has a DcmDspDidWrite configured in its related DcmDspDidInfo OR • SwCluCDcmProxyDataRef references a DcmDspDid , which has a DcmDsp- DidWrite configured in its related DcmDspDidInfo

SWS_SwCluC_02356 requirement

⌊ DRAFT g The Dcm Low Proxy shall provide an instance of a Xxx_ReadDataLength function per configured SwCluCDcmProxyDiagnostic- Data container in the Dcm Low Proxy , if the diagnostic data element read data length access is enabled.

SWS_SwCluC_02357 requirement

⌊ DRAFT g The Xxx_ReadDataLength function shall be named SwCluC_DcmProxy_ReadDataLength_<DDSN> , where <DDSN> is the shortName of the SwCluCDcmProxyRoutineControl container.

SWS_SwCluC_02358 requirement

⌊ DRAFT g The diagnostic data element read data length access for a SwCluCDcmProxyDiagnosticData is enabled, if: • SwCluCDcmProxyDataRef references a DcmDspData AND the corresponding DcmDspDid has a DcmDspDidRead configured in its related DcmDspDidInfo AND • the DcmDspDataType is set to UINT8_DYN .

SWS_SwCluC_02359 requirement

⌊ DRAFT g The Dcm Low Proxy shall provide an instance of a Xxx_ConditionCheckRead function per configured SwCluCDcmProxyDiag- nosticData container in the Dcm Low Proxy , if the diagnostic data element condition check read access is enabled.

SWS_SwCluC_02360 requirement

⌊ DRAFT g The Xxx_ConditionCheckRead function shall be named SwCluC_DcmProxy_ConditionCheckRead_<DDSN> , where <DDSN> is the shortName of the SwCluCDcmProxyRoutineControl container.

SWS_SwCluC_02361 requirement

⌊ DRAFT g The diagnostic data element condition check read access for a SwCluCDcmProxyDiagnosticData is enabled, if: • SwCluCDcmProxyDataRef references a DcmDspData AND the corresponding DcmDspDid has a DcmDspDidRead configured in its related DcmDspDidInfo AND • the parameter DcmDspDataConditionCheckReadFncUsed is set to true .

SWS_SwCluC_02362 requirement

⌊ DRAFT g The Dcm Low Proxy shall provide an instance of a Xxx_GetScalingInformation function per configured SwCluCDcmProxyDiag- nosticData container in the Dcm Low Proxy , if the diagnostic data element scaling information access is enabled.

SWS_SwCluC_02363 requirement

⌊ DRAFT g The Xxx_GetScalingInformation function shall be named SwCluC_DcmProxy_GetScalingInformation_<DDSN> , where <DDSN> is the shortName of the SwCluCDcmProxyRoutineControl container.

SWS_SwCluC_02364 requirement

⌊ DRAFT g The diagnostic data element scaling information access for a SwCluCDcmProxyDiagnosticData is enabled, if: • SwCluCDcmProxyDataRef references a DcmDspData AND • the corresponding DcmDspDataScalingInfoSize is configured in its related DcmDspDataInfo .

SWS_SwCluC_02365 requirement

⌊ DRAFT g The Dcm Low Proxy shall provide an instance of a Xxx_ReturnControlToECU function per configured SwCluCDcmProxyDiag- nosticData container in the Dcm Low Proxy , if the diagnostic data element return control to ECU is enabled.

SWS_SwCluC_02366 requirement

⌊ DRAFT g The Xxx_ReturnControlToECU function shall be named SwCluC_DcmProxy_ReturnControlToECU_<DDSN> , where <DDSN> is the shortName of the SwCluCDcmProxyRoutineControl container.

SWS_SwCluC_02367 requirement

⌊ DRAFT g The diagnostic data element return control to ECU for a SwCluCDcmProxyDiagnosticData is enabled, if: • SwCluCDcmProxyDataRef references a DcmDspData AND • the corresponding DcmDspDid has a DcmDspDidControl configured in its re- lated DcmDspDidInfo AND • the parameter DcmDspDidFreezeCurrentState is set to true .

SWS_SwCluC_02368 requirement

⌊ DRAFT g The Dcm Low Proxy shall provide an instance of a Xxx_ResetToDefault function per configured SwCluCDcmProxyDiagnostic- Data container in the Dcm Low Proxy , if the diagnostic data element reset to default is enabled.

SWS_SwCluC_02369 requirement

⌊ DRAFT g The Xxx_ResetToDefault function shall be named SwCluC_DcmProxy_ResetToDefault_<DDSN> , where <DDSN> is the shortName of the SwCluCDcmProxyRoutineControl container.

SWS_SwCluC_02370 requirement

⌊ DRAFT g The diagnostic data element reset to default for a SwCluCDcmProxyDiagnosticData is enabled, if: • SwCluCDcmProxyDataRef references a DcmDspData AND • the corresponding DcmDspDid has a DcmDspDidControl configured in its re- lated DcmDspDidInfo AND • the parameter DcmDspDidResetToDefault is set to true .

SWS_SwCluC_02371 requirement

⌊ DRAFT g The Dcm Low Proxy shall provide an instance of a Xxx_FreezeCurrentState function per configured SwCluCDcmProxyDiag- nosticData container in the Dcm Low Proxy , if the diagnostic data element freeze current state is enabled.

SWS_SwCluC_02372 requirement

⌊ DRAFT g The Xxx_FreezeCurrentState function shall be named SwCluC_DcmProxy_FreezeCurrentState_<DDSN> , where <DDSN> is the shortName of the SwCluCDcmProxyRoutineControl container.

SWS_SwCluC_02373 requirement

⌊ DRAFT g The diagnostic data element freeze current state for a SwCluCDcmProxyDiagnosticData is enabled, if • SwCluCDcmProxyDataRef references a DcmDspData AND • the corresponding DcmDspDid has a DcmDspDidControl configured in its re- lated DcmDspDidInfo AND • the parameter DcmDspDidFreezeCurrentState is set to true .

SWS_SwCluC_02374 requirement

⌊ DRAFT g The Dcm Low Proxy shall provide an instance of a Xxx_ShortTermAdjustment function per configured SwCluCDcmProxyDiag- nosticData container in the Dcm Low Proxy , if the diagnostic data element short term adjustment is enabled.

SWS_SwCluC_02375 requirement

⌊ DRAFT g The Xxx_ShortTermAdjustment function shall be named SwCluC_DcmProxy_ShortTermAdjustment_<DDSN> , where <DDSN> is the shortName of the SwCluCDcmProxyRoutineControl container.

SWS_SwCluC_02376 requirement

⌊ DRAFT g The diagnostic data element short term adjustment for a SwCluCDcmProxyDiagnosticData is enabled, if • SwCluCDcmProxyDataRef references a DcmDspData AND • the corresponding DcmDspDid has a DcmDspDidControl configured in its re- lated DcmDspDidInfo AND • the parameter DcmDspDidShortTermAdjustment is set to true .

SWS_SwCluC_02380 requirement

⌊ DRAFT g The Xxx_ReadData function of Dcm Low Proxy shall return E_NOT_OK and the ErrorCode DCM_E_REQUESTOUTOFRANGE , if the cor- responding diagnostic data proxy is not connected to an instance in the Dcm High Proxy . No data is returned in this case.

SWS_SwCluC_02381 requirement

⌊ DRAFT g The Xxx_WriteData function of Dcm Low Proxy shall return E_NOT_OK and the ErrorCode DCM_E_REQUESTOUTOFRANGE , if the corresponding diagnostic data proxy is not connected to an instance in the Dcm High Proxy .

SWS_SwCluC_02382 requirement

⌊ DRAFT g The Xxx_ReadDataLength function of Dcm Low Proxy shall return E_NOT_OK , if the corresponding diagnostic data proxy is not connected to an instance in the Dcm High Proxy .

SWS_SwCluC_02383 requirement

⌊ DRAFT g The Xxx_ConditionCheckRead function of Dcm Low Proxy shall return E_NOT_OK , if the corresponding diagnostic data proxy is not connected to an instance in the Dcm High Proxy .

SWS_SwCluC_02384 requirement

⌊ DRAFT g The Xxx_GetScalingInformation function of Dcm Low Proxy shall return E_NOT_OK , if the corresponding diagnostic data proxy is not connected to an instance in the Dcm High Proxy .

SWS_SwCluC_02385 requirement

⌊ DRAFT g The Xxx_ReturnControlToECU function of Dcm Low Proxy shall return E_NOT_OK , if the corresponding diagnostic data proxy is not connected to an instance in the Dcm High Proxy .

SWS_SwCluC_02386 requirement

⌊ DRAFT g The Xxx_ResetToDefault function of Dcm Low Proxy shall return E_NOT_OK , if the corresponding diagnostic data proxy is not connected to an instance in the Dcm High Proxy .

SWS_SwCluC_02387 requirement

⌊ DRAFT g The Xxx_FreezeCurrentState function of Dcm Low Proxy shall return E_NOT_OK , if the corresponding diagnostic data proxy is not connected to an instance in the Dcm High Proxy .

SWS_SwCluC_02388 requirement

⌊ DRAFT g The Xxx_ShortTermAdjustment function of Dcm Low Proxy shall return E_NOT_OK , if the corresponding diagnostic data proxy is not connected to an instance in the Dcm High Proxy .

SWS_SwCluC_02390 requirement

⌊ DRAFT g The Dcm High Proxy shall create for each SwCluCDcmProxyBaseSocket a required resource entry in the Binary Mani- fest .

SWS_SwCluC_02391 requirement

⌊ DRAFT g The Dcm High Proxy shall create for each di- agnostic data proxy - configured via SwCluCDcmProxyDiagnosticData con- tainer - a provided resource entry in the Binary Manifest .

SWS_SwCluC_02392 requirement

⌊ DRAFT g The Dcm High Proxy shall create for each rou- tine control proxy - configured via SwCluCDcmProxyRoutineControl con- tainer - a provided resource entry in the Binary Manifest .

SWS_SwCluC_02393 requirement

⌊ DRAFT g The Dcm High Proxy shall create for each ser- vice request notification proxy - configured via SwCluCDcmProxySer- viceRequestNotification container - a provided resource entry in the Binary Manifest .

SWS_SwCluC_02394 requirement

⌊ DRAFT g The Dcm Low Proxy shall create for each di- agnostic data proxy - configured via SwCluCDcmProxyDiagnosticData con- tainer - a required resource entry in the Binary Manifest .

SWS_SwCluC_02395 requirement

⌊ DRAFT g The Dcm Low Proxy shall create for each rou- tine control proxy - configured via SwCluCDcmProxyRoutineControl con- tainer - a required resource entry in the Binary Manifest .

SWS_SwCluC_02396 requirement

⌊ DRAFT g The Dcm Low Proxy shall create for each ser- vice request notification proxy - configured via SwCluCDcmProxySer- viceRequestNotification container - a required resource entry in the Binary Manifest .

SWS_SwCluC_02397 requirement

⌊ DRAFT g The Dcm Low Proxy shall create for each SwCluCDcmProxyBaseSocket a provided resource entry in the Binary Mani- fest .

SWS_SwCluC_02400 requirement

⌊ DRAFT g The Dcm Low Proxy shall provide an instance of a Xxx_Start function per configured SwCluCDcmProxyRoutineControl container in the Dcm Low Proxy .

SWS_SwCluC_02401 requirement

⌊ DRAFT g The Xxx_Start function shall be named SwCluC_DcmProxy_Start_<RCSN> , where <RCSN> is the shortName of the SwCluCDcmProxyRoutineControl container.

SWS_SwCluC_02402 requirement

⌊ DRAFT g The Xxx_Start function of Dcm Low Proxy shall return E_NOT_OK and the ErrorCode DCM_E_REQUESTOUTOFRANGE , if the cor- responding routine control proxy is not connected to an instance in the Dcm High Proxy .

SWS_SwCluC_02403 requirement

⌊ DRAFT g The Dcm Low Proxy shall provide an instance of a Xxx_StartConfirmation function per configured SwCluCDcmProxyRou- tineControl container in the Dcm Low Proxy .

SWS_SwCluC_02404 requirement

⌊ DRAFT g The Xxx_StartConfirmation function shall be named SwCluC_DcmProxy_StartConfirmation_<RCSN> , where <RCSN> is the shortName of the SwCluCDcmProxyRoutineControl container.

SWS_SwCluC_02405 requirement

⌊ DRAFT g The Xxx_StartConfirmation function of Dcm Low Proxy shall return E_NOT_OK , if the corresponding routine control proxy is not connected to an instance in the Dcm High Proxy .

SWS_SwCluC_02406 requirement

⌊ DRAFT g The Dcm Low Proxy shall provide an instance of a Xxx_Stop function per configured SwCluCDcmProxyRoutineControl container in the Dcm Low Proxy .

SWS_SwCluC_02407 requirement

⌊ DRAFT g The Xxx_Stop function shall be named SwCluC_DcmProxy_Stop_<RCSN> , where <RCSN> is the shortName of the SwCluCDcmProxyRoutineControl container.

SWS_SwCluC_02408 requirement

⌊ DRAFT g The Xxx_Stop function of Dcm Low Proxy shall return E_NOT_OK and the ErrorCode DCM_E_REQUESTOUTOFRANGE , if the corre- sponding routine control proxy is not connected to an instance in the Dcm High Proxy .

SWS_SwCluC_02409 requirement

⌊ DRAFT g The Dcm Low Proxy shall provide an instance of a Xxx_StopConfirmation function per configured SwCluCDcmProxyRou- tineControl container in the Dcm Low Proxy .

SWS_SwCluC_02410 requirement

⌊ DRAFT g The Xxx_StopConfirmation function shall be named SwCluC_DcmProxy_StopConfirmation_<RCSN> , where <RCSN> is the shortName of the SwCluCDcmProxyRoutineControl container.

SWS_SwCluC_02411 requirement

⌊ DRAFT g The Xxx_StopConfirmation function of Dcm Low Proxy shall return E_NOT_OK if the corresponding routine control proxy is not connected to an instance in the Dcm High Proxy .

SWS_SwCluC_02412 requirement

⌊ DRAFT g The Dcm Low Proxy shall provide an instance of a Xxx_RequestResults function per configured SwCluCDcmProxyRoutineCon- trol container in the Dcm Low Proxy .

SWS_SwCluC_02413 requirement

⌊ DRAFT g The Xxx_RequestResults function shall be named SwCluC_DcmProxy_RequestResults_<RCSN> , where <RCSN> is the shortName of the SwCluCDcmProxyRoutineControl container.

SWS_SwCluC_02414 requirement

⌊ DRAFT g The Xxx_RequestResults function of Dcm Low Proxy shall return E_NOT_OK and the ErrorCode DCM_E_REQUESTOUTOFRANGE , if the corresponding routine control proxy is not connected to an instance in the Dcm High Proxy .

SWS_SwCluC_02415 requirement

⌊ DRAFT g The Dcm Low Proxy shall provide an instance of a Xxx_RequestResultsConfirmation function per configured SwCluCDcmProx- yRoutineControl container in the Dcm Low Proxy .

SWS_SwCluC_02416 requirement

⌊ DRAFT g The Xxx_RequestResultsConfirmation function shall be named SwCluC_DcmProxy_RequestResultsConfirmation_<RCSN> , where <RCSN> is the shortName of the SwCluCDcmProxyRoutineControl con- tainer.

SWS_SwCluC_02417 requirement

⌊ DRAFT g The Xxx_RequestResultsConfirmation function of Dcm Low Proxy shall return E_NOT_OK , if the corresponding rou- tine control proxy is not connected to an instance in the Dcm High Proxy .

SWS_SwCluC_02418 requirement

⌊ DRAFT g The Dcm Low Proxy shall provide an instance of a Xxx_Indication function per configured SwCluCDcmProxyServiceRequest- Notification container in the Dcm Low Proxy .

SWS_SwCluC_02419 requirement

⌊ DRAFT g The Xxx_Indication function shall be named SwCluC_DcmProxy_Indication_<SRNSN> , where <SRNSN> is the short- Name of the SwCluCDcmProxyServiceRequestNotification container.

SWS_SwCluC_02420 requirement

⌊ DRAFT g The Xxx_Indication function of Dcm Low Proxy shall return E_NOT_OK and the ErrorCode DCM_E_REQUESTOUTOFRANGE , if the corresponding routine control proxy is not connected to an instance in the Dcm High Proxy .

SWS_SwCluC_02421 requirement

⌊ DRAFT g The Dcm Low Proxy shall provide an in- stance of a Xxx_Confirmation function per configured SwCluCDcmProxySer- viceRequestNotification container in the Dcm Low Proxy .

SWS_SwCluC_02422 requirement

⌊ DRAFT g The Xxx_Confirmation function shall be named SwCluC_DcmProxy_Confirmation_<SRNSN> , where <SRNSN> is the short- Name of the SwCluCDcmProxyServiceRequestNotification container.

SWS_SwCluC_02423 requirement

⌊ DRAFT g The Xxx_Confirmation function of Dcm Low Proxy shall return E_NOT_OK and the ErrorCode DCM_E_REQUESTOUTOFRANGE , if the corresponding routine control proxy is not connected to an instance in the Dcm High Proxy .

SWS_SwCluC_02424 requirement

⌊ DRAFT g The interface function instance for the diagnos- tic data proxy , routine control proxy and service request notifi- cation proxy , according to [SWS_SwCluC_02350], [SWS_SwCluC_02353], [SWS_SwCluC_02356], [SWS_SwCluC_02359], [SWS_SwCluC_02362], [SWS_SwCluC_02365], [SWS_SwCluC_02368], [SWS_SwCluC_02371], [SWS_SwCluC_02374], [SWS_SwCluC_02400], [SWS_SwCluC_02403], [SWS_SwCluC_02406], [SWS_SwCluC_02409], [SWS_SwCluC_02412], [SWS_SwCluC_02415], are provided either: • at the EcucPartition , referenced by – SwCluCDcmProxyDiagnosticData . SwCluCProxyEcucPartitionRef OR – SwCluCDcmProxyRoutineControl . SwCluCProxyEcucPartitionRef OR – SwCluCDcmProxyServiceRequestNotification . SwCluCProxyE- cucPartitionRef OR • if a SwCluCDcmProxyBaseSocket is directly available, at its EcucPartition OR • at the EcucPartition of the SwCluCDcmProxyBaseSocket , referenced by the SwCluCDcmProxyBaseSocket - via SwCluCDcmProxyUsedSatel- liteRef , applicable for the EcucPartition requested above. In this case, the EcucPartition shall be changed, before the callback in the High Proxy is called.

SWS_SwCluC_02425 requirement

⌊ DRAFT g The Dcm Low Proxy shall provide, for each SwCluCDcmProxyBaseSocket , a SwCluC_DcmProxy_Init API, to initialize the Dcm High Proxy of an Applicative Software Cluster . This shall be one element of the service resource SwCluCDcmProxyBaseSocket .

SWS_SwCluC_02426 requirement

⌊ DRAFT g Development Error Types of SwCluC Dcm Proxy The development error types defined for the SwCluC Dcm Proxy are listed in table Table 7.7.

SWS_SwCluC_02500 requirement

⌊ DRAFT g The LdCom High Proxy code, and related AUTOSAR model descriptions, shall only be created, if the configuration parameter SwCluCProxyGenerationLdCom is set to HIGH_PROXY .

SWS_SwCluC_02501 requirement

⌊ DRAFT g The LdCom Low Proxy code, and related AUTOSAR model descriptions, shall only be created, if the configuration parameter SwCluCProxyGenerationLdCom is set to LOW_PROXY .

SWS_SwCluC_02502 requirement

⌊ DRAFT g The LdCom Proxy shall support that the Ld- ComIPdu Ids of the LdCom of the Host Software Cluster can change, without reconfiguration or rebuild of the Applicative Software Cluster using these Ld- ComIPdu s.

SWS_SwCluC_02503 requirement

⌊ DRAFT g The LdCom Proxy shall support the invocation of LdCom API from an Applicative Software Cluster in context of the Host Software Cluster .

SWS_SwCluC_02504 requirement

⌊ DRAFT g The LdCom Proxy shall support the invocation of LdCom Callback APIs from the Host Software Cluster in context of the Ap- plicative Software Cluster .

SWS_SwCluC_02505 requirement

⌊ DRAFT g The LdCom High Proxy shall provide the header file LdCom.h .

SWS_SwCluC_02506 requirement

⌊ DRAFT g The LdCom High Proxy shall provide the sym- bolic name values for the LdComIPdu IDs, for LdCom users in the Applicative Software Cluster .

SWS_SwCluC_02507 requirement

⌊ DRAFT g The LdCom High Proxy shall provide the func- tion w.r.t transmission request of a LdComIPdu • LdCom_Transmit required by the Applicative Software Cluster

SWS_SwCluC_02508 requirement

⌊ DRAFT g If the LdCom High Proxy is not connected to the LdCom Low Proxy , the function • LdCom_Transmit of the LdCom High Proxy shall return E_NOT_OK .

SWS_SwCluC_02509 requirement

⌊ DRAFT g The LdCom High Proxy shall provide the func- tion for transmission request of a signal, according to [SWS_SwCluC_02506], once per configured SwCluCLdComProxyBaseSocket . At the EcucPartition , where the SwCluCNativeBswApi is set to true , the API is provided with the original Mip LdCom . For all other SwCluCLdComProxyBaseSocket instances, the Mip LdCom is replaced by LdCom_<EcucPartition.ShortName> .

SWS_SwCluC_02510 requirement

⌊ DRAFT g The LdCom High Proxy shall support the <Ld- ComUser_LdComCbkRxIndication> notification callback, configured via the Ld- ComUserCallbackName (See [ECUC_LdCom_00023]) parameter, where the LdCo- mUserCallbackType (See [ECUC_LdCom_00025]) is set to LDCOM_RX_INDICA- TION

SWS_SwCluC_02511 requirement

⌊ DRAFT g The LdCom High Proxy shall support the op- tional <LdComUser_LdComCbkTxConfirmation> notification callback, configured via the LdComUserCallbackName (See [ECUC_LdCom_00023]) parameter, where the LdComUserCallbackType (See [ECUC_LdCom_00025]) is set to LDCOM_TX_- CONFIRMATION

SWS_SwCluC_02512 requirement

⌊ DRAFT g The LdCom High Proxy shall support the op- tional <LdComUser_LdComCbkTriggerTransmit> notification callback, configured via the LdComUserCallbackName (See [ECUC_LdCom_00023]) parameter, where the LdComUserCallbackType (See [ECUC_LdCom_00025]) is set to LDCOM_TX_- TRIGGER_TRANSMIT

SWS_SwCluC_02513 requirement

⌊ DRAFT g The LdCom High Proxy shall support the <Ld- ComUser_LdComCbkCopyRxData> notification callback, configured via the LdCo- mUserCallbackName (See [ECUC_LdCom_00023]) parameter, where the LdCo- mUserCallbackType (See [ECUC_LdCom_00025]) is set to LDCOM_TP_COPY_- RX_DATA

SWS_SwCluC_02514 requirement

⌊ DRAFT g The LdCom High Proxy shall support the <Ld- ComUser_LdComCbkStartOfReception> notification callback configured via the LdComUserCallbackName (See [ECUC_LdCom_00023]) parameter where the LdComUserCallbackType (See [ECUC_LdCom_00025]) is set to LDCOM_RX_- START_OF_RECEPTION

SWS_SwCluC_02515 requirement

⌊ DRAFT g The LdCom High Proxy shall support the <Ld- ComUser_LdComCbkTpRxIndication> notification callback, configured via the Ld- ComUserCallbackName (See [ECUC_LdCom_00023]) parameter, where the LdCo- mUserCallbackType (See [ECUC_LdCom_00025]) is set to LDCOM_TP_RX_INDI- CATION

SWS_SwCluC_02516 requirement

⌊ DRAFT g The LdCom High Proxy shall support the <Ld- ComUser_LdComCbkTpTxConfirmation> notification callback, configured via the LdComUserCallbackName (See [ECUC_LdCom_00023]) parameter, where the Ld- ComUserCallbackType (See [ECUC_LdCom_00025]) is set to LDCOM_TP_TX_- CONFIRMATION

SWS_SwCluC_02517 requirement

⌊ DRAFT g The LdCom High Proxy shall support the <Ld- ComUser_LdComCbkCopyTxData> notification callback, configured via the LdCo- mUserCallbackName (See [ECUC_LdCom_00023]) parameter, where the LdCo- mUserCallbackType (See [ECUC_LdCom_00025]) is set to LDCOM_TP_COPY_- TX_DATA

SWS_SwCluC_02518 requirement

⌊ DRAFT g The LdCom Low Proxy shall provide the header file SwCluC_LdComProxy_Cbk.h .

SWS_SwCluC_02519 requirement

⌊ DRAFT g The LdCom Low Proxy shall provide the entry function for transmission requests, according to [SWS_SwCluC_02506], once per configured SwCluCLdComProxyBaseSocket at the EcucPartition configured by SwCluCLdComProxyBaseSocket . SwCluCProxyEcucPartitionRef .

SWS_SwCluC_02520 requirement

⌊ DRAFT g The LdCom Low Proxy shall provide for each SwCluCLdComProxyBaseSocket a SwCluC_LdComProxy_Init API, to initial- ize the LdCom High Proxy of an Applicative Software Cluster .

SWS_SwCluC_02521 requirement

⌊ DRAFT g The LdCom Low Proxy shall provide an instance of all SwCluC_LdComProxy_LdComCbkRxIndication notification callbacks, con- figured via the LdComUserCallbackName (See [ECUC_LdCom_00023]) parameter, with LdComUserCallbackType (See [ECUC_LdCom_00025]) set to LDCOM_RX_- INDICATION .

SWS_SwCluC_02522 requirement

⌊ DRAFT g The LdCom Low Proxy shall provide an instance of all LdComCbkTxConfirmation notification callbacks, configured via the LdCo- mUserCallbackName (See [ECUC_LdCom_00023]) parameter, with LdComUser- CallbackType (See [ECUC_LdCom_00025]) set to LDCOM_TX_CONFIRMATION .

SWS_SwCluC_02523 requirement

⌊ DRAFT g The LdCom Low Proxy shall provide an instance of all LdComCbkTriggerTransmit notification callbacks, configured via the LdCo- mUserCallbackName (See [ECUC_LdCom_00023]) parameter, with LdComUser- CallbackType (See [ECUC_LdCom_00025]) set to LDCOM_TX_TRIGGER_TRANS- MIT .

SWS_SwCluC_02524 requirement

⌊ DRAFT g The LdCom Low Proxy shall provide an instance of all LdComCbkCopyRxData notification callbacks, configured via the LdComUser- CallbackName (See [ECUC_LdCom_00023]) parameter, with LdComUserCall- backType (See [ECUC_LdCom_00025]) set to LDCOM_TP_COPY_RX_DATA .

SWS_SwCluC_02525 requirement

⌊ DRAFT g The LdCom Low Proxy shall provide an instance of all LdComCbkStartOfReception notification callbacks, configured via the LdCo- mUserCallbackName (See [ECUC_LdCom_00023]) parameter, with LdComUser- CallbackType (See [ECUC_LdCom_00025]) set to LDCOM_RX_START_OF_RECEP- TION .

SWS_SwCluC_02526 requirement

⌊ DRAFT g The LdCom Low Proxy shall provide an instance of all LdComCbkTpRxIndication notification callbacks, configured via the LdCo- mUserCallbackName (See [ECUC_LdCom_00023]) parameter, with LdComUser- CallbackType (See [ECUC_LdCom_00025]) set to LDCOM_TP_RX_INDICATION .

SWS_SwCluC_02527 requirement

⌊ DRAFT g The LdCom Low Proxy shall provide an instance of all LdComCbkTpTxConfirmation notification callbacks, configured via the Ld- ComUserCallbackName (See [ECUC_LdCom_00023]) parameter, with the LdCo- mUserCallbackType (See [ECUC_LdCom_00025]) set to LDCOM_TP_TX_CONFIR- MATION .

SWS_SwCluC_02528 requirement

⌊ DRAFT g The LdCom Low Proxy shall provide an instance of all SwCluC_LdComProxy_LdComCbkCopyTxData notification callbacks, config- ured via the LdComUserCallbackName (See [ECUC_LdCom_00023]) parameter, with the LdComUserCallbackType (See [ECUC_LdCom_00025]) set to LDCOM_- TP_COPY_TX_DATA .

SWS_SwCluC_02529 requirement

⌊ DRAFT g The notification callback instances accord- ing to [SWS_SwCluC_02520], [SWS_SwCluC_02521], [SWS_SwCluC_02522], [SWS_SwCluC_02523], [SWS_SwCluC_02524], [SWS_SwCluC_02525], [SWS_SwCluC_02526], [SWS_SwCluC_02527] and [SWS_SwCluC_02528] are provided • at the EcucPartition of the SwCluCLdComProxyBaseSocket , referenced by the SwCluCLdComProxyBaseSocket - via SwCluCLdComProxyUsedSatel- liteRef .

SWS_SwCluC_02530 requirement

⌊ DRAFT g If the LdCom Low Proxy is not connected to the LdCom High Proxy , the notification callback functions • SwCluC_LdComProxy_LdComCbkStartOfReception • SwCluC_LdComProxy_LdComCbkCopyRxData • SwCluC_LdComProxy_LdComCbkCopyTxData of the LdCom Low Proxy shall return BUFREQ_E_NOT_OK .

SWS_SwCluC_02531 requirement

⌊ DRAFT g If the LdCom Low Proxy is not connected to the LdCom High Proxy , the notification callback function • SwCluC_LdComProxy_LdComCbkTriggerTransmit of the LdCom Low Proxy shall return E_NOT_OK .

SWS_SwCluC_02532 requirement

⌊ DRAFT g If the LdCom Low Proxy is not connected to the LdCom High Proxy , the notification callback functions • SwCluC_LdComProxy_LdComCbkRxIndication • SwCluC_LdComProxy_LdComCbkTpRxIndication • SwCluC_LdComProxy_LdComCbkTxConfirmation • SwCluC_LdComProxy_LdComCbkTpTxConfirmation of the LdCom Low Proxy shall return without effect.

SWS_SwCluC_02533 requirement

⌊ DRAFT g If the development error detection is enabled for the LdCom High Proxy , the API • LdCom_Transmit shall report the DET error LDCOM_E_UNINIT , in case the LdCom High Proxy is not initialized.

SWS_SwCluC_02534 requirement

⌊ DRAFT g If the development error detection is enabled for the LdCom High Proxy , the API • LdCom_Transmit shall, when invoked with a NULL_PTR , report the DET error LD- COM_E_PARAM_POINTER .

SWS_SwCluC_02535 requirement

⌊ DRAFT g If the <LdComUser_LdComCbkRxIndication> notification callback is configured in the LdCom High Proxy (via the LdComUser- CallbackName (See [ECUC_LdCom_00023]) parameter, where the LdComUser- CallbackType (See [ECUC_LdCom_00025]) is set to LDCOM_RX_INDICATION ), all the configured <LdComUser_LdComCbkRxIndication> callbacks shall be invoked, when the associated instance of the SwCluC_LdComProxy_LdComCbkRxIndica- tion from the LdCom Low Proxy is called.

SWS_SwCluC_02536 requirement

⌊ DRAFT g If the <LdComUser_LdComCbkTxConfirma- tion> notification callback is configured in the LdCom High Proxy (via the Ld- ComUserCallbackName (See [ECUC_LdCom_00023]) parameter, where the LdCo- mUserCallbackType (See [ECUC_LdCom_00025]) is set to LDCOM_TX_CONFIR- MATION ), the configured <LdComUser_LdComCbkTxConfirmation> callback shall be invoked. when the associated instance of the SwCluC_LdComProxy_LdComCbk- TxConfirmation from the LdCom Low Proxy is called.

SWS_SwCluC_02537 requirement

⌊ DRAFT g If the <LdComUser_LdComCbkTriggerTrans- mit> notification callback is configured in the LdCom High Proxy (via the LdComUserCallbackName (See [ECUC_LdCom_00023]) parameter, where the LdComUserCallbackType (See [ECUC_LdCom_00025]) is set to LDCOM_TX_- TRIGGER_TRANSMIT ), the configured <LdComUser_LdComCbkTriggerTransmit> callback shall be invoked, when the associated instance of the SwCluC_Ld- ComProxy_LdComCbkTriggerTransmit from the LdCom Low Proxy is called.

SWS_SwCluC_02538 requirement

⌊ DRAFT g If the <LdComUser_LdComCbkCopyRxData> no- tification callback is configured in the LdCom High Proxy (via the LdComUserCall- backName (See [ECUC_LdCom_00023]) parameter, where the LdComUserCall- backType (See [ECUC_LdCom_00025]) is set to LDCOM_TP_COPY_RX_DATA ), the configured <LdComUser_LdComCbkCopyRxData> callback shall be invoked, when the associated instance of the SwCluC_LdComProxy_LdComCbkCopyRxData from the LdCom Low Proxy is called.

SWS_SwCluC_02539 requirement

⌊ DRAFT g If the <LdComUser_LdComCbkStartOfRecep- tion> notification callback is configured in the LdCom High Proxy (via the LdComUserCallbackName (See [ECUC_LdCom_00023]) parameter, where the LdComUserCallbackType (See [ECUC_LdCom_00025]) is set to LDCOM_RX_- START_OF_RECEPTION ), the configured <LdComUser_LdComCbkStartOfRecep- tion> callback shall be invoked, when the associated instance of the SwCluC_Ld- ComProxy_LdComCbkStartOfReception from the LdCom Low Proxy is called.

SWS_SwCluC_02540 requirement

⌊ DRAFT g If the <LdComUser_LdComCbkTpRxIndica- tion> notification callback is configured in the LdCom High Proxy (via the Ld- ComUserCallbackName (See [ECUC_LdCom_00023]) parameter, where the LdCo- mUserCallbackType (See [ECUC_LdCom_00025]) is set to LDCOM_TP_RX_INDI- CATION ), the configured <LdComUser_LdComCbkTpRxIndication> callback shall be invoked, when the associated instance of the SwCluC_LdComProxy_LdComCbk- TpRxIndication from the LdCom Low Proxy is called.

SWS_SwCluC_02541 requirement

⌊ DRAFT g If the <LdComUser_LdComCbkTpTxConfirma- tion> notification callback is configured in the LdCom High Proxy (via the LdComUserCallbackName (See [ECUC_LdCom_00023]) parameter, where the LdComUserCallbackType (See [ECUC_LdCom_00025]) is set to LDCOM_TP_- TX_CONFIRMATION ), the configured <LdComUser_LdComCbkTpTxConfirmation> callback shall be invoked, when the associated instance of the SwCluC_Ld- ComProxy_LdComCbkTpTxConfirmation from the LdCom Low Proxy is called.

SWS_SwCluC_02542 requirement

⌊ DRAFT g If the <LdComUser_LdComCbkCopyTxData> no- tification callback is configured in the LdCom High Proxy (via the LdComUserCall- backName (See [ECUC_LdCom_00023]) parameter, where the LdComUserCall- backType (See [ECUC_LdCom_00025]) is set to LDCOM_TP_COPY_TX_DATA ), the configured <LdComUser_LdComCbkCopyTxData> callback shall be invoked, when the associated instance of the SwCluC_LdComProxy_LdComCbkCopyTxData from the LdCom Low Proxy is called.

SWS_SwCluC_02543 requirement

⌊ DRAFT g The Com High Proxy shall create, for each SwCluCLdComProxyBaseSocket , a required resource entry in the Binary Man- ifest .

SWS_SwCluC_02544 requirement

⌊ DRAFT g The LdCom Low Proxy shall create for each SwCluCLdComProxyBaseSocket a provided resource entry in the Binary Man- ifest .

SWS_SwCluC_02545 requirement

⌊ DRAFT g Development Error Types of SwCluC LdCom Proxy The development error types defined for the SwCluC LdCom Proxy are listed in table Table 7.6.

SWS_SwCluC_02548 requirement

⌊ DRAFT g The LdCom Proxy shall support that the LdCo- mUserCbkHandleId of LdComUserIPdu s configured in LdCom users of the Ap- plicative Software Cluster can change, without reconfiguration or rebuild of the Host Software Cluster .

SWS_SwCluC_02549 requirement

⌊ DRAFT g The LdCom Low Proxy shall provide in its Ld- ComUserModuleCnf containers the LdComUserCbkHandleId values for the config- ured LdComUserIPdu s, according to its internal implementation requirements (e.g. to address the LdCom Low Proxy 's data structures).

SWS_SwCluC_02550 requirement

⌊ DRAFT g The LdCom base socket shall implement the connection of the related callback functions • SwCluC_LdComProxy_LdComCbkStartOfReception • SwCluC_LdComProxy_LdComCbkCopyRxData • SwCluC_LdComProxy_LdComCbkCopyTxData • SwCluC_LdComProxy_LdComCbkTriggerTransmit • SwCluC_LdComProxy_LdComCbkRxIndication • SwCluC_LdComProxy_LdComCbkTpRxIndication • SwCluC_LdComProxy_LdComCbkTxConfirmation • SwCluC_LdComProxy_LdComCbkTpTxConfirmation

SWS_SwCluC_02551 requirement

⌊ DRAFT g The LdCom High Proxy shall create for each LdComIPdu configured in LdCom a required resource entry in the Binary Man- ifest . Where the EcucPartition of the LdComIPdu 's Pdu given via Pdu . EcucPduDefaultPartitionRef or Pdu . EcucPduDedicatedPartition . EcucP- duDedicatedPartitionRef are relevant to denote the EcucPartition .

SWS_SwCluC_02552 requirement

⌊ DRAFT g The LdCom Low Proxy shall create, for each LdComUserIPdu configured in a SwCluCLdComProxyBaseSocket . LdComUser- ModuleCnf , a provided resource entry in the Binary Manifest .

SWS_SwCluC_02600 requirement

⌊ DRAFT g The Com High Proxy code, and related AUTOSAR model descriptions, shall only be created, if the configuration param- eter SwCluCProxyGenerationCom is set to HIGH_PROXY .

SWS_SwCluC_02601 requirement

⌊ DRAFT g The Com Low Proxy code, and related AUTOSAR model descriptions, shall only be created, if the configuration param- eter SwCluCProxyGenerationCom is set to LOW_PROXY .

SWS_SwCluC_02602 requirement

⌊ DRAFT g The Com Proxy shall support that the ComHan- dleId of ComSignal s configured in Com of the Host Software Cluster can change, without reconfiguration or rebuild of the Applicative Software Cluster using these ComSignal s.

SWS_SwCluC_02603 requirement

⌊ DRAFT g The Com Proxy shall support that the ComHan- dleId of ComSignalGroup s resp. ComGroupSignal s configured in the Com of the Host Software Cluster can change, without reconfiguration or rebuild of the Applicative Software Cluster using these ComSignalGroup s.

SWS_SwCluC_02604 requirement

⌊ DRAFT g The Com Proxy shall support the invocation of Com APIs from an Applicative Software Cluster in context of the Host Software Cluster .

SWS_SwCluC_02605 requirement

⌊ DRAFT g The Com Proxy shall support the invocation of Com callbacks from the Host Software Cluster in context of the Applicative Software Cluster .

SWS_SwCluC_02606 requirement

⌊ DRAFT g The Com High Proxy shall provide the header file Com.h .

SWS_SwCluC_02607 requirement

⌊ DRAFT g The Com High Proxy shall provide the symbolic name values for the ComSignal s, for Com users in the Applicative Software Cluster .

SWS_SwCluC_02608 requirement

⌊ DRAFT g The Com High Proxy shall provide the symbolic name values for the ComSignalGroup s resp. ComGroupSignal s, for Com users in the Applicative Software Cluster .

SWS_SwCluC_02609 requirement

⌊ DRAFT g The Com High Proxy shall provide the functions for transmission requests of ComSignal s and ComSignalGroup s • Com_SendSignal • Com_SendDynSignal • Com_SendSignalGroup • Com_SendSignalGroupArray • Com_SendSignalWithMetaData • Com_SendDynSignalWithMetaData • Com_SendSignalGroupWithMetaData • Com_SendSignalGroupArrayWithMetaData required by the Com users in the Applicative Software Cluster .

SWS_SwCluC_02610 requirement

⌊ DRAFT g The Com High Proxy shall provide the functions for reception requests of a ComSignal and ComSignalGroup • Com_ReceiveSignal • Com_ReceiveDynSignal • Com_ReceiveSignalGroup • Com_ReceiveSignalGroupArray • Com_ReceiveSignalWithMetaData • Com_ReceiveDynSignalWithMetaData • Com_ReceiveSignalGroupWithMetaData • Com_ReceiveSignalGroupArrayWithMetaData required by the Com users in the Applicative Software Cluster

SWS_SwCluC_02611 requirement

⌊ DRAFT g The Com High Proxy shall provide the functions for invalidation requests of a ComSignal and ComSignalGroup • Com_InvalidateSignal • Com_InvalidateSignalGroup required by the Com users in the Applicative Software Cluster

SWS_SwCluC_02612 requirement

⌊ DRAFT g If the Com High Proxy is not connected to the Com Low Proxy , the functions w.r.t transmission requests of ComSignal s and Com- SignalGroup s • Com_SendSignal • Com_SendDynSignal • Com_SendSignalGroup • Com_SendSignalGroupArray • Com_SendSignalWithMetaData • Com_SendDynSignalWithMetaData • Com_SendSignalGroupWithMetaData • Com_SendSignalGroupArrayWithMetaData of the Com High Proxy shall return COM_SERVICE_NOT_AVAILABLE .

SWS_SwCluC_02613 requirement

⌊ DRAFT g If the Com High Proxy is not connected to the Com Low Proxy , the functions w.r.t reception requests of ComSignal s and ComSig- nalGroup s • Com_ReceiveSignal • Com_ReceiveDynSignal • Com_ReceiveSignalGroup • Com_ReceiveSignalGroupArray • Com_ReceiveSignalWithMetaData • Com_ReceiveDynSignalWithMetaData • Com_ReceiveSignalGroupWithMetaData • Com_ReceiveSignalGroupArrayWithMetaData • Com_ReceiveSignalWithMetaData • Com_ReceiveDynSignalWithMetaData of the Com High Proxy shall return COM_SERVICE_NOT_AVAILABLE .

SWS_SwCluC_02614 requirement

⌊ DRAFT g If the Com High Proxy is not connected to the Com Low Proxy , the functions w.r.t invalidation requests of ComSignal s and Com- SignalGroup s • Com_InvalidateSignal • Com_InvalidateSignalGroup of the Com High Proxy shall return COM_SERVICE_NOT_AVAILABLE .

SWS_SwCluC_02615 requirement

⌊ DRAFT g The Com High Proxy shall provide the functions for transmission request of a signal(group)s, according to [SWS_SwCluC_02609], once per configured SwCluCComProxyBaseSocket . At the EcucPartition where the SwCluCNativeBswApi is set to true , For all other SwCluCComProxyBas- eSocket instances, the Mip Com is replaced by Com_<EcucPartition.Short- Name> .

SWS_SwCluC_02616 requirement

⌊ DRAFT g The Com High Proxy shall provide the functions for reception request of a signal(group)s, according to [SWS_SwCluC_02610], once per configured SwCluCComProxyBaseSocket . At the EcucPartition where the SwCluCNativeBswApi is set to true , the API is provided with the original Mip Com . For all the other SwCluCComProxyBaseSocket instances, the Mip Com is replaced by Com_<EcucPartition.ShortName> .

SWS_SwCluC_02617 requirement

⌊ DRAFT g The Com High Proxy shall provide the functions for invalidation request of a signal(group)s, according to [SWS_SwCluC_02611], once per configured SwCluCComProxyBaseSocket . At the EcucPartition where the SwCluCNativeBswApi is set to true , the API is provided with the original Mip Com . For all the other SwCluCComProxyBaseSocket instances, the Mip Com is replaced by Com_<EcucPartition.ShortName> .

SWS_SwCluC_02618 requirement

⌊ DRAFT g The Com High Proxy shall support the optional <ComUser_CbkRxAck> notification callback configured via the ComUserCallback- Name (See [ECUC_Com_10036]) parameter where the ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_RX_ACK .

SWS_SwCluC_02619 requirement

⌊ DRAFT g The Com High Proxy shall support the optional invalid <ComUser_CbkInv> notification callback configured via the ComUserCall- backName (See [ECUC_Com_10036]) where the ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_RX_INV .

SWS_SwCluC_02620 requirement

⌊ DRAFT g The Com High Proxy shall support the optional <ComUser_CbkRxTOut> timeout notification callback configured via the ComUser- CallbackName (See [ECUC_Com_10036]) where the ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_RX_TOUT .

SWS_SwCluC_02621 requirement

⌊ DRAFT g The Com High Proxy shall support the optional <ComUser_CbkTxAck> notification callback configured via the ComUserCallback- Name (See [ECUC_Com_10036]) where the ComUserCallbackType (See [ECUC_- Com_10034]) is set to COM_TX_ACK .

SWS_SwCluC_02622 requirement

⌊ DRAFT g The Com High Proxy shall support the optional <ComUser_CbkTxErr> error notification callback configured via the ComUserCall- backName (See [ECUC_Com_10036]) where the ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_TX_ERR .

SWS_SwCluC_02623 requirement

⌊ DRAFT g The Com High Proxy shall support the optional <ComUser_CbkTxTOut> timeout notification callback configured via the ComUser- CallbackName (See [ECUC_Com_10036]) where the ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_TX_TOUT .

SWS_SwCluC_02624 requirement

⌊ DRAFT g The Com Low Proxy shall provide the header file SwCluC_ComProxy_Cbk.h .

SWS_SwCluC_02625 requirement

⌊ DRAFT g The Com Low Proxy shall provide the en- try function for transmission, reception and invalidation requests of ComSig- nal(Group)s, according to [SWS_SwCluC_02609], [SWS_SwCluC_02610] and [SWS_SwCluC_02611], once per configured SwCluCComProxyBaseSocket , at the EcucPartition configured by SwCluCComProxyBaseSocket . SwCluCProxyE- cucPartitionRef . In case the SwCluCComProxyUsedSatelliteRef is set, the EcucPartition shall be changed, before the Com API is called.

SWS_SwCluC_02626 requirement

⌊ DRAFT g The Com Low Proxy shall provide for each SwCluCComProxyBaseSocket a SwCluC_ComProxy_Init API, to initialize the Com High Proxy of an Applicative Software Cluster .

SWS_SwCluC_02627 requirement

⌊ DRAFT g The Com Low Proxy shall provide an instance of all SwCluC_ComProxy_CbkRxAck notification callbacks, configured via the Co- mUserCallbackName (See [ECUC_Com_10036]) parameter, with the ComUser- CallbackType (See [ECUC_Com_10034]) set to COM_RX_ACK .

SWS_SwCluC_02628 requirement

⌊ DRAFT g The Com Low Proxy shall provide an instance of all SwCluC_ComProxy_COMCbkInv notification callbacks, configured on each Com- Signal(Group) via the ComUserCallbackName (See [ECUC_Com_10036]) parame- ter, with the ComUserCallbackType (See [ECUC_Com_10034]) set to COM_RX_- INV .

SWS_SwCluC_02629 requirement

⌊ DRAFT g The Com Low Proxy shall provide an instance of all SwCluC_ComProxy_COMCbkRxTOut timeout notification callbacks configured on each ComSignal(Group), via the ComUserCallbackName (See [ECUC_Com_- 10036]), with the ComUserCallbackType (See [ECUC_Com_10034]) set to COM_- RX_TOUT .

SWS_SwCluC_02630 requirement

⌊ DRAFT g The Com High Proxy shall provide an instance of all <ComUser_CbkTxAck> notification callbacks, configured via the ComUser- CallbackName (See [ECUC_Com_10036]), with the ComUserCallbackType (See [ECUC_Com_10034]) set to COM_TX_ACK .

SWS_SwCluC_02631 requirement

⌊ DRAFT g The Com High Proxy shall provide an instance of all <ComUser_CbkTxErr> notification callbacks, configured via the ComUser- CallbackName (See [ECUC_Com_10036]), with the ComUserCallbackType (See [ECUC_Com_10034]) set to COM_TX_ERR .

SWS_SwCluC_02632 requirement

⌊ DRAFT g The Com High Proxy shall provide an instance of all <ComUser_CbkTxTOut> notification callbacks, configured via the ComUser- CallbackName (See [ECUC_Com_10036]), with the ComUserCallbackType (See [ECUC_Com_10034]) set to COM_TX_TOUT .

SWS_SwCluC_02633 requirement

⌊ DRAFT g The notification callback instances accord- ing to [SWS_SwCluC_02626], [SWS_SwCluC_02627], [SWS_SwCluC_02628], [SWS_SwCluC_02629], [SWS_SwCluC_02630], [SWS_SwCluC_02631] and [SWS_SwCluC_02632] are provided • at the EcucPartition of the SwCluCComProxyBaseSocket referenced by the SwCluCComProxyBaseSocket - via SwCluCComProxyUsedSatel- liteRef . In this case, the EcucPartition shall be changed, before the call- back in the High Proxy is called.

SWS_SwCluC_02634 requirement

⌊ DRAFT g If the Com Low Proxy is not connected to the Com High Proxy , the callback functions • SwCluC_ComProxy_CbkRxAck • SwCluC_ComProxy_COMCbkInv • SwCluC_ComProxy_COMCbkRxTOut • SwCluC_ComProxy_COMCbkTAck • SwCluC_ComProxy_COMCbkTErr • SwCluC_ComProxy_COMCbkTxTOut of the Com Low Proxy shall return shall return without effect.

SWS_SwCluC_02636 requirement

⌊ DRAFT g If the development error detection is enabled for the Com High Proxy , the APIs • Com_SendSignal • Com_SendDynSignal • Com_SendSignalGroup • Com_SendSignalGroupArray • Com_SendSignalWithMetaData • Com_SendDynSignalWithMetaData • Com_SendSignalGroupWithMetaData • Com_SendSignalGroupArrayWithMetaData • Com_ReceiveSignal • Com_ReceiveDynSignal • Com_ReceiveSignalGroup • Com_ReceiveSignalGroupArray • Com_ReceiveSignalWithMetaData • Com_ReceiveDynSignalWithMetaData • Com_ReceiveSignalGroupWithMetaData • Com_ReceiveSignalGroupArrayWithMetaData • Com_ReceiveSignalWithMetaData • Com_ReceiveDynSignalWithMetaData • Com_InvalidateSignal • Com_InvalidateSignalGroup shall report the DET error COM_E_UNINIT , in case the Com High Proxy is not ini- tialized.

SWS_SwCluC_02637 requirement

⌊ DRAFT g If the development error detection is enabled for the Com High Proxy , the APIs • Com_SendSignal • Com_SendDynSignal • Com_SendSignalGroup • Com_SendSignalGroupArray • Com_SendSignalWithMetaData • Com_SendDynSignalWithMetaData • Com_SendSignalGroupWithMetaData • Com_SendSignalGroupArrayWithMetaData • Com_ReceiveSignal • Com_ReceiveDynSignal • Com_ReceiveSignalGroup • Com_ReceiveSignalGroupArray • Com_ReceiveSignalWithMetaData • Com_ReceiveDynSignalWithMetaData • Com_ReceiveSignalGroupWithMetaData • Com_ReceiveSignalGroupArrayWithMetaData • Com_ReceiveSignalWithMetaData • Com_ReceiveDynSignalWithMetaData • Com_InvalidateSignal • Com_InvalidateSignalGroup shall, when invoked with a NULL_PTR , report the DET error COM_E_PARAM_POINTER .

SWS_SwCluC_02638 requirement

⌊ DRAFT g If the development error detection is enabled for the Com High Proxy , the APIs • Com_SendSignal • Com_SendDynSignal • Com_SendSignalGroup • Com_SendSignalGroupArray • Com_SendSignalWithMetaData • Com_SendDynSignalWithMetaData • Com_SendSignalGroupWithMetaData • Com_SendSignalGroupArrayWithMetaData • Com_ReceiveSignal • Com_ReceiveDynSignal • Com_ReceiveSignalGroup • Com_ReceiveSignalGroupArray • Com_ReceiveSignalWithMetaData • Com_ReceiveDynSignalWithMetaData • Com_ReceiveSignalGroupWithMetaData • Com_ReceiveSignalGroupArrayWithMetaData • Com_ReceiveSignalWithMetaData • Com_ReceiveDynSignalWithMetaData • Com_InvalidateSignal • Com_InvalidateSignalGroup shall, when invoked with a wrong parameter, report the DET error COM_E_PARAM .

SWS_SwCluC_02639 requirement

⌊ DRAFT g If the <ComUser_CbkRxAck> notification call- back is configured in the Com High Proxy (via the ComUserCallbackName (See [ECUC_Com_10036]), where the respective ComUserCallbackType (See [ECUC_- Com_10034]) is set to COM_RX_ACK ) the configured <ComUser_CbkRxAck> callback shall be invoked when the associated SwCluC_ComProxy_CbkRxAck instance of the Com Low Proxy is called.

SWS_SwCluC_02640 requirement

⌊ DRAFT g If the invalid <ComUser_CbkInv> notification call- back is configured in the Com High Proxy (via the ComUserCallbackName (See [ECUC_Com_10036]), where the respective ComUserCallbackType (See [ECUC_- Com_10034]) is set to COM_RX_INV ) the configured <ComUser_CbkInv> callback shall be invoked when the associated SwCluC_ComProxy_CbkInv instance of the Com Low Proxy is called.

SWS_SwCluC_02642 requirement

⌊ DRAFT g If the <ComUser_CbkRxTOut> notification call- back is configured in the Com High Proxy (via the ComUserCallbackName (See [ECUC_Com_10036]), where the respective ComUserCallbackType (See [ECUC_- Com_10034]) is set to COM_RX_TOUT ) the configured <ComUser_CbkRxTOut> call- back shall be invoked when the associated SwCluC_ComProxy_CbkRxTOut instance of the Com Low Proxy is called.

SWS_SwCluC_02643 requirement

⌊ DRAFT g If the <ComUser_CbkTxAck> notification call- back is configured in the Com High Proxy (via the ComUserCallbackName (See [ECUC_Com_10036]), where the respective ComUserCallbackType (See [ECUC_- Com_10034]) is set to COM_TX_ACK ) the configured <ComUser_CbkTxAck> callback shall be invoked when the associated instance of the Com Low Proxy is called.

SWS_SwCluC_02644 requirement

⌊ DRAFT g If the <ComUser_CbkTxErr> notification call- back is configured in the Com High Proxy (via the ComUserCallbackName (See [ECUC_Com_10036]), where the respective ComUserCallbackType (See [ECUC_- Com_10034]) is set to COM_TX_ERR ) the configured <ComUser_CbkTxErr> callback shall be invoked when the associated SwCluC_ComProxy_COMCbkTErr instance of the Com Low Proxy is called.

SWS_SwCluC_02645 requirement

⌊ DRAFT g If the <ComUser_CbkTxTOut> timeout notifica- tion callback is configured in the Com High Proxy (via the ComUserCallback- Name (See [ECUC_Com_10036]), where the respective ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_TX_TOUT ) the configured <ComUser_Cbk- TxTOut> callback shall be invoked when the associated SwCluC_ComProxy_COM- CbkTxTOut instance of the Com Low Proxy is called.

SWS_SwCluC_02646 requirement

⌊ DRAFT g The Com Low Proxy shall create for each SwCluCComProxyBaseSocket a provided resource entry in the Binary Manifest .

SWS_SwCluC_02647 requirement

⌊ DRAFT g The Com High Proxy shall create for each SwCluCComProxyBaseSocket a required resource entry in the Binary Mani- fest .

SWS_SwCluC_02648 requirement

⌊ DRAFT g The function Com_ReceiveSignalGroup pro- vided by the Com High Proxy shall • invoke the Com_ReceiveSignalGroupArray API to fetch the data as uint8 array representation, AND • perform a transformation on the uint8 array to output the original data which will be passed to the RTE in the Applicative Software Cluster .

SWS_SwCluC_02649 requirement

⌊ DRAFT g The function Com_ReceiveSignalGroupWith- MetaData provided by the Com High Proxy shall • invoke the Com_ReceiveSignalGroupArrayWithMetaData API to fetch the data as uint8 array representation, AND • perform a transformation on the uint8 array to output the original data which will be passed to the RTE in the Applicative Software Cluster .

SWS_SwCluC_02650 requirement

⌊ DRAFT g Development Error Types of SwCluC Com Proxy The development error types defined for the SwCluC Com Proxy are listed in table Table 7.5.

SWS_SwCluC_02651 requirement

⌊ DRAFT g The Com Low Proxy shall provide in its Co- mUserModuleCnf containers the ComUserCbkHandleId values for the configured ComUserSignal s and ComUserSignalGroup s, according to its internal implemen- tation requirements (e.g. to address the Com Low Proxy 's data structures).

SWS_SwCluC_02652 requirement

⌊ DRAFT g The Com Proxy shall support that the ComUser- CbkHandleId of ComUserSignal s resp. ComUserSignalGroup s configured in Com users of the Applicative Software Cluster can change, without recon- figuration or rebuild of the Host Software Cluster .

SWS_SwCluC_02661 requirement

⌊ DRAFT g The Com base socket shall implement the con- nection of the related callback functions • SwCluC_ComProxy_CbkRxAck • SwCluC_ComProxy_COMCbkInv • SwCluC_ComProxy_COMCbkRxTOut • SwCluC_ComProxy_COMCbkTAck • SwCluC_ComProxy_COMCbkTErr • SwCluC_ComProxy_COMCbkTxTOut

SWS_SwCluC_02662 requirement

⌊ DRAFT g The Com High Proxy shall create for each Com- Signal and ComSignalGroup configured in Com a required resource entry in the Binary Manifest . Where the ComMainFunctionRx . ComMainRxPartitionRef and ComMainFunctionTx . ComMainTxPartitionRef are relevant to denote the EcucPartition .

SWS_SwCluC_02663 requirement

⌊ DRAFT g The Com Low Proxy shall create for each Co- mUserSignal and ComUserSignalGroup configured in a SwCluCComProxyBas- eSocket . ComUserModuleCnf a provided resource entry in the Binary Mani- fest .

SWS_SwCluC_02665 requirement

[SWS_SwCluC_02665] Serialization in Com_SendSignalGroup Status: DRAFT Upstream requirements: SRS_SwCluC_00211, SRS_SwCluC_00202 ⌈The function Com_SendSignalGroup provided by the Com High Proxy shall • perform a transformation from the original data passed from the RTE in Appli- cation Software Cluster to the uint8 array, AND • invoke the Com_SendSignalGroupArray API to send the data as uint8 array representation. ⌋

SWS_SwCluC_02666 requirement

[SWS_SwCluC_02666] Serialization in Com_SendSignalGroupWithMetaData Status: DRAFT Upstream requirements: SRS_SwCluC_00211, SRS_SwCluC_00202 ⌈The function Com_SendSignalGroupWithMetaData provided by the Com High Proxy shall • perform a transformation from the original data passed from the RTE in Appli- cation Software Cluster to the uint8 array, AND • invoke the Com_SendSignalGroupArrayWithMetaData API to send the data as uint8 array representation. ⌋ module

SWS_SwCluC_02669 requirement

[SWS_SwCluC_02669] Guard value calculation for ComSignal Upstream requirements: SRS_SwCluC_00211 ⌈The Com Proxy shall use the following attributes from an ComSignal for the guard value calculation • ComSignalEndianness • ComSignalType module • ComSignalLength • ComBitSize ⌋

SWS_SwCluC_02670 requirement

[SWS_SwCluC_02670] Guard value calculation for ComSignalGroup Upstream requirements: SRS_SwCluC_00211 ⌈The Com Proxy shall use the following attributes from an ComSignalGroup for the guard value calculation • ComSignalGroupArrayAccess • From any ComGroupSignal of a ComSignalGroup – ComSignalEndianness – ComSignalType – ComSignalLength – ComBitSize ⌋

SWS_SwCluC_02700 requirement

⌊ DRAFT g The Dem High Proxy shall provide the header file Dem.h .

SWS_SwCluC_02701 requirement

⌊ DRAFT g The Dem High Proxy shall provide the symbolic name values of DemEventId s for Diagnostic Monitor s in the Applicative Software Cluster .

SWS_SwCluC_02702 requirement

⌊ DRAFT g The Dem High Proxy shall provide the functions for Diagnostic Monitor s reporting Diagnostic Event s • Dem_ClearPrestoredFreezeFrame • Dem_PrestoreFreezeFrame • Dem_ResetEventDebounceStatus • Dem_ResetEventStatus • Dem_SetEventDisabled • Dem_SetEventStatus in the Applicative Software Cluster .

SWS_SwCluC_02703 requirement

⌊ DRAFT g The Dem High Proxy shall provide the functions for Diagnostic Info of Diagnostic Event s • Dem_GetDTCOfEvent • Dem_GetDebouncingOfEvent • Dem_GetEventAvailable • Dem_GetEventExtendedDataRecordEx • Dem_GetEventFreezeFrameDataEx • Dem_GetEventUdsStatus • Dem_GetFaultDetectionCounter • Dem_GetMonitorStatus in the Applicative Software Cluster .

SWS_SwCluC_02704 requirement

⌊ DRAFT g The Dem High Proxy shall support the optional configuration of a <Module>_DemGetFaultDetectionCounter<ForEvent> call- back, according to [ECUC_Dem_00630] and [ECUC_Dem_00631].

SWS_SwCluC_02705 requirement

⌊ DRAFT g The Dem High Proxy shall support the optional configuration of a <Module>_DemInitMonitorFor<EventName> callback, accord- ing to [ECUC_Dem_00632] and [ECUC_Dem_00601].

SWS_SwCluC_02706 requirement

⌊ DRAFT g The Dem High Proxy shall support the optional configuration of a <Module>_DemTriggerOnMonitorStatus callback, according to [ECUC_Dem_00936] and [ECUC_Dem_00937].

SWS_SwCluC_02707 requirement

⌊ DRAFT g The Dem High Proxy shall support the optional configuration of a <Module>_DemClearEventAllowed<ForCondition> callback, according to [ECUC_Dem_00607] and [ECUC_Dem_00609].

SWS_SwCluC_02708 requirement

⌊ DRAFT g The Dem High Proxy shall create one partition spe- cific Service Software Component per configured EcucPartition , with the name Dem_<EcucPartition shortName> .

SWS_SwCluC_02709 requirement

⌊ DRAFT g The Dem High Proxy shall provide the ports belonging to a specific interface connection at the partition specific Service Soft- ware Component, to which the using SwComponentPrototype is mapped.

SWS_SwCluC_02710 requirement

⌊ DRAFT g In case a Diagnostic Event configured in the Dem High Proxy is not connected to any Dem Low Proxy , the functions / opera- tions • Dem_ClearPrestoredFreezeFrame / ClearPrestoredFreezeFrame • Dem_PrestoreFreezeFrame / PrestoreFreezeFrame • Dem_ResetEventDebounceStatus / ResetEventDebounceStatus • Dem_ResetEventStatus / ResetEventStatus • Dem_SetEventDisabled / SetEventDisabled • Dem_SetEventStatus / SetEventStatus • Dem_SetEventStatusWithMonitorData / SetEventStatusWithMoni- torData • Dem_SetWIRStatus / SetWIRStatus of the Dem High Proxy shall return E_NOT_OK .

SWS_SwCluC_02711 requirement

⌊ DRAFT g In case a Diagnostic Event configured in the Dem High Proxy is not connected to any Dem Low Proxy , the Dem High Proxy shall return DEM_E_NO_DTC_AVAILABLE and the value 0 for the DTCOfEvent ar- gument, when Dem_GetDTCOfEvent / GetDTCOfEvent is called.

SWS_SwCluC_02712 requirement

⌊ DRAFT g In case a Diagnostic Event configured in the Dem High Proxy is not connected to any Dem Low Proxy , the Dem High Proxy shall return E_NOT_OK and the value 0 for the DebouncingState argument, when Dem_GetDebouncingOfEvent / GetDebouncingOfEvent is called.

SWS_SwCluC_02713 requirement

⌊ DRAFT g In case a Diagnostic Event configured in the Dem High Proxy is not connected to any Dem Low Proxy , the Dem High Proxy shall return E_NOT_OK and the value FALSE for the AvailableStatus argu- ment, when Dem_GetEventAvailable / GetEventAvailable is called.

SWS_SwCluC_02714 requirement

⌊ DRAFT g In case a Diagnostic Event configured in the Dem High Proxy is not connected to any Dem Low Proxy , the Dem High Proxy shall return E_NOT_OK and the value 0 for the Bufsize argument, when Dem_GetEventExtendedDataRecordEx / GetEventExtendedDataRecordEx is called. The Bufsize argument stays unmodified.

SWS_SwCluC_02715 requirement

⌊ DRAFT g In case a Diagnostic Event configured in the Dem High Proxy is not connected to any Dem Low Proxy , the Dem High Proxy shall return E_NOT_OK and the value 0 for the Bufsize argument, when Dem_- GetEventFreezeFrameDataEx / GetEventFreezeFrameDataEx is called. The Bufsize argument stays unmodified.

SWS_SwCluC_02716 requirement

⌊ DRAFT g In case a Diagnostic Event configured in the Dem High Proxy is not connected to any Dem Low Proxy , the Dem High Proxy shall return E_NOT_OK and the value 0 for the UDSStatusByte argu- ment, when Dem_GetEventUdsStatus / GetEventUdsStatus is called.

SWS_SwCluC_02717 requirement

⌊ DRAFT g In case a Diagnostic Event configured in the Dem High Proxy is not connected to any Dem Low Proxy , the Dem High Proxy shall return E_NOT_OK and the value 0 for the FaultDetectionCounter argu- ment, when Dem_GetFaultDetectionCounter / GetFaultDetectionCounter is called.

SWS_SwCluC_02718 requirement

⌊ DRAFT g In case a Diagnostic Event configured in the Dem High Proxy is not connected to any Dem Low Proxy , the Dem High Proxy shall return E_NOT_OK and the value 0 for the MonitorStatus argument, when Dem_GetMonitorStatus / GetMonitorStatus is called.

SWS_SwCluC_02719 requirement

⌊ DRAFT g The Dem Low Proxy shall provide the entry func- tions for Diagnostic Event reporting and info, according to [SWS_SwCluC_02702] and [SWS_SwCluC_02702], once per configured SwCluCDemProxyBaseSocket at the EcucPartition configured by SwCluCDemProxyBaseSocket . SwCluCProx- yEcucPartitionRef . In case the SwCluCDemProxyUsedSatelliteRef is set, the EcucPartition shall be changed, before the Dem API is called.

SWS_SwCluC_02723 requirement

⌊ DRAFT g The Dem High Proxy shall provide the ports be- longing to a specific Diagnostic Event • Event_{Name} • EventStatus_{Name} at the partition specific Service Software Component, to which the using SwCompo- nentPrototype is mapped.

SWS_SwCluC_02724 requirement

⌊ DRAFT g The Dem High Proxy shall provide the DiagnosticMonitor_MonitorData_{Name} port for each specific Di- agnostic Event , where DemEventReportingType is set to STAN- DARD_REPORTING_WITH_MONITOR_DATA at the partition specific Service Software Component, to which the using SwComponentPrototype is mapped.

SWS_SwCluC_02725 requirement

⌊ DRAFT g The Dem High Proxy shall provide the CB- ClrEvt_{Name} port for each specific Diagnostic Event , where DemCallback- ClearEventAllowed is configured at the partition specific Service Software Com- ponent, to which the using SwComponentPrototype is mapped.

SWS_SwCluC_02726 requirement

⌊ DRAFT g The Dem High Proxy shall provide the CB- FaultDetectCtr_{Name} port for each specific Diagnostic Event , where Dem- CallbackGetFDC is configured at the partition specific Service Software Component, to which the using SwComponentPrototype is mapped.

SWS_SwCluC_02727 requirement

⌊ DRAFT g The Dem High Proxy shall provide the CBInitEvt_{Name} port for each specific Diagnostic Event , where DemCall- backInitMForE is configured at the partition specific Service Software Component, to which the using SwComponentPrototype is mapped.

SWS_SwCluC_02728 requirement

⌊ DRAFT g The Dem Low Proxy shall provide, for each SwCluCDemProxyBaseSocket , a SwCluC_DemProxy_Init API, to initialize the Dem High Proxy of an Applicative Software Cluster . This shall be one element of the service resource SwCluCDemProxyBaseSocket .

SWS_SwCluC_02729 requirement

⌊ DRAFT g The Dem Low Proxy shall provide an instance of a <Module>_DemGetFaultDetectionCounter<ForEvent> per configured Di- agnostic Event ( SwCluCDemProxyDiagnosticEvent ), in the Dem Low Proxy , if DemDebounceAlgorithmClass is set to DebounceMonitorInternal.

SWS_SwCluC_02730 requirement

⌊ DRAFT g The Dem Low Proxy shall provide an instance of a <Module>_DemInitMonitorFor<EventName> per configured Diagnostic Event ( SwCluCDemProxyDiagnosticEvent ), in the Dem Low Proxy .

SWS_SwCluC_02731 requirement

⌊ DRAFT g The Dem Low Proxy shall provide an instance of a <Module>_DemTriggerOnMonitorStatus per configured Diagnostic Event ( SwCluCDemProxyDiagnosticEvent ), in the Dem Low Proxy .

SWS_SwCluC_02732 requirement

⌊ DRAFT g The Dem Low Proxy shall provide an instance of a <Module>_DemClearEventAllowed<ForCondition> per configured Diag- nostic Event ( SwCluCDemProxyDiagnosticEvent ), in the Dem Low Proxy .

SWS_SwCluC_02733 requirement

⌊ DRAFT g The Dem Low Proxy implementation shall de- scribe the Diagnostic Events s provided to Dem High Proxy s via Diagnos- ticEventNeeds and DiagnosticEventInfoNeeds , derived from the CpSoft- wareClusterServiceResource . resourceNeeds .

SWS_SwCluC_02734 requirement

⌊ DRAFT g In case a Diagnostic Event configured in the Dem Low Proxy is not connected to any Dem High Proxy , the callback functions • <Module>_DemGetFaultDetectionCounter<ForEvent> • <Module>_DemClearEventAllowed<ForCondition> of the Dem High Proxy shall return E_NOT_OK .

SWS_SwCluC_02735 requirement

⌊ DRAFT g In case a Diagnostic Event configured in the Dem Low Proxy is not connected to any Dem High Proxy , the callback functions • <Module>_DemInitMonitorFor<EventName> • <Module>_DemTriggerOnMonitorStatus of the Dem High Proxy shall return E_OK .

SWS_SwCluC_02736 requirement

⌊ DRAFT g The Dem High Proxy shall provide the function Dem_SetEventStatusWithMonitorData , for Diagnostic Monitor s reporting Diagnostic Event s with monitor data in the Applicative Software Clus- ter .

SWS_SwCluC_02737 requirement

⌊ DRAFT g The Dem High Proxy shall support the optional configuration of a <Module>_DemTriggerOnEventData callback, according to [ECUC_Dem_00606] and [ECUC_Dem_00608].

SWS_SwCluC_02738 requirement

⌊ DRAFT g The Dem High Proxy shall support the optional configuration of a <Module>_DemTriggerOnEventUdsStatus callback, according to [ECUC_Dem_00628] and [ECUC_Dem_00629].

SWS_SwCluC_02739 requirement

⌊ DRAFT g The Dem High Proxy shall provide the function Dem_SetWIRStatus , for Diagnostic Monitor s reporting Diagnostic Event s in the Applicative Software Cluster .

SWS_SwCluC_02740 requirement

⌊ DRAFT g The Dem High Proxy shall provide the EventStatus_{Name} port for each specific Diagnostic Event at the partition specific Service Software Component, to which the using SwComponentPrototype is mapped.

SWS_SwCluC_02741 requirement

⌊ DRAFT g The Dem High Proxy shall provide the CB- DataEvt_{Name} port for each specific Diagnostic Event , where DemCall- backEventDataChanged is configured at the partition specific Service Software Component, to which the using SwComponentPrototype is mapped.

SWS_SwCluC_02742 requirement

⌊ DRAFT g The Dem High Proxy shall provide the CBEven- tUdsStatusChanged_{EventName}_{CallbackName} port for each specific Di- agnostic Event , where DemCallbackEventUdsStatusChanged is configured at the partition specific Service Software Component, to which the using SwComponent- Prototype is mapped.

SWS_SwCluC_02743 requirement

⌊ DRAFT g The Dem High Proxy shall provide the CBMon- itorStatusChanged_{EventName}_{CallbackName} port for each specific Di- agnostic Event , where DemCallbackMonitorStatusChanged is configured at the partition specific Service Software Component, to which the using SwComponent- Prototype is mapped.

SWS_SwCluC_02744 requirement

⌊ DRAFT g The Dem High Proxy shall create for each SwCluCDcmProxyBaseSocket a required resource entry in the Binary Mani- fest .

SWS_SwCluC_02745 requirement

⌊ DRAFT g The Dem High Proxy shall create for each di- agnostic event proxy - configured via SwCluCDemProxyDiagnosticEvent container - a required resource entry in the Binary Manifest .

SWS_SwCluC_02746 requirement

⌊ DRAFT g The Dem Low Proxy shall create, for each SwCluCDcmProxyBaseSocket , a provided resource entry in the Binary Mani- fest .

SWS_SwCluC_02747 requirement

⌊ DRAFT g The Dem Low Proxy shall create for, each diag- nostic event proxy - configured via SwCluCDemProxyDiagnosticEvent con- tainer -, a provided resource entry in the Binary Manifest .

SWS_SwCluC_02748 requirement

⌊ DRAFT g The Dem High Proxy code, and related AUTOSAR model descriptions, shall only be created, if the configuration param- eter SwCluCProxyGenerationDem is set to HIGH_PROXY .

SWS_SwCluC_02749 requirement

⌊ DRAFT g The Dem Low Proxy code, and related AUTOSAR model descriptions, shall only be created, if the configuration param- eter SwCluCProxyGenerationDem is set to LOW_PROXY .

SWS_SwCluC_02750 requirement

⌊ DRAFT g Development Error Types of SwCluC Dem Proxy The development error types defined for the SwCluC Dem Proxy are listed in table Table 7.8.

SWS_SwCluC_02751 requirement

⌊ DRAFT g If development error detection is enabled for Dem High Proxy , the APIs • Dem_ClearPrestoredFreezeFrame • Dem_PrestoreFreezeFrame • Dem_ResetEventDebounceStatus • Dem_ResetEventStatus • Dem_SetEventDisabled • Dem_SetEventStatus • Dem_GetDTCOfEvent • Dem_GetDebouncingOfEvent • Dem_GetEventAvailable • Dem_GetEventExtendedDataRecordEx • Dem_GetEventFreezeFrameDataEx • Dem_GetEventUdsStatus • Dem_GetFaultDetectionCounter • Dem_GetMonitorStatus • Dem_SetEventStatusWithMonitorData • Dem_SetWIRStatus shall report the DET error DEM_E_UNINIT , when Dem High Proxy is not yet initial- ized.

SWS_SwCluC_03000 requirement

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall implement a Cross Software Cluster Communication Plug-In according to document [9].

SWS_SwCluC_03001 requirement

⌊ DRAFT g The Vendor Specific Module Definition (see document [10]) of the Software Cluster Connection shall provide a defi- nition of the container RteRipsPluginProps as a subContainer of the container SwCluCXcc with the shortName RteRipsPluginProps .

SWS_SwCluC_03002 requirement

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall implement the RTE Implementation Plug-In functionality for a Communication Graph , if • a FlatInstanceDescriptor references the Communication Graph AND • and the rtePluginProps . associatedCrossSwClusterComRtePlugin ref- erences the RteRipsPluginProps container of this Cross Cluster Com- munication implementation.

SWS_SwCluC_03003 requirement

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall put one Resource Entry for each associ- ated Communication Graph into the Binary Manifest .

SWS_SwCluC_03004 requirement

⌊ DRAFT g The SwCluCBManifResourceRef of the Re- source Entry shall reference the CpSoftwareClusterCommunicationRe- source which is mapped by the PortElementToCommunicationResourceMap- ping to the Communication Graph .

SWS_SwCluC_03005 requirement

⌊ DRAFT g The SwCluCBManifResourceGuardValue of the Resource Entry shall be calculated out of the following properties: • data range • resolution • physical meaning • encoding • structure in memory

SWS_SwCluC_03006 requirement

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall provide one constant default parameter in- stance for each assigned Parameter Communication Graph , which contains NO PPortPrototype .

SWS_SwCluC_03007 requirement

⌊ DRAFT g The default value instance shall be mapped to a CALPRM memory section, according to document [8].

SWS_SwCluC_03008 requirement

⌊ DRAFT g The default value instance shall be initialized ac- cording to the ParameterRequireComSpec . initValue , in the RPortPrototype at the CompositionSwComponentType of the rootSoftwareComposition of the Ecu Extract .

SWS_SwCluC_03009 requirement

⌊ DRAFT g If the corresponding resource in the Binary Man- ifest is connected, the Rte_Rips_Prm shall return the value of the connected pa- rameter.

SWS_SwCluC_03010 requirement

⌊ DRAFT g If the corresponding resource in the Binary Man- ifest is NOT connected, the Rte_Rips_Prm shall return the value of the default pa- rameter instance of [SWS_SwCluC_03006].

SWS_SwCluC_03011 requirement

⌊ DRAFT g For each assigned Parameter Communication Graph , which contains the PPortPrototype , the Cross Cluster Communica- tion of the Software Cluster Connection shall make the parameter in- stance , according to [SWS_Rte_80130], accessible for other Software Cluster s, via a Resource Entry in the Binary Manifest .

SWS_SwCluC_03012 requirement

⌊ DRAFT g If the implementation of a Cross Cluster Com- munication requires some basic infrastructure from the Host Software Clus- ter , it shall use the means of the SwCluCXccBaseSocket configuration to link to the resource pool.

SWS_SwCluC_03013 requirement

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall put one Resource Entry for each asso- ciated SwCluCXccBaseSocket into the Binary Manifest .

SWS_SwCluC_03015 requirement

⌊ DRAFT g The Cross Cluster Communication shall provide a Complex Driver Software Component on each EcucPartition where a mode switch port needs to be provided. This component is later called mode proxy component .

SWS_SwCluC_03016 requirement

⌊ DRAFT g The Cross Cluster Communication shall provide a provided mode switch port on each mode proxy component where a mode switch port needs to be provided.

SWS_SwCluC_03017 requirement

⌊ DRAFT g The Cross Cluster Communication shall provide the AssemblySwConnector s between the provided mode switch ports and the required mode switch ports at the software components requiring the mode.

SWS_SwCluC_03018 requirement

⌊ DRAFT g The Cross Cluster Communication shall provide a mode switch notification runnable with an OsTaskExecution- Event , for each mode on each partition where a mode switch notification is configured. The RunnableEntity shall define a ModeSwitchPoint .

SWS_SwCluC_03019 requirement

⌊ DRAFT g When the mode switch notification runnable is executed, it shall write the actual on-transition value via Rte_Switch to the RTE.

SWS_SwCluC_03022 requirement

⌊ DRAFT g The Cross Cluster Communication shall sig- nal the current on-transition value to other Software Clusters , before the mode switch according to [SWS_Rte_02665] starts.

SWS_SwCluC_03023 requirement

⌊ DRAFT g The Cross Cluster Communication of the Host Software Cluster shall implement a mode manager for each mode which needs to be provided by an Applicative Software Cluster .

SWS_SwCluC_03024 requirement

⌊ DRAFT g The Cross Cluster Communication of the Host Software Cluster shall enqueue the current on-transition values sig- naled by Applicative Software Cluster , via the related mode manager . ([SWS_SwCluC_03023])

SWS_SwCluC_03025 requirement

⌊ DRAFT g The Cross Cluster Communication of the Host Software Cluster shall notify the Applicative Software Cluster , when a mode switch tasks starts.

SWS_SwCluC_03026 requirement

⌊ DRAFT g The Cross Cluster Communication of the Host Software Cluster shall notify the Cross Cluster Communication of the Applicative Software Cluster , when all mode switch tasks run to end.

SWS_SwCluC_03027 requirement

⌊ DRAFT g In case the Applicative Software Cluster provides the mode, the Cross Cluster Communication of the Host Software Cluster shall notify the Cross Cluster Communication of the Applicative Software Cluster , when mode switch tasks run to end.

SWS_SwCluC_03028 requirement

⌊ DRAFT g In case the Applicative Software Cluster provides the mode, the Cross Cluster Communication of the Applicative Software Cluster notifies the RTE via Rte_Rips_DequeueModeSwitch , when a mode switch task known by this RTE runs to end. The Cross Cluster Communi- cation has to guarantee that the last call of Rte_Rips_DequeueModeSwitch is not done before the last on-entry ExecutableEntity in the whole clustered system terminated.

SWS_SwCluC_03029 requirement

⌊ DRAFT g The Cross Cluster Communication shall provide a Complex Driver Software Component on each EcucPartition , where mode switch task are configured. This component is later called mode proxy com- ponent .

SWS_SwCluC_03030 requirement

⌊ DRAFT g The Cross Cluster Communication shall provide RunnableEntity s to detect the start and end of any mode switch task, which is related to mode communication cross Software Clusters .

SWS_SwCluC_03031 requirement

⌊ DRAFT g The Cross Cluster Communication shall provide the AssemblySwConnector s between the provided mode switch ports of the mode proxy component and the required mode switch ports at the soft- ware components requiring the mode, if the mode is required by the Host Software Cluster .

SWS_SwCluC_03033 requirement

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall normalize the numerical values of attributes, before using them for the SwCluCBManifResourceGuardValue calculation, in such a way that compatible numerical values according to [TPS_GST_02501] result in the identical guard value.

SWS_SwCluC_03034 requirement

⌊ DRAFT g The Cross Cluster Communication shall use the following attributes for the SwCluCBManifResourceGuardValue calculation for a Data Communication Graph : • PPortPrototype . providedInterface • RPortPrototype . requiredInterface • CpSoftwareClusterCommunicationResource . comProps . sendIndica- tion – in case of SenderReceiverInterface  VariableDataPrototype . type  VariableDataPrototype . swDataDefProps  SenderReceiverInterface . invalidationPolicy . handleIn- valid (if existing for the VariableDataPrototype , else dontIn- validate applies) – in case of NvDataInterface  VariableDataPrototype . type  VariableDataPrototype . swDataDefProps – in case of ParameterInterface  ParameterDataPrototype . type  ParameterDataPrototype . swDataDefProps Additionally, attributes of VariableDataPrototype / ParameterDataPro- totype . type according to [SWS_SwCluC_03035] and [SWS_SwCluC_03036] apply.

SWS_SwCluC_03035 requirement

⌊ DRAFT g The Cross Cluster Communication shall use the following attributes for the referenced ApplicationDataType for the SwCluCB- ManifResourceGuardValue calculation: • in case the AutosarDataPrototype . type refers to a ApplicationPrimi- tiveDataType – ApplicationPrimitiveDataType . category – ApplicationPrimitiveDataType . swDataDefProps • in case the AutosarDataPrototype . type refers to a ApplicationArray- DataType – ApplicationArrayDataType . dynamicArraySizeProfile (if exist- ing) – ApplicationArrayDataType . element – ApplicationArrayElement . type – ApplicationArrayElement . arraySizeSemantics (if existing, else fixedSize applies) – ApplicationArrayElement . arraySizeHandling (if existing) – ApplicationArrayElement . maxNumberOfElements • in case the AutosarDataPrototype . type refers to a ApplicationRecord- DataType – ApplicationRecordDataType . element s {ordered} – ApplicationRecordElement . type – ApplicationRecordElement . isOptional (if existing, else false ap- plies) Additionally, the attributes of the mapped ImplementationDataType according to [SWS_SwCluC_03036] and the attributes of SwDataDefProps according to [SWS_SwCluC_03037] apply.

SWS_SwCluC_03036 requirement

⌊ DRAFT g The Cross Cluster Communication shall use the following attributes for the referenced or mapped ImplementationDataType for the SwCluCBManifResourceGuardValue calculation: • in case the AutosarDataPrototype . type refers to an Implementation- DataType of category TYPE_REFERENCE or the ApplicationDataType ac- cording to [SWS_SwCluC_03036] is mapped to an ImplementationDataType of category TYPE_REFERENCE – ImplementationDataType . swDataDefProps in case the AutosarDataPrototype . type refers to an Implementation- DataType of category VALUE or the ApplicationDataType according to [SWS_SwCluC_03036] is mapped to an ImplementationDataType of cate- gory VALUE – ImplementationDataType . swDataDefProps • in case the AutosarDataPrototype . type refers to an Implementation- DataType of category ARRAY or the ApplicationDataType according to [SWS_SwCluC_03036] is mapped to an ImplementationDataType of cate- gory ARRAY – ImplementationDataType . dynamicArraySizeProfile (if existing) – ImplementationDataType . swDataDefProps – ImplementationDataType . subElement – ImplementationDataTypeElement . arraySizeSemantics (if exist- ing, else fixedSize applies) – ImplementationDataTypeElement . arraySizeHandling (if existing) – ImplementationDataTypeElement . swDataDefProps • in case AutosarDataPrototype . type refers to an Implementation- DataType of category STRUCTURE or the ApplicationDataType according to [SWS_SwCluC_03036] is mapped to an ImplementationDataType of cat- egory STRUCTURE – ImplementationDataType . swDataDefProps – ImplementationDataType . isStructWithOptionalElement (if exist- ing, else false applies) – ImplementationDataType . subElement {ordered} – ImplementationDataTypeElement . arraySizeSemantics (if exist- ing, else fixedSize applies) – ImplementationDataTypeElement . arraySizeHandling (if existing) – ImplementationDataTypeElement . swDataDefProps Additionally, the attributes of SwDataDefProps according to [SWS_SwCluC_03037] apply.

SWS_SwCluC_03037 requirement

⌊ DRAFT g The Cross Cluster Communication shall use the following attributes for the given SwDataDefProps for the SwCluCBManifRe- sourceGuardValue calculation: • SwDataDefProps . additionalNativeTypeQualifier (if existing) • SwDataDefProps . swImplPolicy (if existing, else standard applies) • SwDataDefProps . invalidValue (if existing) • SwDataDefProps . unit (if existing, else CompuMethod . unit applies) • SwDataDefProps . dataConstr (if existing) • SwDataDefProps . compuMethod (if existing) • SwDataDefProps . swTextProps (if existing) • SwDataDefProps . baseType (if existing) • SwDataDefProps . swValueBlockSize (if existing) • SwDataDefProps . swValueBlockSizeMult (if existing) • SwDataDefProps . valueAxisDataType (if existing) • SwDataDefProps . implementationDataType (if existing) Here, the prioritization of SwDataDefProps attributes according to [constr_- 1015] applies. Only the most prior SwDataDefProps attributes are considered. Additionally, the attributes of Unit , CompuMethod , DataConstr , and BaseType according to [SWS_SwCluC_03038], [SWS_SwCluC_03039], [SWS_SwCluC_03042], [SWS_SwCluC_03043], and [SWS_SwCluC_03044] apply.

SWS_SwCluC_03038 requirement

⌊ DRAFT g The Cross Cluster Communication shall use the following attributes for the given Unit for the SwCluCBManifResourceGuard- Value calculation: • Unit . factorSiToUnit (if existing, else 1 applies) • Unit . offsetSiToUnit (if existing, else 0 applies) • Unit . physicalDimension (if existing, else [SWS_SwCluC_03041] applies) Additionally, the attributes of PhysicalDimension according to [SWS_SwCluC_03040] and [SWS_SwCluC_03041] apply.

SWS_SwCluC_03039 requirement

⌊ DRAFT g In case no Unit is given for the SwCluCBMan- ifResourceGuardValue calculation, the Cross Cluster Communication shall use the following attribute values: • Unit . factorSiToUnit = 1 • Unit . offsetSiToUnit = 0 • Unit . physicalDimension according to [SWS_SwCluC_03041] Additionally, the attributes of PhysicalDimension according to [SWS_SwCluC_03041] apply.

SWS_SwCluC_03040 requirement

⌊ DRAFT g The Cross Cluster Communication shall use the following attributes for the given PhysicalDimension for the SwCluCBMani- fResourceGuardValue calculation: • PhysicalDimension . shortName • PhysicalDimension . currentExp (if existing, else 0 applies) • PhysicalDimension . lengthExp (if existing, else 0 applies) • PhysicalDimension . luminousIntensityExp (if existing, else 0 applies) • PhysicalDimension . massExp (if existing, else 0 applies) • PhysicalDimension . molarAmountExp (if existing, else 0 applies) • PhysicalDimension . temperatureExp (if existing, else 0 applies) • PhysicalDimension . timeExp (if existing, else 0 applies)

SWS_SwCluC_03041 requirement

⌊ DRAFT g In case no PhysicalDimension is given, the Cross Cluster Communication shall use the following attribute values for the SwCluCBManifResourceGuardValue calculation: • PhysicalDimension . shortName = NoDimension • PhysicalDimension . currentExp = 0 • PhysicalDimension . lengthExp = 0 • PhysicalDimension . luminousIntensityExp = 0 • PhysicalDimension . massExp = 0 • PhysicalDimension . molarAmountExp = 0 • PhysicalDimension . temperatureExp = 0 • PhysicalDimension . timeExp = 0

SWS_SwCluC_03042 requirement

⌊ DRAFT g The Cross Cluster Communication shall use the following attributes for the given CompuMethod for the SwCluCBManifRe- sourceGuardValue calculation: • CompuMethod . unit • in case the CompuMethod . category is IDENTICAL – it is treated like a CompuMethod where the category is LINEAR where the CompuMethod . compuPhysToInternal . compuScale yield the con- version int = N 0 + N 1  phys D 0 if N 0  0 && N 1  1 && D 0  0 • in case the CompuMethod . category is LINEAR – CompuMethod . compuPhysToInternal . compuScale OR – CompuMethod . compuInternalToPhys . compuScale where the compuInternalToPhys coefficients are converted to equivalent compuPhysToInternal coefficients.  CompuScale . compuNumerator . v s {ordered}  CompuScale . compuDenominator . v • in case the CompuMethod . category is SCALE_LINEAR – CompuMethod . compuPhysToInternal . compuScale s – CompuMethod . compuPhysToInternal . compuDefaultValue (if exist- ing) OR – CompuMethod . compuInternalToPhys . compuScale s – CompuMethod . compuInternalToPhys . compuDefaultValue (if exist- ing)  CompuScale . upperLimit  CompuScale . lowerLimit  CompuScale . compuNumerator . v s {ordered}  CompuScale . compuDenominator . v • in case the CompuMethod . category is RAT_FUNC with 2 compuNumerator coefficients and 1 compuDenominator coefficient – this case is treated like a CompuMethod where the category is LINEAR • in case the CompuMethod . category is RAT_FUNC not matching the LINEAR case – CompuMethod . compuPhysToInternal . compuScale – CompuMethod . compuPhysToInternal . compuDefaultValue (if exist- ing) AND – CompuMethod . compuInternalToPhys . compuScale – CompuMethod . compuInternalToPhys . compuDefaultValue (if exist- ing)  CompuScale . upperLimit  CompuScale . lowerLimit  CompuScale . compuInverseValue . vf (if existing)  CompuScale . compuNumerator . v s {ordered}  CompuScale . compuDenominator . v {ordered} • in case the CompuMethod . category is SCALE_RAT_FUNC – CompuMethod . compuPhysToInternal . compuScale s – CompuMethod . compuPhysToInternal . compuDefaultValue (if exist- ing) AND – CompuMethod . compuInternalToPhys . compuScale s – CompuMethod . compuInternalToPhys . compuDefaultValue (if exist- ing)  CompuScale . upperLimit  CompuScale . lowerLimit  CompuScale . compuInverseValue . vf (if existing)  CompuScale . compuNumerator . v s {ordered}  CompuScale . compuDenominator . v {ordered} • in case the CompuMethod . category is TEXTTABLE – CompuMethod . compuInternalToPhys . compuScale s – CompuMethod . compuInternalToPhys . compuDefaultValue (if exist- ing)  CompuScale . upperLimit  CompuScale . lowerLimit  CompuScale . compuInverseValue . vf (if existing)  CompuScale . compuConst . vt • in case the CompuMethod . category is BITFIELD_TEXTTABLE – CompuMethod . compuInternalToPhys . compuScale s – CompuMethod . compuInternalToPhys . compuDefaultValue (if exist- ing)  CompuScale . upperLimit  CompuScale . lowerLimit  CompuScale . mask  CompuScale . compuInverseValue . vf (if existing)  CompuScale . compuConst . vt • in case the CompuMethod . category is SCALE_LINEAR_AND_TEXTTABLE – CompuMethod . compuInternalToPhys . compuScale s – CompuMethod . compuInternalToPhys . compuDefaultValue (if exist- ing)  CompuScale . upperLimit  CompuScale . lowerLimit  CompuScale . mask  CompuScale . compuInverseValue . vf (if existing)  CompuScale . compuConst . vt (if existing)  CompuScale . compuNumerator . v s {ordered} (if existing)  CompuScale . compuDenominator . v (if existing) • in case the CompuMethod . category is SCALE_RATIONAL_AND_TEXTTABLE – CompuMethod . compuPhysToInternal . compuScale s – CompuMethod . compuPhysToInternal . compuDefaultValue (if exist- ing) AND – CompuMethod . compuInternalToPhys . compuScale s – CompuMethod . compuInternalToPhys . compuDefaultValue (if exist- ing)  CompuScale . upperLimit  CompuScale . lowerLimit  CompuScale . mask  CompuScale . compuInverseValue . vf (if existing)  CompuScale . compuConst . vt (if existing)  CompuScale . compuNumerator . v s {ordered} (if existing)  CompuScale . compuDenominator . v {ordered} (if existing) • in case the CompuMethod . category is TAB_NOINTP – CompuMethod . compuInternalToPhys . compuScale s – CompuMethod . compuInternalToPhys . compuDefaultValue (if exist- ing)  CompuScale . upperLimit  CompuScale . lowerLimit  CompuScale . compuInverseValue . vf (if existing)  CompuScale . compuConst . vt (if existing) Additionally, the attributes of Unit according to [SWS_SwCluC_03038], [SWS_SwCluC_03039] apply.

SWS_SwCluC_03043 requirement

⌊ DRAFT g The Cross Cluster Communication shall use the following attributes for the given DataConstr for the SwCluCBManifResource- GuardValue calculation: • DataConstr . dataConstrRule . physConstrs . upperLimit (if existing) • DataConstr . dataConstrRule . physConstrs . lowerLimit (if existing) • DataConstr . dataConstrRule . physConstrs . monotony (if existing) • DataConstr . dataConstrRule . physConstrs . maxGradient (if existing) • DataConstr . dataConstrRule . physConstrs . maxDiff (if existing) • DataConstr . dataConstrRule . internalConstrs . upperLimit (if existing, else based on baseTypeEncoding and baseTypeSize the technical upper limit is taken) • DataConstr . dataConstrRule . internalConstrs . lowerLimit (if existing, else based on baseTypeEncoding and baseTypeSize the technical lower limit is taken) • DataConstr . dataConstrRule . internalConstrs . monotony (if existing, else noMonotony ) • DataConstr . dataConstrRule . internalConstrs . maxGradient (if exist- ing) • DataConstr . dataConstrRule . internalConstrs . maxDiff (if existing)

SWS_SwCluC_03044 requirement

⌊ DRAFT g The Cross Cluster Communication shall use the following attributes for the given SwBaseType for the SwCluCBManifResource- GuardValue calculation: • SwBaseType . baseTypeEncoding • SwBaseType . baseTypeSize • SwBaseType . byteOrder • SwBaseType . nativeDeclaration • SwBaseType . memAlignment (if existing, else 0 applies)

SWS_SwCluC_03045 requirement

⌊ DRAFT g The Cross Cluster Communication shall use the following attributes for the SwCluCBManifResourceGuardValue calculation for a Mode Communication Graph : • PPortPrototype . providedInterface • RPortPrototype . requiredInterface • ModeDeclarationGroupPrototype . type • ModeDeclarationGroup . category • ModeDeclarationGroup . initialMode • ModeDeclarationGroup . modeDeclaration s • ModeDeclarationGroup . onTransitionValue (in case ModeDeclara- tionGroup . category == EXPLICIT_ORDER ) • ModeDeclarationGroup . modeUserErrorBehavior (if existing) • ModeDeclarationGroup . modeManagerErrorBehavior (if existing) • ModeDeclarationGroup . modeTransition s (if existing) for each ModeDec- laration the following attributes apply: – ModeDeclaration . shortName – ModeDeclaration . value (in case ModeDeclarationGroup . category == EXPLICIT_ORDER ) for each ModeErrorBehavior the following attributes apply: – ModeErrorBehavior . errorReactionPolicy – ModeErrorBehavior . defaultMode (if existing) for each ModeTransition the following attributes apply: – ModeTransition . exitedMode – ModeTransition . enteredMode

SWS_SwCluC_03046 requirement

⌊ DRAFT g The Cross Cluster Communication shall use the following attributes for the SwCluCBManifResourceGuardValue calculation for a Trigger Communication Graph : • PPortPrototype . providedInterface • RPortPrototype . requiredInterface • Trigger . swImplPolicy (if existing, else standard applies)

SWS_SwCluC_03047 requirement

⌊ DRAFT g The Cross Cluster Communication shall use the following attributes for the SwCluCBManifResourceGuardValue calculation for a Client Server Communication Graph : • PPortPrototype . providedInterface • RPortPrototype . requiredInterface – ClientServerOperation . argument s {ordered}  ArgumentDataPrototype . type  ArgumentDataPrototype . direction – ClientServerOperation . possibleError . errorCode (if existing, else one errorCode = 0 is applied) Additionally, attributes of ArgumentDataPrototype . type according to [SWS_SwCluC_03035] and [SWS_SwCluC_03036] apply.

SWS_SwCluC_03048 requirement

⌊ DRAFT g The Cross Cluster Communication shall provide a Complex Driver Software Component, on each EcucPartition where a trigger port needs to be provided. This component is later called trigger proxy component .

SWS_SwCluC_03049 requirement

⌊ DRAFT g The Cross Cluster Communication shall provide a provided trigger port , on each trigger proxy component .

SWS_SwCluC_03050 requirement

⌊ DRAFT g The Cross Cluster Communication shall provide the AssemblySwConnector s between the provided trigger ports and the required trigger ports , at the software components requiring the trigger.

SWS_SwCluC_03051 requirement

⌊ DRAFT g The Cross Cluster Communication shall provide a trigger notification runnable with an OsTaskExecutionEvent , for each trigger on each partition a trigger notification is configured. The RunnableEntity shall define a ExternalTriggeringPoint .

SWS_SwCluC_03052 requirement

⌊ DRAFT g When the trigger notification runnable is executed, it shall raise the trigger via Rte_Trigger to the RTE.

SWS_SwCluC_03055 requirement

⌊ DRAFT g The Cross Cluster Communication shall sig- nal to other Software Clusters that a trigger was raised.

SWS_SwCluC_03056 requirement

⌊ DRAFT g The Cross Cluster Communication shall, at the Software Cluster providing the trigger, add a Provided Resource En- try and, at Software Clusters requiring the trigger, an according Require Re- source Entry in the Binary Manifest .

SWS_SwCluC_03057 requirement

⌊ DRAFT g The Cross Cluster Communication shall add at the Software Cluster providing the mode a Provided Resource Entry , and at any Software Cluster requiring the trigger an according Require Resource Entry in the Binary Manifest .

SWS_SwCluC_03058 requirement

⌊ DRAFT g The Cross Cluster Communication of the Host Software Cluster shall implement a trigger source for each trigger, which needs to be provided by an Applicative Software Cluster .

SWS_SwCluC_03060 requirement

⌊ DRAFT g The Cross Cluster Communication of the Host Software Cluster shall raise the triggers signaled by Applicative Software Clusters , via the related trigger source . ([SWS_SwCluC_03058])

SWS_SwCluC_03061 requirement

⌊ DRAFT g The Cross Cluster Communication of the Host Software Cluster shall notify the Applicative Software Cluster , when the execution of a trigger tasks starts.

SWS_SwCluC_03062 requirement

⌊ DRAFT g The Cross Cluster Communication shall provide a Complex Driver Software Component on each EcucPartition , where a trigger source according to [SWS_SwCluC_03058] is configured. This compo- nent is later called trigger proxy component .

SWS_SwCluC_03063 requirement

⌊ DRAFT g The Cross Cluster Communication shall provide the AssemblySwConnector s between the provided trigger ports of the trigger proxy component , and the required trigger ports at the software components requiring the trigger, if the trigger is required by the Host Software Cluster .

SWS_SwCluC_03064 requirement

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall reject the configuration, if there is a “N:1” sender-receiver communication with last-is-the-best semantic.

SWS_SwCluC_03065 requirement

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall reject the configuration, if there is a “1:N” sender-receiver communication with event semantic (queued communication).

SWS_SwCluC_03068 requirement

⌊ DRAFT g The implementation of a Cross Cluster Com- munication shall support that Data Communication Graphs between Ap- plicative Software Clusters can be added, without modification of the Host Software Cluster .

SWS_SwCluC_03071 requirement

as part of its Basic Software Module Description .

SWS_SwCluC_03072 requirement

⌊ DRAFT g The McSupportData element begin part of [SWS_SwCluC_03071] and its sub-structure shall be self-contained, in the sense that there is no need to deliver the whole upstream descriptions of the ECU (including the ECU Extract , Software Component descriptions, Basic Software Module descrip- tions, ECU Configuration Values descriptions, etc.), in order to later generate the final "A2L"-file. This means that the Cross Cluster Communication generator has to copy the required information from the upstream descriptions into the McSupport- Data element.

SWS_SwCluC_03073 requirement

⌊ DRAFT g The Cross Cluster Communication genera- tor shall export the effective SwDataDefProps (including all of the referenced and aggregated sub-elements like e.g. CompuMethod or SwRecordLayout ) in the role resultingProperties , for each McDataInstance , after resolving the precedence rules defined in the SW-Component Template [11] chapter Properties of Data Defini- tions . Thereby, the ImplementationDataType properties compuMethod and dat- aConstraint are not taken in consideration for effective SwDataDefProps of the McDataInstance , due to their refinement nature of C and AI .

SWS_SwCluC_03074 requirement

⌊ DRAFT g If the parameter SwCluCXccSwCluCXccDe- faultDataHandling is set to DEFAULTS_AS_CALPRMS , the Cross Cluster Communication generator shall export one entry in the McSupportData , describing the default data instance according to [SWS_SwCluC_03120], with the role mcParam- eterInstance , with the following attributes: • swCalibrationAccess set to readWrite • effective SwDataDefProps according to [SWS_SwCluC_03073] • McDataInstance . subElement s for array elements or structure elements, if ap- plicable • symbol set to the C-symbol name used for the default data instance

SWS_SwCluC_03075 requirement

⌊ DRAFT g The Cross Cluster Communication genera- tor shall export one entry in the McSupportData , describing the default parameter instance according to [SWS_SwCluC_03006], with the role mcParameterInstance , with the following attributes: • swCalibrationAccess set to readWrite • effective SwDataDefProps according to [SWS_SwCluC_03073] • McDataInstance . subElement s for array elements or structure elements, if ap- plicable • symbol set to the C-symbol name used for the default parameter instance

SWS_SwCluC_03076 requirement

⌊ DRAFT g If the swCalibrationAccess of a Variable- DataPrototype instance in the delegation PPortPrototype at the Composition- SwComponentType at the CompositionSwComponentType of the rootSoft- wareComposition of the Ecu Extract is set to readOnly or readWrite , the Cross Cluster Communication generator shall export one entry in the McSup- portData , describing the data instance according to [SWS_SwCluC_03101], with the role mcVariableInstance , with the following attributes: • effective SwDataDefProps (inclusive swCalibrationAccess ) according to [SWS_SwCluC_03073] • McDataInstance . subElement s for array elements or structure elements, if ap- plicable • symbol set to the C-symbol name used for the default parameter instance • if applicable, flatMapEntry referencing to the corresponding FlatIn- stanceDescriptor element of the VariableDataPrototype

SWS_SwCluC_03077 requirement

⌊ DRAFT g If the parameter SwCluCXccSwCluCXccDe- faultDataHandling is set to DEFAULTS_AS_CONSTANTS , the Cross Cluster Communication generator shall export one entry in the McSupportData , describing the default data instance according to [SWS_SwCluC_03120], with the role mcParam- eterInstance , with the following attributes: • swCalibrationAccess set to readOnly • effective SwDataDefProps according to [SWS_SwCluC_03073] • McDataInstance . subElement s for array elements or structure elements, if ap- plicable • symbol set to the C-symbol name used for the default data instance

SWS_SwCluC_03080 requirement

When implicit or explicit unqueued communication applies and the attribute sendIndication is set to anySendOperation for the Data Communication Graph , the call of the Rte_Rips_Write shall indicate the occur- rence of a send operation for the related data instance.

SWS_SwCluC_03081 requirement

The Rte_Rips_DataIsUpdated shall return TRUE if • explicit unqueued communication applies AND • the Resource Entry in the Binary Manifest created according to [SWS_SwCluC_03126] is connected AND • the occurrence of a send operation was indicated after previous calls of Rte_- Read or Rte_DRead related to this reading software component.

SWS_SwCluC_03082 requirement

The Rte_Rips_DataIsUpdated_EventActivation shall return TRUE if • the Resource Entry in the Binary Manifest created according to [SWS_SwCluC_03126] or [SWS_SwCluC_03136] is connected AND – the occurrence of a send operation was indicated after previous calls of this instance of the Rte_Rips_DataIsUpdated_EventActivation OR – a enqueue operation occurred after previous calls of this instance of the Rte_Rips_DataIsUpdated_EventActivation

SWS_SwCluC_03083 requirement

[SWS_SwCluC_03083]

SWS_SwCluC_03084 requirement

[SWS_SwCluC_03084]

SWS_SwCluC_03086 requirement

[SWS_SwCluC_03086]

SWS_SwCluC_03087 requirement

[SWS_SwCluC_03087]

SWS_SwCluC_03088 requirement

[SWS_SwCluC_03088]

SWS_SwCluC_03089 requirement

[SWS_SwCluC_03089]

SWS_SwCluC_03090 requirement

[SWS_SwCluC_03090]

SWS_SwCluC_03091 requirement

[SWS_SwCluC_03091]

SWS_SwCluC_03094 requirement

[SWS_SwCluC_03094]

SWS_SwCluC_03095 requirement

[SWS_SwCluC_03095]

SWS_SwCluC_03097 requirement

[SWS_SwCluC_03097]

SWS_SwCluC_03098 requirement

[SWS_SwCluC_03098]

SWS_SwCluC_03099 requirement

[SWS_SwCluC_03099]

SWS_SwCluC_03101 requirement

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall provide one data instance, for each as- signed Data Communication Graph • where the referenced VariableDataPrototype is owned by a delegation PPortPrototype at the CompositionSwComponentType at the Composi- tionSwComponentType of the rootSoftwareComposition of the Ecu Ex- tract AND • where implicit communication applies to that VariableDataPrototype OR • where explicit unqueued communication applies to that VariableDataProto- type

SWS_SwCluC_03102 requirement

⌊ DRAFT g The data instance created according to [SWS_SwCluC_03101] shall be mapped to a VAR memory section, according to document [8].

SWS_SwCluC_03103 requirement

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall make the data instance created accord- ing to [SWS_SwCluC_03101], accessible to other Software Cluster s via a Re- source Entry in the Binary Manifest .

SWS_SwCluC_03106 requirement

⌊ DRAFT g When implicit or explicit unqueued communica- tion applies, the Rte_Rips_Write shall update the data instance created accord- ing to [SWS_SwCluC_03101]), and return RTE_E_OK .

SWS_SwCluC_03107 requirement

⌊ DRAFT g When explicit queued communication applies, and the Resource Entry created according to [SWS_SwCluC_03142] is not connected, the Rte_Rips_Write shall discard the write access, and return RTE_E_OK .

SWS_SwCluC_03108 requirement

⌊ DRAFT g When explicit queued communication applies, and the Resource Entry created according to [SWS_SwCluC_03142] is connected, the Rte_Rips_Write shall check the queue status (See [SWS_SwCluC_03135]), to de- termine whether or not the data can be enqueued.

SWS_SwCluC_03109 requirement

⌊ DRAFT g When explicit queued communication applies, and the Resource Entry created according to [SWS_SwCluC_03142] is con- nected, and the queue is not full, the Rte_Rips_Write shall enqueue the data and return RTE_E_OK (See [SWS_SwCluC_03135]).

SWS_SwCluC_03110 requirement

⌊ DRAFT g When explicit queued communication applies, and the Resource Entry created according to [SWS_SwCluC_03142] is connected, but the queue is full, the Rte_Rips_Write shall discard the write access and return RTE_E_LIMIT (See [SWS_SwCluC_03135]).

SWS_SwCluC_03111 requirement

⌊ DRAFT g The data instance created according to [SWS_SwCluC_03101] shall be initialized according to the NonqueuedSenderCom- Spec . initValue in the PPortPrototype at the CompositionSwComponentType of the rootSoftwareComposition of the Ecu Extract .

SWS_SwCluC_03112 requirement

⌊ DRAFT g If acknowledgment is enabled, and the resource created according to [SWS_SwCluC_03103] is not connected, the Rte_Rips_- Feedback API shall return RTE_E_UNCONNECTED .

SWS_SwCluC_03113 requirement

⌊ DRAFT g If acknowledgement is enabled, and the resource created according to [SWS_SwCluC_03103] is connected, the Rte_Rips_Feedback API shall return RTE_E_TRANSMIT_ACK .

SWS_SwCluC_03120 requirement

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall provide one default data instance, for each assigned Data Communication Graph • where the referenced VariableDataPrototype is owned by a delegation RPortPrototype at the CompositionSwComponentType at the Composi- tionSwComponentType of the rootSoftwareComposition of the Ecu Ex- tract AND • where implicit communication applies to that VariableDataPrototype OR • where explicit unqueued communication applies to that VariableDataProto- type

SWS_SwCluC_03121 requirement

⌊ DRAFT g If the parameter SwCluCXccSwCluCXccDe- faultDataHandling is set to DEFAULTS_AS_CALPRMS , the default data instance created according to [SWS_SwCluC_03120] shall be mapped to a CALPRM memory section, according to document [8].

SWS_SwCluC_03122 requirement

⌊ DRAFT g If the parameter SwCluCXccSwCluCXccDe- faultDataHandling is set to DEFAULTS_AS_CONSTANTS , the default data instance created according to [SWS_SwCluC_03120] shall be mapped to a CONST memory sec- tion, according to document [8].

SWS_SwCluC_03123 requirement

⌊ DRAFT g The data instances created according to [SWS_SwCluC_03120], [SWS_SwCluC_03133] and [SWS_SwCluC_03135] shall be mapped to a VAR memory section, according to document [8].

SWS_SwCluC_03124 requirement

⌊ DRAFT g The default data instance created according to [SWS_SwCluC_03120] shall be initialized according to the NonqueuedReceiver- ComSpec . initValue in the RPortPrototype at the CompositionSwComponent- Type of the rootSoftwareComposition of the Ecu Extract .

SWS_SwCluC_03126 requirement

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall use the default data instance created ac- cording to [SWS_SwCluC_03120] as default handle in the corresponding Resource Entry in the Binary Manifest .

SWS_SwCluC_03130 requirement

⌊ DRAFT g When explicit unqueued communication via dataReceivePointByArgument s applies, and the Resource Entry created ac- cording to[SWS_SwCluC_03126] is not connected, the Rte_Rips_Read shall copy the value of default data instance created according to [SWS_SwCluC_03120] to the location of the OUT parameter <data>, and shall return RTE_E_UNCONNECTED .

SWS_SwCluC_03131 requirement

⌊ DRAFT g When explicit unqueued communication via dataReceivePointByValue s applies, and the Resource Entry created accord- ing to [SWS_SwCluC_03126] is not connected, the Rte_Rips_DRead shall return the value of default data instance created according to [SWS_SwCluC_03120].

SWS_SwCluC_03132 requirement

⌊ DRAFT g When explicit unqueued communication via dataReceivePointByArgument s applies, and the Resource Entry created ac- cording to [SWS_SwCluC_03126] is connected, the Rte_Rips_Read shall copy the value of the corresponding data instance of the provider to the location of the OUT pa- rameter <data>, and shall return RTE_E_OK .

SWS_SwCluC_03133 requirement

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall provide a queue data instance (where the queue size corresponds to the specified queue length), for each assigned Data Com- munication Graph • where the referenced VariableDataPrototype is owned by a delegation RPortPrototype at the CompositionSwComponentType at the Composi- tionSwComponentType of the rootSoftwareComposition of the Ecu Ex- tract AND • where explicit queued communication applies to that VariableDataProto- type

SWS_SwCluC_03134 requirement

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall determine the queue size according to the queueLength attribute of the QueuedReceiverComSpec

SWS_SwCluC_03135 requirement

⌊ DRAFT g When [SWS_SwCluC_03133] applies, the Cross Cluster Communication of the Software Cluster Connection shall provide a data instance, representing the number of possible entries in the queue.

SWS_SwCluC_03136 requirement

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall make the data instance created according to [SWS_SwCluC_03133] accessible from other Software Clusters , via a Re- source Entry in the Binary Manifest .

SWS_SwCluC_03137 requirement

⌊ DRAFT g When explicit queued communication applies, and the resource created according to [SWS_SwCluC_03136] is not connected, the Rte_- Rips_Read shall discard the read access, and return RTE_E_UNCONNECTED .

SWS_SwCluC_03138 requirement

⌊ DRAFT g When explicit queued communication applies, and the Resource Entry created according to [SWS_SwCluC_03136] is connected, but no entry is available in the queue, the Rte_Rips_Read shall discard the read access, and return RTE_E_NO_DATA .

SWS_SwCluC_03139 requirement

⌊ DRAFT g When explicit queued communication applies, and the Resource Entry created according to [SWS_SwCluC_03136] is connected, the Rte_Rips_Read shall copy the value of the first available entry of the corresponding data instance to the location of the OUT parameter <data>, and return RTE_E_OK .

SWS_SwCluC_03140 requirement

⌊ DRAFT g When [SWS_SwCluC_03139] applies, the Rte_- Rips_Read shall dequeue the data from the corresponding queue.

SWS_SwCluC_03142 requirement

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall provide one Resource Entry , for each assigned Data Communication Graph • where the referenced VariableDataPrototype is owned by a delegation PPortPrototype at the CompositionSwComponentType at the Composi- tionSwComponentType of the rootSoftwareComposition of the Ecu Ex- tract AND • where explicit queued communication applies to that VariableDataProto- type This Resource Entry shall be used to link the access of the related Rte_Rips_- Write service to the according queue instance on the receiving Software Clus- ter .

SWS_SwCluC_03143 requirement

⌊ DRAFT g If explicit unqueued communication applies, and the Resource Entry in the Binary Manifest created according to [SWS_SwCluC_03126] is not connected, the Rte_Rips_DataIsUpdated shall re- turn FALSE .

SWS_SwCluC_03144 requirement

⌊ DRAFT g If explicit unqueued communication applies, and the Resource Entry in the Binary Manifest created according to [SWS_SwCluC_03126] is connected, and the sender has updated the data since the previous execution of the corresponding Rte_Rips_Read service, the Rte_Rips_- DataIsUpdated shall return TRUE

SWS_SwCluC_03145 requirement

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall ensure that the result of a ClientServer- Operation is dispatched to the correct client, if more than one client invokes the ClientServerOperation

SWS_SwCluC_03146 requirement

⌊ DRAFT g The Cross Cluster Communication shall support multiple Clients invoking the same ClientServerOperation on a server ('N:1' Communication where N  1).

SWS_SwCluC_03147 requirement

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall ensure that timeout monitoring is performed for client-server communication.

SWS_SwCluC_03150 requirement

⌊ DRAFT g The Cross Cluster Communication on the client side of the Software Cluster Connection shall provide a request queue (with queue length 1) for each assigned Client Server Communication Graph , where the referenced ClientServerOperation is owned by a delegation RPort- Prototype at the CompositionSwComponentType of the rootSoftwareCompo- sition of the Ecu Extract . Note: The structure of the queue is implementation specific, but the Cross Cluster Communication has to store at least the IN parameters and IN/OUT parameters, the transaction handle and the status code of the communication.

SWS_SwCluC_03151 requirement

⌊ DRAFT g The Cross Cluster Communication on the client side of the Software Cluster Connection shall provide a response queue (with queue length 1), for each assigned Client Server Communication Graph , where the referenced ClientServerOperation is owned by a delegation RPort- Prototype at the CompositionSwComponentType of the rootSoftwareCompo- sition of the Ecu Extract . Note: The structure of the queue is implementation specific, but the Cross Clus- ter Communication has to store at least the IN/OUT and OUT parameters, the transaction handle and the status code of the communication.

SWS_SwCluC_03152 requirement

⌊ DRAFT g The Cross Cluster Communication on the server side of the Software Cluster Connection shall provide a request queue with the specified queue length (See [SWS_SwCluC_03154]), for each assigned Client Server Communication Graph , where the referenced ClientServer- Operation is owned by a delegation PPortPrototype at the Composition- SwComponentType of the rootSoftwareComposition of the Ecu Extract . Note: The structure of the queue is implementation specific, but the Cross Clus- ter Communication has to store at least the IN/OUT and OUT parameters, the transaction handle and the status code of the communication.

SWS_SwCluC_03153 requirement

⌊ DRAFT g The Cross Cluster Communication on the server side of the Software Cluster Connection shall provide N response queues (where N corresponds to the specified queue length), for each assigned Client Server Communication Graph , where the referenced ClientServer- Operation is owned by a delegation PPortPrototype at the Composition- SwComponentType of the rootSoftwareComposition of the Ecu Extract . Note: The structure of the queue is implementation specific, but the Cross Clus- ter Communication has to store at least the IN/OUT and OUT parameters, the transaction handle and the status code of the communication.

SWS_SwCluC_03154 requirement

⌊ DRAFT g The Cross Cluster Communication on the server side of the Software Cluster Connection shall determine the queue length according to the following priority rules (highest priority first): 1. value of the ECU-C parameter RteServerQueueLength 2. value of the queueLength attribute of the ServerComSpec

SWS_SwCluC_03155 requirement

⌊ DRAFT g The Cross Cluster Communication on the server side of the Software Cluster Connection shall handle the requests in a first-in-first-out queue.

SWS_SwCluC_03156 requirement

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall make the request queue instance created according to [SWS_SwCluC_03150] accessible for the Software Cluster imple- menting the server, via a Resource Entry in the Binary Manifest .

SWS_SwCluC_03157 requirement

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall make the response queue instance created according to [SWS_SwCluC_03151] accessible to the Software Cluster , via a Re- source Entry in the Binary Manifest .

SWS_SwCluC_03158 requirement

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall make each request queue instance created according to [SWS_SwCluC_03152] accessible to the Software Cluster , via a Re- source Entry in the Binary Manifest .

SWS_SwCluC_03159 requirement

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall make each response queue instance cre- ated according to [SWS_SwCluC_03153] accessible to the Software Clusters , via a Resource Entry in the Binary Manifest .

SWS_SwCluC_03160 requirement

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall use a transaction handle that contains three parts, of unsigned integer type: • Software Cluster Identifier • Client Identifier • Client Sequence Counter

SWS_SwCluC_03161 requirement

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall use the transaction handle for the iden- tification of client server transactions, communicated between the clusters.

SWS_SwCluC_03162 requirement

⌊ DRAFT g The Cross Cluster Communication on the server side of the Software Cluster Connection shall return the transaction han- dle of the request, without modification, together with the response.

SWS_SwCluC_03163 requirement

⌊ DRAFT g The Cross Cluster Communication of the Software Cluster Connection shall allow only one request per client and server operation at any time.

SWS_SwCluC_03164 requirement

⌊ DRAFT g If the corresponding resource in the Binary Man- ifest representing the response queue (See [SWS_SwCluC_03157]) is not con- nected, the Rte_Rips_Invoke shall return RTE_E_UNCONNECTED immediately.

SWS_SwCluC_03165 requirement

⌊ DRAFT g If the corresponding resource in the Binary Man- ifest representing the response queue (See [SWS_SwCluC_03157]) is connected, the Rte_Rips_Invoke shall copy the IN and IN/OUT parameters, inform the server via a status flag, and return RTE_E_OK.

SWS_SwCluC_03166 requirement

⌊ DRAFT g If the corresponding resource in the Binary Man- ifest representing the response queue (See [SWS_SwCluC_03157]) is connected, the Rte_Rips_Invoke shall return RTE_E_LIMIT, until the server's result has been successfully passed to the client, and no timeout occurred. The IN and IN/OUT param- eters shall not be modified by Rte_Rips_Invoke .

SWS_SwCluC_03167 requirement

⌊ DRAFT g If the corresponding resource in the Binary Man- ifest representing the response queue (See [SWS_SwCluC_03157]) is not con- nected, the Rte_Rips_ReturnResult shall return RTE_E_UNCONNECTED imme- diately.

SWS_SwCluC_03168 requirement

⌊ DRAFT g If the corresponding resource in the Binary Man- ifest representing the response queue (See [SWS_SwCluC_03157]) is connected, the Rte_Rips_ReturnResult shall return RTE_E_NO_DATA, until the server's re- sult has been successfully passed to the client and no timeout occurred.

SWS_SwCluC_03169 requirement

⌊ DRAFT g If the corresponding resource in the Binary Man- ifest representing the response queue (See [SWS_SwCluC_03157]) is connected, and the server's result was not available within the specified timeout, the Rte_- Rips_ReturnResult shall return RTE_E_TIMEOUT.

SWS_SwCluC_03170 requirement

⌊ DRAFT g If the corresponding resource in the Binary Man- ifest representing the response queue (See [SWS_SwCluC_03157]) is connected, and an AsynchronousServerCallReturnsEvent exists, the Rte_Rips_Invo- cationHandler shall poll the corresponding response queue status to determine whether or not the server's result is available.

SWS_SwCluC_03171 requirement

⌊ DRAFT g If the corresponding resource in the Binary Man- ifest representing the response queue (See [SWS_SwCluC_03157]) is connected, and an AsynchronousServerCallReturnsEvent exists, the Rte_Rips_Invo- cationHandler shall call the corresponding ACSR Runnable .

SWS_SwCluC_03173 requirement

⌊ DRAFT g If the corresponding resource in the Binary Man- ifest representing the request queue (See [SWS_SwCluC_03158]) is connected, the Rte_Rips_InvocationHandler shall poll the corresponding request queue status to determine whether or not there is a pending request.

SWS_SwCluC_03174 requirement

⌊ DRAFT g If the corresponding resource in the Binary Man- ifest representing the request queue (See [SWS_SwCluC_03158]) is connected, the Rte_Rips_InvocationHandler shall invoke the server with IN, IN/OUT and OUT parameters of request resp. response queue.

SWS_SwCluC_03175 requirement

⌊ DRAFT g If the corresponding resource in the Binary Manifest representing the response queue (See [SWS_SwCluC_03157]) is con- nected, the Rte_Rips_InvocationHandler shall call the corresponding server Runnable .

SWS_SwCluC_03176 requirement

⌊ DRAFT g If the corresponding resource in the Binary Man- ifest representing the request queue (See [SWS_SwCluC_03158]) is connected, the Rte_Rips_InvocationHandler shall dequeue the server queue after successful invocation of the server queue.

SWS_SwCluC_03177 requirement

⌊ DRAFT g If the corresponding resource in the Binary Man- ifest representing the request queue (See [SWS_SwCluC_03158]) is connected, the Rte_Rips_InvocationHandler shall set the status of the response queue (See [SWS_SwCluC_03159]) accordingly, to inform the client that the request has been processed.

SWS_SwCluC_03178 requirement

[SWS_SwCluC_03178]

SWS_SwCluC_03200 requirement

⌊ DRAFT g The FiM High Proxy shall provide the header file FiM.h .

SWS_SwCluC_03201 requirement

⌊ DRAFT g The FiM High Proxy shall provide the symbolic name values for FiMFID s, for FiM users in the Applicative Software Cluster .

SWS_SwCluC_03202 requirement

⌊ DRAFT g The FiM High Proxy shall provide the functions for Function Inhibition s • FiM_GetFunctionPermission • FiM_SetFunctionAvailable for FiM users in the Applicative Software Cluster .

SWS_SwCluC_03203 requirement

⌊ DRAFT g The FiM High Proxy shall create one partition specific Service Software Component per configured EcucPartition , with the name FiM_<EcucPartition shortName> .

SWS_SwCluC_03204 requirement

⌊ DRAFT g The FiM High Proxy shall provide the ports be- longing to a specific Function Inhibition • Func_{Name} • Control_{Name} at the partition specific Service Software Component, to which the using SwCompo- nentPrototype is mapped.

SWS_SwCluC_03205 requirement

⌊ DRAFT g In case a Function Inhibition configured in the FiM High Proxy is not connected to any FiM Low Proxy , the FiM High Proxy shall return E_NOT_OK and the value FALSE for the Permission , when FiM_- GetFunctionPermission / GetFunctionPermission is called.

SWS_SwCluC_03206 requirement

⌊ DRAFT g In case a Function Inhibition configured in the FiM High Proxy is not connected to any FiM Low Proxy , the FiM High Proxy shall return E_NOT_OK , when FiM_SetFunctionAvailable / SetFunc- tionAvailable is called.

SWS_SwCluC_03207 requirement

⌊ DRAFT g The FiM Low Proxy implementation shall de- scribe the Function Inhibition s provided to FiM High Proxy s via Function- InhibitionNeeds , derived from the CpSoftwareClusterServiceResource . resourceNeeds .

SWS_SwCluC_03208 requirement

⌊ DRAFT g The FiM Low Proxy implementation shall de- scribe the control function s for Function Inhibition s provided to FiM High Proxies via FunctionInhibitionAvailabilityNeeds , derived from the Cp- SoftwareClusterServiceResource . resourceNeeds .

SWS_SwCluC_03209 requirement

⌊ DRAFT g The FiM Low Proxy shall provide, for each SwCluCFiMProxyBaseSocket , a SwCluC_FiMProxy_Init API, to initialize the FiM High Proxy of an Applicative Software Cluster . This shall be one element of the service resource SwCluCFiMProxyBaseSocket .

SWS_SwCluC_03210 requirement

⌊ DRAFT g The FiM High Proxy shall create for each SwCluCFiMProxyBaseSocket a required resource entry in the Binary Mani- fest .

SWS_SwCluC_03211 requirement

⌊ DRAFT g The FiM High Proxy shall create for each di- agnostic function inhibition proxy - configured via SwCluCFiMProxyFID container - a required resource entry in the Binary Manifest .

SWS_SwCluC_03212 requirement

⌊ DRAFT g The FiM Low Proxy shall create for each SwCluCDcmProxyBaseSocket a provided resource entry in the Binary Mani- fest .

SWS_SwCluC_03213 requirement

⌊ DRAFT g The FiM Low Proxy shall create for each di- agnostic function inhibition proxy - configured via SwCluCFiMProxyFID container - a provided resource entry in the Binary Manifest .

SWS_SwCluC_03214 requirement

⌊ DRAFT g The FiM High Proxy code, and related AUTOSAR model descriptions, shall only be created, if the configuration param- eter SwCluCProxyGenerationFiM is set to HIGH_PROXY .

SWS_SwCluC_03215 requirement

⌊ DRAFT g The FiM Low Proxy code, and related AUTOSAR model descriptions, shall only be created, if the configuration param- eter SwCluCProxyGenerationFiM is set to LOW_PROXY .

SWS_SwCluC_03216 requirement

⌊ DRAFT g Development Error Types of SwCluC FiM Proxy The development error types defined for the SwCluC FiM Proxy are listed in table Table 7.9.

SWS_SwCluC_03217 requirement

⌊ DRAFT g If development error detection is enabled for FiM High Proxy , the APIs • FiM_GetFunctionPermission • FiM_SetFunctionAvailable shall report the DET error FIM_E_UNINIT , when FiM High Proxy is not yet initial- ized.

SWS_SwCluC_03218 requirement

⌊ DRAFT g If development error detection is enabled for FiM High Proxy , the APIs • FiM_GetFunctionPermission • FiM_SetFunctionAvailable shall report the DET error FIM_E_FID_OUT_OF_RANGE , if the functions are called with wrong FID value

SWS_SwCluC_03401 requirement

[SWS_SwCluC_03401]

SWS_SwCluC_03402 requirement

[SWS_SwCluC_03402]

SWS_SwCluC_03502 requirement

[SWS_SwCluC_03502] Support of changing Host Software Cluster without rebuilding Application Software Cluster Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈The Com Proxy shall support that the ComIPdu Ids of the Com of the Host Soft- ware Cluster can change, without reconfiguration or rebuild of the Application Software Cluster using these ComIPdus.⌋

SWS_SwCluC_03506 requirement

[SWS_SwCluC_03506] The Com High Proxy shall provide the symbolic name values for the ComIPdu IDs Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈The Com High Proxy shall provide the symbolic name values for the ComIPdu IDs, for Com users in the Application Software Cluster.⌋ Note: According parameters are called TxPduId in Com_Transmit and id in the callback function for Large Data Path in Com.

SWS_SwCluC_03507 requirement

[SWS_SwCluC_03507] Com High Proxy shall provide Com_Transmit Status: DRAFT Upstream requirements: SRS_SwCluC_00211, SRS_SwCluC_00202 ⌈The Com High Proxy shall provide the function w.r.t transmission request of a ComIPdu • Com_Transmit required by the Application Software Cluster ⌋

SWS_SwCluC_03508 requirement

[SWS_SwCluC_03508] Behaviour if Com_Transmit is called and Com High Proxy ia not connected to Com Low Proxy Status: DRAFT Upstream requirements: SRS_SwCluC_00211, SRS_SwCluC_00213 ⌈If the Com High Proxy is not connected to the Com Low Proxy, the function • Com_Transmit of the Com High Proxy shall return E_NOT_OK.⌋

SWS_SwCluC_03509 requirement

[SWS_SwCluC_03509] The Com High Proxy shall provide the function for trans- mission request of a signal Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈The Com High Proxy shall provide the function for transmission request of a sig- nal, according to [SWS_SwCluC_03506], once per configured SwCluCComProxy- BaseSocket. At the EcucPartition, where the SwCluCNativeBswApi is set to true, the API is provided with the original Mip Com. For all other SwCluC- ComProxyBaseSocket instances, the Mip Com is replaced by Com_<EcucParti- tion.ShortName>.⌋ module Callback Functions

SWS_SwCluC_03510 requirement

[SWS_SwCluC_03510] Support of <ComUser_ComCbkRxIndication> notifica- tion callback Status: DRAFT Upstream requirements: SRS_SwCluC_00211, SRS_SwCluC_00202 ⌈The Com High Proxy shall support the <ComUser_ComCbkRxIndication> no- tification callback, configured via the ComUserCallbackName (See [ECUC_Com_- 10036]) parameter, where the ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_RX_INDICATION⌋

SWS_SwCluC_03511 requirement

[SWS_SwCluC_03511] Support of optional <ComUser_ComCbkTxConfirma- tion> notification callback Status: DRAFT Upstream requirements: SRS_SwCluC_00211, SRS_SwCluC_00202 ⌈The Com High Proxy shall support the optional <ComUser_ComCbkTxConfir- mation> notification callback, configured via the ComUserCallbackName (See [ECUC_Com_10036]) parameter, where the ComUserCallbackType (See [ECUC_ Com_10034]) is set to COM_TX_CONFIRMATION⌋ Please note that only a single Com user can be notified with <ComUser_ComCbkTx- Confirmation>.

SWS_SwCluC_03512 requirement

[SWS_SwCluC_03512] Support the optional <ComUser_ComCbkTriggerTrans- mit> notification callback Status: DRAFT Upstream requirements: SRS_SwCluC_00211, SRS_SwCluC_00202 ⌈The Com High Proxy shall support the optional <ComUser_ComCbkTrigger- Transmit> notification callback, configured via the ComUserCallbackName (See [ECUC_Com_10036]) parameter, where the ComUserCallbackType (See [ECUC_ Com_10034]) is set to COM_TX_TRIGGER_TRANSMIT⌋ Please note that only a single Com user can be notified with <ComUser_ComCbk- TriggerTransmit>.

SWS_SwCluC_03513 requirement

[SWS_SwCluC_03513] Support the <ComUser_ComCbkCopyRxData> notification callback Status: DRAFT Upstream requirements: SRS_SwCluC_00211, SRS_SwCluC_00202 ⌈The Com High Proxy shall support the <ComUser_ComCbkCopyRxData> notifica- tion callback, configured via the ComUserCallbackName (See [ECUC_Com_10036]) parameter, where the ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_TP_COPY_RX_DATA⌋ Please note that only a single Com user can be notified with <ComUser_Com- CbkCopyRxData>. module

SWS_SwCluC_03514 requirement

[SWS_SwCluC_03514] Support of <ComUser_ComCbkStartOfReception> noti- fication callback Status: DRAFT Upstream requirements: SRS_SwCluC_00211, SRS_SwCluC_00202 ⌈The Com High Proxy shall support the <ComUser_ComCbkStartOfReception> notification callback configured via the ComUserCallbackName (See [ECUC_Com_ 10036]) parameter where the ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_RX_START_OF_RECEPTION⌋ Please note that only a single Com user can be notified with <ComUser_Com- CbkStartOfReception>.

SWS_SwCluC_03515 requirement

[SWS_SwCluC_03515] Support the <ComUser_ComCbkTpRxIndication> notifi- cation callback Status: DRAFT Upstream requirements: SRS_SwCluC_00211, SRS_SwCluC_00202 ⌈The Com High Proxy shall support the <ComUser_ComCbkTpRxIndication> notification callback, configured via the ComUserCallbackName (See [ECUC_Com_ 10036]) parameter, where the ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_TP_RX_INDICATION⌋ Please note that only a single Com user can be notified with <ComUser_ComCbkT- pRxIndication>.

SWS_SwCluC_03516 requirement

[SWS_SwCluC_03516] Support of <ComUser_ComCbkTpTxConfirmation> noti- fication callback Status: DRAFT Upstream requirements: SRS_SwCluC_00211, SRS_SwCluC_00202 ⌈The Com High Proxy shall support the <ComUser_ComCbkTpTxConfirmation> notification callback, configured via the ComUserCallbackName (See [ECUC_Com_ 10036]) parameter, where the ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_TP_TX_CONFIRMATION⌋ Please note that only a single Com user can be notified with <ComUser_ComCbkTp- TxConfirmation>.

SWS_SwCluC_03517 requirement

[SWS_SwCluC_03517] Support of <ComUser_ComCbkCopyTxData> notification callback Status: DRAFT Upstream requirements: SRS_SwCluC_00211, SRS_SwCluC_00202 ⌈The Com High Proxy shall support the <ComUser_ComCbkCopyTxData> notifica- tion callback, configured via the ComUserCallbackName (See [ECUC_Com_10036]) parameter, where the ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_TP_COPY_TX_DATA⌋ module Please note that only a single Com user can be notified with <ComUser_Com- CbkCopyTxData>. Please note as well [SWS_SwCluC_CONSTR_02667]!

SWS_SwCluC_03519 requirement

[SWS_SwCluC_03519] The Com Low Proxy shall provide the entry function for transmission requests Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈The Com Low Proxy shall provide the entry function for transmission requests, according to [SWS_SwCluC_03506], once per configured SwCluCComProxyBas- eSocket at the EcucPartition configured by SwCluCComProxyBaseSocket. SwCluCProxyEcucPartitionRef. ⌋

SWS_SwCluC_03521 requirement

[SWS_SwCluC_03521] Provide an instance of all SwCluC_ComProxy_Com- CbkRxIndication notification callbacks Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈The Com Low Proxy shall provide an instance of all SwCluC_ComProxy_Com- CbkRxIndication notification callbacks, configured via the ComUserCallback- Name (See [ECUC_Com_10036]) parameter, with ComUserCallbackType (See [ECUC_Com_10034]) set to COM_RX_INDICATION.⌋ module

SWS_SwCluC_03522 requirement

[SWS_SwCluC_03522] Provide an instance of all SwCluC_ComProxy_ComCbkTx- Confirmation notification callbacks Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈The Com Low Proxy shall provide an instance of all SwCluC_ComProxy_ComCbk- TxConfirmation notification callbacks, configured via the ComUserCallbackName (See [ECUC_Com_10036]) parameter, with ComUserCallbackType (See [ECUC_ Com_10034]) set to COM_TX_CONFIRMATION.⌋

SWS_SwCluC_03523 requirement

[SWS_SwCluC_03523] Provide an instance of all SwCluC_ComProxy_ComCbk- TriggerTransmit notification callbacks Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈The Com Low Proxy shall provide an instance of all SwCluC_ComProxy_ComCbk- TriggerTransmit notification callbacks, configured via the ComUserCallback- Name (See [ECUC_Com_10036]) parameter, with ComUserCallbackType (See [ECUC_Com_10034]) set to COM_TX_TRIGGER_TRANSMIT.⌋

SWS_SwCluC_03524 requirement

[SWS_SwCluC_03524] Provide an instance of all SwCluC_ComProxy_Com- CbkCopyRxData notification callbacks Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈The Com Low Proxy shall provide an instance of all SwCluC_ComProxy_Com- CbkCopyRxData notification callbacks, configured via the ComUserCallbackName (See [ECUC_Com_10036]) parameter, with ComUserCallbackType (See [ECUC_ Com_10034]) set to COM_TP_COPY_RX_DATA.⌋

SWS_SwCluC_03525 requirement

[SWS_SwCluC_03525] Provide an instance of all SwCluC_ComProxy_Com- CbkStartOfReception notification callbacks Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈The Com Low Proxy shall provide an instance of all SwCluC_ComProxy_Com- CbkStartOfReception notification callbacks, configured via the ComUserCall- backName (See [ECUC_Com_10036]) parameter, with ComUserCallbackType (See [ECUC_Com_10034]) set to COM_RX_START_OF_RECEPTION.⌋

SWS_SwCluC_03526 requirement

[SWS_SwCluC_03526] Provide an instance of all SwCluC_ComProxy_ComCbkT- pRxIndication notification callbacks Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈The Com Low Proxy shall provide an instance of all SwCluC_ComProxy_ComCbk- TpRxIndication notification callbacks, configured via the ComUserCallbackName (See [ECUC_Com_10036]) parameter, with ComUserCallbackType (See [ECUC_ Com_10034]) set to COM_TP_RX_INDICATION.⌋

SWS_SwCluC_03527 requirement

[SWS_SwCluC_03527] Provide an instance of all SwCluC_ComProxy_ComCbkTp- TxConfirmation notification callbacks Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈The Com Low Proxy shall provide an instance of all SwCluC_ComProxy_ComCbk- TpTxConfirmation notification callbacks, configured via the ComUserCallback- Name (See [ECUC_Com_10036]) parameter, with the ComUserCallbackType (See [ECUC_Com_10034]) set to COM_TP_TX_CONFIRMATION.⌋

SWS_SwCluC_03533 requirement

[SWS_SwCluC_03533]DET error handling if Com_Transmit is called for an unini- tialized Com High Proxy Status: DRAFT Upstream requirements: SRS_SwCluC_00211, SRS_BSW_00369, SRS_BSW_00323, SRS_- BSW_00350 ⌈If the development error detection is enabled for the Com High Proxy, the API • Com_Transmit shall report the DET error COM_E_UNINIT, in case the Com High Proxy is not initial- ized.⌋

SWS_SwCluC_03534 requirement

[SWS_SwCluC_03534] DET error handling if Com_Transmit is invoked with a NULL_PTR Status: DRAFT Upstream requirements: SRS_SwCluC_00211, SRS_BSW_00369, SRS_BSW_00323, SRS_- BSW_00350 ⌈If the development error detection is enabled for the Com High Proxy, the API • Com_Transmit shall, when invoked with a NULL_PTR, report the DET error COM_E_PARAM_POINTER. ⌋

SWS_SwCluC_03535 requirement

[SWS_SwCluC_03535] Invoke all the configured <ComUser_ComCbkRxIndica- tion> if SwCluC_ComProxy_ComCbkRxIndication is called Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈If the <ComUser_ComCbkRxIndication> notification callback is configured in the Com High Proxy (via the ComUserCallbackName (See [ECUC_Com_10036]) pa- rameter, where the ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_RX_INDICATION), all the configured <ComUser_ComCbkRxIndication> call- backs shall be invoked, when the associated instance of the SwCluC_ComProxy_ ComCbkRxIndication from the Com Low Proxy is called.⌋ module

SWS_SwCluC_03536 requirement

[SWS_SwCluC_03536] Invoke the configured <ComUser_ComCbkTxConfirma- tion> if SwCluC_ComProxy_ComCbkRxIndication is called Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈If the <ComUser_ComCbkTxConfirmation> notification callback is configured in the Com High Proxy (via the ComUserCallbackName (See [ECUC_Com_10036]) parameter, where the ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_TX_CONFIRMATION), the configured <ComUser_ComCbkTxConfirmation> callback shall be invoked. when the associated instance of the SwCluC_ComProxy_ ComCbkTxConfirmation from the Com Low Proxy is called.⌋

SWS_SwCluC_03537 requirement

[SWS_SwCluC_03537] Invoke the configured <ComUser_ComCbkTrigger- Transmit> if SwCluC_ComProxy_ComCbkTriggerTransmit is called Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈If the <ComUser_ComCbkTriggerTransmit> notification callback is configured in the Com High Proxy (via the ComUserCallbackName (See [ECUC_Com_10036]) parameter, where the ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_TX_TRIGGER_TRANSMIT), the configured <ComUser_ComCbkTriggerTrans- mit> callback shall be invoked, when the associated instance of the SwCluC_- ComProxy_ComCbkTriggerTransmit from the Com Low Proxy is called.⌋

SWS_SwCluC_03538 requirement

[SWS_SwCluC_03538] Invoke the configured <ComUser_ComCbkCopyRxData> if SwCluC_ComProxy_ComCbkCopyRxData is called Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈If the <ComUser_ComCbkCopyRxData> notification callback is configured in the Com High Proxy (via the ComUserCallbackName (See [ECUC_Com_10036]) pa- rameter, where the ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_TP_COPY_RX_DATA), the configured <ComUser_ComCbkCopyRxData> call- back shall be invoked, when the associated instance of the SwCluC_ComProxy_- ComCbkCopyRxData from the Com Low Proxy is called.⌋

SWS_SwCluC_03539 requirement

[SWS_SwCluC_03539] Invoke the configured <ComUser_ComCbkStartOfRe- ception> if SwCluC_ComProxy_ComCbkStartOfReception is called Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈If the <ComUser_ComCbkStartOfReception> notification callback is configured in the Com High Proxy (via the ComUserCallbackName (See [ECUC_Com_10036]) parameter, where the ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_RX_START_OF_RECEPTION), the configured <ComUser_ComCbkStartOfRe- ception> callback shall be invoked, when the associated instance of the SwCluC_ ComProxy_ComCbkStartOfReception from the Com Low Proxy is called.⌋ module

SWS_SwCluC_03540 requirement

[SWS_SwCluC_03540] Invoke the configured <ComUser_ComCbkTpRxIndica- tion> if SwCluC_ComProxy_ComCbkTpRxIndication is called Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈If the <ComUser_ComCbkTpRxIndication> notification callback is configured in the Com High Proxy (via the ComUserCallbackName (See [ECUC_Com_10036]) parameter, where the ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_TP_RX_INDICATION), the configured <ComUser_ComCbkTpRxIndication> callback shall be invoked, when the associated instance of the SwCluC_ComProxy_ ComCbkTpRxIndication from the Com Low Proxy is called.⌋

SWS_SwCluC_03541 requirement

[SWS_SwCluC_03541] Invoke the configured <ComUser_ComCbkTpTxConfir- mation> if SwCluC_ComProxy_ComCbkTpTxConfirmation is called Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈If the <ComUser_ComCbkTpTxConfirmation> notification callback is configured in the Com High Proxy (via the ComUserCallbackName (See [ECUC_Com_10036]) parameter, where the ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_TP_TX_CONFIRMATION), the configured <ComUser_ComCbkTpTxConfirma- tion> callback shall be invoked, when the associated instance of the SwCluC_- ComProxy_ComCbkTpTxConfirmation from the Com Low Proxy is called.⌋

SWS_SwCluC_03542 requirement

[SWS_SwCluC_03542] Invoke the configured <ComUser_ComCbkCopyTxData> if SwCluC_ComProxy_ComCbkCopyTxData is called Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈If the <ComUser_ComCbkCopyTxData> notification callback is configured in the Com High Proxy (via the ComUserCallbackName (See [ECUC_Com_10036]) pa- rameter, where the ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_TP_COPY_TX_DATA), the configured <ComUser_ComCbkCopyTxData> call- back shall be invoked, when the associated instance of the SwCluC_ComProxy_- ComCbkCopyTxData from the Com Low Proxy is called.⌋

SWS_SwCluC_03543 requirement

[SWS_SwCluC_03543] Create a required resource entry in the Binary Mani- fest Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈The Com High Proxy shall create, for each SwCluCComProxyBaseSocket, a re- quired resource entry in the Binary Manifest.⌋ Please note that the callbacks of the Application Software Cluster • <ComUser_ComCbkStartOfReception> • <ComUser_ComCbkCopyRxData> • <ComUser_ComCbkCopyTxData> • <ComUser_ComCbkTriggerTransmit> • <ComUser_ComCbkRxIndication> • <ComUser_ComCbkTpRxIndication> • <ComUser_ComCbkTxConfirmation> • <ComUser_ComCbkTpTxConfirmation> are connected to the Host Software Cluster via the Com base socket. See

SWS_SwCluC_03548 requirement

[SWS_SwCluC_03548] Support of changing Application Software Cluster without rebuilding Host Software Cluster Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈The Com Proxy shall support that the ComUserCbkHandleId of ComUserIPdus configured in Com users of the Application Software Cluster can change, without reconfiguration or rebuild of the Host Software Cluster.⌋

SWS_SwCluC_03549 requirement

[SWS_SwCluC_03549] Provision of ComUserCbkHandleId values Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈The Com Low Proxy shall provide in its ComUserModuleCnf containers the Co- mUserCbkHandleId values for the configured ComUserIPdus, according to its inter- nal implementation requirements (e.g. to address the Com Low Proxy’s data struc- tures).⌋

SWS_SwCluC_03550 requirement

[SWS_SwCluC_03550] In the Application Software Cluster, the relationship between a Co- mUserIPdu and the related Base Socket is given indirectly, via the common EcucPartition(s) of the SwCluCComProxyBaseSocket.SwCluCProxyEcucPar- titionRef and the EcucPartition of the ComIPdu’s referenced Pdu. Where the EcucPartition of the Pdu is given via Pdu.EcucPduDefaultPartitionRef or Pdu.EcucPduDedicatedPartition.EcucPduDedicatedPartitionRef, where EcucPduDedicatedPartition applies for Com configuration. Those relationships are illustrated in figure 7.14. The reason not to define a dedicated EcuC configuration structure for this purpose, is the assumption that the same tools are used to derive the Com configuration for an Application Software Cluster and a Host Soft- ware Cluster. Those relationships are illustrated in figure 7.14.

SWS_SwCluC_03554 requirement

[SWS_SwCluC_03554] Guard value calculation for ComIPdu Upstream requirements: SRS_SwCluC_00211 ⌈The Com Proxy shall use the following attributes from an ComIPdu for the guard value calculation • ComIPduDirection • ComIPduType ⌋ module

SWS_SwCluC_09001 requirement

[SWS_SwCluC_09001]

SWS_SwCluC_10010 requirement

Type of a handle in the interface table. Tags: atp.Status=draft

SWS_SwCluC_10012 requirement

[SWS_SwCluC_10012]

SWS_SwCluC_90000 requirement

/ Restrictions Guard Value relevant no standardized resourceNeeds Table 7.11: SWCLUSTER_RES_BASE_CNF

SWS_SwCluC_90001 requirement

/ Restrictions Guard Value relevant NvM/NvMBlockDescriptor NvMBlockManagementType 1 Value NvM/NvMBlockDescriptor NvMBlockUseAutoValidation 1 Value NvM/NvMBlockDescriptor NvMBlockUseCrc 1 Value NvM/NvMBlockDescriptor NvMBlockUseSetRamBlock Status 1 Value NvM/NvMBlockDescriptor NvMBlockWriteProt 1 Value NvM/NvMBlockDescriptor NvMCalcRamBlockCrc 1 Value NvM/NvMBlockDescriptor NvMResistantToChangedSw 1 Value NvM/NvMBlockDescriptor NvMRomBlockNum 1 Value NvM/NvMBlockDescriptor NvMSelectBlockForReadAll 1 Value NvM/NvMBlockDescriptor NvMSelectBlockForWriteAll 1 Value NvM/NvMBlockDescriptor NvMWriteBlockOnce 1 Value NvM/NvMCommon NvMSetRamBlockStatusApi 1 Value SwCluC/SwCluCProxies/Sw CluCNvMProxy/SwCluCNv MProxyNvBlock SwCluCNvMProxyNvBlockMax Length 1 Value Table 7.21: SWCLUSTER_RES_NV_BLOCK

SWS_SwCluC_90002 requirement

/ Restrictions Guard Value relevant no standardized resourceNeeds Table 7.13: SWCLUSTER_RES_OS_BASE_SOCKET

SWS_SwCluC_90003 requirement

/ Restrictions Guard Value relevant no standardized resourceNeeds Table 7.14: SWCLUSTER_RES_OS_APPLICATION

SWS_SwCluC_90004 requirement

/ Restrictions Guard Value relevant Os/OsTask OsTaskPriority 1 Value Os/OsTask OsTaskSchedule 1 Value Table 7.15: SWCLUSTER_RES_OS_TASK

SWS_SwCluC_90005 requirement

/ Restrictions Guard Value relevant no standardized resourceNeeds Table 7.16: SWCLUSTER_RES_OS_RESOURCE

SWS_SwCluC_90006 requirement

/ Restrictions Guard Value relevant no standardized resourceNeeds Table 7.17: SWCLUSTER_RES_OS_SPINLOCK

SWS_SwCluC_90007 requirement

/ Restrictions Guard Value relevant Os/OsTask OsTaskPriority 1 Value Os/OsTask OsTaskSchedule 1 Value Table 7.18: SWCLUSTER_RES_OS_TASK_DISPATCHER

SWS_SwCluC_90008 requirement

/ Restrictions Guard Value relevant no standardized resourceNeeds Table 7.12: SWCLUSTER_RES_XCC_BASE_SOCKET

SWS_SwCluC_90009 requirement

/ Restrictions Guard Value relevant no standardized resourceNeeds Table 7.19: SWCLUSTER_RES_OS_FNC_DISPATCHER

SWS_SwCluC_90010 requirement

/ Restrictions Guard Value relevant no standardized resourceNeeds Table 7.20: SWCLUSTER_RES_NVM_BASE_SOCKET

SWS_SwCluC_90011 requirement

/ Restrictions Guard Value relevant no standardized resourceNeeds Table 7.22: SWCLUSTER_RES_COM_BASE_SOCKET

SWS_SwCluC_90012 requirement

/ Restrictions Guard Value relevant no standardized resourceNeeds Table 7.23: SWCLUSTER_RES_LDCOM_BASE_SOCKET

SWS_SwCluC_90013 requirement

/ Restrictions Guard Value relevant no standardized resourceNeeds Table 7.24: SWCLUSTER_RES_DCM_BASE_SOCKET

SWS_SwCluC_90014 requirement

/ Restrictions Guard Value relevant no standardized resourceNeeds Table 7.25: SWCLUSTER_RES_DCM_DIAGNOSTIC_DATA

SWS_SwCluC_90015 requirement

/ Restrictions Guard Value relevant no standardized resourceNeeds Table 7.26: SWCLUSTER_RES_DCM_ROUTINE_CONTROL

SWS_SwCluC_90016 requirement

/ Restrictions Guard Value relevant no standardized resourceNeeds Table 7.27: SWCLUSTER_RES_DCM_SERVICE_REQUEST_NOTIFICATION

SWS_SwCluC_90017 requirement

/ Restrictions Guard Value relevant no standardized resourceNeeds Table 7.28: SWCLUSTER_RES_DEM_BASE_SOCKET

SWS_SwCluC_90018 requirement

/ Restrictions Guard Value relevant Dem/DemConfigSet/Dem EventParameter DemDebounceAlgorithmClass 1 choice of debouncing without contained parameters Choice Dem/DemConfigSet/Dem EventParameter DemEventReportingType 1 Value Table 7.29: SWCLUSTER_RES_DEM_DIAGNOSTIC_EVENT

SWS_SwCluC_90019 requirement

/ Restrictions Guard Value relevant no standardized resourceNeeds Table 7.30: SWCLUSTER_RES_FIM_BASE_SOCKET

SWS_SwCluC_90020 requirement

/ Restrictions Guard Value relevant no standardized resourceNeeds Table 7.31: SWCLUSTER_RES_FIM_FID

SWS_SwCluC_90021 requirement

/ Restrictions Guard Value relevant no standardized resourceNeeds Table 7.32: SWCLUSTER_RES_WDGM_BASE_SOCKET

SWS_SwCluC_90022 requirement

/ Restrictions Guard Value relevant no standardized resourceNeeds Table 7.33: SWCLUSTER_RES_WDGM_TRANSITION

SWS_SwCluC_91002 requirement

[SWS_SwCluC_91002] [SWS_SwCluC_CONSTR_00096] [SWS_SwCluC_ CONSTR_02281]

⌊ DRAFT g The Immutable Tables Checksum shall be calculated on the binary representation in memory of the immutable mem- ory area (inclusive reserved memory space) in ascending order of memory address as CRC32 according to 32-bit Ethernet CRC Calculation as described in docu- ment [7].

⌊ DRAFT g The Total Manifest Checksum shall be calculated on the binary representation in memory of the immutable memory area and modifiable memory area (inclusive reserved memory space) in ascending order of memory address as CRC32, according to 32-bit Ethernet CRC Calcu- lation as described in document [7].

⌊ DRAFT g SwCluCBaseConfigurationCheck relates only to a CpSoftwareClusterServiceResource of category SWCLUS- TER_RES_BASE_CNF The SwCluCBaseConfigurationCheck . SwCluCRe- sourceRef shall only reference a CpSoftwareClusterServiceResource of category SWCLUSTER_RES_BASE_CNF .

⌊ DRAFT g At a machine , at most one Substitu- tion Software Cluster shall exist.

In a set of SwCluCBManifProvideHandle in a SwCluCBManifResourceType it is not permitted to set SwCluCBManifIsOp- tional to false , if any preceding SwCluCBManifProvideHandle has already set SwCluCBManifIsOptional to true .

In a set of SwCluCBManifNotifierHandle in a SwCluCBManifResourceType it is not permitted to set SwCluCBManifIsOp- tional to false , if any preceding SwCluCBManifNotifierHandle has already set SwCluCBManifIsOptional to true .

In a set of SwCluCBManifProvideHandle in a SwCluCBManifResourceType at most one optional handle shall exist.

In a set of SwCluCBManifNotifierHandle in a SwCluCBManifResourceType at most one optional handle shall exist.

[SWS_SwCluC_CONSTR_00096] [SWS_SwCluC_ CONSTR_02281]

⌊ DRAFT g SwCluCNvMBaseSocket relates only to a CpSoftwareClusterServiceResource of category SWCLUSTER_RES_- NVM_BASE_SOCKET The SwCluCNvMBaseSocket . SwCluCResourceRef shall only reference a CpSoftwareClusterServiceResource of category SWCLUSTER_- RES_NVM_BASE_SOCKET .

⌊ DRAFT g SwCluCNvMProxyNvBlock relates only to a CpSoftwareClusterServiceResource of category SWCLUSTER_- RES_NV_BLOCK The SwCluCNvMProxyNvBlock . SwCluCResourceRef shall only reference a CpSoftwareClusterServiceResource of category SWCLUSTER_- RES_NV_BLOCK .

⌊ DRAFT g The NvM High Proxy shall reject config- urations of temporary RAM blocks .

⌊ DRAFT g The NvM High Proxy shall reject config- urations, where no ROM block is configured via the parameter NvMRomBlockDataAd- dress , or the parameter NvMInitBlockCallback .

⌊ DRAFT g The NvM High Proxy shall reject con- figurations, where the NV Block length given by NvMNvBlockLength is larger than the maximum size foreseen in the Host Software Cluster , given by SwCluCN- vMProxyNvBlockMaxLength .

[SWS_SwCluC_CONSTR_02145] Application Software Cluster’s NvBlocks are treated as ’resistant to changed SW’ by NvM in Host Software Cluster Upstream requirements: SRS_SwCluC_00206, SRS_BSW_00167 ⌈For any NVRAM Block belonging to an Application Software Cluster (NvM Low Proxy of the SwCluC occurs as block user) the parameter NvMResistant- ToChangedSw shall be set to TRUE in the Host Software Cluster.⌋ Note: This includes the NVRAM Blocks used to store the configuration ID of a specific Application Software Cluster In addition, the NvBlocks in the Host Software Cluster have to be configured such, that the Configuration ID block of an Application Software Clus- ter is restored before the regular NvBlocks of that Application Software Clus- ter. Since the NvM ensures the processing order of NvM Blocks during a NvM_- ReadAll job by the Block Id ([SWS_NvM_00244]). This enables that the NvM High Proxy can process its Config Block ID handling before that recovery of the regular NvBlocks.

[SWS_SwCluC_CONSTR_02146] Block IDs of Application Software Clus- ter’s Configuration ID blocks in Host Software Cluster Upstream requirements: SRS_SwCluC_00206, SRS_BSW_00167 ⌈In the NvM module of the Host Software Cluster the Configuration ID block of an Application Software Cluster shall be configured with a lower block ID than all the other NvBlocks of the identical Application Software Clus- ter.⌋ Please note, that the configured Block IDs of an Application Software Clus- ter’s NvBlock can differ in the configuration in the NvM High Proxy and the NvM of the Host Software Cluster. The Block ID numbers are translated during the API calls from Application Soft- ware Cluster to the Host Software Cluster. Hence, a valid configuration of Block IDs in the Host Software Cluster can look like following example as shown in figure 7.12. module Figure 7.12: Example configuration of NvBlocks used by Application Software Clusters

Figure 7.12: Example configuration of NvBlocks used by Application Software Clusters [SWS_SwCluC_02147] Upstream requirements: SRS_SwCluC_00206 ⌈The NvM High Proxy of a specific Application Software Cluster shall en- able the configuration ID check , if the parameter NvMDynamicConfigura- tion is set to TRUE in this Application Software Cluster .⌋ Note: The parameter NvMDynamicConfiguration is set in the NvM module config- uration of the respective Application Software Cluster . Like in the configuration of the NvM module in the Host Software Cluster , the block ID 1 is reserved for the Configuration ID block in each Application Software Cluster . This Configuration ID block to contain the stored NVRAM configuration ID .

[SWS_SwCluC_CONSTR_02160] NvBlock configuration of Application Soft- ware Cluster’s Configuration ID blocks in Host Software Cluster Upstream requirements: SRS_SwCluC_00206 ⌈In the NvM module of the Host Software Cluster the Configuration ID block of an Application Software Cluster shall be configured with NvM- BlockManagementType == NVM_BLOCK_REDUNDANT and NvMBlockCrcType == NVM_CRC32.⌋

⌊ DRAFT g Constraint for Interrupts Interrupts are not supported for an Applicative Software Cluster , since it does not have ac- cess to the hardware or peripherials.

⌊ DRAFT g Constraint for ActivateTask Acti- vateTask is only allowed to be called in the task body of the Applicative Soft- ware Cluster .

⌊ DRAFT g Constraint for ChainTask Chain- Task is only allowed to be called in the task body of the Applicative Software Cluster .

⌊ DRAFT g Constraint for TerminateTask Ter- minateTask is only allowed to be called in the task body of the Applicative Soft- ware Cluster .

⌊ DRAFT g SwCluCOsProxyOsBaseSocket re- lates only to a CpSoftwareClusterServiceResource of category SWCLUS- TER_RES_OS_BASE_SOCKET The SwCluCOsProxyOsBaseSocket . SwCluCRe- sourceRef shall only reference a CpSoftwareClusterServiceResource of category SWCLUSTER_RES_OS_BASE_SOCKET .

⌊ DRAFT g SwCluCOsProxyOsApplication re- lates only to a CpSoftwareClusterServiceResource of category SWCLUS- TER_RES_OS_APPLICATION The SwCluCOsProxyOsApplication . SwCluCRe- sourceRef shall only reference a CpSoftwareClusterServiceResource of category SWCLUSTER_RES_OS_APPLICATION .

⌊ DRAFT g SwCluCOsProxyOsTask relates only to a CpSoftwareClusterServiceResource of category SWCLUSTER_RES_- OS_TASK The SwCluCOsProxyOsTask . SwCluCResourceRef shall only reference a CpSoftwareClusterServiceResource of category SWCLUSTER_RES_OS_- TASK .

⌊ DRAFT g SwCluCOsProxyOsResource relates only to a CpSoftwareClusterServiceResource of category SWCLUSTER_- RES_OS_RESOURCE The SwCluCOsProxyOsResource . SwCluCResourceRef shall only reference a CpSoftwareClusterServiceResource of category SWCLUSTER_RES_OS_RESOURCE .

⌊ DRAFT g SwCluCOsProxyOsSpinlock relates only to a CpSoftwareClusterServiceResource of category SWCLUSTER_- RES_OS_SPINLOCK The SwCluCOsProxyOsSpinlock . SwCluCResourceRef shall only reference a CpSoftwareClusterServiceResource of category SWCLUSTER_RES_OS_SPINLOCK .

⌊ DRAFT g SwCluCOsProxyOsTaskDispatcher relates only to a CpSoftwareClusterServiceResource of category SWCLUS- TER_RES_OS_TASK_DISPATCHER The SwCluCOsProxyOsTaskDispatcher . SwCluCResourceRef shall only reference a CpSoftwareClusterServiceRe- source of category SWCLUSTER_RES_OS_TASK_DISPATCHER .

⌊ DRAFT g SwCluCOsProxyFunctionDis- patcher relates only to a CpSoftwareClusterServiceResource of category SWCLUSTER_RES_OS_FNC_DISPATCHER The SwCluCOsProxyFunctionDis- patcher . SwCluCResourceRef shall only reference a CpSoftwareClusterSer- viceResource of category SWCLUSTER_RES_OS_FNC_DISPATCHER .

[SWS_SwCluC_CONSTR_02282] Constraint for ChainTask Upstream requirements: SRS_SwCluC_00214 ⌈In an Application Software Cluster, the ’ChainTask’ API shall only be called at the end of the function body of an ’OS Task’.⌋

[SWS_SwCluC_CONSTR_02283] Constraint for TerminateTask Upstream requirements: SRS_SwCluC_00214 ⌈In an Application Software Cluster, the ’TerminateTask’ API shall only be called at the end of the function body of an ’OS Task’.⌋ Rationale: When developing an Application Software Cluster, the Os High Proxy has no ability to call to the ’real’ Os to activate or terminate tasks based on calls to ’Chain- Task’, ’ActivateTask’ or ’TerminateTask’. However, this does not mean that calls to these functions cannot exist within application cluster code. It simply means that a SwCluC module implementation must contain ’stub’ representations of these functions module in an Os High Proxy which have no effect when called within an application cluster which has not been integrated in the final system which includes a Host Software Cluster. However, given that application clusters will eventually be integrated together with a host cluster, code in an application cluster must follow some rules to ensure that their usage of task management APIs do not clash with the intended use case of cyclic execution in cluster based configurations. Note: Where constraints

⌊ DRAFT g SwCluCDcmProxyDiagnosticData relates only to a CpSoftwareClusterServiceResource of category SWCLUS- TER_RES_DIAGNOSTIC_DATA The SwCluCDcmProxyDiagnosticData . SwClu- CResourceRef shall only reference a CpSoftwareClusterServiceResource of category SWCLUSTER_RES_DIAGNOSTIC_DATA .

⌊ DRAFT g SwCluCDcmProxyRoutineControl relates only to a CpSoftwareClusterServiceResource of category SWCLUS- TER_RES_DCM_ROUTINE_CONTROL The SwCluCDcmProxyRoutineControl . SwCluCResourceRef shall only reference a CpSoftwareClusterServiceRe- source of category SWCLUSTER_RES_DCM_ROUTINE_CONTROL .

⌊ DRAFT g SwCluCDcmProxyServiceRequest- Notification relates only to a CpSoftwareClusterServiceResource of category SWCLUSTER_RES_DCM_SERVICE_REQUEST_NOTIFICATION The SwCluCDcmProxyServiceRequestNotification . SwCluCResourceRef shall only reference a CpSoftwareClusterServiceResource of category SWCLUS- TER_RES_DCM_SERVICE_REQUEST_NOTIFICATION .

⌊ DRAFT g Sent LdComIPdu shall be provided to at most one Applicative Software Cluster .

⌊ DRAFT g LdComIPdu s sent or received via trans- port protocol API shall be provided to at most one Applicative Software Clus- ter .

⌊ DRAFT g SwCluCLdComProxyBaseSocket re- lates only to a CpSoftwareClusterServiceResource of category SWCLUS- TER_RES_LDCOM_BASE_SOCKET The SwCluCLdComProxyBaseSocket . SwClu- CResourceRef shall only reference a CpSoftwareClusterServiceResource of category SWCLUSTER_RES_LDCOM_BASE_SOCKET .

⌊ DRAFT g The LdComUserHeaderInclude pa- rameter shall be configured as SwCluC_LdComProxy_Cbk.h .

⌊ DRAFT g Each SwCluC_LdComProxy_LdCom- CbkRxIndication notification callback, where the parameter LdComUserCall- backType (See [ECUC_LdCom_00025]) is set to LDCOM_RX_INDICATION , shall be configured as SwCluC_LdComProxy_<BS>_LdComCbkRxIndication , where <BS> is the shortName of the SwCluCLdComProxyBaseSocket container.

⌊ DRAFT g Each SwCluC_LdComProxy_LdCom- CbkTxConfirmation notification callback, where the parameter LdComUserCall- backType (See [ECUC_LdCom_00025]) is set to LDCOM_TX_CONFIRMATION , shall be configured as SwCluC_LdComProxy_<BS>_LdComCbkTxConfirmation , where <BS> is the shortName of the SwCluCLdComProxyBaseSocket container.

⌊ DRAFT g Each SwCluC_LdComProxy_LdCom- CbkTriggerTransmit notification callback, where the parameter LdComUserCall- backType (See [ECUC_LdCom_00025]) is set to LDCOM_TX_TRIGGER_TRANSMIT , shall be configured as SwCluC_LdComProxy_<BS>_LdComCbkTriggerTransmit , where <BS> is the shortName of the SwCluCLdComProxyBaseSocket container.

⌊ DRAFT g Each SwCluC_LdComProxy_LdCom- CbkCopyRxData notification callback, where the parameter LdComUserCallback- Type (See [ECUC_LdCom_00025]) is set to LDCOM_TP_COPY_RX_DATA , shall be configured as SwCluC_LdComProxy_<BS>_LdComCbkCopyRxData , where <BS> is the shortName of the SwCluCLdComProxyBaseSocket container.

⌊ DRAFT g Each SwCluC_LdComProxy_LdCom- CbkStartOfReception notification callback, where the parameter LdComUser- CallbackType (See [ECUC_LdCom_00025]) is set to LDCOM_TP_COPY_RX_DATA , shall be configured as SwCluC_LdComProxy_<BS>_LdComCbkCopyRxData , where <BS> is the shortName of the SwCluCLdComProxyBaseSocket container.

⌊ DRAFT g Each SwCluC_LdComProxy_LdCom- CbkTpRxIndication notification callback, where the parameter LdComUserCall- backType (See [ECUC_LdCom_00025]) is set to LDCOM_TP_RX_INDICATION , shall be configured as SwCluC_LdComProxy_<BS>_LdComCbkTpRxIndication , where <BS> is the shortName of the SwCluCLdComProxyBaseSocket container.

⌊ DRAFT g Each SwCluC_LdCom- Proxy_LdComCbkTpTxConfirmation notification callback, where the parameter LdComUserCallbackType (See [ECUC_LdCom_00025]) is set to LDCOM_TP_TX_CONFIRMATION , shall be configured as SwCluC_LdComProxy_<BS>_LdComCbkTpTxConfirmation , where <BS> is the shortName of the SwCluCLdComProxyBaseSocket container.

⌊ DRAFT g Each SwCluC_LdComProxy_LdCom- CbkCopyTxData notification callback, where the parameter LdComUserCallback- Type (See [ECUC_LdCom_00025]) is set to LDCOM_TP_COPY_TX_DATA , shall be configured as SwCluC_LdComProxy_<BS>_LdComCbkCopyTxData , where <BS> is the shortName of the SwCluCLdComProxyBaseSocket container.

⌊ DRAFT g Sent signals or signal groups shall be provided to at most one Applicative Software Cluster .

⌊ DRAFT g The ComUserHeaderInclude param- eter shall be configured as SwCluC_ComProxy_Cbk.h .

⌊ DRAFT g Each notification callback, where the parameter ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_RX_- ACK , shall be configured as SwCluC_ComProxy_<BS>_CbkRxAck , where <BS> is the shortName of the SwCluCComProxyBaseSocket container

⌊ DRAFT g Each notification callback, where the parameter ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_RX_- INV , shall be configured as SwCluC_ComProxy_<BS>_CbkInv , where <BS> is the shortName of the SwCluCComProxyBaseSocket container.

⌊ DRAFT g Each notification callback where the pa- rameter ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_RX_TOUT shall be configured as SwCluC_ComProxy_<BS>_CbkRxTOut where <BS> is the shortName of the SwCluCComProxyBaseSocket container

⌊ DRAFT g Each notification callback, where the parameter ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_TX_- ACK , shall be configured as SwCluC_ComProxy_<BS>_CbkTxAck , where <BS> is the shortName of the SwCluCComProxyBaseSocket container.

⌊ DRAFT g Each notification callback, where the parameter ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_TX_- ERR , shall be configured as SwCluC_ComProxy_<BS>_CbkTErr , where <BS> is the shortName of the SwCluCComProxyBaseSocket container

⌊ DRAFT g Each notification callback, where the parameter ComUserCallbackType (See [ECUC_Com_10034]) is set to COM_TX_- TOUT , shall be configured as SwCluC_ComProxy_<BS>_CbkTxTOut , where <BS> is the shortName of the SwCluCComProxyBaseSocket container

⌊ DRAFT g SwCluCComProxyBaseSocket relates only to a CpSoftwareClusterServiceResource of category SWCLUS- TER_RES_COM_BASE_SOCKET The SwCluCComProxyBaseSocket . SwCluCRe- sourceRef shall only reference a CpSoftwareClusterServiceResource of category SWCLUSTER_RES_COM_BASE_SOCKET .

[SWS_SwCluC_CONSTR_02667]!

⌊ DRAFT g SwCluCDemProxyBaseSocket relates only to a CpSoftwareClusterServiceResource of category SWCLUS- TER_RES_DEM_BASE_SOCKET The SwCluCDemProxyBaseSocket . SwCluCRe- sourceRef shall only reference a CpSoftwareClusterServiceResource of category SWCLUSTER_RES_DEM_BASE_SOCKET .

⌊ DRAFT g SwCluCDemProxyDiagnosticEvent relates only to a CpSoftwareClusterServiceResource of category SWCLUS- TER_RES_DIAGNOSTIC_EVENT The SwCluCDemProxyDiagnosticEvent . SwCluCResourceRef shall only reference a CpSoftwareClusterServiceRe- source of category SWCLUSTER_RES_DIAGNOSTIC_EVENT .

⌊ DRAFT g SwCluCDemProxyBaseSocket relates only to a CpSoftwareClusterServiceResource of category SWCLUS- TER_RES_DCM_BASE_SOCKET The SwCluCDcmProxyBaseSocket . SwCluCRe- sourceRef shall only reference a CpSoftwareClusterServiceResource of category SWCLUSTER_RES_DCM_BASE_SOCKET .

⌊ DRAFT g For each EcucPartition on which the mode switch notification is configured for a ModeDeclarationGroup- Prototype required by an Applicative Software Cluster , a OsTask with a related SwCluCOsProxyOsTask and SwCluCOsProxyOsTaskDispatcher shall be configured.

⌊ DRAFT g For each required ModeDeclara- tionGroupPrototype and EcucPartition on which the mode switch noti- fication is configured, a OsTask with a related SwCluCOsProxyOsTask and SwCluCOsProxyOsTaskDispatcher shall be configured.

⌊ DRAFT g For each mode provided by an Ap- plicative Software Cluster , the Ecu Extract of the Host Software Cluster shall own a required mode switch port at the CompositionSwCompo- nentType of the rootSoftwareComposition .

⌊ DRAFT g For each EcucPartition on which the trigger notification is configured for a trigger required by an Applica- tive Software Cluster , a OsTask , with a related SwCluCOsProxyOsTask and SwCluCOsProxyOsTaskDispatcher , shall be configured.

⌊ DRAFT g For each required trigger and Ecuc- Partition on which triggered ExecutableEntitys needs to be executed, at least one OsTask , with a related SwCluCOsProxyOsTask and SwCluCOsProx- yOsTaskDispatcher , shall be configured.

⌊ DRAFT g The Ecu Extract of the Host Soft- ware Cluster shall, for each trigger provided by an Applicative Software Cluster , own a required trigger port at the CompositionSwComponentType of the rootSoftwareComposition .

⌊ DRAFT g SwCluCXccBaseSocket relates only to a CpSoftwareClusterServiceResource of category SWCLUSTER_RES_- XCC_BASE_SOCKET The SwCluCXccBaseSocket . SwCluCResourceRef shall only reference a CpSoftwareClusterServiceResource of category SWCLUSTER_- RES_XCC_BASE_SOCKET .

⌊ DRAFT g The implementation of a Cross Clus- ter Communication of an Applicative Software Clusters shall not exe- cute code belonging to any other Software Cluster , except from special entry points provided by the Host Software Cluster (e.g. to implement event passing)

⌊ DRAFT g The implementation of a Cross Clus- ter Communication of an Applicative Software Cluster shall only write into the memory of other Software Clusters , if that write does not cross a Par- tition border. To determine this, the Applicative Software Cluster needs to determine if the CpSoftwareClusterResource is assigned to the same partition.

⌊ DRAFT g The EcucModuleConfigurationVa- lues of the SwCluC module shall set the RteRipsPluginCommunicationScope to RTE_RIPS_CROSS_SW_CLUSTER_COM .

[SWS_SwCluC_CONSTR_03093] [SWS_SwCluC_CONSTR_03400] [SWS_ SwCluC_CONSTR_03403] [SWS_SwCluC_NA_00999] F.3.2 Changed Specification Items in R22-11

⌊ DRAFT g SwCluCFiMProxyBaseSocket relates only to a CpSoftwareClusterServiceResource of category SWCLUS- TER_RES_FIM_BASE_SOCKET The SwCluCFiMProxyBaseSocket . SwCluCRe- sourceRef shall only reference a CpSoftwareClusterServiceResource of category SWCLUSTER_RES_FIM_BASE_SOCKET .

⌊ DRAFT g SwCluCFiMProxyFID relates only to a CpSoftwareClusterServiceResource of category SWCLUSTER_RES_FID The SwCluCFIMProxyFID . SwCluCResourceRef shall only reference a CpSoft- wareClusterServiceResource of category SWCLUSTER_RES_FIM_FID .

[SWS_SwCluC_CONSTR_03400] [SWS_ SwCluC_CONSTR_03403] [SWS_SwCluC_NA_00999] F.3.2 Changed Specification Items in R22-11

[SWS_SwCluC_CONSTR_03546] Multiplicity of provided ComIPdus Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈Sent ComIPdu shall be provided to at most one Application Software Clus- ter.⌋ In addition, the Com Proxy does not support a fan out of ComIPdus sent or received via transport protocol API. Please note that the PduR supports a fan-out of TP-connections to upper layers.

[SWS_SwCluC_CONSTR_03555] Existence of SwCluC_ComProxy_Com- CbkRxIndication Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈Each SwCluC_ComProxy_ComCbkRxIndication notification call- back, where the parameter ComUserCallbackType (See [ECUC_- Com_10034]) is set to COM_RX_INDICATION, shall be configured as SwCluC_ComProxy_<BS>_ComCbkRxIndication, where <BS> is the short- Name of the SwCluCComProxyBaseSocket container.⌋

[SWS_SwCluC_CONSTR_03556] Existence of SwCluC_ComProxy_ComCbkTx- Confirmation Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈Each SwCluC_ComProxy_ComCbkTxConfirmation notification call- back, where the parameter ComUserCallbackType (See [ECUC_- Com_10034]) is set to COM_TX_CONFIRMATION, shall be configured as SwCluC_ComProxy_<BS>_ComCbkTxConfirmation, where <BS> is the short- Name of the SwCluCComProxyBaseSocket container.⌋

[SWS_SwCluC_CONSTR_03557] Existence of SwCluC_ComProxy_ComCbkTrig- gerTransmit Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈Each SwCluC_ComProxy_ComCbkTriggerTransmit notification call- back, where the parameter ComUserCallbackType (See [ECUC_Com_- 10034]) is set to COM_TX_TRIGGER_TRANSMIT, shall be configured as module SwCluC_ComProxy_<BS>_ComCbkTriggerTransmit, where <BS> is the shortName of the SwCluCComProxyBaseSocket container.⌋

[SWS_SwCluC_CONSTR_03558] Existence of SwCluC_ComProxy_ComCbkCopy- RxData Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈Each SwCluC_ComProxy_ComCbkCopyRxData notification callback, where the parameter ComUserCallbackType (See [ECUC_Com_- 10034]) is set to COM_TP_COPY_RX_DATA, shall be configured as SwCluC_ComProxy_<BS>_ComCbkCopyRxData, where <BS> is the shortName of the SwCluCComProxyBaseSocket container.⌋

[SWS_SwCluC_CONSTR_03559] Existence of SwCluC_ComProxy_Com- CbkStartOfReception Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈Each SwCluC_ComProxy_ComCbkStartOfReception notification call- back, where the parameter ComUserCallbackType (See [ECUC_- Com_10034]) is set to COM_TP_COPY_RX_DATA, shall be configured as SwCluC_ComProxy_<BS>_ComCbkCopyRxData, where <BS> is the shortName of the SwCluCComProxyBaseSocket container.⌋ module

[SWS_SwCluC_CONSTR_03560] Existence of SwCluC_ComProxy_ComCbkT- pRxIndication Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈Each SwCluC_ComProxy_ComCbkTpRxIndication notification call- back, where the parameter ComUserCallbackType (See [ECUC_Com_- 10034]) is set to COM_TP_RX_INDICATION, shall be configured as SwCluC_ComProxy_<BS>_ComCbkTpRxIndication, where <BS> is the short- Name of the SwCluCComProxyBaseSocket container.⌋

[SWS_SwCluC_CONSTR_03561] Existence of SwCluC_ComProxy_ComCbkTpTx- Confirmation Status: DRAFT Upstream requirements: SRS_SwCluC_00211 ⌈Each SwCluC_ComProxy_ComCbkTpTxConfirmation notification call- back, where the parameter ComUserCallbackType (See [ECUC_Com_- 10034]) is set to COM_TP_TX_CONFIRMATION, shall be configured as SwCluC_ComProxy_<BS>_ComCbkTpTxConfirmation, where <BS> is the shortName of the SwCluCComProxyBaseSocket container.⌋

[SWS_SwCluC_NA_00999] F.3.2 Changed Specification Items in R22-11