]> rtime.felk.cvut.cz Git - arc.git/commitdiff
Starting 'pdur2' branch with copied content from remote repository.
authormaek <devnull@localhost>
Wed, 18 May 2011 17:41:27 +0000 (19:41 +0200)
committermaek <devnull@localhost>
Wed, 18 May 2011 17:41:27 +0000 (19:41 +0200)
64 files changed:
boards/board_common.mk
communication/Com/Com_Com.c
communication/PduR/PduR.c
communication/PduR/PduR_CanIf.c
communication/PduR/PduR_CanTp.c
communication/PduR/PduR_Com.c
communication/PduR/PduR_Dcm.c
communication/PduR/PduR_If.c [deleted file]
communication/PduR/PduR_LinIf.c
communication/PduR/makefile [deleted file]
communication/PduR/test/makefile [deleted file]
examples/pwm_node2/Hooks.c
examples/pwm_node2/Tasks.c
examples/pwm_node2/config/hcs12x_elmicro_tboard/CanIf_Cfg.h
examples/pwm_node2/config/hcs12x_elmicro_tboard/Can_Cfg.h
examples/pwm_node2/config/hcs12x_elmicro_tboard/Com_Cfg.h
examples/pwm_node2/config/hcs12x_elmicro_tboard/Com_PbCfg.h
examples/pwm_node2/config/hcs12x_elmicro_tboard/EcuM_Cfg.h
examples/pwm_node2/config/hcs12x_elmicro_tboard/Os_Cfg.h
examples/pwm_node2/config/hcs12x_elmicro_tboard/PduR_Cfg.h
examples/pwm_node2/config/hcs12x_elmicro_tboard/PduR_PbCfg.h
examples/pwm_node2/config/hcs12x_elmicro_tboard/Port_Cfg.h
examples/pwm_node2/config/hcs12x_elmicro_tboard/Pwm_Cfg.h
examples/pwm_node2/config/mpc5516it/CanIf_Cfg.h
examples/pwm_node2/config/mpc5516it/Can_Cfg.h
examples/pwm_node2/config/mpc5516it/Com_Cfg.h
examples/pwm_node2/config/mpc5516it/Com_PbCfg.h
examples/pwm_node2/config/mpc5516it/EcuM_Cfg.h
examples/pwm_node2/config/mpc5516it/Os_Cfg.h
examples/pwm_node2/config/mpc5516it/PduR_Cfg.h
examples/pwm_node2/config/mpc5516it/PduR_PbCfg.h
examples/pwm_node2/config/mpc5516it/Port_Cfg.h
examples/pwm_node2/config/mpc5516it/Pwm_Cfg.h
examples/switch_node/Hooks.c
examples/switch_node/Tasks.c
examples/switch_node/config/mpc5516it/CanIf_Cfg.h
examples/switch_node/config/mpc5516it/Can_Cfg.h
examples/switch_node/config/mpc5516it/Com_Cfg.h
examples/switch_node/config/mpc5516it/Com_PbCfg.h
examples/switch_node/config/mpc5516it/EcuM_Cfg.h
examples/switch_node/config/mpc5516it/Os_Cfg.h
examples/switch_node/config/mpc5516it/PduR_Cfg.h
examples/switch_node/config/mpc5516it/PduR_PbCfg.h
examples/switch_node/config/mpc5516it/Port_Cfg.h
examples/switch_node/config/mpc5567qrtech/CanIf_Cfg.h
examples/switch_node/config/mpc5567qrtech/Can_Cfg.h
examples/switch_node/config/mpc5567qrtech/Com_Cfg.h
examples/switch_node/config/mpc5567qrtech/Com_PbCfg.h
examples/switch_node/config/mpc5567qrtech/EcuM_Cfg.h
examples/switch_node/config/mpc5567qrtech/Os_Cfg.h
examples/switch_node/config/mpc5567qrtech/PduR_Cfg.h
examples/switch_node/config/mpc5567qrtech/PduR_PbCfg.h
examples/switch_node/config/mpc5567qrtech/Port_Cfg.h
include/CanIf_ConfigTypes.h
include/Com_Com.h
include/Modules.h
include/PduR.h
include/PduR_CanIf.h
include/PduR_CanTp.h
include/PduR_Com.h
include/PduR_Dcm.h
include/PduR_If.h
include/PduR_LinIf.h
include/PduR_Types.h

index 1431945c4d407d923ffeae06ecafbd92589ff91e..8fffe42ff79ba168ceaf188c77d8bda2d27bb439 100644 (file)
@@ -3,7 +3,6 @@ _BOARD_COMMON_MK:=y  # Include guard for backwards compatability
 \r
 obj-$(CFG_PPC) += crt0.o\r
 obj-$(CFG_HC1X) += crt0.o\r
-\r
 vpath-$(CFG_ARM_CM3) += $(ROOTDIR)/$(ARCH_PATH-y)/kernel\r
 vpath-$(CFG_ARM_CM3) += $(ROOTDIR)/$(ARCH_PATH-y)/drivers/STM32F10x_StdPeriph_Driver/src\r
 vpath-$(CFG_ARM_CM3) += $(ROOTDIR)/$(ARCH_PATH-y)/drivers/STM32_ETH_Driver/src\r
@@ -196,12 +195,14 @@ vpath-$(USE_COM) += $(ROOTDIR)/communication/Com
 \r
 # PduR\r
 obj-$(USE_PDUR) += PduR_Com.o\r
-obj-$(USE_PDUR) += PduR_If.o\r
+obj-$(USE_PDUR) += PduR_Logic.o\r
 obj-$(USE_PDUR) += PduR_LinIf.o\r
 obj-$(USE_PDUR) += PduR_PbCfg.o\r
 obj-$(USE_PDUR) += PduR_CanIf.o\r
 obj-$(USE_PDUR) += PduR_CanTp.o\r
 obj-$(USE_PDUR) += PduR_Dcm.o\r
+obj-$(USE_PDUR) += PduR_SoAd.o\r
+obj-$(USE_PDUR) += PduR_Routing.o\r
 obj-$(USE_PDUR) += PduR.o\r
 inc-$(USE_PDUR) += $(ROOTDIR)/communication/PduR\r
 inc-$(USE_COM) += $(ROOTDIR)/communication/PduR\r
index c58676c4429da33eda26302254af0162feeb60a4..94e101d7dbcee6b2b2e27addfca71cb17ccdd2f3 100644 (file)
@@ -72,7 +72,7 @@ uint8 Com_ReceiveSignal(Com_SignalIdType SignalId, void* SignalDataPtr) {
        return E_OK;\r
 }\r
 \r
-Std_ReturnType Com_TriggerTransmit(PduIdType ComTxPduId, uint8 *SduPtr) {\r
+Std_ReturnType Com_TriggerTransmit(PduIdType ComTxPduId, PduInfoType *PduInfoPtr) {\r
        PDU_ID_CHECK(ComTxPduId, 0x13, E_NOT_OK);\r
        /*\r
         * COM260: This function must not check the transmission mode of the I-PDU\r
@@ -85,7 +85,7 @@ Std_ReturnType Com_TriggerTransmit(PduIdType ComTxPduId, uint8 *SduPtr) {
        const ComIPdu_type *IPdu = GET_IPdu(ComTxPduId);\r
        Com_Arc_IPdu_type *Arc_IPdu = GET_ArcIPdu(ComTxPduId);\r
 \r
-       memcpy(SduPtr, Arc_IPdu->ComIPduDataPtr, IPdu->ComIPduSize);\r
+       memcpy(PduInfoPtr->SduDataPtr, Arc_IPdu->ComIPduDataPtr, IPdu->ComIPduSize);\r
        return E_OK;\r
 }\r
 \r
@@ -144,7 +144,7 @@ void Com_TriggerIPduSend(PduIdType ComTxPduId) {
 }\r
 \r
 //lint -esym(904, Com_RxIndication) //PC-Lint Exception of rule 14.7\r
-void Com_RxIndication(PduIdType ComRxPduId, const uint8* SduPtr) {\r
+void Com_RxIndication(PduIdType ComRxPduId, const PduInfoType* PduInfoPtr) {\r
        PDU_ID_CHECK(ComRxPduId, 0x14);\r
 \r
        const ComIPdu_type *IPdu = GET_IPdu(ComRxPduId);\r
@@ -157,7 +157,7 @@ void Com_RxIndication(PduIdType ComRxPduId, const uint8* SduPtr) {
 \r
        // Check callout status\r
        if (IPdu->ComIPduCallout != NULL) {\r
-               if (!IPdu->ComIPduCallout(ComRxPduId, SduPtr)) {\r
+               if (!IPdu->ComIPduCallout(ComRxPduId, PduInfoPtr)) {\r
                        // TODO Report error to DET.\r
                        // Det_ReportError();\r
                        return;\r
@@ -165,7 +165,7 @@ void Com_RxIndication(PduIdType ComRxPduId, const uint8* SduPtr) {
        }\r
 \r
        // Copy IPDU data\r
-       memcpy(Arc_IPdu->ComIPduDataPtr, SduPtr, IPdu->ComIPduSize);\r
+       memcpy(Arc_IPdu->ComIPduDataPtr, PduInfoPtr->SduDataPtr, IPdu->ComIPduSize);\r
 \r
        // For each signal.\r
        const ComSignal_type *comSignal;\r
index 9a5ed58c59e5f98ba6869f9c2d4c786e4a79025f..c4fd6091bf6cb11d061de969757905df70082c9b 100644 (file)
 #include "McuExtensions.h"\r
 #include "debug.h"\r
 \r
-\r
 /*\r
  * The state of the PDU router.\r
  */\r
 PduR_StateType PduRState = PDUR_UNINIT; // 960, 31 PC-Lint: Borde åtgärdas\r
 \r
-const PduR_PBConfigType * PduRConfig;\r
-\r
 \r
-/* ############### Zero Cost Operation Mode ############# */\r
-/* Only define the following functions if zero cost operation\r
- * mode is not used! They are defined as macros in PduR.h otherwise. */\r
 #if PDUR_ZERO_COST_OPERATION == STD_OFF\r
 \r
+\r
+\r
+const PduR_PBConfigType * PduRConfig;\r
+\r
+\r
 /*\r
  * Initializes the PDU Router.\r
  */\r
@@ -75,50 +74,40 @@ void PduR_Init (const PduR_PBConfigType* ConfigPtr) {
        uint8 failed = 0;\r
 \r
        // Initialize buffers.\r
+       /*\r
        uint16 bufferNr = 0;\r
-       PduRRoutingPath_type *path;\r
-       PduRConfig->PduRRoutingTable->NRoutingPaths = 0;\r
-       for (uint16 i = 0; (!PduRConfig->PduRRoutingTable->PduRRoutingPath[i].PduR_Arc_EOL) && (!failed); i++) {\r
-               PduRConfig->PduRRoutingTable->NRoutingPaths++;\r
-               path = &PduRConfig->PduRRoutingTable->PduRRoutingPath[i];\r
-\r
-               if (path->PduRDestPdu.DataProvision != PDUR_NO_PROVISION) {\r
-                       // Allocate memory for new buffer.\r
-                       PduRTxBuffer_type *buffer = path->PduRDestPdu.TxBufferRef;\r
-\r
-                       if (bufferNr >= PDUR_MAX_TX_BUFFER_NUMBER) {\r
-                               DEBUG(DEBUG_LOW,"PduR_Init: Initialization of buffer failed due to erroneous configuration.\nThe number of buffer exceeded the maximum number of allowed buffers.\n");\r
-                               failed = 1;\r
-                               break;\r
-                       }\r
-                       // 586 PC-Lint (malloc) ticket #135\r
-                       if      ((buffer->Buffer = (uint8 *)malloc(buffer->Depth * sizeof(uint8) * path->SduLength)) == 0) {\r
-                               DEBUG(DEBUG_LOW,"PduR_Init: Initialization of buffer failed. Buffer space could not be allocated for buffer number %d\n", bufferNr);\r
-                               failed = 1;\r
-                               break;\r
-                       }\r
+       for (uint16 i = 0; PduRConfig->RoutingPaths[i] != NULL && (!failed); i++) {\r
+               const PduRRoutingPath_type *path = PduRConfig->RoutingPaths[i];\r
 \r
-                       buffer->First = buffer->Buffer;\r
-                       buffer->Last = buffer->Buffer;\r
+               for (uint8 j = 0; path->PduRDestPdus[j] != NULL; j++) {\r
+                       const PduRDestPdu_type *destination = path->PduRDestPdus[j];\r
 \r
 \r
-                       // Initialize the new buffer.\r
-                       buffer->BufferId = i; // Set buffer id.\r
-                       buffer->BufferType = path->PduRDestPdu.DataProvision; // Set buffer data provision mode.\r
-                       buffer->Length = path->SduLength; // Set buffer sdu length.\r
+                       if (destination->DataProvision == PDUR_TRIGGER_TRANSMIT) {\r
+                               // Allocate memory for new buffer.\r
 \r
-                       if (path->PduRDestPdu.DataProvision == PDUR_TRIGGER_TRANSMIT) {\r
-                               //memcpy(buffer->First, path->PduRDefaultValue.PduRDefaultValueElement->DefaultValueElement,path->SduLength);\r
-                               PduR_BufferQueue(buffer, path->PduRDefaultValue.PduRDefaultValueElement->DefaultValueElement);\r
-                       }\r
 \r
-                       // Save pointer to the new buffer.\r
-                       //PduR_RTable_LoIf.RoutingTable[i].TxBufferRef = &PduRBuffers[bufferNr];\r
+                               // Initialize the new buffer.\r
+                               buffer->BufferId = i; // Set buffer id.\r
+                               buffer->BufferType = destination->DataProvision; // Set buffer data provision mode.\r
+                               buffer->Length = path->SduLength; // Set buffer sdu length.\r
+\r
+                               if (destination->DataProvision == PDUR_TRIGGER_TRANSMIT) {\r
+                                       //memcpy(buffer->First, path->PduRDefaultValue.PduRDefaultValueElement->DefaultValueElement,path->SduLength);\r
+                                       PduR_BufferQueue(buffer, path->PduRDefaultValue.PduRDefaultValueElement->DefaultValueElement);\r
+                               }\r
+\r
+                               // Save pointer to the new buffer.\r
+                               //PduR_RTable_LoIf.RoutingTable[i].TxBufferRef = &PduRBuffers[bufferNr];\r
+\r
+                               DEBUG(DEBUG_LOW,"Initialized buffer %d. Id: %d, Type: %d, Depth: %d\n", bufferNr, buffer->BufferId, buffer->BufferType, buffer->Depth);\r
+                               bufferNr++;\r
+\r
+                       }\r
 \r
-                       DEBUG(DEBUG_LOW,"Initialized buffer %d. Id: %d, Type: %d, Depth: %d\n", bufferNr, buffer->BufferId, buffer->BufferType, buffer->Depth);\r
-                       bufferNr++;\r
                }\r
        }\r
+       */\r
 \r
        if (failed) {\r
                // TODO Report PDUR_E_INIT_FAILED to Dem.\r
@@ -134,6 +123,7 @@ void PduR_Init (const PduR_PBConfigType* ConfigPtr) {
        }\r
 }\r
 \r
+/*\r
 void PduR_BufferInc(PduRTxBuffer_type *Buffer, uint8 **ptr) {\r
        (*ptr) = (*ptr) + Buffer->Length;\r
 \r
@@ -142,7 +132,7 @@ void PduR_BufferInc(PduRTxBuffer_type *Buffer, uint8 **ptr) {
        if ( *ptr >= ( Buffer->Buffer + (Buffer->Depth * Buffer->Length) ) ) {\r
                *ptr = Buffer->Buffer;\r
        }\r
-       //*val = (*val + 1) % Buffer->Depth;\r
+       //  *val = (*val + 1) % Buffer->Depth;\r
 }\r
 \r
 void PduR_BufferQueue(PduRTxBuffer_type *Buffer, const uint8 * SduPtr) {\r
@@ -201,6 +191,8 @@ uint8 PduR_BufferIsFull(PduRTxBuffer_type *Buffer) {
        McuE_ExitCriticalSection(state);\r
        return rv;\r
 }\r
+*/\r
+\r
 \r
 \r
 #if PDUR_VERSION_INFO_API == STD_ON\r
@@ -216,17 +208,15 @@ uint32 PduR_GetConfigurationId (void) {
        //PduR_DevCheck(0,1,0x18,E_NOT_OK);\r
        return PduRConfig->PduRConfigurationId;\r
 }\r
-#endif // End of not Zero Cost Operation Mode\r
 \r
 Std_ReturnType PduR_CancelTransmitRequest(PduR_CancelReasonType PduCancelReason, PduIdType PduId) {\r
        // TODO Implement!\r
-       (void)PduCancelReason;\r
-       (void)PduId;\r
        return E_NOT_OK;\r
 }\r
 \r
 void PduR_ChangeParameterRequest(PduR_ParameterValueType PduParameterValue, PduIdType PduId) {\r
        // TODO Implement!\r
-       (void)PduParameterValue;\r
-       (void)PduId;\r
+\r
 }\r
+\r
+#endif\r
index 513aa64a2c559029dbc7d11a534bd80fc0d040a3..cd596c28d023c2e1a83b3c55480ffd02e6a12850 100644 (file)
  * -------------------------------- Arctic Core ------------------------------*/\r
 \r
 \r
-\r
-\r
-\r
-\r
 #include "PduR.h"\r
 \r
-#if (PDUR_ZERO_COST_OPERATION == STD_OFF)\r
-\r
-#include "Det.h"\r
-#include "debug.h"\r
-\r
-void PduR_CanIfRxIndication(PduIdType CanRxPduId,const uint8* CanSduPtr) {\r
-#if (PDUR_CANIF_SUPPORT == STD_ON)\r
-       PduR_DevCheck(CanRxPduId,CanSduPtr,0x0e);\r
-\r
-       DEBUG(DEBUG_LOW,"----------------------\n");\r
-       DEBUG(DEBUG_LOW,"PduR_CanIfRxIndication: received indication with id %d and data %d\n", CanRxPduId, *CanSduPtr);\r
+#if PDUR_ZERO_COST_OPERATION == STD_OFF\r
 \r
-       PduR_LoIfRxIndication(CanRxPduId, CanSduPtr);\r
-\r
-       DEBUG(DEBUG_LOW,"----------------------\n");\r
-#endif\r
+void PduR_CanIfRxIndication(PduIdType CanRxPduId,const PduInfoType* PduInfoPtr) {\r
+       PduR_ARC_RxIndication(CanRxPduId, PduInfoPtr, 0x01);\r
 }\r
 \r
 void PduR_CanIfTxConfirmation(PduIdType CanTxPduId) {\r
-#if (PDUR_CANIF_SUPPORT == STD_ON)\r
-       PduR_DevCheck(CanTxPduId,1,0x0f);\r
-\r
-       DEBUG(DEBUG_LOW,"----------------------\n");\r
-       DEBUG(DEBUG_LOW,"PduR_CanIfTxConfirmation: received confirmation with id %d\n", CanTxPduId);\r
-\r
-       PduR_LoIfTxConfirmation(CanTxPduId);\r
-\r
-       DEBUG(DEBUG_LOW,"----------------------\n");\r
-#endif\r
+       uint8 dummy = 0;\r
+       PduR_ARC_TxConfirmation(CanTxPduId,dummy,0x02);\r
 }\r
 \r
 #endif\r
index 3e8a15faca4e56d379d81a77f2e2d10d7d01b9a9..b197dd0344e1f772ebb63ad80a2e14c784141801 100644 (file)
 \r
 \r
 #include "PduR.h"\r
-\r
-#if (PDUR_ZERO_COST_OPERATION == STD_OFF)\r
 #include "Det.h"\r
 #include "debug.h"\r
 \r
+#if PDUR_ZERO_COST_OPERATION == STD_OFF\r
 \r
 BufReq_ReturnType PduR_CanTpProvideRxBuffer(PduIdType CanTpRxPduId, PduLengthType TpSduLength, PduInfoType** PduInfoPtr) {\r
-       BufReq_ReturnType retVal = BUFREQ_NOT_OK;\r
-#if (PDUR_CANTP_SUPPORT == STD_ON)\r
-       /* Gateway and multicast modes not supported. */\r
-       PduRRoutingPath_type *route = &PduRConfig->PduRRoutingTable->PduRRoutingPath[CanTpRxPduId];\r
-       retVal = Dcm_ProvideRxBuffer(route->PduRDestPdu.DestPduId, TpSduLength, PduInfoPtr);\r
-#endif\r
-       return retVal;\r
+       return PduR_ARC_ProvideRxBuffer(CanTpRxPduId, TpSduLength, PduInfoPtr, 0x03);\r
 }\r
 \r
 \r
 void PduR_CanTpRxIndication(PduIdType CanTpRxPduId, NotifResultType Result) {\r
-#if (PDUR_CANTP_SUPPORT == STD_ON)\r
-\r
-       DEBUG(DEBUG_LOW,"----------------------\n");\r
-       DEBUG(DEBUG_LOW,"PduR_CanTpRxIndication: received indication with id %d and data %d\n", CanTpRxPduId);\r
-\r
-       /* Note that there is no support for CAN TP and gateway operation mode */\r
-       PduRRoutingPath_type *route = &PduRConfig->PduRRoutingTable->PduRRoutingPath[CanTpRxPduId];\r
-       Dcm_RxIndication(route->PduRDestPdu.DestPduId, Result); // Send PDU to next receptor.\r
-\r
-       DEBUG(DEBUG_LOW,"----------------------\n");\r
-#endif\r
+       PduInfoType PduInfo = {\r
+               .SduDataPtr = &Result\r
+       };\r
+       PduR_ARC_RxIndication(CanTpRxPduId, &PduInfo, 0x04);\r
 }\r
 \r
 \r
 BufReq_ReturnType PduR_CanTpProvideTxBuffer(PduIdType CanTpTxPduId, PduInfoType** PduInfoPtr, uint16 Length) {\r
-       BufReq_ReturnType retVal = BUFREQ_NOT_OK;\r
-#if (PDUR_CANTP_SUPPORT == STD_ON)\r
-       /* Gateway and multicast modes not supported. */\r
-       PduRRoutingPath_type *route = &PduRConfig->PduRRoutingTable->PduRRoutingPath[CanTpTxPduId];\r
-       retVal = Dcm_ProvideTxBuffer(route->PduRSrcPdu.SrcPduId, PduInfoPtr, Length);\r
-#endif\r
-       return retVal;\r
+       return PduR_ARC_ProvideTxBuffer(CanTpTxPduId, PduInfoPtr, Length, 0x03);\r
 }\r
 \r
 \r
 void PduR_CanTpTxConfirmation(PduIdType CanTpTxPduId, NotifResultType Result) {\r
-#if (PDUR_CANTP_SUPPORT == STD_ON)\r
-       PduR_DevCheck(CanTpTxPduId,1,0x0f);\r
-\r
-       DEBUG(DEBUG_LOW,"----------------------\n");\r
-       DEBUG(DEBUG_LOW,"PduR_CanIfTxConfirmation: received confirmation with id %d\n", CanTxPduId);\r
-\r
-       PduRRoutingPath_type *route = &PduRConfig->PduRRoutingTable->PduRRoutingPath[CanTpTxPduId];\r
-       Dcm_TxConfirmation(route->PduRSrcPdu.SrcPduId, Result); // Forward confirmation\r
-\r
-       DEBUG(DEBUG_LOW,"----------------------\n");\r
-#endif\r
+       PduR_ARC_TxConfirmation(CanTpTxPduId, Result, 0x0f);\r
 }\r
 \r
-\r
 #endif\r
index 7cfcfc8789eb0c44df9f33e028c644224ee68e7b..13e2edab852769457b829a80d774499ee3f35082 100644 (file)
 \r
 \r
 \r
-\r
-\r
-\r
 #include "PduR.h"\r
 \r
-#if (PDUR_ZERO_COST_OPERATION == STD_OFF)\r
-#include "Det.h"\r
+#if PDUR_ZERO_COST_OPERATION == STD_OFF\r
 \r
-\r
-/**\r
- * Called by the COM-layer in order to send a PDU through a protocol interface.\r
- */\r
 Std_ReturnType PduR_ComTransmit(PduIdType ComTxPduId, const PduInfoType* PduInfoPtr) {\r
-       BufReq_ReturnType retVal = BUFREQ_NOT_OK;\r
-#if (PDUR_COM_SUPPORT == STD_ON)\r
-       PduR_DevCheck(ComTxPduId,PduInfoPtr,0x15, E_NOT_OK);\r
-\r
-       //DEBUG(DEBUG_LOW,"PduR_ComTransmit: received transmit request with id %d and data %d\n", ComTxPduId, *PduInfoPtr->SduDataPtr);\r
-       PduRRoutingPath_type *route = &PduRConfig->PduRRoutingTable->PduRRoutingPath[ComTxPduId];\r
-       retVal = route->FctPtrs.TargetTransmitFctPtr(route->PduRDestPdu.DestPduId, PduInfoPtr);\r
-#endif\r
-       return retVal;\r
+       return PduR_ARC_Transmit(ComTxPduId, PduInfoPtr, 0x15);\r
 }\r
 \r
 #endif\r
index bbbc192c13d6b149c554edf2ddc556dffc83bb6b..e1c856748f81b480b83234f3c0a29d213e934d18 100644 (file)
 \r
 #include "PduR.h"\r
 \r
-#if (PDUR_ZERO_COST_OPERATION == STD_OFF)\r
-\r
-#include "debug.h"\r
-\r
-#if (PDUR_DCM_SUPPORT == STD_ON)\r
+#if PDUR_ZERO_COST_OPERATION == STD_OFF\r
 \r
 Std_ReturnType PduR_DcmTransmit(PduIdType DcmTxPduId, const PduInfoType* PduInfoPtr) {\r
-       BufReq_ReturnType retVal = BUFREQ_NOT_OK;\r
-#if (PDUR_DCM_SUPPORT == STD_ON)\r
-       PduR_DevCheck(DcmTxPduId,PduInfoPtr,0x15, E_NOT_OK);\r
-\r
-       //DEBUG(DEBUG_LOW,"PduR_ComTransmit: received transmit request with id %d and data %d\n", ComTxPduId, *PduInfoPtr->SduDataPtr);\r
-\r
-\r
-       PduRRoutingPath_type *route = &PduRConfig->PduRRoutingTable->PduRRoutingPath[DcmTxPduId];\r
-       retVal = route->FctPtrs.TargetTransmitFctPtr(route->PduRDestPdu.DestPduId, PduInfoPtr);\r
-#endif\r
-       return retVal;\r
+       return PduR_ARC_Transmit(DcmTxPduId, PduInfoPtr, 0x16);\r
 }\r
 \r
 #endif\r
-\r
-#endif\r
diff --git a/communication/PduR/PduR_If.c b/communication/PduR/PduR_If.c
deleted file mode 100644 (file)
index a1b505b..0000000
+++ /dev/null
@@ -1,247 +0,0 @@
-/* -------------------------------- Arctic Core ------------------------------\r
- * Arctic Core - the open source AUTOSAR platform http://arccore.com\r
- *\r
- * Copyright (C) 2009  ArcCore AB <contact@arccore.com>\r
- *\r
- * This source code is free software; you can redistribute it and/or modify it\r
- * under the terms of the GNU General Public License version 2 as published by the\r
- * Free Software Foundation; See <http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt>.\r
- *\r
- * This program is distributed in the hope that it will be useful, but\r
- * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY\r
- * or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License\r
- * for more details.\r
- * -------------------------------- Arctic Core ------------------------------*/\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-#include "PduR.h"\r
-\r
-#if (PDUR_ZERO_COST_OPERATION == STD_OFF)\r
-\r
-#include <string.h>\r
-#include "debug.h"\r
-#if defined(USE_DEM)\r
-#include "Dem.h"\r
-#endif\r
-\r
-/**\r
- * Helper function for the PduR_<LO>IfRxIndication functions. This helper performs the actions specified by PDUR255 and PDUR258.\r
- * @param LinRxPduId - The id of the PDU to be routed.\r
- * @param LinSduPtr - The payload of the PDU.\r
- * @param LoIf_Transmit\r
- */\r
-void PduR_LoIfRxIndication(PduIdType PduId, const uint8* SduPtr) {\r
-\r
-       // Perform routing lookup.\r
-       PduRRoutingPath_type *route = &PduRConfig->PduRRoutingTable->PduRRoutingPath[PduId];\r
-\r
-       if (route->PduR_GatewayMode == 0) {\r
-               // This is an ordinary request.\r
-               // 534 PC-Lint (ignoring return value) ticket #134:\r
-               route->FctPtrs.TargetIndicationFctPtr(route->PduRDestPdu.DestPduId, SduPtr); // Send PDU to next receptor.\r
-\r
-\r
-       } else if ( (route->PduR_GatewayMode == 1) && (route->PduRDestPdu.DataProvision == PDUR_NO_PROVISION) ) {\r
-               // This is a gateway request, but without any data provision (buffer usage).\r
-               PduInfoType PduInfo = {\r
-                       .SduDataPtr = (uint8 *)SduPtr, // 926, 960 PC-Lint: Beror på att funktion PduR_LoIfRxIndication(...) fel-definerad TICKET 130\r
-                       .SduLength = route->SduLength\r
-               };\r
-               // 534 PC-Lint (ignoring return value) ticket #134:\r
-               route->FctPtrs.TargetTransmitFctPtr(route->PduRDestPdu.DestPduId, &PduInfo); // Send PDU to next receptor.\r
-\r
-\r
-       } else if ( (route->PduR_GatewayMode == 1) && (route->PduRDestPdu.DataProvision == PDUR_TRIGGER_TRANSMIT) ) {\r
-               // Ths is a gateway request which uses trigger transmit data provision. PDUR255\r
-               DEBUG(DEBUG_LOW,"\tUsing gateway mode with trigger transmit provision\n");\r
-\r
-               if (route->PduRDestPdu.TxBufferRef->TxConfP) { // Transfer confirmation pending.\r
-                       // Enqueue the new I-PDU. This will flush the buffer if it is full according to the buffer specification.\r
-                       PduR_BufferQueue(route->PduRDestPdu.TxBufferRef, SduPtr);\r
-                       // TODO report PDUR_E_PDU_INSTANCE_LOST to DEM if needed.\r
-               }\r
-\r
-               if (!route->PduRDestPdu.TxBufferRef->TxConfP) { // No transfer confirmation pending (anymore).\r
-                       uint8 val[route->SduLength];\r
-                       PduInfoType PduInfo = {\r
-                               .SduDataPtr = val,\r
-                               .SduLength = route->SduLength\r
-                       };\r
-                       PduR_BufferDeQueue(route->PduRDestPdu.TxBufferRef, val);\r
-                       PduR_BufferQueue(route->PduRDestPdu.TxBufferRef, SduPtr);\r
-                       if (route->FctPtrs.TargetTransmitFctPtr(route->PduRDestPdu.DestPduId, &PduInfo) == E_OK) {\r
-                               setTxConfP(route);\r
-                       }\r
-               }\r
-\r
-       } else if ( (route->PduR_GatewayMode == 1) && (route->PduRDestPdu.DataProvision == PDUR_DIRECT) ) {\r
-               // This is a gateway request using a direct data provision fifo. PDUR258\r
-               DEBUG(DEBUG_LOW,"\tUsing gateway mode with direct provision\n");\r
-\r
-               if (route->PduRDestPdu.TxBufferRef->TxConfP) { // Transfer confirmation pending.\r
-                       DEBUG(DEBUG_LOW,"\tTransfer confirmation pending.\n");\r
-                       PduR_BufferQueue(route->PduRDestPdu.TxBufferRef, SduPtr);\r
-                       // TODO report PDUR_E_PDU_INSTANCE_LOST to DEM if needed.\r
-\r
-               }\r
-\r
-               if (!route->PduRDestPdu.TxBufferRef->TxConfP) { // No transfer confirmation pending (anymore)\r
-                       // TODO: Shall this function create a new I-PDU from LinSduPtr?\r
-\r
-                       // Make new PduInfoPackage\r
-                       DEBUG(DEBUG_LOW,"\tNo transfer confirmation pending. Forwarding packet.\n");\r
-                       PduInfoType PduInfoPtr = {\r
-                                       .SduDataPtr = (uint8 *)SduPtr, // 926, 960 PC-Lint: Beror på att funktion PduR_LoIfRxIndication(...) fel-definerad TICKET 130\r
-                                       .SduLength = route->SduLength\r
-                       };\r
-                       if (route->FctPtrs.TargetTransmitFctPtr(route->PduRDestPdu.DestPduId, &PduInfoPtr) == E_OK) {\r
-                               setTxConfP(route);\r
-\r
-\r
-                       } else {\r
-#if defined(USE_DEM)\r
-                               Dem_ReportErrorStatus(PDUR_E_PDU_INSTANCE_LOST, DEM_EVENT_STATUS_FAILED);\r
-#endif\r
-                               DEBUG(DEBUG_LOW,"\tTransmission failed. PDUR_E_PDU_INSTANCE_LOST\n");\r
-                       }\r
-               }\r
-       } else {\r
-               // Nothing to be done.\r
-       }\r
-}\r
-\r
-// void PduR_LoIfTxConfirmation(PduIdType PduId, Std_ReturnType (*LoIf_Transmit)(PduIdType, const PduInfoType*)) {\r
-\r
-void PduR_LoIfTxConfirmation(PduIdType PduId) {\r
-\r
-       // Perform routing lookup.\r
-       PduRRoutingPath_type *route = &PduRConfig->PduRRoutingTable->PduRRoutingPath[PduId];\r
-\r
-       // Find out if this is a gateway or ordinary confirmation.\r
-\r
-       if (route->PduR_GatewayMode == 0) {\r
-               // This is an ordinary request.\r
-               route->FctPtrs.TargetConfirmationFctPtr(route->PduRDestPdu.DestPduId); // Forward confirmation\r
-\r
-       } else if ( (route->PduR_GatewayMode == 1) && (route->PduRDestPdu.DataProvision == PDUR_NO_PROVISION) ) {\r
-               // A gateway request without provision. Just forward confirmation.\r
-               route->FctPtrs.TargetConfirmationFctPtr(route->PduRDestPdu.DestPduId); // Forward confirmation\r
-\r
-\r
-       } else if ( (route->PduR_GatewayMode == 1) && (route->PduRDestPdu.DataProvision == PDUR_TRIGGER_TRANSMIT) ) {\r
-               // The route is using gateway mode and trigger transmit data provision. PDUR256\r
-               DEBUG(DEBUG_LOW,"\tUsing gateway mode with trigger transmit data provision.\n", PduId);\r
-\r
-               while (1) {\r
-\r
-                       // If TxConfP is set process confirmation, ignore otherwise.\r
-                       if (!route->PduRDestPdu.TxBufferRef->TxConfP) { // TxConfP not set, ignore!\r
-                               DEBUG(DEBUG_LOW,"\tTxConfP was not set, ignoring confirmation.\n");\r
-                               break;\r
-\r
-\r
-                       } else { // TxConfP is set\r
-                               if (route->PduRDestPdu.TxBufferRef->NrItems == 1) { // Only one entry in buffer.\r
-                                       clearTxConfP(route); // Clear TxConfP\r
-                                       DEBUG(DEBUG_LOW,"\tOnly one entry in buffer and TxConfP set, cleared TxConfP.\n");\r
-                                       break;\r
-\r
-\r
-                               } else { // Buffer is not empty\r
-                                       // Dequeue the first fifo item.\r
-                                       DEBUG(DEBUG_LOW,"\tMore than one entry in buffer and TxConfP set, transmitting the next fifo entry.\n");\r
-                                       uint8 val[route->SduLength];\r
-                                       PduR_BufferDeQueue(route->PduRDestPdu.TxBufferRef, val);\r
-\r
-                                       // TODO Does this need to be static?\r
-                                       PduInfoType PduInfo = {\r
-                                               .SduDataPtr = val,\r
-                                               .SduLength = route->SduLength\r
-                                       };\r
-                                       // Transmit this item.\r
-                                       if (route->FctPtrs.TargetTransmitFctPtr(route->PduRDestPdu.DestPduId, &PduInfo) == E_OK) {\r
-                                               DEBUG(DEBUG_LOW,"\tTransmit succeeded.\n");\r
-                                               break;\r
-\r
-\r
-                                       } else {\r
-                                               DEBUG(DEBUG_LOW,"\tTransmit failed. Retrying with the next fifo entry.\n");\r
-                                       }\r
-                               }\r
-                       }\r
-               }\r
-\r
-\r
-       } else if ( (route->PduR_GatewayMode == 1) && (route->PduRDestPdu.DataProvision == PDUR_DIRECT) ) {\r
-               // The route is using a direct data provision fifo. PDUR259\r
-               DEBUG(DEBUG_LOW,"\tUsing gateway mode with direct data provision.\n", PduId);\r
-\r
-               while (1) {\r
-\r
-                       // If TxConfP is set process confirmation, ignore otherwise.\r
-                       if (!route->PduRDestPdu.TxBufferRef->TxConfP) { // TxConfP not set, ignore!\r
-                               DEBUG(DEBUG_LOW,"\tTxConfP was not set, ignoring confirmation.\n");\r
-                               break;\r
-\r
-\r
-                       } else { // TxConfP is set\r
-                               if (route->PduRDestPdu.TxBufferRef->NrItems == 0) { // Buffer is empty\r
-                                       clearTxConfP(route); // Clear TxConfP\r
-                                       DEBUG(DEBUG_LOW,"\tBuffer was empty and TxConfP set, cleared TxConfP.\n");\r
-                                       break;\r
-\r
-\r
-                               } else { // Buffer is not empty\r
-                                       // Dequeue the first fifo item.\r
-                                       DEBUG(DEBUG_LOW,"\tBuffer was not empty and TxConfP set, transmitting the next fifo entry.\n");\r
-                                       uint8 val[route->SduLength];\r
-                                       PduR_BufferDeQueue(route->PduRDestPdu.TxBufferRef, val);\r
-\r
-                                       // TODO Does this need to be static?\r
-                                       PduInfoType PduInfo = {\r
-                                               .SduDataPtr = val,\r
-                                               .SduLength = route->SduLength\r
-                                       };\r
-                                       // Transmit this item.\r
-                                       if (route->FctPtrs.TargetTransmitFctPtr(route->PduRDestPdu.DestPduId, &PduInfo) == E_OK) {\r
-                                               DEBUG(DEBUG_LOW,"\tTransmit succeeded.\n");\r
-                                               break;\r
-\r
-\r
-                                       } else {\r
-                                               DEBUG(DEBUG_LOW,"\tTransmit failed. Retrying with the next fifo entry.\n");\r
-                                       }\r
-                               }\r
-                       }\r
-               }\r
-       } else {\r
-               // Nothing to be done.\r
-       }\r
-}\r
-\r
-void PduR_LoIfTriggerTransmit(PduIdType PduId, uint8* SduPtr) {\r
-       // Perform routing lookup.\r
-       PduRRoutingPath_type *route = &PduRConfig->PduRRoutingTable->PduRRoutingPath[PduId];\r
-\r
-       // Find out if this is a gateway or ordinary trigger.\r
-       //if (route->PduRDestPdu.DataProvision == PDUR_NO_PROVISION) { // This is an ordinary trigger.\r
-       if (route->PduR_GatewayMode == 0) { // This is an ordinary trigger.\r
-               // 534 PC-Lint (ignoring return value) ticket #134:\r
-               route->FctPtrs.TargetTriggerTransmitFctPtr(route->PduRDestPdu.DestPduId, SduPtr);\r
-\r
-       } else if ( (route->PduR_GatewayMode == 1) && (route->PduRDestPdu.DataProvision == PDUR_TRIGGER_TRANSMIT) ) { // The route is using a trigger transmit fifo. PDUR256\r
-               DEBUG(DEBUG_LOW,"\tUsing gateway mode with trigger transmit data provision.\n", PduId);\r
-               memcpy((void *)SduPtr, (void *)route->PduRDestPdu.TxBufferRef->First, sizeof(uint8) * route->SduLength);\r
-\r
-       } else {\r
-               // Nothing to be done.\r
-       }\r
-}\r
-\r
-#endif\r
index 6b11c584942cb0cdcaeb154da896b50a6ec38c07..a7faaffa3da8bc7d481812764f2601395f8308e4 100644 (file)
 \r
 \r
 \r
-\r
-\r
 #include "PduR.h"\r
 \r
-#if (PDUR_ZERO_COST_OPERATION == STD_OFF)\r
-\r
-#include "debug.h"\r
-\r
-void PduR_LinIfRxIndication(PduIdType LinRxPduId, const uint8* LinSduPtr) {\r
-#if (PDUR_LINIF_SUPPORT == STD_ON)\r
-       PduR_DevCheck(LinRxPduId,LinSduPtr,0x0e);\r
+#if PDUR_ZERO_COST_OPERATION == STD_OFF\r
 \r
-       DEBUG(DEBUG_LOW,"----------------------\n");\r
-       DEBUG(DEBUG_LOW,"PduR_LinIfRxIndication: received indication with id %d and data %d\n", LinRxPduId, *LinSduPtr);\r
-\r
-       PduR_LoIfRxIndication(LinRxPduId, LinSduPtr);\r
-\r
-       DEBUG(DEBUG_LOW,"----------------------\n");\r
-#endif\r
+void PduR_LinIfRxIndication(PduIdType LinRxPduId, const PduInfoType* PduInfoPtr) {\r
+       PduR_ARC_RxIndication(LinRxPduId, PduInfoPtr, 0x0e);\r
 }\r
 \r
 void PduR_LinIfTxConfirmation(PduIdType LinTxPduId) {\r
-#if (PDUR_LINIF_SUPPORT == STD_ON)\r
-       PduR_DevCheck(LinTxPduId,1,0x0f);\r
-\r
-       DEBUG(DEBUG_LOW,"----------------------\n");\r
-       DEBUG(DEBUG_LOW,"PduR_LinIfTxConfirmation: received confirmation with id %d\n", LinTxPduId);\r
-\r
-       PduR_LoIfTxConfirmation(LinTxPduId);\r
-\r
-       DEBUG(DEBUG_LOW,"----------------------\n");\r
-#endif\r
+       PduR_ARC_TxConfirmation(LinTxPduId, NULL, 0x0f);\r
 }\r
 \r
-void PduR_LinIfTriggerTransmit(PduIdType LinTxPduId, uint8* LinSduPtr) {\r
-#if (PDUR_LINIF_SUPPORT == STD_ON)\r
-       PduR_DevCheck(LinTxPduId,LinSduPtr,0x10);\r
-\r
-       DEBUG(DEBUG_LOW,"----------------------\n");\r
-       DEBUG(DEBUG_LOW,"PduR_LinIfTriggerTransmit: received request with id %d\n", LinTxPduId);\r
-\r
-       PduR_LoIfTriggerTransmit(LinTxPduId, LinSduPtr);\r
-\r
-       DEBUG(DEBUG_LOW,"----------------------\n");\r
-#endif\r
+Std_ReturnType PduR_LinIfTriggerTransmit(PduIdType LinTxPduId, PduInfoType* PduInfoPtr) {\r
+       return PduR_ARC_TriggerTransmit(LinTxPduId, PduInfoPtr, 0x10);\r
 }\r
 \r
 #endif\r
diff --git a/communication/PduR/makefile b/communication/PduR/makefile
deleted file mode 100644 (file)
index 4bf4106..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-\r
-\r
-#obj-y += xfls_test.o\r
-#obj-y += lin_test.o\r
-\r
-#VPATH +=  $(ROOTDIR)/arch/$(ARCH)/delivery/mpc5500_h7f/source\r
-#inc-y +=  $(ROOTDIR)/arch/$(ARCH)/delivery/mpc5500_h7f/include\r
-\r
-\r
-#linkfile\r
-#ldcmdfile-$(CFG_MPC55XX) = $(ROOTDIR)/arch/$(ARCH)/scripts/linkscript_gcc.ldf\r
-\r
-#build-exe-y = ../../../$(target)_$(ARCH).$(TE)\r
-\r
-\r
diff --git a/communication/PduR/test/makefile b/communication/PduR/test/makefile
deleted file mode 100644 (file)
index 6481732..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-\r
-\r
-\r
-# Gpt\r
-obj-y += Gpt.o\r
-obj-y += Gpt_Cfg.o\r
-\r
-# Mcu\r
-obj-y += Mcu.o\r
-obj-y += Mcu_Cfg.o\r
-obj-y += Mcu_Exceptions.o\r
-\r
-# Can\r
-obj-y += Can.o\r
-obj-y += Can_Lcfg.o\r
-obj-y += CanIf.o\r
-obj-y += CanIf_Cfg.o\r
-\r
-obj-y += Dio.o\r
-obj-y += Dio_Lcfg.o\r
-\r
-obj-y += Port.o\r
-obj-y += Port_Cfg.o\r
-\r
-# Spi\r
-obj-y += Spi.o\r
-obj-y += Spi_Lcfg.o\r
-\r
-#Eep\r
-obj-y += Eep.o\r
-obj-y += Eep_Lcfg.o\r
-obj-y += Eeprom_Lcfg.o\r
-\r
-#Fls ext\r
-obj-y += Fls_SST25xx.o\r
-obj-y += Fls_SST25xx_Cfg.o\r
-\r
-# Misc\r
-obj-y += Det.o\r
-\r
-# Lin\r
-obj-y += Lin_PBcfg.o\r
-obj-y += Lin_Lcfg.o\r
-obj-y += LinIf_Lcfg.o\r
-obj-y += LinIf_PBcfg.o\r
-obj-y += LinSM_Lcfg.o\r
-obj-y += LinSM_PBcfg.o\r
-obj-y += LinSM_Cfg.o\r
-obj-y += Lin.o\r
-obj-y += LinIf.o\r
-obj-y += LinSM.o\r
-\r
-# ComM\r
-obj-y += ComM.o\r
-\r
-# Com\r
-obj-y += Com.o\r
-\r
-\r
-# Common\r
-obj-y += xtoa.o\r
-obj-y += ramlog.o\r
-VPATH += $(ROOTDIR)/common\r
-\r
-\r
-VPATH += $(ROOTDIR)/arch/$(ARCH)/kernel\r
-VPATH += $(ROOTDIR)/arch/$(ARCH)/drivers\r
-#VPATH += $(ROOTDIR)/arch/$(ARCH)/config\r
-VPATH += $(ROOTDIR)/boards/$(BOARDDIR)/config\r
-VPATH += $(ROOTDIR)/drivers\r
-VPATH += $(ROOTDIR)/drivers/config\r
-VPATH += $(ROOTDIR)/drivers/Lin\r
-VPATH += $(ROOTDIR)/drivers/ComM\r
-VPATH += $(ROOTDIR)/drivers/Com\r
-\r
-\r
-inc-y += $(ROOTDIR)/drivers/PduR\r
-inc-y += $(ROOTDIR)/drivers/Com\r
-inc-y += $(ROOTDIR)/drivers/ComM\r
-inc-y += $(ROOTDIR)/drivers/config\r
-inc-y += $(ROOTDIR)/boards/$(BOARDDIR)/config\r
-inc-y += $(ROOTDIR)/drivers/include\r
-inc-y += $(ROOTDIR)/include\r
-#inc-y += $(ROOTDIR)/arch/$(ARCH)/config\r
-inc-y += $(ROOTDIR)/arch/$(ARCH)/drivers\r
-inc-y += $(ROOTDIR)/arch/$(ARCH)/kernel\r
-\r
-inc-y += $(ROOTDIR)/embunit/embUnit\r
-inc-y += $(ROOTDIR)/embunit/textui\r
-inc-y += $(ROOTDIR)/embunit\r
-\r
-\r
-#libs needed by us\r
-libitem-y += $(ROOTDIR)/embunit/embUnit/obj_$(ARCH)/libembunit.a\r
-libitem-y += $(ROOTDIR)/embunit/textui/obj_$(ARCH)/libtextui.a\r
-\r
-#linkfile\r
-ldcmdfile-$(CFG_MPC55XX) = $(ROOTDIR)/arch/$(ARCH)/scripts/linkscript_$(COMPILER).ldf\r
-\r
-build-exe-y = ../../../$(target)_$(ARCH).$(TE)\r
-\r
-\r
index 1d598bfdd5116a8cf3b0191c34239febbd20ee9c..fa550b29d287afa7101cb27d9a5d3816ee726c98 100644 (file)
@@ -44,14 +44,14 @@ void StartupHook( void ) {
 \r
 void ShutdownHook( StatusType Error ) {\r
        LDEBUG_FPUTS("## ShutdownHook\n");\r
-       while(1) ;\r
+       while(1);\r
 }\r
 \r
 void ErrorHook( StatusType Error ) {\r
        DisableAllInterrupts();\r
 \r
        LDEBUG_PRINTF("## ErrorHook err=%d\n",Error);\r
-       while(1) ;\r
+       while(1);\r
 }\r
 \r
 void PreTaskHook( void ) {\r
index c57f12ab81c9eb159549e5c64b3265184f263b60..410105e240ea806276834768c0567d5f335e138c 100644 (file)
@@ -32,7 +32,7 @@
 #include "debug.h"\r
 \r
 void OsIdle( void ) {\r
-       for(;;) ;\r
+       for(;;);\r
 }\r
 \r
 \r
index 1ead3a2a5a0c5310c8eac168472b50f87e460b30..e6928a07777ea4ee3678945521d9ef491fd6ab72 100644 (file)
@@ -14,8 +14,8 @@
 */\r
 \r
 
-#if !(((CANIF_SW_MAJOR_VERSION == 1) && (CANIF_SW_MINOR_VERSION == 3)) )
-#error CanIf: Configuration file expected BSW module version to be 1.3.*
+#if !(((CANIF_SW_MAJOR_VERSION == 1) && (CANIF_SW_MINOR_VERSION == 3)) )\r
+#error CanIf: Configuration file expected BSW module version to be 1.3.*\r
 #endif
 
 \r
index 3e92a8b919126c5d87c2271951d428bdb0227670..a51140bb95a98ba96ba1b6a022936065c4a576c6 100644 (file)
@@ -14,8 +14,8 @@
 */\r
 \r
 
-#if !(((CAN_SW_MAJOR_VERSION == 1) && (CAN_SW_MINOR_VERSION == 0)) )
-#error Can: Configuration file expected BSW module version to be 1.0.*
+#if !(((CAN_SW_MAJOR_VERSION == 1) && (CAN_SW_MINOR_VERSION == 0)) )\r
+#error Can: Configuration file expected BSW module version to be 1.0.*\r
 #endif
 
        \r
index ed4addeed83368f338e0ceb30669cfee23490f6e..d715f73b9ebb16d14298bbfe056fd5c83a7f8d1a 100644 (file)
@@ -14,8 +14,8 @@
 */\r
 \r
 
-#if !(((COM_SW_MAJOR_VERSION == 1) && (COM_SW_MINOR_VERSION == 1)) )
-#error Com: Configuration file expected BSW module version to be 1.1.*
+#if !(((COM_SW_MAJOR_VERSION == 1) && (COM_SW_MINOR_VERSION == 1)) )\r
+#error Com: Configuration file expected BSW module version to be 1.1.*\r
 #endif
 
 \r
index 2ec6cab265d5d8bc855ce6568cebd1ceedf28219..945518c06197864aa10cab96137472f9d507ab69 100644 (file)
@@ -14,8 +14,8 @@
 */\r
 \r
 
-#if !(((COM_SW_MAJOR_VERSION == 1) && (COM_SW_MINOR_VERSION == 1)) )
-#error Com: Configuration file expected BSW module version to be 1.1.*
+#if !(((COM_SW_MAJOR_VERSION == 1) && (COM_SW_MINOR_VERSION == 1)) )\r
+#error Com: Configuration file expected BSW module version to be 1.1.*\r
 #endif
 
 #ifndef COM_PBCFG_H\r
index 915a5e4282210c5608b874cb522e46c8ca308917..348750447fcdf8b27f8d9973a15d2e12b3ecd754 100644 (file)
@@ -14,8 +14,8 @@
 */\r
 \r
 
-#if !(((ECUM_SW_MAJOR_VERSION == 2) && (ECUM_SW_MINOR_VERSION == 0)) )
-#error EcuM: Configuration file expected BSW module version to be 2.0.*
+#if !(((ECUM_SW_MAJOR_VERSION == 2) && (ECUM_SW_MINOR_VERSION == 0)) )\r
+#error EcuM: Configuration file expected BSW module version to be 2.0.*\r
 #endif
 
 \r
index 295b8277ebeb71d991119ccdde4455f1fb36817e..74a4f79ccb7a551d4258e101ed200e0ea1950ca4 100644 (file)
@@ -14,8 +14,8 @@
 */\r
 \r
 
-#if !(((OS_SW_MAJOR_VERSION == 2) && (OS_SW_MINOR_VERSION == 0)) )
-#error Os: Configuration file expected BSW module version to be 2.0.*
+#if !(((OS_SW_MAJOR_VERSION == 2) && (OS_SW_MINOR_VERSION == 0)) )\r
+#error Os: Configuration file expected BSW module version to be 2.0.*\r
 #endif
 
 \r
index 3131e8aed7ffcfd494a342127130c2afea1dc571..2f1f72787219e8d3313f16c0f05356f482b28024 100644 (file)
@@ -14,8 +14,8 @@
 */\r
 \r
 
-#if !(((PDUR_SW_MAJOR_VERSION == 1) && (PDUR_SW_MINOR_VERSION == 0)) )
-#error PduR: Configuration file expected BSW module version to be 1.0.*
+#if !(((PDUR_SW_MAJOR_VERSION == 1) && (PDUR_SW_MINOR_VERSION == 0)) )\r
+#error PduR: Configuration file expected BSW module version to be 1.0.*\r
 #endif
 
 \r
index 5e8dc031deda418b63664794a59281cf6da7fe73..e93b6012a8163ead87166e6f381234f0237dcf7a 100644 (file)
@@ -14,8 +14,8 @@
 */\r
 \r
 
-#if !(((PDUR_SW_MAJOR_VERSION == 1) && (PDUR_SW_MINOR_VERSION == 0)) )
-#error PduR: Configuration file expected BSW module version to be 1.0.*
+#if !(((PDUR_SW_MAJOR_VERSION == 1) && (PDUR_SW_MINOR_VERSION == 0)) )\r
+#error PduR: Configuration file expected BSW module version to be 1.0.*\r
 #endif
 
 \r
index 7a1ea6599d4305f2467268228f0c8c9ff270fa47..6f1a5555d64b6a57eb6eb8d7471869a05aa2df24 100644 (file)
@@ -14,8 +14,8 @@
 */\r
 \r
 
-#if !(((PORT_SW_MAJOR_VERSION == 1) && (PORT_SW_MINOR_VERSION == 0)) )
-#error Port: Configuration file expected BSW module version to be 1.0.*
+#if !(((PORT_SW_MAJOR_VERSION == 1) && (PORT_SW_MINOR_VERSION == 0)) )\r
+#error Port: Configuration file expected BSW module version to be 1.0.*\r
 #endif
 
 \r
index c60223457890bc3b88fb1444be2b58a181b7132e..e54806fbdba2669a42038e8d64ea5d75ededefe0 100644 (file)
@@ -14,8 +14,8 @@
 */\r
 \r
 
-#if !(((PWM_SW_MAJOR_VERSION == 1) && (PWM_SW_MINOR_VERSION == 0)) )
-#error Pwm: Configuration file expected BSW module version to be 1.0.*
+#if !(((PWM_SW_MAJOR_VERSION == 1) && (PWM_SW_MINOR_VERSION == 0)) )\r
+#error Pwm: Configuration file expected BSW module version to be 1.0.*\r
 #endif
 
        \r
index 68d7c90ecf2731c46b87c9aa0e6397eaf83eb554..99cac453b14d8699c7202dda3e1ccae1fd43ef7e 100644 (file)
@@ -14,8 +14,8 @@
 */\r
 \r
 
-#if !(((CANIF_SW_MAJOR_VERSION == 1) && (CANIF_SW_MINOR_VERSION == 3)) )
-#error CanIf: Configuration file expected BSW module version to be 1.3.*
+#if !(((CANIF_SW_MAJOR_VERSION == 1) && (CANIF_SW_MINOR_VERSION == 3)) )\r
+#error CanIf: Configuration file expected BSW module version to be 1.3.*\r
 #endif
 
 \r
index 5d95b86fa08f2141d91b7fae6db4b23026633979..e5476397641e86623dd0c2fc1349022eef61cdf7 100644 (file)
@@ -14,8 +14,8 @@
 */\r
 \r
 
-#if !(((CAN_SW_MAJOR_VERSION == 1) && (CAN_SW_MINOR_VERSION == 0)) )
-#error Can: Configuration file expected BSW module version to be 1.0.*
+#if !(((CAN_SW_MAJOR_VERSION == 1) && (CAN_SW_MINOR_VERSION == 0)) )\r
+#error Can: Configuration file expected BSW module version to be 1.0.*\r
 #endif
 
        \r
index fbd2dc34612155e64da1aa855348525062e8ebc4..c1361dd9d4620695066eda464fc71c7865a839bc 100644 (file)
@@ -14,8 +14,8 @@
 */\r
 \r
 
-#if !(((COM_SW_MAJOR_VERSION == 1) && (COM_SW_MINOR_VERSION == 1)) )
-#error Com: Configuration file expected BSW module version to be 1.1.*
+#if !(((COM_SW_MAJOR_VERSION == 1) && (COM_SW_MINOR_VERSION == 1)) )\r
+#error Com: Configuration file expected BSW module version to be 1.1.*\r
 #endif
 
 \r
index 2a4b2d0b99c91b9737692102170b6ecdb40a1341..5a59adecdca659bfa8f06e15e566344de0f06f49 100644 (file)
@@ -14,8 +14,8 @@
 */\r
 \r
 
-#if !(((COM_SW_MAJOR_VERSION == 1) && (COM_SW_MINOR_VERSION == 1)) )
-#error Com: Configuration file expected BSW module version to be 1.1.*
+#if !(((COM_SW_MAJOR_VERSION == 1) && (COM_SW_MINOR_VERSION == 1)) )\r
+#error Com: Configuration file expected BSW module version to be 1.1.*\r
 #endif
 
 #ifndef COM_PBCFG_H\r
index 29442dc438a038f63c1f513f4c48682a029ba544..cfd5631659fc2db199735b50a942ac5db371ebe4 100644 (file)
@@ -14,8 +14,8 @@
 */\r
 \r
 
-#if !(((ECUM_SW_MAJOR_VERSION == 2) && (ECUM_SW_MINOR_VERSION == 0)) )
-#error EcuM: Configuration file expected BSW module version to be 2.0.*
+#if !(((ECUM_SW_MAJOR_VERSION == 2) && (ECUM_SW_MINOR_VERSION == 0)) )\r
+#error EcuM: Configuration file expected BSW module version to be 2.0.*\r
 #endif
 
 \r
index 9279a6144d1976843625986ae17404cef66eecde..d30e6902343daba8422b963e55c2e900220f31d2 100644 (file)
@@ -14,8 +14,8 @@
 */\r
 \r
 
-#if !(((OS_SW_MAJOR_VERSION == 2) && (OS_SW_MINOR_VERSION == 0)) )
-#error Os: Configuration file expected BSW module version to be 2.0.*
+#if !(((OS_SW_MAJOR_VERSION == 2) && (OS_SW_MINOR_VERSION == 0)) )\r
+#error Os: Configuration file expected BSW module version to be 2.0.*\r
 #endif
 
 \r
index 6b962942f2cbb22b2b7296b8ae996642582e0b04..81ab1c411c86330b35be276278aaa93d9183b17c 100644 (file)
@@ -14,8 +14,8 @@
 */\r
 \r
 
-#if !(((PDUR_SW_MAJOR_VERSION == 1) && (PDUR_SW_MINOR_VERSION == 0)) )
-#error PduR: Configuration file expected BSW module version to be 1.0.*
+#if !(((PDUR_SW_MAJOR_VERSION == 1) && (PDUR_SW_MINOR_VERSION == 0)) )\r
+#error PduR: Configuration file expected BSW module version to be 1.0.*\r
 #endif
 
 \r
index 578a1cfadd5d69827cac7c8a6f8cb5b88da47ae6..7348712d58140e09c2075fba49edaf3d10ae966e 100644 (file)
@@ -14,8 +14,8 @@
 */\r
 \r
 
-#if !(((PDUR_SW_MAJOR_VERSION == 1) && (PDUR_SW_MINOR_VERSION == 0)) )
-#error PduR: Configuration file expected BSW module version to be 1.0.*
+#if !(((PDUR_SW_MAJOR_VERSION == 1) && (PDUR_SW_MINOR_VERSION == 0)) )\r
+#error PduR: Configuration file expected BSW module version to be 1.0.*\r
 #endif
 
 \r
index 88a6968b893fb0b7ce61b6d87bb2cce9d8b33b46..7e92fd6ea3789f6b6933213f9446d5894b16f601 100644 (file)
@@ -14,8 +14,8 @@
 */\r
 \r
 
-#if !(((PORT_SW_MAJOR_VERSION == 1) && (PORT_SW_MINOR_VERSION == 0)) )
-#error Port: Configuration file expected BSW module version to be 1.0.*
+#if !(((PORT_SW_MAJOR_VERSION == 1) && (PORT_SW_MINOR_VERSION == 0)) )\r
+#error Port: Configuration file expected BSW module version to be 1.0.*\r
 #endif
 
 \r
index c289be5c62d05fb19a1ef23d1b3b4563ce44eef6..d292ea35593f7067e4115b6fea293efa63e2d190 100644 (file)
@@ -14,8 +14,8 @@
 */\r
 \r
 
-#if !(((PWM_SW_MAJOR_VERSION == 1) && (PWM_SW_MINOR_VERSION == 0)) )
-#error Pwm: Configuration file expected BSW module version to be 1.0.*
+#if !(((PWM_SW_MAJOR_VERSION == 1) && (PWM_SW_MINOR_VERSION == 0)) )\r
+#error Pwm: Configuration file expected BSW module version to be 1.0.*\r
 #endif
 
 \r
index 469b24cb6fa9424ab6f98c2a4b7e639ca689266a..804568138b63bcbd2278e6c1db268572cd1fbf44 100644 (file)
@@ -45,14 +45,14 @@ void StartupHook( void ) {
 \r
 void ShutdownHook( StatusType Error ) {\r
        LDEBUG_PRINTF("## ShutdownHook\n");\r
-       while(1) ;\r
+       while(1);\r
 }\r
 \r
 void ErrorHook( StatusType Error ) {\r
        DisableAllInterrupts();\r
 \r
        LDEBUG_PRINTF("## ErrorHook err=%d\n",Error);\r
-       while(1) ;\r
+       while(1);\r
 }\r
 \r
 void PreTaskHook( void ) {\r
index 8ef01754c46b76f7894a2b6af10b133c6b49ff3a..e02f3c228c49968e9fb9f79b50a22217d44a87e4 100644 (file)
@@ -32,7 +32,7 @@
 #include "debug.h"\r
 \r
 void OsIdle( void ) {\r
-       for(;;) ;\r
+       for(;;);\r
 }\r
 \r
 \r
index 2efcd7a1c36236383bcda1bccf6fa4fe6ce26a8c..187de63fe4ad619e2639b904943a6f481b17b151 100644 (file)
@@ -14,8 +14,8 @@
 */\r
 \r
 
-#if !(((CANIF_SW_MAJOR_VERSION == 1) && (CANIF_SW_MINOR_VERSION == 3)) )
-#error CanIf: Configuration file expected BSW module version to be 1.3.*
+#if !(((CANIF_SW_MAJOR_VERSION == 1) && (CANIF_SW_MINOR_VERSION == 3)) )\r
+#error CanIf: Configuration file expected BSW module version to be 1.3.*\r
 #endif
 
 \r
index a21036bb0f5a372dba13c37b904ae0bc676f32f1..384dbdc7e040342097dc130962097aee411d8e60 100644 (file)
@@ -14,8 +14,8 @@
 */\r
 \r
 
-#if !(((CAN_SW_MAJOR_VERSION == 1) && (CAN_SW_MINOR_VERSION == 0)) )
-#error Can: Configuration file expected BSW module version to be 1.0.*
+#if !(((CAN_SW_MAJOR_VERSION == 1) && (CAN_SW_MINOR_VERSION == 0)) )\r
+#error Can: Configuration file expected BSW module version to be 1.0.*\r
 #endif
 
        \r
index 017389d59e99c0d97b2a7e8c37bc39b9e9da6541..a375ab2965bea3de631ef610709c92d96a8be851 100644 (file)
@@ -14,8 +14,8 @@
 */\r
 \r
 
-#if !(((COM_SW_MAJOR_VERSION == 1) && (COM_SW_MINOR_VERSION == 1)) )
-#error Com: Configuration file expected BSW module version to be 1.1.*
+#if !(((COM_SW_MAJOR_VERSION == 1) && (COM_SW_MINOR_VERSION == 1)) )\r
+#error Com: Configuration file expected BSW module version to be 1.1.*\r
 #endif
 
 \r
index 88831fd960ffe6d2456e33d56e9fedfe8fc39a05..3aba0125589408f9b015d435e91d06acf6517874 100644 (file)
@@ -14,8 +14,8 @@
 */\r
 \r
 
-#if !(((COM_SW_MAJOR_VERSION == 1) && (COM_SW_MINOR_VERSION == 1)) )
-#error Com: Configuration file expected BSW module version to be 1.1.*
+#if !(((COM_SW_MAJOR_VERSION == 1) && (COM_SW_MINOR_VERSION == 1)) )\r
+#error Com: Configuration file expected BSW module version to be 1.1.*\r
 #endif
 
 #ifndef COM_PBCFG_H\r
index f5f6491702f797054eef7f764f2e80b085a8abc2..6663972d91559cc2861acba4b1e35fdc33f82177 100644 (file)
@@ -14,8 +14,8 @@
 */\r
 \r
 
-#if !(((ECUM_SW_MAJOR_VERSION == 2) && (ECUM_SW_MINOR_VERSION == 0)) )
-#error EcuM: Configuration file expected BSW module version to be 2.0.*
+#if !(((ECUM_SW_MAJOR_VERSION == 2) && (ECUM_SW_MINOR_VERSION == 0)) )\r
+#error EcuM: Configuration file expected BSW module version to be 2.0.*\r
 #endif
 
 \r
index 8b4745e12b0ff488ff34ea6ecb9603227ef54a3c..75c565c75fa2c57064fe19fe10272a87063a581f 100644 (file)
@@ -14,8 +14,8 @@
 */\r
 \r
 
-#if !(((OS_SW_MAJOR_VERSION == 2) && (OS_SW_MINOR_VERSION == 0)) )
-#error Os: Configuration file expected BSW module version to be 2.0.*
+#if !(((OS_SW_MAJOR_VERSION == 2) && (OS_SW_MINOR_VERSION == 0)) )\r
+#error Os: Configuration file expected BSW module version to be 2.0.*\r
 #endif
 
 \r
index ccbe0b9523320d2cdf3b34bd53a6f33b7c231911..cfc9ee14ed3028cd885c1583fdc7ec8281a1e87d 100644 (file)
@@ -14,8 +14,8 @@
 */\r
 \r
 
-#if !(((PDUR_SW_MAJOR_VERSION == 1) && (PDUR_SW_MINOR_VERSION == 0)) )
-#error PduR: Configuration file expected BSW module version to be 1.0.*
+#if !(((PDUR_SW_MAJOR_VERSION == 1) && (PDUR_SW_MINOR_VERSION == 0)) )\r
+#error PduR: Configuration file expected BSW module version to be 1.0.*\r
 #endif
 
 \r
index 6f1ae1eab9cf6c2840ad698c05282bbcb00a830c..92a5508fcf57120d51e6d64bffe41fc8daa13d0c 100644 (file)
@@ -14,8 +14,8 @@
 */\r
 \r
 
-#if !(((PDUR_SW_MAJOR_VERSION == 1) && (PDUR_SW_MINOR_VERSION == 0)) )
-#error PduR: Configuration file expected BSW module version to be 1.0.*
+#if !(((PDUR_SW_MAJOR_VERSION == 1) && (PDUR_SW_MINOR_VERSION == 0)) )\r
+#error PduR: Configuration file expected BSW module version to be 1.0.*\r
 #endif
 
 \r
index 9eac450447e7b695bc3e689e915adc9ba5668d41..e20c905dc108335395b7b0a7933d42ea15782dba 100644 (file)
@@ -14,8 +14,8 @@
 */\r
 \r
 
-#if !(((PORT_SW_MAJOR_VERSION == 1) && (PORT_SW_MINOR_VERSION == 0)) )
-#error Port: Configuration file expected BSW module version to be 1.0.*
+#if !(((PORT_SW_MAJOR_VERSION == 1) && (PORT_SW_MINOR_VERSION == 0)) )\r
+#error Port: Configuration file expected BSW module version to be 1.0.*\r
 #endif
 
 \r
index 76e987d13a3fc65f7dedbfec75754aeb3068447e..1e271cf40a347f257348eebecee40ab0c7730db7 100644 (file)
@@ -14,8 +14,8 @@
 */\r
 \r
 
-#if !(((CANIF_SW_MAJOR_VERSION == 1) && (CANIF_SW_MINOR_VERSION == 3)) )
-#error CanIf: Configuration file expected BSW module version to be 1.3.*
+#if !(((CANIF_SW_MAJOR_VERSION == 1) && (CANIF_SW_MINOR_VERSION == 3)) )\r
+#error CanIf: Configuration file expected BSW module version to be 1.3.*\r
 #endif
 
 \r
index a076a903ded5308db40dce3afb9ceb23306723e7..38fc5dc454bde4d6a7881300bb8fa930834e6c4a 100644 (file)
@@ -14,8 +14,8 @@
 */\r
 \r
 
-#if !(((CAN_SW_MAJOR_VERSION == 1) && (CAN_SW_MINOR_VERSION == 0)) )
-#error Can: Configuration file expected BSW module version to be 1.0.*
+#if !(((CAN_SW_MAJOR_VERSION == 1) && (CAN_SW_MINOR_VERSION == 0)) )\r
+#error Can: Configuration file expected BSW module version to be 1.0.*\r
 #endif
 
        \r
index 772eeb29713df47a29f6532e7ea28869dfb7c070..ace4934dbc793258d167ba16c4d0e85f1eb71e2e 100644 (file)
@@ -14,8 +14,8 @@
 */\r
 \r
 
-#if !(((COM_SW_MAJOR_VERSION == 1) && (COM_SW_MINOR_VERSION == 1)) )
-#error Com: Configuration file expected BSW module version to be 1.1.*
+#if !(((COM_SW_MAJOR_VERSION == 1) && (COM_SW_MINOR_VERSION == 1)) )\r
+#error Com: Configuration file expected BSW module version to be 1.1.*\r
 #endif
 
 \r
index 4c43103195415e45bf4207823ca73c8f34058fe5..8c2427d4a477c4f596e3e36b5b976006f843143f 100644 (file)
@@ -14,8 +14,8 @@
 */\r
 \r
 
-#if !(((COM_SW_MAJOR_VERSION == 1) && (COM_SW_MINOR_VERSION == 1)) )
-#error Com: Configuration file expected BSW module version to be 1.1.*
+#if !(((COM_SW_MAJOR_VERSION == 1) && (COM_SW_MINOR_VERSION == 1)) )\r
+#error Com: Configuration file expected BSW module version to be 1.1.*\r
 #endif
 
 #ifndef COM_PBCFG_H\r
index f38b5da0d067ef78b279b6de2b8300c6270e1622..c6557696103c47b223eb9bb733d35a5141c6c0c8 100644 (file)
@@ -14,8 +14,8 @@
 */\r
 \r
 
-#if !(((ECUM_SW_MAJOR_VERSION == 2) && (ECUM_SW_MINOR_VERSION == 0)) )
-#error EcuM: Configuration file expected BSW module version to be 2.0.*
+#if !(((ECUM_SW_MAJOR_VERSION == 2) && (ECUM_SW_MINOR_VERSION == 0)) )\r
+#error EcuM: Configuration file expected BSW module version to be 2.0.*\r
 #endif
 
 \r
index 7b7e0bb08986a8c11cebb7df4c22e00114ff507b..5466fc81d65c98567ae7df322db90bae129c618e 100644 (file)
@@ -14,8 +14,8 @@
 */\r
 \r
 
-#if !(((OS_SW_MAJOR_VERSION == 2) && (OS_SW_MINOR_VERSION == 0)) )
-#error Os: Configuration file expected BSW module version to be 2.0.*
+#if !(((OS_SW_MAJOR_VERSION == 2) && (OS_SW_MINOR_VERSION == 0)) )\r
+#error Os: Configuration file expected BSW module version to be 2.0.*\r
 #endif
 
 \r
index 772bcf43a28b6b098c6058a408388daf709159b3..90038acaf2ea5d4b152fad478621719a93f6bc2c 100644 (file)
@@ -14,8 +14,8 @@
 */\r
 \r
 
-#if !(((PDUR_SW_MAJOR_VERSION == 1) && (PDUR_SW_MINOR_VERSION == 0)) )
-#error PduR: Configuration file expected BSW module version to be 1.0.*
+#if !(((PDUR_SW_MAJOR_VERSION == 1) && (PDUR_SW_MINOR_VERSION == 0)) )\r
+#error PduR: Configuration file expected BSW module version to be 1.0.*\r
 #endif
 
 \r
index 32a29a9a84db7b3f2359568c4614d2b59d95feb1..ac4f3625cd8dddb07663f50def61b779f1a467ba 100644 (file)
@@ -14,8 +14,8 @@
 */\r
 \r
 
-#if !(((PDUR_SW_MAJOR_VERSION == 1) && (PDUR_SW_MINOR_VERSION == 0)) )
-#error PduR: Configuration file expected BSW module version to be 1.0.*
+#if !(((PDUR_SW_MAJOR_VERSION == 1) && (PDUR_SW_MINOR_VERSION == 0)) )\r
+#error PduR: Configuration file expected BSW module version to be 1.0.*\r
 #endif
 
 \r
index 0663b3ee607b1bf6847581eb211265e687009e96..2ff07099f45c0d17b205d51eba0621987f968877 100644 (file)
@@ -14,8 +14,8 @@
 */\r
 \r
 
-#if !(((PORT_SW_MAJOR_VERSION == 1) && (PORT_SW_MINOR_VERSION == 0)) )
-#error Port: Configuration file expected BSW module version to be 1.0.*
+#if !(((PORT_SW_MAJOR_VERSION == 1) && (PORT_SW_MINOR_VERSION == 0)) )\r
+#error Port: Configuration file expected BSW module version to be 1.0.*\r
 #endif
 
 \r
index 80a69e0a7caef62c2bcde94de3314400989c37cb..9692b1c6fe95cee7ab28d32054477cd4fb10843b 100644 (file)
@@ -255,7 +255,7 @@ typedef struct {
   /** Name of target indication services to target upper layers (PduRouter,\r
    *  CanNm, CanTp and ComplexDeviceDrivers). If parameter is 0 no call-out\r
    *  function is configured. */\r
-       CanIf_FuncTypeCanSpecial CanIfUserRxIndication;\r
+       void *CanIfUserRxIndication;\r
 \r
   /** The HRH to which Rx L-PDU belongs to, is referred through this\r
    *  parameter. */\r
index 9886a8e5623354c12d1e41328283366f4e30b6b7..dc42a87498e783c67f393d5608c1135646b1904f 100644 (file)
 uint8 Com_SendSignal(Com_SignalIdType SignalId, const void *SignalDataPtr);\r
 uint8 Com_ReceiveSignal(Com_SignalIdType SignalId, void* SignalDataPtr);\r
 \r
-Std_ReturnType Com_TriggerTransmit(PduIdType ComTxPduId, uint8 *SduPtr);\r
+Std_ReturnType Com_TriggerTransmit(PduIdType ComTxPduId, PduInfoType *PduInfoPtr);\r
 \r
 void Com_TriggerIPduSend(PduIdType ComTxPduId);\r
 \r
-void Com_RxIndication(PduIdType ComRxPduId, const uint8* SduPtr); // TODO: Parameter SduPtr should be const PduInfoType* PduInfoPtr\r
+void Com_RxIndication(PduIdType ComRxPduId, const PduInfoType* PduInfoPtr);\r
 void Com_TxConfirmation(PduIdType ComTxPduId);\r
 \r
 \r
index fc05ff420da2374254e53124fcfac2da9201106e..756973b90fc1533449d156d69f669480a2b90d11 100644 (file)
@@ -57,6 +57,7 @@
 #define MODULE_ID_IPDUM   (52) // IPDU Multiplexer\r
 #define MODULE_ID_DCM     (53) // Diagnostic Communication Manager\r
 #define MODULE_ID_DEM     (54) // Diagnostic Event Manager\r
+#define MODULE_ID_SOAD    (56) // Socket Adaptor\r
 \r
 #define MODULE_ID_CANIF   (60) // CAN Interface\r
 #define MODULE_ID_FRIF    (61) // Flexray interface\r
index be0871445736d0229fbbd682d4fe6dc90edc1365..b9825ed0d104281de48a88342c227d551d02470a 100644 (file)
@@ -23,7 +23,7 @@
 #ifndef PDUR_H\r
 #define PDUR_H\r
 \r
-#define PDUR_VENDOR_ID                 1\r
+#define PDUR_VENDOR_ID            1\r
 #define PDUR_AR_MAJOR_VERSION  2\r
 #define PDUR_AR_MINOR_VERSION  2\r
 #define PDUR_AR_PATCH_VERSION  2\r
@@ -48,6 +48,7 @@
 #include "PduR_Types.h"\r
 #include "PduR_PbCfg.h"\r
 \r
+#include "PduR_If.h"\r
 #include "PduR_Com.h"\r
 #include "PduR_CanIf.h"\r
 #include "PduR_LinIf.h"\r
@@ -68,31 +69,40 @@ extern const PduR_PBConfigType *PduRConfig;
  */\r
 extern PduR_StateType PduRState;\r
 \r
+#define PduR_IsUpModule(_mod) ((_mod > ARC_PDUR_UP_MODULES) && (_mod < ARC_PDUR_LOIF_MODULES))\r
+#define PduR_IsIfModule(_mod) ((_mod > ARC_PDUR_LOIF_MODULES) && (_mod < ARC_PDUR_LOTP_MODULES))\r
+#define PduR_IsTpModule(_mod) ((_mod > ARC_PDUR_LOTP_MODULES) && (_mod < ARC_PDUR_END_OF_MODULES))\r
+#define PduR_IsLoModule(_mod) (PduR_IsIfModule(_mod) || PduR_IsTpModule(_mod))\r
+\r
 \r
 #if (PDUR_DEV_ERROR_DETECT == STD_ON)\r
 \r
-#define PDUR_DET_REPORTERROR(_x,_y,_z,_q) Det_ReportError(_x,_y,_z,_q)\r
+#define PDUR_DET_REPORTERROR(_x,_y,_z,_o) Det_ReportError(_x,_y,_z,_o)\r
 \r
-// Define macro for state, parameter and data pointer checks.\r
-// TODO Implement data range check if needed.\r
-#define PduR_DevCheck(PduId,PduPtr,ApiId,...) \\r
+#define PDUR_VALIDATE_INITIALIZED(_api,...) \\r
        if ((PduRState == PDUR_UNINIT) || (PduRState == PDUR_REDUCED)) { \\r
-               PDUR_DET_REPORTERROR(MODULE_ID_PDUR, PDUR_INSTANCE_ID, ApiId, PDUR_E_INVALID_REQUEST); \\r
+               Det_ReportError(MODULE_ID_PDUR, PDUR_INSTANCE_ID, _api, PDUR_E_INVALID_REQUEST); \\r
                return __VA_ARGS__; \\r
-       } \\r
-       if ((PduPtr == 0) && (PDUR_DEV_ERROR_DETECT)) { \\r
-               PDUR_DET_REPORTERROR(MODULE_ID_PDUR, PDUR_INSTANCE_ID, ApiId, PDUR_E_DATA_PTR_INVALID); \\r
+       }\r
+\r
+#define PDUR_VALIDATE_PDUPTR(_api, _pduPtr, ...) \\r
+       if ((_pduPtr == NULL) && (PDUR_DEV_ERROR_DETECT)) { \\r
+               Det_ReportError(MODULE_ID_PDUR, PDUR_INSTANCE_ID, _api, PDUR_E_DATA_PTR_INVALID); \\r
                return __VA_ARGS__; \\r
-       } \\r
-       if ((PduId >= PduRConfig->PduRRoutingTable->NRoutingPaths) && PDUR_DEV_ERROR_DETECT) { \\r
-               PDUR_DET_REPORTERROR(MODULE_ID_PDUR, PDUR_INSTANCE_ID, ApiId, PDUR_E_PDU_ID_INVALID); \\r
+       }\r
+\r
+#define PDUR_VALIDATE_PDUID(_api, _pduId, ...) \\r
+       if ((_pduId >= PduRConfig->NRoutingPaths) && PDUR_DEV_ERROR_DETECT) { \\r
+               Det_ReportError(MODULE_ID_PDUR, PDUR_INSTANCE_ID, _api, PDUR_E_PDU_ID_INVALID); \\r
                return __VA_ARGS__; \\r
        }\r
 \r
 \r
 #else\r
-#define PDUR_DET_REPORTERROR(_x,_y,_z,_q)\r
-#define PduR_DevCheck(...)\r
+#define PDUR_DET_REPORTERROR(_x,_y,_z,_o)\r
+#define PDUR_VALIDATE_INITIALIZED(_api,...)\r
+#define PDUR_VALIDATE_PDUPTR(_api, _pduPtr, ...)\r
+#define PDUR_VALIDATE_PDUID(_api, _pduId, ...)\r
 \r
 #endif\r
 \r
@@ -127,12 +137,9 @@ void PduR_LoIfTriggerTransmit(PduIdType PduId, uint8* SduPtr);
 /*\r
  * Macros\r
  */\r
-#define setTxConfP(R) (R->PduRDestPdu.TxBufferRef->TxConfP = 1)\r
-#define clearTxConfP(R) (R->PduRDestPdu.TxBufferRef->TxConfP = 0)\r
+#define setTxConfP(_B) (_B->TxConfP = 1)\r
+#define clearTxConfP(_B) (_B->TxConfP = 0)\r
 \r
 #endif\r
 \r
-extern PduR_FctPtrType PduR_StdCanFctPtrs;\r
-extern PduR_FctPtrType PduR_StdLinFctPtrs;\r
-\r
 #endif /* PDUR_H */\r
index 3c3e96a057dbbcf0d2256db4d9084e410855dd46..c7d28dbb6623d0bdb87c3391bbad769b13599b18 100644 (file)
 \r
 #include "PduR.h"\r
 \r
-#if (PDUR_ZERO_COST_OPERATION == STD_OFF)\r
+#if PDUR_ZERO_COST_OPERATION == STD_OFF\r
 \r
-       void PduR_CanIfRxIndication (PduIdType CanRxPduId, const uint8 *CanSduPtr );\r
-       void PduR_CanIfTxConfirmation(PduIdType CanTxPduId);\r
-\r
-#else // Zero cost operation active\r
-\r
-       #if (PDUR_COM_SUPPORT == STD_ON)\r
-\r
-               #include "Com_Com.h"\r
-\r
-               #define PduR_CanIfRxIndication Com_RxIndication\r
-               #define PduR_CanIfTxConfirmation Com_TxConfirmation\r
-\r
-       #else\r
-\r
-               #define PduR_CanIfRxIndication(... )\r
-               #define PduR_CanIfTxConfirmation(...)\r
-\r
-       #endif\r
-\r
-#endif // Zero cost operation active\r
+void PduR_CanIfRxIndication(PduIdType CanRxPduId,const PduInfoType* PduInfoPtr);\r
+void PduR_CanIfTxConfirmation(PduIdType CanTxPduId);\r
 \r
+#endif\r
 \r
 #endif /* PDUR_CANIF_H_ */\r
index eadd6a26504ae0a8999ee41189c4ef45a2bdfd2b..8920f7bf39bc50e799075c3278e102a6e4726bb4 100644 (file)
 \r
 #include "PduR.h"\r
 \r
-#if (PDUR_ZERO_COST_OPERATION == STD_OFF)\r
+#if PDUR_ZERO_COST_OPERATION == STD_OFF\r
 \r
-               BufReq_ReturnType PduR_CanTpProvideRxBuffer(PduIdType CanTpRxPduId, PduLengthType TpSduLength, PduInfoType** PduInfoPtr);\r
-               void PduR_CanTpRxIndication(PduIdType CanTpRxPduId, NotifResultType Result);\r
-               BufReq_ReturnType PduR_CanTpProvideTxBuffer(PduIdType CanTpTxPduId, PduInfoType** PduInfoPtr, uint16 Length);\r
-               void PduR_CanTpTxConfirmation(PduIdType CanTpTxPduId, NotifResultType Result);\r
+BufReq_ReturnType PduR_CanTpProvideRxBuffer(PduIdType CanTpRxPduId, PduLengthType TpSduLength, PduInfoType** PduInfoPtr);\r
+void PduR_CanTpRxIndication(PduIdType CanTpRxPduId, NotifResultType Result);\r
+BufReq_ReturnType PduR_CanTpProvideTxBuffer(PduIdType CanTpTxPduId, PduInfoType** PduInfoPtr, uint16 Length);\r
+void PduR_CanTpTxConfirmation(PduIdType CanTpTxPduId, NotifResultType Result);\r
 \r
-#else // Zero cost operation active\r
-\r
-       #if (PDUR_DCM_SUPPORT == STD_ON)\r
-\r
-               #include "Dcm_Cbk.h"\r
-\r
-               #define PduR_CanTpProvideRxBuffer Dcm_ProvideRxBuffer\r
-               #define PduR_CanTpRxIndication Dcm_RxIndication\r
-               #define PduR_CanTpProvideTxBuffer Dcm_ProvideTxBuffer\r
-               #define PduR_CanTpTxConfirmation Dcm_TxConfirmation\r
-\r
-       #else\r
-\r
-               #define PduR_CanTpProvideRxBuffer(...)\r
-               #define PduR_CanTpRxIndication(...)\r
-               #define PduR_CanTpProvideTxBuffer(...)\r
-               #define PduR_CanTpTxConfirmation(...)\r
-\r
-       #endif\r
-\r
-#endif // Zero cost operation active\r
+#endif\r
 \r
 #endif /* PDUR_CANTP_H_ */\r
index 9e234567dc22eb8ff88cab01f7976288f5d59df7..11481ac9ceb1edc9123dfe072bb548e62a43e402 100644 (file)
 \r
 #include "PduR.h"\r
 \r
-#if (PDUR_ZERO_COST_OPERATION == STD_OFF)\r
+#if PDUR_ZERO_COST_OPERATION == STD_OFF\r
 \r
-               Std_ReturnType PduR_ComTransmit(PduIdType ComTxPduId, const PduInfoType* PduInfoPtr);\r
+Std_ReturnType PduR_ComTransmit(PduIdType ComTxPduId, const PduInfoType* PduInfoPtr);\r
 \r
-#else // Zero cost operation active\r
-\r
-       #if (PDUR_CANIF_SUPPORT == STD_ON)\r
-\r
-               #include "CanIf.h"\r
-\r
-               #define PduR_ComTransmit CanIf_Transmit\r
-\r
-       #else\r
-\r
-               #define PduR_ComTransmit(... )  (E_OK)\r
-\r
-       #endif\r
-\r
-#endif // Zero cost operation active\r
+#endif\r
 \r
 #endif /* PDUR_COM_H_ */\r
index 309692a8482717a785ab1665d02228f1a1864167..6e2b14b91bc1d3bd093a24bbd2e188175be9a20a 100644 (file)
 \r
 #include "PduR.h"\r
 \r
-#if (PDUR_ZERO_COST_OPERATION == STD_OFF)\r
+#if PDUR_ZERO_COST_OPERATION == STD_OFF\r
 \r
-               Std_ReturnType PduR_DcmTransmit(PduIdType DcmTxPduId, const PduInfoType* PduInfoPtr);\r
-\r
-#else // Zero cost operation active\r
-\r
-       #if (PDUR_CANTP_SUPPORT == STD_ON)\r
-\r
-               #include "CanTp.h"\r
-\r
-               #define PduR_DcmTransmit CanTp_Transmit\r
-\r
-       #else\r
-\r
-               #define PduR_DcmTransmit(... )          E_OK\r
-\r
-       #endif\r
-\r
-#endif // Zero cost operation active\r
+Std_ReturnType PduR_DcmTransmit(PduIdType DcmTxPduId, const PduInfoType* PduInfoPtr);\r
 \r
+#endif\r
 \r
 #endif /*PDUR_DCM_H_*/\r
 \r
index a9ea05b59d239d8b14929fa06d025d70b9bf3843..a6f9d10ffb8e2f808162605bec688e667c0f0219 100644 (file)
 \r
 \r
 \r
-\r
-\r
-\r
-\r
 #ifndef PDUR_IF_H_\r
 #define PDUR_IF_H_\r
 \r
 #include "PduR.h"\r
 #include "Det.h"\r
 \r
-void PduR_LoIfRxIndication(PduIdType PduId, const uint8* SduPtr);\r
-void PduR_LoIfTxConfirmation(PduIdType PduId);\r
-void PduR_LoIfTriggerTransmit(PduIdType PduId, uint8* SduPtr);\r
+#if PDUR_ZERO_COST_OPERATION == STD_OFF\r
+\r
+Std_ReturnType PduR_ARC_RouteTransmit(const PduRDestPdu_type * destination, const PduInfoType * PduInfo);\r
+void PduR_ARC_RouteRxIndication(const PduRDestPdu_type * destination, const PduInfoType *PduInfo);\r
+void PduR_ARC_RouteTxConfirmation(const PduRRoutingPath_type *route, uint8 result);\r
+Std_ReturnType PduR_ARC_RouteTriggerTransmit(const PduRRoutingPath_type *route, PduInfoType * PduInfo);\r
+BufReq_ReturnType PduR_ARC_RouteProvideRxBuffer(const PduRDestPdu_type * destination, PduLengthType TpSduLength, PduInfoType** PduInfoPtr);\r
+BufReq_ReturnType PduR_ARC_RouteProvideTxBuffer(const PduRRoutingPath_type *route, PduLengthType TpSduLength, PduInfoType** PduInfoPtr);\r
+\r
+\r
+Std_ReturnType PduR_ARC_Transmit(PduIdType PduId, const PduInfoType* PduInfo, uint8 serviceId);\r
+void PduR_ARC_RxIndication(PduIdType PduId, const PduInfoType* PduInfo, uint8 serviceId);\r
+void PduR_ARC_TxConfirmation(PduIdType PduId, uint8 result, uint8 serviceId);\r
+Std_ReturnType PduR_ARC_TriggerTransmit(PduIdType PduId, PduInfoType* PduInfo, uint8 serviceId);\r
+BufReq_ReturnType PduR_ARC_ProvideRxBuffer(PduIdType PduId, PduLengthType TpSduLength, PduInfoType** PduInfoPtr, uint8 serviceId);\r
+BufReq_ReturnType PduR_ARC_ProvideTxBuffer(PduIdType PduId, PduInfoType** PduInfoPtr, uint16 Length, uint8 serviceId);\r
+\r
+#endif\r
 \r
 #endif /* PDUR_IF_H_ */\r
index d07fca9e456d86fa4fda0e75c6b4fe253cc8be8c..181e571662159fb1b48aa733e11cefb79f778761 100644 (file)
 \r
 #include "PduR.h"\r
 \r
-#if (PDUR_ZERO_COST_OPERATION == STD_OFF)\r
+#if PDUR_ZERO_COST_OPERATION == STD_OFF\r
 \r
-       void PduR_LinIfRxIndication(PduIdType LinRxPduId,const uint8* LinSduPtr);\r
-       void PduR_LinIfTxConfirmation(PduIdType LinTxPduId);\r
-       void PduR_LinIfTriggerTransmit(PduIdType LinTxPduId,uint8* LinSduPtr);\r
+void PduR_LinIfRxIndication(PduIdType LinRxPduId,const PduInfoType* PduInfoPtr);\r
+void PduR_LinIfTxConfirmation(PduIdType LinTxPduId);\r
+Std_ReturnType PduR_LinIfTriggerTransmit(PduIdType LinTxPduId,PduInfoType* PduInfoPtr);\r
 \r
-#else // Zero cost operation active\r
-\r
-       #if (PDUR_LINIF_SUPPORT == STD_ON)\r
-\r
-               #define PduR_LinIfRxIndication Com_RxIndication\r
-               #define PduR_LinIfTxConfirmation Com_TxConfirmation\r
-               #define PduR_LinIfTriggerTransmit Com_TriggerTransmit\r
-\r
-       #else\r
-\r
-               #define PduR_LinIfRxIndication(...)\r
-               #define PduR_LinIfTxConfirmation(...)\r
-               #define PduR_LinIfTriggerTransmit(...)\r
-\r
-       #endif\r
-\r
-#endif // Zero cost operation active\r
+#endif\r
 \r
 #endif /*PDUR_LINIF_H_*/\r
index 515c50640bdb949199b23e5a304ccb254a55fc2d..5f15bbec3992d44bf30019b0f6dd9e44ceab147e 100644 (file)
 \r
 #include "ComStack_Types.h"\r
 \r
+typedef enum {\r
+       ARC_PDUR_UP_MODULES = 0,\r
+       ARC_PDUR_COM,\r
+       ARC_PDUR_DCM,\r
+\r
+       ARC_PDUR_LOIF_MODULES,\r
+       ARC_PDUR_CANIF,\r
+       ARC_PDUR_LINIF,\r
+       ARC_PDUR_SOADIF,\r
+\r
+       ARC_PDUR_LOTP_MODULES,\r
+       ARC_PDUR_CANTP,\r
+       ARC_PDUR_LINTP,\r
+       ARC_PDUR_SOADTP,\r
+       ARC_PDUR_SOAD,\r
+\r
+       ARC_PDUR_END_OF_MODULES\r
+\r
+} ARC_PduR_ModuleType;\r
+\r
 /** PduR_StateType defines the states of which the PDU router can be in */\r
 typedef enum {\r
        PDUR_UNINIT, /**< PDU Router is not initialized. */\r
@@ -46,32 +66,9 @@ typedef enum {
        PDUR_DIRECT /**< Data provision type. */\r
 } PduR_DataProvisionType;\r
 \r
-\r
-\r
-\r
-/* ################ NEW DEFINITIONS ################### */\r
+/*\r
 typedef struct {\r
-       Std_ReturnType (*TargetIndicationFctPtr)(PduIdType pduId, const uint8* data); /**< Pointer to target function in layer above PDU router. */\r
-       Std_ReturnType (*TargetTransmitFctPtr)(PduIdType pduId, const PduInfoType* pduInfo); /**< Pointer to target function below PDU router. */\r
-\r
-\r
-       void (*TargetConfirmationFctPtr)(PduIdType pduId);\r
-\r
-       /**\r
-        * Target function for trigger transmit requests from the interface modules, e.g. Com_TriggerTransmit. Only\r
-        * needed if gateway mode is not used, that is, if .DataProvision is set to PDUR_NO_PROVISION.\r
-        */\r
-       Std_ReturnType (*TargetTriggerTransmitFctPtr)(PduIdType pduId, uint8* data);\r
-\r
 \r
-       Std_ReturnType (*TargetGatewayFctPtr)(PduIdType pduId, const PduInfoType* pduInfo);\r
-\r
-} PduR_FctPtrType;\r
-\r
-typedef struct {\r
-       /*\r
-        * Not part of autosar standard. Added by ArcCore.\r
-        */\r
        uint16 BufferId;\r
        PduR_DataProvisionType BufferType;\r
        //uint8 SduLength;\r
@@ -82,61 +79,48 @@ typedef struct {
        // uint8 TxIdx; // This is the same as First, hence left out.\r
        uint8 *Buffer;\r
 \r
-       /**\r
-        * Depth of buffer\r
-        */\r
+\r
        uint8 Depth;\r
 \r
-       /**\r
-        * Length of buffer\r
-        */\r
        uint8 Length;\r
 \r
 } PduRTxBuffer_type;\r
+*/\r
+typedef uint8 *PduRTxBuffer_type;\r
 \r
-typedef struct {\r
-       /**\r
-        * The maximum numbers of Tx buffers.\r
-        */\r
-       uint16 PduRMaxTxBufferNumber; // ???\r
-\r
-       PduRTxBuffer_type PduRTxBuffer[];\r
-} PduRTxBufferTable_type;\r
+typedef enum {\r
+       PDUR_BUFFER_FREE = 0,\r
+       PDUR_BUFFER_RX_BUSY,\r
+       PDUR_BUFFER_TX_READY,\r
+       PDUR_BUFFER_TX_BUSY\r
+} PduRTpBufferStatus_type;\r
 \r
 typedef struct {\r
-       /**\r
-        * PDU identifier assigned by the PDU router.\r
-        */\r
-       uint16 SrcPduId;\r
-\r
-       /**\r
-        * Reference to unique PDU identifier.\r
-        */\r
-       // SrcPduRef\r
-\r
-} PduRSrcPdu_type;\r
+       PduInfoType *pduInfoPtr;\r
+       PduRTpBufferStatus_type status;\r
+} PduRTpBufferInfo_type;\r
 \r
 typedef struct {\r
 \r
        /**\r
         * Data provision mode for this PDU.\r
         */\r
-       PduR_DataProvisionType DataProvision;\r
+       const PduR_DataProvisionType DataProvision;\r
 \r
        /**\r
         * Reference to unique PDU identifier which shall\r
         * be used by the PDU router instead of the source identifier.\r
         */\r
-       //DestPduRef\r
-       // For the moment replaced by this\r
-       uint16 DestPduId;\r
+       const uint16 DestPduId;\r
 \r
        /**\r
         * Reference to the assigned Tx buffer.\r
         *\r
         * Comment: Only required for non-TP gateway PDUs.\r
         */\r
-       PduRTxBuffer_type *TxBufferRef;\r
+       PduRTxBuffer_type * const TxBufferRef;\r
+\r
+       const ARC_PduR_ModuleType DestModule;\r
 \r
 } PduRDestPdu_type;\r
 \r
@@ -152,19 +136,12 @@ typedef struct {
 } PduRDefaultValue_type;\r
 \r
 typedef struct {\r
-       /**\r
-        * Not part of standard\r
-        */\r
-       PduR_FctPtrType FctPtrs;\r
-       uint8 PduR_Arc_EOL;\r
-       uint8 PduR_GatewayMode;\r
-\r
        /**\r
         * Length of PDU data.\r
         *\r
         * Comment: Only required if a TX buffer is configured.\r
         */\r
-       uint8 SduLength;\r
+       const uint8 SduLength;\r
 \r
        /**\r
         * Chunk size for routing on the fly.\r
@@ -181,32 +158,21 @@ typedef struct {
        PduRDefaultValue_type PduRDefaultValue;\r
 \r
        /**\r
-        * Specifies the source of the PDU to be routed.\r
+        * Specifies the source ID of the PDU to be routed.\r
         */\r
-       PduRSrcPdu_type PduRSrcPdu;\r
+       const uint16 SrcPduId;\r
 \r
        /**\r
-        * Specifies the destination(s) of the PDU to be routed.\r
-        *\r
-        * Comment: Multicast (many destinations) is not supported in this implementation.\r
-        */\r
-       PduRDestPdu_type PduRDestPdu;\r
-\r
-} PduRRoutingPath_type;\r
-\r
-typedef struct {\r
-       /*\r
-        * Non-standards\r
+        * Specifies the source module for this route.
         */\r
-       uint16 NRoutingPaths;\r
+       const ARC_PduR_ModuleType SrcModule;\r
 \r
        /**\r
-        * References to the routing paths defined for this configuration.\r
+        * Specifies the destination(s) of the PDU to be routed.\r
         */\r
-       PduRRoutingPath_type PduRRoutingPath[];\r
-\r
-} PduRRoutingTable_type;\r
+       const PduRDestPdu_type * const *PduRDestPdus;\r
 \r
+} PduRRoutingPath_type;\r
 \r
 typedef struct {\r
        /**\r
@@ -214,23 +180,15 @@ typedef struct {
         */\r
        uint8 PduRConfigurationId;\r
 \r
-       /**\r
-        * The routing table of this PDU router configuration.\r
-        */\r
-       PduRRoutingTable_type *PduRRoutingTable;\r
-\r
+       uint8 NRoutingPaths;\r
 \r
        /**\r
-        * The buffers used for TP gateway operation.\r
-        *\r
-        * Comment: Not implemented in this version.\r
+        * The routing table of this PDU router configuration.\r
         */\r
-       //PduRTpBufferTable_type PduRTpBufferTable;\r
+       const PduRRoutingPath_type * const*RoutingPaths;\r
 \r
-       /**\r
-        * The buffers used for non-TP gateway operation.\r
-        */\r
-       PduRTxBufferTable_type *PduRTxBufferTable;\r
+       PduRTpBufferInfo_type *TpBuffers;\r
+       PduRTpBufferInfo_type **TpRouteBuffers;\r
 \r
 } PduR_PBConfigType;\r
 \r