Add MCAL Src

This commit is contained in:
2025-10-01 19:27:26 +09:00
parent a6fcd09d1e
commit 38fbe9c9b2
1456 changed files with 1451886 additions and 0 deletions

View File

@@ -0,0 +1,120 @@
/*============================================================================*/
/* Project = AUTOSAR Renesas CPF MCAL Components */
/* Module = ComStack_Cfg.h */
/* SW-VERSION = 1.0.0 */
/*============================================================================*/
/* COPYRIGHT */
/*============================================================================*/
/* Copyright(c) 2021 Renesas Electronics Corporation. */
/*============================================================================*/
/* Purpose: */
/* Provision for Communication Stack dependent types */
/* */
/*============================================================================*/
/* */
/* Unless otherwise agreed upon in writing between your company and */
/* Renesas Electronics Corporation the following shall apply! */
/* */
/* Warranty Disclaimer */
/* */
/* There is no warranty of any kind whatsoever granted by Renesas. Any */
/* warranty is expressly disclaimed and excluded by Renesas, either expressed */
/* or implied, including but not limited to those for non-infringement of */
/* intellectual property, merchantability and/or fitness for the particular */
/* purpose. */
/* */
/* Renesas shall not have any obligation to maintain, service or provide bug */
/* fixes for the supplied Product(s) and/or the Application. */
/* */
/* Each User is solely responsible for determining the appropriateness of */
/* using the Product(s) and assumes all risks associated with its exercise */
/* of rights under this Agreement, including, but not limited to the risks */
/* and costs of program errors, compliance with applicable laws, damage to */
/* or loss of data, programs or equipment, and unavailability or */
/* interruption of operations. */
/* */
/* Limitation of Liability */
/* */
/* In no event shall Renesas be liable to the User for any incidental, */
/* consequential, indirect, or punitive damage (including but not limited */
/* to lost profits) regardless of whether such liability is based on breach */
/* of contract, tort, strict liability, breach of warranties, failure of */
/* essential purpose or otherwise and even if advised of the possibility of */
/* such damages. Renesas shall not be liable for any services or products */
/* provided by third party vendors, developers or consultants identified or */
/* referred to the User by Renesas in connection with the Product(s) and/or */
/* the Application. */
/* */
/*============================================================================*/
/* Environment: */
/* Devices: CPF */
/*============================================================================*/
/*******************************************************************************
** Deviation **
*******************************************************************************/
/*
* [SWS_COMTYPE_00029]
* Normally, this file should be generated by generator.
* However, as Renesas MCAL, this file shall be created as fixed file.
*/
/*******************************************************************************
** Revision Control History **
*******************************************************************************/
/*
* 1.0.0: 20/08/2021 : Initial Version
*/
/******************************************************************************/
#ifndef COMSTACK_CFG_H
#define COMSTACK_CFG_H
/*******************************************************************************
** Include Section **
*******************************************************************************/
/*******************************************************************************
** Version Information **
*******************************************************************************/
/*
* AUTOSAR specification version information
*/
#define COMSTACK_CFG_AR_RELEASE_MAJOR_VERSION 4
#define COMSTACK_CFG_AR_RELEASE_MINOR_VERSION 5
#define COMSTACK_CFG_AR_RELEASE_REVISION_VERSION 0
/*
* File version information
*/
#define COMSTACK_CFG_SW_MAJOR_VERSION 1
#define COMSTACK_CFG_SW_MINOR_VERSION 0
#define COMSTACK_CFG_SW_PATCH_VERSION 0
/*******************************************************************************
** Global Symbols **
*******************************************************************************/
/*******************************************************************************
** Global Data Types (ECU dependent) **
*******************************************************************************/
/* SWS_COMTYPE_00005 */
typedef uint8 PduIdType; /* Type of PDU ID.
Allowed ranges: uint8 .. uint16 */
/* SWS_COMTYPE_00008 */
typedef uint16 PduLengthType; /* Type of PDU Length.
Allowed ranges: uint8 .. uint32 */
/*******************************************************************************
** Function Prototypes **
*******************************************************************************/
#endif /* COMSTACK_CFG_H */
/*******************************************************************************
** End of File **
*******************************************************************************/

View File

@@ -0,0 +1,168 @@
/*============================================================================*/
/* Project = AUTOSAR Renesas CPF MCAL Components */
/* Module = ComStack_Types.h */
/* SW-VERSION = 1.0.0 */
/*============================================================================*/
/* COPYRIGHT */
/*============================================================================*/
/* Copyright(c) 2021 Renesas Electronics Corporation. */
/*============================================================================*/
/* Purpose: */
/* Provision for Communication Stack dependent types */
/* */
/*============================================================================*/
/* */
/* Unless otherwise agreed upon in writing between your company and */
/* Renesas Electronics Corporation the following shall apply! */
/* */
/* Warranty Disclaimer */
/* */
/* There is no warranty of any kind whatsoever granted by Renesas. Any */
/* warranty is expressly disclaimed and excluded by Renesas, either expressed */
/* or implied, including but not limited to those for non-infringement of */
/* intellectual property, merchantability and/or fitness for the particular */
/* purpose. */
/* */
/* Renesas shall not have any obligation to maintain, service or provide bug */
/* fixes for the supplied Product(s) and/or the Application. */
/* */
/* Each User is solely responsible for determining the appropriateness of */
/* using the Product(s) and assumes all risks associated with its exercise */
/* of rights under this Agreement, including, but not limited to the risks */
/* and costs of program errors, compliance with applicable laws, damage to */
/* or loss of data, programs or equipment, and unavailability or */
/* interruption of operations. */
/* */
/* Limitation of Liability */
/* */
/* In no event shall Renesas be liable to the User for any incidental, */
/* consequential, indirect, or punitive damage (including but not limited */
/* to lost profits) regardless of whether such liability is based on breach */
/* of contract, tort, strict liability, breach of warranties, failure of */
/* essential purpose or otherwise and even if advised of the possibility of */
/* such damages. Renesas shall not be liable for any services or products */
/* provided by third party vendors, developers or consultants identified or */
/* referred to the User by Renesas in connection with the Product(s) and/or */
/* the Application. */
/* */
/*============================================================================*/
/* Environment: */
/* Devices: CPF */
/*============================================================================*/
/*******************************************************************************
** Revision Control History **
*******************************************************************************/
/*
* 1.0.0: 20/08/2021 : Initial Version
*/
/******************************************************************************/
#ifndef COMSTACK_TYPES_H
#define COMSTACK_TYPES_H
/*******************************************************************************
** Include Section **
*******************************************************************************/
#include "Std_Types.h" /* Standard AUTOSAR types */
#include "ComStack_Cfg.h" /* Definition of PduIdType and PduLengthType */
/*******************************************************************************
** Version Information **
*******************************************************************************/
/*
* AUTOSAR specification version information
*/
#define COMSTACK_TYPES_AR_RELEASE_MAJOR_VERSION 4
#define COMSTACK_TYPES_AR_RELEASE_MINOR_VERSION 5
#define COMSTACK_TYPES_AR_RELEASE_REVISION_VERSION 0
/*
* File version information
*/
#define COMSTACK_TYPES_SW_MAJOR_VERSION 1
#define COMSTACK_TYPES_SW_MINOR_VERSION 0
#define COMSTACK_TYPES_SW_PATCH_VERSION 0
/*******************************************************************************
** Global Symbols **
*******************************************************************************/
/*******************************************************************************
** Global Data Types (ECU dependent) **
*******************************************************************************/
/* SWS_COMTYPE_00036 */
typedef uint8 PNCHandleType;
/* SWS_COMTYPE_00020 */
typedef uint8 BusTrcvErrorType;
/* SWS_COMTYPE_00038 */
typedef uint8 NetworkHandleType;
/* SWS_COMTYPE_00039 */
typedef uint8 IcomConfigIdType;
/*******************************************************************************
** Global Data Types (ECU independent) **
*******************************************************************************/
/* SWS_COMTYPE_00011 */
typedef struct
{
P2VAR(uint8, AUTOMATIC, AUTOSAR_COMSTACKDATA) SduDataPtr;
P2VAR(uint8, AUTOMATIC, AUTOSAR_COMSTACKDATA) MetaDataPtr;
PduLengthType SduLength;
} PduInfoType; /* Basic information about a PDU of any type */
/* SWS_COMTYPE_00031 */
typedef enum
{
TP_STMIN,
TP_BS,
TP_BC
} TPParameterType; /* Specify parameter to which value has to be changed */
/* SWS_COMTYPE_00012 */
typedef enum
{
BUFREQ_OK,
BUFREQ_E_NOT_OK,
BUFREQ_E_BUSY,
BUFREQ_E_OVFL
} BufReq_ReturnType; /* result of a buffer request */
/* SWS_COMTYPE_00027 */
typedef enum
{
TP_DATACONF,
TP_DATARETRY,
TP_CONFPENDING
} TpDataStateType; /* Variables of this type shall be used to store the */
/* state of TP buffer */
/* SWS_COMTYPE_00037 */
typedef struct
{
TpDataStateType TpDataState;
PduLengthType TxTpDataCnt;
} RetryInfoType; /* Variables of this type shall be used to store the */
/* information about Tp buffer handling. */
/* SWS_COMTYPE_00040 */
typedef enum
{
ICOM_SWITCH_E_OK,
ICOM_SWITCH_E_FAILED
} IcomSwitch_ErrorType; /* The errors which can occur when activating */
/* or deactivating Pretended Networking. */
/*******************************************************************************
** Function Prototypes **
*******************************************************************************/
#endif /* COMSTACK_TYPES_H */
/*******************************************************************************
** End of File **
*******************************************************************************/

View File

@@ -0,0 +1,138 @@
/*============================================================================*/
/* Project = AUTOSAR Renesas CPF MCAL Components */
/* Module = Std_Types.h */
/* SW-VERSION = 1.0.0 */
/*============================================================================*/
/* COPYRIGHT */
/*============================================================================*/
/* Copyright(c) 2021 Renesas Electronics Corporation. */
/*============================================================================*/
/* Purpose: */
/* Provision for Standard types */
/* */
/*============================================================================*/
/* */
/* Unless otherwise agreed upon in writing between your company and */
/* Renesas Electronics Corporation the following shall apply! */
/* */
/* Warranty Disclaimer */
/* */
/* There is no warranty of any kind whatsoever granted by Renesas. Any */
/* warranty is expressly disclaimed and excluded by Renesas, either expressed */
/* or implied, including but not limited to those for non-infringement of */
/* intellectual property, merchantability and/or fitness for the particular */
/* purpose. */
/* */
/* Renesas shall not have any obligation to maintain, service or provide bug */
/* fixes for the supplied Product(s) and/or the Application. */
/* */
/* Each User is solely responsible for determining the appropriateness of */
/* using the Product(s) and assumes all risks associated with its exercise */
/* of rights under this Agreement, including, but not limited to the risks */
/* and costs of program errors, compliance with applicable laws, damage to */
/* or loss of data, programs or equipment, and unavailability or */
/* interruption of operations. */
/* */
/* Limitation of Liability */
/* */
/* In no event shall Renesas be liable to the User for any incidental, */
/* consequential, indirect, or punitive damage (including but not limited */
/* to lost profits) regardless of whether such liability is based on breach */
/* of contract, tort, strict liability, breach of warranties, failure of */
/* essential purpose or otherwise and even if advised of the possibility of */
/* such damages. Renesas shall not be liable for any services or products */
/* provided by third party vendors, developers or consultants identified or */
/* referred to the User by Renesas in connection with the Product(s) and/or */
/* the Application. */
/* */
/*============================================================================*/
/* Environment: */
/* Devices: CPF */
/*============================================================================*/
/*******************************************************************************
** Revision Control History **
*******************************************************************************/
/*
* 1.0.0: 20/08/2021 : Initial Version
*/
/******************************************************************************/
#ifndef STD_TYPES_H
#define STD_TYPES_H
/*******************************************************************************
** Include Section **
*******************************************************************************/
#include "Compiler.h" /* mapping compiler specific keywords */
#include "Platform_Types.h" /* platform specific type definitions */
/*******************************************************************************
** Version Information **
*******************************************************************************/
/*
* AUTOSAR specification version information
*/
#define STD_TYPES_AR_RELEASE_MAJOR_VERSION 4
#define STD_TYPES_AR_RELEASE_MINOR_VERSION 5
#define STD_TYPES_AR_RELEASE_REVISION_VERSION 0
/*
* File version information
*/
#define STD_TYPES_SW_MAJOR_VERSION 1
#define STD_TYPES_SW_MINOR_VERSION 0
#define STD_TYPES_SW_PATCH_VERSION 0
/*******************************************************************************
** Global Symbols **
*******************************************************************************/
/*******************************************************************************
** Global Data Types **
*******************************************************************************/
/* for OSEK compliance this typedef has been added (SWS_Std_00006) */
#ifndef STATUSTYPEDEFINED
#define STATUSTYPEDEFINED
#define E_OK 0x00u
typedef unsigned char StatusType;
#endif
#define E_NOT_OK 0x01u
/* SWS_Std_00005 */
/* Std_ReturnType shall normally be used with value E_OK or E_NOT_OK. */
typedef uint8 Std_ReturnType;
typedef struct
{
uint16 vendorID;
uint16 moduleID;
uint8 sw_major_version;
uint8 sw_minor_version;
uint8 sw_patch_version;
} Std_VersionInfoType; /* SWS_Std_00015 */
/* SWS_Std_00007 */
#define STD_HIGH 0x01u /* Physical state 5V or 3.3V */
#define STD_LOW 0x00u /* Physical state 0V */
/* SWS_Std_00013 */
#define STD_ACTIVE 0x01u /* Logical state active */
#define STD_IDLE 0x00u /* Logical state idle */
/* SWS_Std_00010 */
#define STD_ON 0x01u
#define STD_OFF 0x00u
/*******************************************************************************
** Function Prototypes **
*******************************************************************************/
#endif /* STD_TYPES_H */
/*******************************************************************************
** End of File **
*******************************************************************************/

View File

@@ -0,0 +1,9 @@
#######################################################################
# REGISTRY
#
CC_INCLUDE_PATH += $(PROJECT_ROOT)\common\include\$(AUTOSAR_VERSION)
CPP_INCLUDE_PATH +=
ASM_INCLUDE_PATH +=
PREPROCESSOR_DEFINES +=
#######################################################################

View File

@@ -0,0 +1,863 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<AUTOSAR xmlns="http://autosar.org/schema/r4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://autosar.org/schema/r4.0 AUTOSAR_00049.xsd">
<AR-PACKAGES>
<AR-PACKAGE>
<SHORT-NAME>ActiveEcuC</SHORT-NAME>
<ELEMENTS>
<ECUC-MODULE-CONFIGURATION-VALUES UUID="f6be1405-7d57-4412-9d47-8f365ad1e86f">
<SHORT-NAME>Gpt</SHORT-NAME>
<ADMIN-DATA>
<SDGS>
<SDG GID="DV:CfgPostBuild">
<SD GID="DV:postBuildVariantSupport">false</SD>
</SDG>
</SDGS>
</ADMIN-DATA>
<DEFINITION-REF DEST="ECUC-MODULE-DEF">/Renesas/EcucDefs_Gpt/Gpt</DEFINITION-REF>
<IMPLEMENTATION-CONFIG-VARIANT>VARIANT-POST-BUILD</IMPLEMENTATION-CONFIG-VARIANT>
<MODULE-DESCRIPTION-REF DEST="BSW-IMPLEMENTATION">/Renesas/BswModuleDescriptions_Gpt/Gpt_Impl</MODULE-DESCRIPTION-REF>
<CONTAINERS>
<ECUC-CONTAINER-VALUE UUID="a429819b-a1c3-4982-988c-2c78df0aa88e">
<SHORT-NAME>GptDriverConfiguration</SHORT-NAME>
<DEFINITION-REF DEST="ECUC-PARAM-CONF-CONTAINER-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptDriverConfiguration</DEFINITION-REF>
<PARAMETER-VALUES>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-BOOLEAN-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptDriverConfiguration/GptDevErrorDetect</DEFINITION-REF>
<VALUE>true</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-BOOLEAN-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptDriverConfiguration/GptReportWakeupSource</DEFINITION-REF>
<VALUE>true</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-BOOLEAN-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptDriverConfiguration/GptAlreadyInitDetCheck</DEFINITION-REF>
<VALUE>true</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-BOOLEAN-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptDriverConfiguration/GptClearPendingInterrupts</DEFINITION-REF>
<VALUE>false</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-BOOLEAN-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptDriverConfiguration/GptCriticalSectionProtection</DEFINITION-REF>
<VALUE>true</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptDriverConfiguration/GptDeviceName</DEFINITION-REF>
<VALUE>V4H</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-BOOLEAN-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptDriverConfiguration/GptVersionCheckExternalModules</DEFINITION-REF>
<VALUE>true</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-BOOLEAN-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptDriverConfiguration/GptPredefTimer100us32bitEnable</DEFINITION-REF>
<VALUE>false</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptDriverConfiguration/GptPredefTimer1usEnablingGrade</DEFINITION-REF>
<VALUE>GPT_PREDEF_TIMER_1US_DISABLED</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
</PARAMETER-VALUES>
<SUB-CONTAINERS>
<ECUC-CONTAINER-VALUE UUID="1cd7cf44-104a-418f-9a8f-5f1329933a50">
<SHORT-NAME>GptClockReferencePoint</SHORT-NAME>
<DEFINITION-REF DEST="ECUC-PARAM-CONF-CONTAINER-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptDriverConfiguration/GptClockReferencePoint</DEFINITION-REF>
<REFERENCE-VALUES>
<ECUC-REFERENCE-VALUE>
<DEFINITION-REF DEST="ECUC-REFERENCE-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptDriverConfiguration/GptClockReferencePoint/GptClockReference</DEFINITION-REF>
<VALUE-REF DEST="AR-ELEMENT">/ActiveEcuC/Mcu/McuModuleConfiguration/McuClockSettingConfig/McuClockReferencePoint</VALUE-REF>
</ECUC-REFERENCE-VALUE>
</REFERENCE-VALUES>
</ECUC-CONTAINER-VALUE>
</SUB-CONTAINERS>
</ECUC-CONTAINER-VALUE>
<ECUC-CONTAINER-VALUE UUID="d18889c6-4b72-4c2d-8196-dcda685e820c">
<SHORT-NAME>GptConfigurationOfOptApiServices</SHORT-NAME>
<DEFINITION-REF DEST="ECUC-PARAM-CONF-CONTAINER-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptConfigurationOfOptApiServices</DEFINITION-REF>
<PARAMETER-VALUES>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-BOOLEAN-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptConfigurationOfOptApiServices/GptDeinitApi</DEFINITION-REF>
<VALUE>true</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-BOOLEAN-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptConfigurationOfOptApiServices/GptEnableDisableNotificationApi</DEFINITION-REF>
<VALUE>true</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-BOOLEAN-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptConfigurationOfOptApiServices/GptVersionInfoApi</DEFINITION-REF>
<VALUE>true</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-BOOLEAN-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptConfigurationOfOptApiServices/GptWakeupFunctionalityApi</DEFINITION-REF>
<VALUE>true</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-BOOLEAN-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptConfigurationOfOptApiServices/GptTimeRemainingApi</DEFINITION-REF>
<VALUE>true</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-BOOLEAN-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptConfigurationOfOptApiServices/GptTimeElapsedApi</DEFINITION-REF>
<VALUE>true</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
</PARAMETER-VALUES>
</ECUC-CONTAINER-VALUE>
<ECUC-CONTAINER-VALUE UUID="122b405d-8486-433e-80b8-c36806138e02">
<SHORT-NAME>GptChannelConfigSet</SHORT-NAME>
<DEFINITION-REF DEST="ECUC-PARAM-CONF-CONTAINER-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet</DEFINITION-REF>
<SUB-CONTAINERS>
<ECUC-CONTAINER-VALUE UUID="1767c52e-f813-47d5-9c06-617de993abe6">
<SHORT-NAME>GptChannelConfiguration</SHORT-NAME>
<DEFINITION-REF DEST="ECUC-PARAM-CONF-CONTAINER-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration</DEFINITION-REF>
<PARAMETER-VALUES>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-INTEGER-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelId</DEFINITION-REF>
<VALUE>0</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkEdge</DEFINITION-REF>
<VALUE>RISE</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkPrescaler</DEFINITION-REF>
<VALUE>PCLK_DIVBY_2_POWOF_02</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelMode</DEFINITION-REF>
<VALUE>GPT_CH_MODE_ONESHOT</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-FLOAT-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelTickFrequency</DEFINITION-REF>
<VALUE>0</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-INTEGER-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelTickValueMax</DEFINITION-REF>
<VALUE>20000000</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-BOOLEAN-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptEnableWakeup</DEFINITION-REF>
<VALUE>false</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptTimerInputSelection</DEFINITION-REF>
<VALUE>TMU_CH00</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-FUNCTION-NAME-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptNotification</DEFINITION-REF>
<VALUE>Gpt_Notification_0</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
</PARAMETER-VALUES>
<REFERENCE-VALUES>
<ECUC-REFERENCE-VALUE>
<DEFINITION-REF DEST="ECUC-CHOICE-REFERENCE-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptTMUClkSrcRef</DEFINITION-REF>
<VALUE-REF DEST="ECUC-CONTAINER-VALUE">/ActiveEcuC/Mcu/McuModuleConfiguration/McuClockSettingConfig/McuModuleClockSetting/McuSASYNCRTClk</VALUE-REF>
</ECUC-REFERENCE-VALUE>
<ECUC-REFERENCE-VALUE>
<DEFINITION-REF DEST="ECUC-REFERENCE-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkSrcRef</DEFINITION-REF>
<VALUE-REF DEST="ECUC-CONTAINER-VALUE">/ActiveEcuC/Gpt/GptDriverConfiguration/GptClockReferencePoint</VALUE-REF>
</ECUC-REFERENCE-VALUE>
</REFERENCE-VALUES>
<SUB-CONTAINERS>
<ECUC-CONTAINER-VALUE UUID="abf8d0bb-4ce6-4294-b935-b107a03ba1f2">
<SHORT-NAME>GptWakeupConfiguration</SHORT-NAME>
<DEFINITION-REF DEST="ECUC-PARAM-CONF-CONTAINER-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptWakeupConfiguration</DEFINITION-REF>
<REFERENCE-VALUES>
<ECUC-REFERENCE-VALUE>
<DEFINITION-REF DEST="ECUC-REFERENCE-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptWakeupConfiguration/GptWakeupSourceRef</DEFINITION-REF>
<VALUE-REF DEST="ECUC-CONTAINER-VALUE">/ActiveEcuC/EcuM/EcuMConfiguration/EcuMCommonConfiguration/EcuMWakeupSource</VALUE-REF>
</ECUC-REFERENCE-VALUE>
</REFERENCE-VALUES>
</ECUC-CONTAINER-VALUE>
</SUB-CONTAINERS>
</ECUC-CONTAINER-VALUE>
<ECUC-CONTAINER-VALUE UUID="95d32f68-322e-4420-ae89-6fcd826b962f">
<SHORT-NAME>GptChannelConfiguration_001</SHORT-NAME>
<DEFINITION-REF DEST="ECUC-PARAM-CONF-CONTAINER-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration</DEFINITION-REF>
<PARAMETER-VALUES>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-INTEGER-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelId</DEFINITION-REF>
<VALUE>1</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkEdge</DEFINITION-REF>
<VALUE>RISE</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkPrescaler</DEFINITION-REF>
<VALUE>PCLK_DIVBY_2_POWOF_02</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelMode</DEFINITION-REF>
<VALUE>GPT_CH_MODE_ONESHOT</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-FLOAT-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelTickFrequency</DEFINITION-REF>
<VALUE>0</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-INTEGER-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelTickValueMax</DEFINITION-REF>
<VALUE>20000000</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-BOOLEAN-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptEnableWakeup</DEFINITION-REF>
<VALUE>false</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptTimerInputSelection</DEFINITION-REF>
<VALUE>TMU_CH01</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-FUNCTION-NAME-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptNotification</DEFINITION-REF>
<VALUE>Gpt_Notification_1</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
</PARAMETER-VALUES>
<REFERENCE-VALUES>
<ECUC-REFERENCE-VALUE>
<DEFINITION-REF DEST="ECUC-CHOICE-REFERENCE-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptTMUClkSrcRef</DEFINITION-REF>
<VALUE-REF DEST="ECUC-CONTAINER-VALUE">/ActiveEcuC/Mcu/McuModuleConfiguration/McuClockSettingConfig/McuModuleClockSetting/McuSASYNCRTClk</VALUE-REF>
</ECUC-REFERENCE-VALUE>
<ECUC-REFERENCE-VALUE>
<DEFINITION-REF DEST="ECUC-REFERENCE-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkSrcRef</DEFINITION-REF>
<VALUE-REF DEST="ECUC-CONTAINER-VALUE">/ActiveEcuC/Gpt/GptDriverConfiguration/GptClockReferencePoint</VALUE-REF>
</ECUC-REFERENCE-VALUE>
</REFERENCE-VALUES>
</ECUC-CONTAINER-VALUE>
<ECUC-CONTAINER-VALUE UUID="84f165ff-e440-4a23-9fcc-a783e1c8568e">
<SHORT-NAME>GptChannelConfiguration_002</SHORT-NAME>
<DEFINITION-REF DEST="ECUC-PARAM-CONF-CONTAINER-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration</DEFINITION-REF>
<PARAMETER-VALUES>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-INTEGER-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelId</DEFINITION-REF>
<VALUE>2</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkEdge</DEFINITION-REF>
<VALUE>RISE</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkPrescaler</DEFINITION-REF>
<VALUE>PCLK_DIVBY_2_POWOF_02</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelMode</DEFINITION-REF>
<VALUE>GPT_CH_MODE_ONESHOT</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-FLOAT-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelTickFrequency</DEFINITION-REF>
<VALUE>0</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-INTEGER-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelTickValueMax</DEFINITION-REF>
<VALUE>20000000</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-BOOLEAN-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptEnableWakeup</DEFINITION-REF>
<VALUE>false</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptTimerInputSelection</DEFINITION-REF>
<VALUE>TMU_CH02</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-FUNCTION-NAME-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptNotification</DEFINITION-REF>
<VALUE>Gpt_Notification_2</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
</PARAMETER-VALUES>
<REFERENCE-VALUES>
<ECUC-REFERENCE-VALUE>
<DEFINITION-REF DEST="ECUC-CHOICE-REFERENCE-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptTMUClkSrcRef</DEFINITION-REF>
<VALUE-REF DEST="ECUC-CONTAINER-VALUE">/ActiveEcuC/Mcu/McuModuleConfiguration/McuClockSettingConfig/McuModuleClockSetting/McuSASYNCRTClk</VALUE-REF>
</ECUC-REFERENCE-VALUE>
<ECUC-REFERENCE-VALUE>
<DEFINITION-REF DEST="ECUC-REFERENCE-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkSrcRef</DEFINITION-REF>
<VALUE-REF DEST="ECUC-CONTAINER-VALUE">/ActiveEcuC/Gpt/GptDriverConfiguration/GptClockReferencePoint</VALUE-REF>
</ECUC-REFERENCE-VALUE>
</REFERENCE-VALUES>
</ECUC-CONTAINER-VALUE>
<ECUC-CONTAINER-VALUE UUID="3a8b8a85-bbe5-438d-b2b0-6a12f68f467f">
<SHORT-NAME>GptChannelConfiguration_003</SHORT-NAME>
<DEFINITION-REF DEST="ECUC-PARAM-CONF-CONTAINER-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration</DEFINITION-REF>
<PARAMETER-VALUES>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-INTEGER-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelId</DEFINITION-REF>
<VALUE>3</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkEdge</DEFINITION-REF>
<VALUE>RISE</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkPrescaler</DEFINITION-REF>
<VALUE>PCLK_DIVBY_2_POWOF_04</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelMode</DEFINITION-REF>
<VALUE>GPT_CH_MODE_CONTINUOUS</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-FLOAT-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelTickFrequency</DEFINITION-REF>
<VALUE>0</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-INTEGER-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelTickValueMax</DEFINITION-REF>
<VALUE>20000000</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-BOOLEAN-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptEnableWakeup</DEFINITION-REF>
<VALUE>false</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptTimerInputSelection</DEFINITION-REF>
<VALUE>TMU_CH03</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-FUNCTION-NAME-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptNotification</DEFINITION-REF>
<VALUE>Gpt_Notification_003</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
</PARAMETER-VALUES>
<REFERENCE-VALUES>
<ECUC-REFERENCE-VALUE>
<DEFINITION-REF DEST="ECUC-REFERENCE-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkSrcRef</DEFINITION-REF>
<VALUE-REF DEST="ECUC-CONTAINER-VALUE">/ActiveEcuC/Gpt/GptDriverConfiguration/GptClockReferencePoint</VALUE-REF>
</ECUC-REFERENCE-VALUE>
<ECUC-REFERENCE-VALUE>
<DEFINITION-REF DEST="ECUC-CHOICE-REFERENCE-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptTMUClkSrcRef</DEFINITION-REF>
<VALUE-REF DEST="ECUC-CONTAINER-VALUE">/ActiveEcuC/Mcu/McuModuleConfiguration/McuClockSettingConfig/McuModuleClockSetting/McuSASYNCPERD2Clk</VALUE-REF>
</ECUC-REFERENCE-VALUE>
</REFERENCE-VALUES>
</ECUC-CONTAINER-VALUE>
<ECUC-CONTAINER-VALUE UUID="f1dcfc0b-bdf7-4031-90fd-d5460d3e2121">
<SHORT-NAME>GptChannelConfiguration_004</SHORT-NAME>
<DEFINITION-REF DEST="ECUC-PARAM-CONF-CONTAINER-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration</DEFINITION-REF>
<PARAMETER-VALUES>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-INTEGER-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelId</DEFINITION-REF>
<VALUE>4</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkEdge</DEFINITION-REF>
<VALUE>RISE</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkPrescaler</DEFINITION-REF>
<VALUE>PCLK_DIVBY_2_POWOF_02</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelMode</DEFINITION-REF>
<VALUE>GPT_CH_MODE_ONESHOT</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-FLOAT-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelTickFrequency</DEFINITION-REF>
<VALUE>0</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-INTEGER-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelTickValueMax</DEFINITION-REF>
<VALUE>20000000</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-BOOLEAN-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptEnableWakeup</DEFINITION-REF>
<VALUE>false</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptTimerInputSelection</DEFINITION-REF>
<VALUE>TMU_CH04</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
</PARAMETER-VALUES>
<REFERENCE-VALUES>
<ECUC-REFERENCE-VALUE>
<DEFINITION-REF DEST="ECUC-REFERENCE-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkSrcRef</DEFINITION-REF>
<VALUE-REF DEST="ECUC-CONTAINER-VALUE">/ActiveEcuC/Gpt/GptDriverConfiguration/GptClockReferencePoint</VALUE-REF>
</ECUC-REFERENCE-VALUE>
<ECUC-REFERENCE-VALUE>
<DEFINITION-REF DEST="ECUC-CHOICE-REFERENCE-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptTMUClkSrcRef</DEFINITION-REF>
<VALUE-REF DEST="ECUC-CONTAINER-VALUE">/ActiveEcuC/Mcu/McuModuleConfiguration/McuClockSettingConfig/McuModuleClockSetting/McuSASYNCPERD2Clk</VALUE-REF>
</ECUC-REFERENCE-VALUE>
</REFERENCE-VALUES>
</ECUC-CONTAINER-VALUE>
<ECUC-CONTAINER-VALUE UUID="72fb697f-3fb0-4caf-a490-5e39b8ea13d5">
<SHORT-NAME>GptChannelConfiguration_005</SHORT-NAME>
<DEFINITION-REF DEST="ECUC-PARAM-CONF-CONTAINER-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration</DEFINITION-REF>
<PARAMETER-VALUES>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-INTEGER-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelId</DEFINITION-REF>
<VALUE>5</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkEdge</DEFINITION-REF>
<VALUE>RISE</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkPrescaler</DEFINITION-REF>
<VALUE>PCLK_DIVBY_2_POWOF_02</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelMode</DEFINITION-REF>
<VALUE>GPT_CH_MODE_ONESHOT</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-FLOAT-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelTickFrequency</DEFINITION-REF>
<VALUE>0</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-INTEGER-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelTickValueMax</DEFINITION-REF>
<VALUE>20000000</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-BOOLEAN-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptEnableWakeup</DEFINITION-REF>
<VALUE>false</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptTimerInputSelection</DEFINITION-REF>
<VALUE>TMU_CH05</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
</PARAMETER-VALUES>
<REFERENCE-VALUES>
<ECUC-REFERENCE-VALUE>
<DEFINITION-REF DEST="ECUC-REFERENCE-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkSrcRef</DEFINITION-REF>
<VALUE-REF DEST="ECUC-CONTAINER-VALUE">/ActiveEcuC/Gpt/GptDriverConfiguration/GptClockReferencePoint</VALUE-REF>
</ECUC-REFERENCE-VALUE>
<ECUC-REFERENCE-VALUE>
<DEFINITION-REF DEST="ECUC-CHOICE-REFERENCE-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptTMUClkSrcRef</DEFINITION-REF>
<VALUE-REF DEST="ECUC-CONTAINER-VALUE">/ActiveEcuC/Mcu/McuModuleConfiguration/McuClockSettingConfig/McuModuleClockSetting/McuSASYNCPERD2Clk</VALUE-REF>
</ECUC-REFERENCE-VALUE>
</REFERENCE-VALUES>
</ECUC-CONTAINER-VALUE>
<ECUC-CONTAINER-VALUE UUID="966c0033-eeaf-427c-a965-9c1b18c47883">
<SHORT-NAME>GptChannelConfiguration_006</SHORT-NAME>
<DEFINITION-REF DEST="ECUC-PARAM-CONF-CONTAINER-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration</DEFINITION-REF>
<PARAMETER-VALUES>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-INTEGER-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelId</DEFINITION-REF>
<VALUE>6</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkEdge</DEFINITION-REF>
<VALUE>RISE</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkPrescaler</DEFINITION-REF>
<VALUE>PCLK_DIVBY_2_POWOF_02</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelMode</DEFINITION-REF>
<VALUE>GPT_CH_MODE_ONESHOT</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-FLOAT-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelTickFrequency</DEFINITION-REF>
<VALUE>0</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-INTEGER-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelTickValueMax</DEFINITION-REF>
<VALUE>20000000</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-BOOLEAN-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptEnableWakeup</DEFINITION-REF>
<VALUE>false</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptTimerInputSelection</DEFINITION-REF>
<VALUE>TMU_CH06</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
</PARAMETER-VALUES>
<REFERENCE-VALUES>
<ECUC-REFERENCE-VALUE>
<DEFINITION-REF DEST="ECUC-REFERENCE-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkSrcRef</DEFINITION-REF>
<VALUE-REF DEST="ECUC-CONTAINER-VALUE">/ActiveEcuC/Gpt/GptDriverConfiguration/GptClockReferencePoint</VALUE-REF>
</ECUC-REFERENCE-VALUE>
<ECUC-REFERENCE-VALUE>
<DEFINITION-REF DEST="ECUC-CHOICE-REFERENCE-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptTMUClkSrcRef</DEFINITION-REF>
<VALUE-REF DEST="ECUC-CONTAINER-VALUE">/ActiveEcuC/Mcu/McuModuleConfiguration/McuClockSettingConfig/McuModuleClockSetting/McuSASYNCPERD2Clk</VALUE-REF>
</ECUC-REFERENCE-VALUE>
</REFERENCE-VALUES>
</ECUC-CONTAINER-VALUE>
<ECUC-CONTAINER-VALUE UUID="99627614-a9ae-43a6-b71e-5bd931602a3d">
<SHORT-NAME>GptChannelConfiguration_007</SHORT-NAME>
<DEFINITION-REF DEST="ECUC-PARAM-CONF-CONTAINER-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration</DEFINITION-REF>
<PARAMETER-VALUES>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-INTEGER-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelId</DEFINITION-REF>
<VALUE>7</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkEdge</DEFINITION-REF>
<VALUE>RISE</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkPrescaler</DEFINITION-REF>
<VALUE>PCLK_DIVBY_2_POWOF_02</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelMode</DEFINITION-REF>
<VALUE>GPT_CH_MODE_ONESHOT</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-FLOAT-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelTickFrequency</DEFINITION-REF>
<VALUE>0</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-INTEGER-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelTickValueMax</DEFINITION-REF>
<VALUE>20000000</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-BOOLEAN-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptEnableWakeup</DEFINITION-REF>
<VALUE>false</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptTimerInputSelection</DEFINITION-REF>
<VALUE>TMU_CH07</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
</PARAMETER-VALUES>
<REFERENCE-VALUES>
<ECUC-REFERENCE-VALUE>
<DEFINITION-REF DEST="ECUC-REFERENCE-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkSrcRef</DEFINITION-REF>
<VALUE-REF DEST="ECUC-CONTAINER-VALUE">/ActiveEcuC/Gpt/GptDriverConfiguration/GptClockReferencePoint</VALUE-REF>
</ECUC-REFERENCE-VALUE>
<ECUC-REFERENCE-VALUE>
<DEFINITION-REF DEST="ECUC-CHOICE-REFERENCE-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptTMUClkSrcRef</DEFINITION-REF>
<VALUE-REF DEST="ECUC-CONTAINER-VALUE">/ActiveEcuC/Mcu/McuModuleConfiguration/McuClockSettingConfig/McuModuleClockSetting/McuSASYNCPERD2Clk</VALUE-REF>
</ECUC-REFERENCE-VALUE>
</REFERENCE-VALUES>
</ECUC-CONTAINER-VALUE>
<ECUC-CONTAINER-VALUE UUID="ae132190-8378-4d44-b9b2-ea4d408e7038">
<SHORT-NAME>GptChannelConfiguration_008</SHORT-NAME>
<DEFINITION-REF DEST="ECUC-PARAM-CONF-CONTAINER-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration</DEFINITION-REF>
<PARAMETER-VALUES>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-INTEGER-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelId</DEFINITION-REF>
<VALUE>8</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkEdge</DEFINITION-REF>
<VALUE>RISE</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkPrescaler</DEFINITION-REF>
<VALUE>PCLK_DIVBY_2_POWOF_02</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelMode</DEFINITION-REF>
<VALUE>GPT_CH_MODE_ONESHOT</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-FLOAT-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelTickFrequency</DEFINITION-REF>
<VALUE>0</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-INTEGER-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelTickValueMax</DEFINITION-REF>
<VALUE>20000000</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-BOOLEAN-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptEnableWakeup</DEFINITION-REF>
<VALUE>false</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptTimerInputSelection</DEFINITION-REF>
<VALUE>TMU_CH08</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
</PARAMETER-VALUES>
<REFERENCE-VALUES>
<ECUC-REFERENCE-VALUE>
<DEFINITION-REF DEST="ECUC-REFERENCE-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkSrcRef</DEFINITION-REF>
<VALUE-REF DEST="ECUC-CONTAINER-VALUE">/ActiveEcuC/Gpt/GptDriverConfiguration/GptClockReferencePoint</VALUE-REF>
</ECUC-REFERENCE-VALUE>
<ECUC-REFERENCE-VALUE>
<DEFINITION-REF DEST="ECUC-CHOICE-REFERENCE-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptTMUClkSrcRef</DEFINITION-REF>
<VALUE-REF DEST="ECUC-CONTAINER-VALUE">/ActiveEcuC/Mcu/McuModuleConfiguration/McuClockSettingConfig/McuModuleClockSetting/McuSASYNCPERD2Clk</VALUE-REF>
</ECUC-REFERENCE-VALUE>
</REFERENCE-VALUES>
</ECUC-CONTAINER-VALUE>
<ECUC-CONTAINER-VALUE UUID="1eabfecc-7b2e-4884-b54e-6a759acc1468">
<SHORT-NAME>GptChannelConfiguration_009</SHORT-NAME>
<DEFINITION-REF DEST="ECUC-PARAM-CONF-CONTAINER-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration</DEFINITION-REF>
<PARAMETER-VALUES>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-INTEGER-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelId</DEFINITION-REF>
<VALUE>9</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkEdge</DEFINITION-REF>
<VALUE>RISE</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkPrescaler</DEFINITION-REF>
<VALUE>PCLK_DIVBY_2_POWOF_02</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelMode</DEFINITION-REF>
<VALUE>GPT_CH_MODE_ONESHOT</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-FLOAT-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelTickFrequency</DEFINITION-REF>
<VALUE>0</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-INTEGER-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelTickValueMax</DEFINITION-REF>
<VALUE>20000000</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-BOOLEAN-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptEnableWakeup</DEFINITION-REF>
<VALUE>false</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptTimerInputSelection</DEFINITION-REF>
<VALUE>TMU_CH09</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
</PARAMETER-VALUES>
<REFERENCE-VALUES>
<ECUC-REFERENCE-VALUE>
<DEFINITION-REF DEST="ECUC-REFERENCE-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkSrcRef</DEFINITION-REF>
<VALUE-REF DEST="ECUC-CONTAINER-VALUE">/ActiveEcuC/Gpt/GptDriverConfiguration/GptClockReferencePoint</VALUE-REF>
</ECUC-REFERENCE-VALUE>
<ECUC-REFERENCE-VALUE>
<DEFINITION-REF DEST="ECUC-CHOICE-REFERENCE-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptTMUClkSrcRef</DEFINITION-REF>
<VALUE-REF DEST="ECUC-CONTAINER-VALUE">/ActiveEcuC/Mcu/McuModuleConfiguration/McuClockSettingConfig/McuModuleClockSetting/McuSASYNCPERD2Clk</VALUE-REF>
</ECUC-REFERENCE-VALUE>
</REFERENCE-VALUES>
</ECUC-CONTAINER-VALUE>
<ECUC-CONTAINER-VALUE UUID="3e8a010e-1d0e-45ed-bda2-f0b56d508143">
<SHORT-NAME>GptChannelConfiguration_010</SHORT-NAME>
<DEFINITION-REF DEST="ECUC-PARAM-CONF-CONTAINER-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration</DEFINITION-REF>
<PARAMETER-VALUES>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-INTEGER-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelId</DEFINITION-REF>
<VALUE>10</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkEdge</DEFINITION-REF>
<VALUE>RISE</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkPrescaler</DEFINITION-REF>
<VALUE>PCLK_DIVBY_2_POWOF_02</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelMode</DEFINITION-REF>
<VALUE>GPT_CH_MODE_ONESHOT</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-FLOAT-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelTickFrequency</DEFINITION-REF>
<VALUE>0</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-INTEGER-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelTickValueMax</DEFINITION-REF>
<VALUE>20000000</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-BOOLEAN-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptEnableWakeup</DEFINITION-REF>
<VALUE>false</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptTimerInputSelection</DEFINITION-REF>
<VALUE>TMU_CH10</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
</PARAMETER-VALUES>
<REFERENCE-VALUES>
<ECUC-REFERENCE-VALUE>
<DEFINITION-REF DEST="ECUC-REFERENCE-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkSrcRef</DEFINITION-REF>
<VALUE-REF DEST="ECUC-CONTAINER-VALUE">/ActiveEcuC/Gpt/GptDriverConfiguration/GptClockReferencePoint</VALUE-REF>
</ECUC-REFERENCE-VALUE>
<ECUC-REFERENCE-VALUE>
<DEFINITION-REF DEST="ECUC-CHOICE-REFERENCE-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptTMUClkSrcRef</DEFINITION-REF>
<VALUE-REF DEST="ECUC-CONTAINER-VALUE">/ActiveEcuC/Mcu/McuModuleConfiguration/McuClockSettingConfig/McuModuleClockSetting/McuSASYNCPERD2Clk</VALUE-REF>
</ECUC-REFERENCE-VALUE>
</REFERENCE-VALUES>
</ECUC-CONTAINER-VALUE>
<ECUC-CONTAINER-VALUE UUID="e9faef7e-c909-4888-97f8-6cb5ff794e89">
<SHORT-NAME>GptChannelConfiguration_011</SHORT-NAME>
<DEFINITION-REF DEST="ECUC-PARAM-CONF-CONTAINER-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration</DEFINITION-REF>
<PARAMETER-VALUES>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-INTEGER-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelId</DEFINITION-REF>
<VALUE>11</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkEdge</DEFINITION-REF>
<VALUE>RISE</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkPrescaler</DEFINITION-REF>
<VALUE>PCLK_DIVBY_2_POWOF_02</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelMode</DEFINITION-REF>
<VALUE>GPT_CH_MODE_ONESHOT</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-FLOAT-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelTickFrequency</DEFINITION-REF>
<VALUE>0</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-INTEGER-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelTickValueMax</DEFINITION-REF>
<VALUE>20000000</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-BOOLEAN-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptEnableWakeup</DEFINITION-REF>
<VALUE>false</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptTimerInputSelection</DEFINITION-REF>
<VALUE>TMU_CH11</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
</PARAMETER-VALUES>
<REFERENCE-VALUES>
<ECUC-REFERENCE-VALUE>
<DEFINITION-REF DEST="ECUC-REFERENCE-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkSrcRef</DEFINITION-REF>
<VALUE-REF DEST="ECUC-CONTAINER-VALUE">/ActiveEcuC/Gpt/GptDriverConfiguration/GptClockReferencePoint</VALUE-REF>
</ECUC-REFERENCE-VALUE>
<ECUC-REFERENCE-VALUE>
<DEFINITION-REF DEST="ECUC-CHOICE-REFERENCE-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptTMUClkSrcRef</DEFINITION-REF>
<VALUE-REF DEST="ECUC-CONTAINER-VALUE">/ActiveEcuC/Mcu/McuModuleConfiguration/McuClockSettingConfig/McuModuleClockSetting/McuSASYNCPERD2Clk</VALUE-REF>
</ECUC-REFERENCE-VALUE>
</REFERENCE-VALUES>
</ECUC-CONTAINER-VALUE>
<ECUC-CONTAINER-VALUE UUID="16f45a34-6b00-4584-9df7-48b6c6841c95">
<SHORT-NAME>GptChannelConfiguration_012</SHORT-NAME>
<DEFINITION-REF DEST="ECUC-PARAM-CONF-CONTAINER-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration</DEFINITION-REF>
<PARAMETER-VALUES>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-INTEGER-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelId</DEFINITION-REF>
<VALUE>12</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkEdge</DEFINITION-REF>
<VALUE>RISE</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkPrescaler</DEFINITION-REF>
<VALUE>PCLK_DIVBY_2_POWOF_02</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelMode</DEFINITION-REF>
<VALUE>GPT_CH_MODE_ONESHOT</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-FLOAT-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelTickFrequency</DEFINITION-REF>
<VALUE>0</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-INTEGER-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelTickValueMax</DEFINITION-REF>
<VALUE>20000000</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-BOOLEAN-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptEnableWakeup</DEFINITION-REF>
<VALUE>false</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptTimerInputSelection</DEFINITION-REF>
<VALUE>TMU_CH12</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
</PARAMETER-VALUES>
<REFERENCE-VALUES>
<ECUC-REFERENCE-VALUE>
<DEFINITION-REF DEST="ECUC-REFERENCE-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkSrcRef</DEFINITION-REF>
<VALUE-REF DEST="ECUC-CONTAINER-VALUE">/ActiveEcuC/Gpt/GptDriverConfiguration/GptClockReferencePoint</VALUE-REF>
</ECUC-REFERENCE-VALUE>
<ECUC-REFERENCE-VALUE>
<DEFINITION-REF DEST="ECUC-CHOICE-REFERENCE-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptTMUClkSrcRef</DEFINITION-REF>
<VALUE-REF DEST="ECUC-CONTAINER-VALUE">/ActiveEcuC/Mcu/McuModuleConfiguration/McuClockSettingConfig/McuModuleClockSetting/McuSASYNCPERD2Clk</VALUE-REF>
</ECUC-REFERENCE-VALUE>
</REFERENCE-VALUES>
</ECUC-CONTAINER-VALUE>
<ECUC-CONTAINER-VALUE UUID="f6571f85-ba7f-407c-bc96-e7f2f6f3a4f2">
<SHORT-NAME>GptChannelConfiguration_013</SHORT-NAME>
<DEFINITION-REF DEST="ECUC-PARAM-CONF-CONTAINER-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration</DEFINITION-REF>
<PARAMETER-VALUES>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-INTEGER-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelId</DEFINITION-REF>
<VALUE>13</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkEdge</DEFINITION-REF>
<VALUE>RISE</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkPrescaler</DEFINITION-REF>
<VALUE>PCLK_DIVBY_2_POWOF_02</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelMode</DEFINITION-REF>
<VALUE>GPT_CH_MODE_ONESHOT</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-FLOAT-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelTickFrequency</DEFINITION-REF>
<VALUE>0</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-INTEGER-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelTickValueMax</DEFINITION-REF>
<VALUE>20000000</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-BOOLEAN-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptEnableWakeup</DEFINITION-REF>
<VALUE>false</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptTimerInputSelection</DEFINITION-REF>
<VALUE>TMU_CH13</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
</PARAMETER-VALUES>
<REFERENCE-VALUES>
<ECUC-REFERENCE-VALUE>
<DEFINITION-REF DEST="ECUC-REFERENCE-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkSrcRef</DEFINITION-REF>
<VALUE-REF DEST="ECUC-CONTAINER-VALUE">/ActiveEcuC/Gpt/GptDriverConfiguration/GptClockReferencePoint</VALUE-REF>
</ECUC-REFERENCE-VALUE>
<ECUC-REFERENCE-VALUE>
<DEFINITION-REF DEST="ECUC-CHOICE-REFERENCE-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptTMUClkSrcRef</DEFINITION-REF>
<VALUE-REF DEST="ECUC-CONTAINER-VALUE">/ActiveEcuC/Mcu/McuModuleConfiguration/McuClockSettingConfig/McuModuleClockSetting/McuSASYNCPERD2Clk</VALUE-REF>
</ECUC-REFERENCE-VALUE>
</REFERENCE-VALUES>
</ECUC-CONTAINER-VALUE>
<ECUC-CONTAINER-VALUE UUID="1047b55b-276d-4f18-8570-2353aad526be">
<SHORT-NAME>GptChannelConfiguration_014</SHORT-NAME>
<DEFINITION-REF DEST="ECUC-PARAM-CONF-CONTAINER-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration</DEFINITION-REF>
<PARAMETER-VALUES>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-INTEGER-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelId</DEFINITION-REF>
<VALUE>14</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkEdge</DEFINITION-REF>
<VALUE>RISE</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkPrescaler</DEFINITION-REF>
<VALUE>PCLK_DIVBY_2_POWOF_02</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelMode</DEFINITION-REF>
<VALUE>GPT_CH_MODE_ONESHOT</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-FLOAT-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelTickFrequency</DEFINITION-REF>
<VALUE>0</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-INTEGER-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelTickValueMax</DEFINITION-REF>
<VALUE>20000000</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-NUMERICAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-BOOLEAN-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptEnableWakeup</DEFINITION-REF>
<VALUE>false</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
<ECUC-TEXTUAL-PARAM-VALUE>
<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptTimerInputSelection</DEFINITION-REF>
<VALUE>TMU_CH14</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>
</PARAMETER-VALUES>
<REFERENCE-VALUES>
<ECUC-REFERENCE-VALUE>
<DEFINITION-REF DEST="ECUC-REFERENCE-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptChannelClkSrcRef</DEFINITION-REF>
<VALUE-REF DEST="ECUC-CONTAINER-VALUE">/ActiveEcuC/Gpt/GptDriverConfiguration/GptClockReferencePoint</VALUE-REF>
</ECUC-REFERENCE-VALUE>
<ECUC-REFERENCE-VALUE>
<DEFINITION-REF DEST="ECUC-CHOICE-REFERENCE-DEF">/Renesas/EcucDefs_Gpt/Gpt/GptChannelConfigSet/GptChannelConfiguration/GptTMUClkSrcRef</DEFINITION-REF>
<VALUE-REF DEST="ECUC-CONTAINER-VALUE">/ActiveEcuC/Mcu/McuModuleConfiguration/McuClockSettingConfig/McuModuleClockSetting/McuSASYNCPERD2Clk</VALUE-REF>
</ECUC-REFERENCE-VALUE>
</REFERENCE-VALUES>
</ECUC-CONTAINER-VALUE>
</SUB-CONTAINERS>
</ECUC-CONTAINER-VALUE>
</CONTAINERS>
</ECUC-MODULE-CONFIGURATION-VALUES>
</ELEMENTS>
</AR-PACKAGE>
</AR-PACKAGES>
</AUTOSAR>

View File

@@ -0,0 +1,81 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
********************************************************************************
/* Project = AUTOSAR Renesas CPF MCAL Components */
/* Module = Sample_Application_V4H.trxml */
/* SW-VERSION = 1.0.0 */
********************************************************************************
** COPYRIGHT **
********************************************************************************
/* Copyright(c) 2021 Renesas Electronics Corporation. */
********************************************************************************
** Purpose: **
** Provides the path for the Translation Header File and Device Specific C **
** Header File. **
** **
********************************************************************************
** Unless otherwise agreed upon in writing between your company and **
** Renesas Electronics Corporation the following shall apply! **
** **
** Warranty Disclaimer **
** **
** There is no warranty of any kind whatsoever granted by Renesas. Any **
** warranty is expressly disclaimed and excluded by Renesas, either expressed **
** or implied, including but not limited to those for non-infringement of **
** intellectual property, merchantability and/or fitness for the particular **
** purpose. **
** **
** Renesas shall not have any obligation to maintain, service or provide bug **
** fixes for the supplied Product(s) and/or the Application. **
** **
** Each User is solely responsible for determining the appropriateness of **
** using the Product(s) and assumes all risks associated with its exercise **
** of rights under this Agreement, including, but not limited to the risks **
** and costs of program errors, compliance with applicable laws, damage to **
** or loss of data, programs or equipment, and unavailability or **
** interruption of operations. **
** **
** Limitation of Liability **
** **
** In no event shall Renesas be liable to the User for any incidental, **
** consequential, indirect, or punitive damage (including but not limited **
** to lost profits) regardless of whether such liability is based on breach **
** of contract, tort, strict liability, breach of warranties, failure of **
** essential purpose or otherwise and even if advised of the possibility of **
** such damages. Renesas shall not be liable for any services or products **
** provided by third party vendors, developers or consultants identified or **
** referred to the User by Renesas in connection with the Product(s) and/or **
** the Application. **
** **
********************************************************************************
** Environment: **
** Devices: R-Car V4H **
********************************************************************************
** Revision Control History **
********************************************************************************
** 1.0.0: 16/11/2021 : Initial version **
********************************************************************************
-->
<!--
The tag PATH-DETAILS should not be renamed since it's top level element.
-->
<PATH-DETAILS>
<!--
TRANSLATION-FILE-PATH should contain the path of the translation header file.
The tag TRANSLATION-FILE-PATH should not be renamed. Only respective value should be updated for the translation header file.
-->
<TRANSLATION-FILE-PATH>
<V4H>..\..\..\..\V4H\common_family\generator\arm\V4H_translation.h</V4H>
</TRANSLATION-FILE-PATH>
<!--
The tags present in DEVICE-FILE-PATH tag should contain the path of the device specific C Header File.
The tags present in DEVICE-FILE-PATH should be equal to the value for parameter <MSN>DeviceName present in <MSN>General container.
The tag DEVICE-FILE-PATH should not be renamed.
If multiple device header files need to provide then each file name should be separated with space.
Also child tag of DEVICE-FILE-PATH should be unique.
-->
<DEVICE-FILE-PATH>
<V4H>..\..\..\..\V4H\common_family\include\arm\RCar_V4H_0.h</V4H>
</DEVICE-FILE-PATH>
</PATH-DETAILS>

View File

@@ -0,0 +1,83 @@
/*============================================================================*/
/* Project = AUTOSAR Renesas CPF MCAL Components */
/* Module = Interrupt_VectorTable.h */
/* SW-VERSION = 1.0.0 */
/*============================================================================*/
/* COPYRIGHT */
/*============================================================================*/
/* Copyright(c) 2021 Renesas Electronics Corporation. */
/*============================================================================*/
/* Purpose: */
/* This file contains definition for interrupt vector table - ARM Compiler */
/* */
/*============================================================================*/
/* */
/* Unless otherwise agreed upon in writing between your company and */
/* Renesas Electronics Corporation the following shall apply! */
/* */
/* Warranty Disclaimer */
/* */
/* There is no warranty of any kind whatsoever granted by Renesas. Any */
/* warranty is expressly disclaimed and excluded by Renesas, either expressed */
/* or implied, including but not limited to those for non-infringement of */
/* intellectual property, merchantability and/or fitness for the particular */
/* purpose. */
/* */
/* Renesas shall not have any obligation to maintain, service or provide bug */
/* fixes for the supplied Product(s) and/or the Application. */
/* */
/* Each User is solely responsible for determining the appropriateness of */
/* using the Product(s) and assumes all risks associated with its exercise */
/* of rights under this Agreement, including, but not limited to the risks */
/* and costs of program errors, compliance with applicable laws, damage to */
/* or loss of data, programs or equipment, and unavailability or */
/* interruption of operations. */
/* */
/* Limitation of Liability */
/* */
/* In no event shall Renesas be liable to the User for any incidental, */
/* consequential, indirect, or punitive damage (including but not limited */
/* to lost profits) regardless of whether such liability is based on breach */
/* of contract, tort, strict liability, breach of warranties, failure of */
/* essential purpose or otherwise and even if advised of the possibility of */
/* such damages. Renesas shall not be liable for any services or products */
/* provided by third party vendors, developers or consultants identified or */
/* referred to the User by Renesas in connection with the Product(s) and/or */
/* the Application. */
/* */
/*============================================================================*/
/* Environment: */
/* Devices: CPF */
/*============================================================================*/
/*******************************************************************************
** Revision Control History **
*******************************************************************************/
/*
* 1.0.0: 06/11/2021 : Initial Version
*/
/*******************************************************************************
** Input File **
*******************************************************************************/
#ifndef INTERRUPT_VECTORTABLE_H
#define INTERRUPT_VECTORTABLE_H
/*******************************************************************************
** Include Section **
*******************************************************************************/
/*******************************************************************************
** Version Information **
*******************************************************************************/
/*******************************************************************************
** Global Symbols **
*******************************************************************************/
typedef void (*FUNCT)(void); /* define a pointer to a function */
extern const FUNCT IntVectors[];
#define IRQ_Handler void __attribute__((interrupt("IRQ")))
#endif /* INTERRUPT_VECTORTABLE_H */

View File

@@ -0,0 +1,130 @@
/*============================================================================*/
/* Project = AUTOSAR Renesas CPF MCAL Components */
/* Module = RCar_FuSa.h */
/* SW-VERSION = 1.0.0 */
/*============================================================================*/
/* COPYRIGHT */
/*============================================================================*/
/* Copyright(c) 2021 Renesas Electronics Corporation. */
/*============================================================================*/
/* Purpose: */
/* Provision for platform dependent types */
/* */
/*============================================================================*/
/* */
/* Unless otherwise agreed upon in writing between your company and */
/* Renesas Electronics Corporation the following shall apply! */
/* */
/* Warranty Disclaimer */
/* */
/* There is no warranty of any kind whatsoever granted by Renesas. Any */
/* warranty is expressly disclaimed and excluded by Renesas, either expressed */
/* or implied, including but not limited to those for non-infringement of */
/* intellectual property, merchantability and/or fitness for the particular */
/* purpose. */
/* */
/* Renesas shall not have any obligation to maintain, service or provide bug */
/* fixes for the supplied Product(s) and/or the Application. */
/* */
/* Each User is solely responsible for determining the appropriateness of */
/* using the Product(s) and assumes all risks associated with its exercise */
/* of rights under this Agreement, including, but not limited to the risks */
/* and costs of program errors, compliance with applicable laws, damage to */
/* or loss of data, programs or equipment, and unavailability or */
/* interruption of operations. */
/* */
/* Limitation of Liability */
/* */
/* In no event shall Renesas be liable to the User for any incidental, */
/* consequential, indirect, or punitive damage (including but not limited */
/* to lost profits) regardless of whether such liability is based on breach */
/* of contract, tort, strict liability, breach of warranties, failure of */
/* essential purpose or otherwise and even if advised of the possibility of */
/* such damages. Renesas shall not be liable for any services or products */
/* provided by third party vendors, developers or consultants identified or */
/* referred to the User by Renesas in connection with the Product(s) and/or */
/* the Application. */
/* */
/*============================================================================*/
/* Environment: */
/* Devices: CPF */
/*============================================================================*/
/*******************************************************************************
** Revision Control History **
*******************************************************************************/
/*
* 1.0.0: 06/11/2021 : Initial version
*/
#ifndef RCAR_FUNC_SAFETY_H
#define RCAR_FUNC_SAFETY_H
/*******************************************************************************
** Include Section **
*******************************************************************************/
#include "Std_Types.h"
/*******************************************************************************
** Version Information **
*******************************************************************************/
/* File version information */
#define RCAR_FUNC_SAFETY_SW_MAJOR_VERSION 1
#define RCAR_FUNC_SAFETY_SW_MINOR_VERSION 0
#define RCAR_FUNC_SAFETY_SW_PATCH_VERSION 1
/*******************************************************************************
** Global Symbols **
*******************************************************************************/
/*******************************************************************************
** Global Data Types **
*******************************************************************************/
/*******************************************************************************
** Macro **
*******************************************************************************/
#define RFSO_FAULT_RESET 0u
#define RFSO_FAULT_TRANSIENT 1u
#define RFSO_FAULT_PERMANENT 2u
#define RFSO_MAX_CHANNEL 0x0Au
#define RFSO_0 0x00U
#define RFSO_1 0x01U
#define RFSO_2 0x02U
#define RFSO_3 0x03U
#define RFSO_4 0x04U
#define RFSO_5 0x05U
#define RFSO_6 0x06U
#define RFSO_7 0x07U
#define RFSO_8 0x08U
#define RFSO_9 0x09U
#define RFSO_10 0x0AU
#define RFSO_DISABLE 0xFFU
#define FSO_CTL_CFEO_1 0x00000004ul
#define FSO_CTL_CFEO_0 0x00000002ul
#define RFSO_CH_OOR(c) ((c) <= RFSO_MAX_CHANNEL)
#define RFSO_CH_BASE(c) (0xFFE80000ul + (0x00001000ul * (c)))
#define FSO_CTL(c) (RFSO_CH_BASE(c) + 0x00000008ul)
#define FSO_KEYCODE 0x77970000ul
/*******************************************************************************
** Function Prototypes **
*******************************************************************************/
#define FUSA_START_SEC_CODE_FAST
#include "FuSa_MemMap.h"
extern FUNC(void, FUSA_CODE_FAST) RCar_RfsoFaultControl
(
VAR(uint8, AUTOMATIC) ch,
VAR(uint8, AUTOMATIC) fault_type
);
#define FUSA_STOP_SEC_CODE_FAST
#include "FuSa_MemMap.h"
#endif
/*******************************************************************************
** End of File **
*******************************************************************************/

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,171 @@
/*============================================================================*/
/* Project = AUTOSAR Renesas CPF MCAL Components */
/* Module = device_cfg.h */
/* SW-VERSION = 1.0.3 */
/*============================================================================*/
/* COPYRIGHT */
/*============================================================================*/
/* Copyright(c) 2021-2022 Renesas Electronics Corporation. */
/*============================================================================*/
/* Purpose: */
/* This file contains configuration for initialization setting of V4H */
/* */
/*============================================================================*/
/* */
/* Unless otherwise agreed upon in writing between your company and */
/* Renesas Electronics Corporation the following shall apply! */
/* */
/* Warranty Disclaimer */
/* */
/* There is no warranty of any kind whatsoever granted by Renesas. Any */
/* warranty is expressly disclaimed and excluded by Renesas, either expressed */
/* or implied, including but not limited to those for non-infringement of */
/* intellectual property, merchantability and/or fitness for the particular */
/* purpose. */
/* */
/* Renesas shall not have any obligation to maintain, service or provide bug */
/* fixes for the supplied Product(s) and/or the Application. */
/* */
/* Each User is solely responsible for determining the appropriateness of */
/* using the Product(s) and assumes all risks associated with its exercise */
/* of rights under this Agreement, including, but not limited to the risks */
/* and costs of program errors, compliance with applicable laws, damage to */
/* or loss of data, programs or equipment, and unavailability or */
/* interruption of operations. */
/* */
/* Limitation of Liability */
/* */
/* In no event shall Renesas be liable to the User for any incidental, */
/* consequential, indirect, or punitive damage (including but not limited */
/* to lost profits) regardless of whether such liability is based on breach */
/* of contract, tort, strict liability, breach of warranties, failure of */
/* essential purpose or otherwise and even if advised of the possibility of */
/* such damages. Renesas shall not be liable for any services or products */
/* provided by third party vendors, developers or consultants identified or */
/* referred to the User by Renesas in connection with the Product(s) and/or */
/* the Application. */
/* */
/*============================================================================*/
/* Environment: */
/* Devices: CPF */
/*============================================================================*/
/*******************************************************************************
** Revision Control History **
*******************************************************************************/
/*
* 1.0.3: 05-05-2022 : Disable CR52 multi-cores supporting
* 1.0.2: 25-03-2022 : Support for HSCIF
* 1.0.1: 24-12-2021 : Support multi cores CR52
* 1.0.0: 06-11-2021 : Initial Version
*/
#ifndef DEVICE_CFG_H_
#define DEVICE_CFG_H_
#include "Platform_Types.h"
/*******************************************************************************
** Global Symbols **
*******************************************************************************/
/* Support Multi Core CR52 */
/* #define CR52_MULTICORE_SUPPORT */
#ifdef CR52_MULTICORE_SUPPORT
/* Which core to be used */
#define CR52_CPU1_USED
#define CR52_CPU2_USED
/* Core ID */
#define CR52_CPU0 0
#define CR52_CPU1 1
#define CR52_CPU2 2
#endif /* #ifdef CR52_MULTICORE_SUPPORT */
/* MFIS/ECM and CPG */
#define MFIS_ECM_WACNTR (*((volatile uint32*)0xE6250A04UL))
#define MFIS_ECM_WPCNTR (*((volatile uint32*)0xE6250A00UL))
#define CPG_WPCR (*((volatile uint32*)0xE6150004UL))
#define CPG_WPR (*((volatile uint32*)0xE6150000UL))
/* CPG protection */
#define CPG_PROTECTION 0
/* MFIS/ECM protection */
#define MFIS_ECM_PROTECTION 0
#define MFIS_ECM_PROTECTION_REGISTER 1
/* SCIF base */
#define SCIF_BASE_ADDR 0xE6E60000 /* SCIF0 */
#define SCIF_CLK_VALUE 0x0000
/* HSCIF base */
#define HSCIF_BASE_ADDR 0xE6540000 /* HSCIF0 */
#define HSCIF_CLK_VALUE 0x0000
/* Pclk(66MHz)/1, 115.2kbps*/
/* N = 66/(66/2*115200)*10^4-1 =17=> 0x11 */
#define SCIF_SCBRR_115200BPS (uint8)(0x11U)
/* Pclk(266MHz)/1, 921.6kbps*/
/* N = 266/(8*2*921600)*10^6-1 =17=> 0x11 */
#define HSCIF_SCBRR_921600BPS (uint8)(0x11U)
/* Pclk(266MHz)/1, 1.8432Mbps*/
/* N = 266/(8*2*1843200)*10^6-1 =8=> 0x08 */
#define HSCIF_SCBRR_1843200BPS (uint8)(0x08U)
/* Macro to select HWIP for MCAL console print function */
#define RCAR_SCIF 0xA5A5A5A5
#define RCAR_HSCIF 0x5A5A5A5A
#define RCAR_SCIF_115200BPS 0x00000000
#define RCAR_HSCIF_921600BPS 0x00000001
#define RCAR_HSCIF_1843200BPS 0x00000002
/* Select SCIF or HSCIF depended on each device */
#define RCAR_MCAL_LOG_SELECT RCAR_HSCIF_921600BPS
#if (RCAR_MCAL_LOG_SELECT == RCAR_SCIF_115200BPS)
#define CONSOLE_HWIP RCAR_SCIF
#define SCIF_BAUDRATE SCIF_SCBRR_115200BPS
#elif (RCAR_MCAL_LOG_SELECT == RCAR_HSCIF_921600BPS)
#define CONSOLE_HWIP RCAR_HSCIF
#define HSCIF_BAUDRATE HSCIF_SCBRR_921600BPS
#else
#define CONSOLE_HWIP RCAR_HSCIF
#define HSCIF_BAUDRATE HSCIF_SCBRR_1843200BPS
#endif
/* GIC base (address 0xF1000000UL in HW Manual is incorrect)*/
#define GICD_BASE 0xF0000000UL
#define GICR_BASE GICD_BASE
#define GICC_BASE
/* WDG */
#define RST_WDTRSTCR *((volatile uint32 *)(0xE6160010))
#define RST_WDTRSTCR_CODE ((uint32)(0xA55A << 16))
#define RST_WDTRSTCR_RWDT ((uint32)(1 << 0))
/* PFC base */
#define PFC_GP0_BASE (0xE6050000UL)
#define PFC_GP1_BASE (0xE6050800UL)
#define PFC_GP2_BASE (0xE6058000UL)
#define PFC_GP3_BASE (0xE6058800UL)
#define PFC_GP4_BASE (0xE6060000UL)
#define PFC_GP5_BASE (0xE6060800UL)
#define PFC_GP6_BASE (0xE6061000UL)
#define PFC_GP7_BASE (0xE6061800UL)
#define PFC_GP8_BASE (0xE6068000UL)
/* Secure */
#define SEC_SRC *((volatile uint32 *)(0xFFC43018))
#define CR_SECURE ((uint32)(1 << 0))
/* APMU */
#define APMU_BASE (0xE6170000UL)
/* Cortex-R Reset Control Register */
#define APMU_CR52RSTCTRL(r) (APMU_BASE + 0x0304 + (0x40 * r))
/* Cortex-R Boot Address Register Protected */
#define APMU_CR52BARP(r) (APMU_BASE + 0x033C + (0x40 * r))
/* Device Initialization */
void Device_Init();
#endif /* DEVICE_CFG_H_ */

View File

@@ -0,0 +1,167 @@
/*============================================================================*/
/* Project = AUTOSAR Renesas CPF MCAL Components */
/* Module = pfcmap.h */
/* SW-VERSION = 1.0.0 */
/*============================================================================*/
/* COPYRIGHT */
/*============================================================================*/
/* Copyright(c) 2021 Renesas Electronics Corporation. */
/*============================================================================*/
/* Purpose: */
/* Provision of external declaration of APIs and Service IDs. */
/* */
/*============================================================================*/
/* */
/* Unless otherwise agreed upon in writing between your company and */
/* Renesas Electronics Corporation the following shall apply! */
/* */
/* Warranty Disclaimer */
/* */
/* There is no warranty of any kind whatsoever granted by Renesas. Any */
/* warranty is expressly disclaimed and excluded by Renesas, either expressed */
/* or implied, including but not limited to those for non-infringement of */
/* intellectual property, merchantability and/or fitness for the particular */
/* purpose. */
/* */
/* Renesas shall not have any obligation to maintain, service or provide bug */
/* fixes for the supplied Product(s) and/or the Application. */
/* */
/* Each User is solely responsible for determining the appropriateness of */
/* using the Product(s) and assumes all risks associated with its exercise */
/* of rights under this Agreement, including, but not limited to the risks */
/* and costs of program errors, compliance with applicable laws, damage to */
/* or loss of data, programs or equipment, and unavailability or */
/* interruption of operations. */
/* */
/* Limitation of Liability */
/* */
/* In no event shall Renesas be liable to the User for any incidental, */
/* consequential, indirect, or punitive damage (including but not limited */
/* to lost profits) regardless of whether such liability is based on breach */
/* of contract, tort, strict liability, breach of warranties, failure of */
/* essential purpose or otherwise and even if advised of the possibility of */
/* such damages. Renesas shall not be liable for any services or products */
/* provided by third party vendors, developers or consultants identified or */
/* referred to the User by Renesas in connection with the Product(s) and/or */
/* the Application. */
/* */
/*============================================================================*/
/* Environment: */
/* Devices: CPF */
/*============================================================================*/
/*******************************************************************************
** Revision Control History **
*******************************************************************************/
/*
* 1.0.0: 06/11/2021 : Initial Version
*/
/******************************************************************************/
#ifndef PFCMAP_H
#define PFCMAP_H
/*******************************************************************************
** To support different AUTOSAR releases in a single package **
*******************************************************************************/
/*******************************************************************************
** Include Section **
*******************************************************************************/
#include "device_cfg.h"
/*******************************************************************************
** Version Information **
*******************************************************************************/
/*******************************************************************************
** MISRA C Rule Violations **
*******************************************************************************/
/*******************************************************************************
** Global Symbols **
*******************************************************************************/
static const unsigned int PRTGRP_OFFSET[] =
{
0x0000U, /* PRTGRP0 */
0x0000U, /* PRTGRP1 */
0x0800U, /* PRTGRP2 */
0x0800U, /* PRTGRP3 */
0x0000U, /* PRTGRP4 */
0x0800U, /* PRTGRP5 */
0x0000U, /* PRTGRP6 */
0x0800U, /* PRTGRP7 */
0x1000U, /* PRTGRP8 */
0x1800U, /* PRTGRP9 */
0x0000U, /* PRTGRP10 */
};
static const unsigned int PFC_GP_OFFSET[] =
{
0x8000U, /* PRTGRP0 */
0x0000U, /* PRTGRP1 */
0x0800U, /* PRTGRP2 */
0x8800U, /* PRTGRP3 */
0x0000U, /* PRTGRP4 */
0x0800U, /* PRTGRP5 */
0x8000U, /* PRTGRP6 */
0x8800U, /* PRTGRP7 */
0x9000U, /* PRTGRP8 */
};
#define PFC_GPSR_BmPlTt_OFFSET(m, l, t) (0x0040U + PFC_GROUPS_OFFSET(m, l, t))
/* PFC[0] = m=0~3, l=1, t=0~2 */
/* PFC[1] = m=0~3, l=0, t=0~2 */
/* PFC[2] = m=0~3, l=4,5, t=0~2 */
/* PFC[3] = m=0~3, l=6~9, t=0~2 */
#define PFC_IPnSR_BmPlTt_OFFSET(n, m, l, t) (0x0060U + (0x0004U * n) + PFC_GROUPS_OFFSET(m, l, t))
/* PFC[0] = m=0~3, l=1, t=0~2 */
/* PFC[1] = m=0~3, l=0, t=0~2 */
/* PFC[2] = m=0~3, l=4,5, t=0~2 */
/* PFC[3] = m=0~3, l=6~9, t=0~2 */
#define PFC_POC_BmPlTt_OFFSET(m, l, t) (0x00A0U + PFC_GROUPS_OFFSET(m, l, t))
/* PFC[0] = m=0~3, l=1, t=0~2 */
/* PFC[1] = m=0~3, l=0, t=0~2 */
/* PFC[2] = m=0~3, l=4,5, t=0~2 */
/* PFC[3] = m=0~3, l=6~9, t=0~2 */
#define PFC_DRVnCTRL_BmPlTt_OFFSET(n, m, l, t) (0x0080U + (0x0004U * n) + PFC_GROUPS_OFFSET(m, l, t))
#define PFC_GROUPS_OFFSET(m, l, t) (((m) * 0x2000U) + PRTGRP_OFFSET[l] + ((t) * 0x0200U))
/* R/W 32 LSI Multiplexed Pin Setting Mask Register */
#define PFC_PMMR(addr) ((addr & 0xFFFFF800U) + 0x0000UL)
#define PFC_GPn_BASE(n) (((n < 4)? PFC_GP0_BASE : PFC_GP4_BASE) + PFC_GP_OFFSET[n])
#define PFC_GPSR_GPn_DM0(n) (PFC_GPn_BASE(n) + PFC_GPSR_BmPlTt_OFFSET(0,0,0))
#define PFC_IPSRm_GPn_DM0(m, n) (PFC_GPn_BASE(n) + PFC_IPnSR_BmPlTt_OFFSET(m,0,0,0))
/* R/W 32 POC control register0 PortGroup 3 */
#define PFC_POC_GPn_DM0(n) (PFC_GPn_BASE(n) + PFC_POC_BmPlTt_OFFSET(0,0,0))
/* R/W 32 POC control register0 PortGroup 3 */
#define PFC_DRVCTRLm_GPn_DM0(m, n) (PFC_GPn_BASE(n) + PFC_DRVnCTRL_BmPlTt_OFFSET(m,0,0,0))
/*******************************************************************************
** Service IDs **
*******************************************************************************/
/*******************************************************************************
** Global Data Types **
*******************************************************************************/
/*******************************************************************************
** Extern declarations for Global Data **
*******************************************************************************/
/*******************************************************************************
** Function Prototypes **
*******************************************************************************/
#endif /* PFCMAP_H */
/*******************************************************************************
** End of File **
*******************************************************************************/

View File

@@ -0,0 +1,237 @@
/*===========================================================================*/
/* Project = AUTOSAR Renesas CPF MCAL Components */
/* Module = App_Sample.scat */
/* SW-VERSION = 1.0.8 */
/*===========================================================================*/
/* COPYRIGHT */
/*===========================================================================*/
/* Copyright(c) 2021-2024 Renesas Electronics Corporation. */
/*===========================================================================*/
/* Purpose: ARM linker file of R-Car V4H */
/* for sample application (all modules) and global application */
/*===========================================================================*/
/* */
/* Warranty Disclaimer */
/* */
/* Because the Product(s) is licensed free of charge, there is no warranty */
/* of any kind whatsoever and expressly disclaimed and excluded by Renesas, */
/* either expressed or implied, including but not limited to those for */
/* non-infringement of intellectual property, merchantability and/or */
/* fitness for the particular purpose. */
/* Renesas shall not have any obligation to maintain, service or provide bug */
/* fixes for the supplied Product(s) and/or the Application. */
/* */
/* Each User is solely responsible for determining the appropriateness of */
/* using the Product(s) and assumes all risks associated with its exercise */
/* of rights under this Agreement, including, but not limited to the risks */
/* and costs of program errors, compliance with applicable laws, damage to */
/* or loss of data, programs or equipment, and unavailability or */
/* interruption of operations. */
/* */
/* Limitation of Liability */
/* */
/* In no event shall Renesas be liable to the User for any incidental, */
/* consequential, indirect, or punitive damage (including but not limited */
/* to lost profits) regardless of whether such liability is based on breach */
/* of contract, tort, strict liability, breach of warranties, failure of */
/* essential purpose or otherwise and even if advised of the possibility of */
/* such damages. Renesas shall not be liable for any services or products */
/* provided by third party vendors, developers or consultants identified or */
/* referred to the User by Renesas in connection with the Product(s) and/or */
/* the Application. */
/* */
/*===========================================================================*/
/* Environment: */
/* Device: CPF */
/*===========================================================================*/
/******************************************************************************
** Revision Control History **
******************************************************************************/
/*
* 1.0.8: 25/12/2024 : Update address descriptor and data for of ETH module.
* 1.0.7: 23/02/2023 : Revert address descriptor of CRC module.
* 21/02/2023 : Add new ETH_PORT_DESCRIPTOR_0, ETH_PORT_DESCRIPTOR_1
* ETH_PORT_DESCRIPTOR_2 into URAM_DESCRIPTOR.
* Move ETH_PORT_RAM_0, ETH_PORT_RAM_1, ETH_PORT_RAM_2
* into URAM_DATA.
* Remove ETH_VAR_TX_RAM, ETH_VAR_RX_RAM unuse.
* 1.0.6: 05/12/2022 : Add new sections ".WDG_PUBLIC_CODE_ROM" and
* ".WDG_PRIVATE_CODE_ROM"
* 1.0.5: 10/10/2022 : Rename URAM area for ETH and CRC
* 1.0.4: 03/06/2022 : Add new sections ".bss.VAR_CLEARED_DESC_UNSPECIFIED"
* 1.0.3: 20/08/2022 : Add new sections ".data.VAR_NO_INIT_PTR" and
* ".constdata.CONFIG_DBTOC_DATA_UNSPECIFIED"
* 1.0.2: 07/04/2022 : Update boot address
* 1.0.1: 06/01/2022 : Update boot address
* 1.0.0: 06/11/2021 : Initial Version
*/
/*****************************************************************************/
RTOS 0xE2100000 0x100000
{
BOOT 0xE2100000
{
/**(InRoot$$Sections)*/
start.o
*(Veneer$$Code)
}
APP_CODE +0
{
.ANY (+RO-CODE) ; Application RO code (.text)
;ROM configure constants
.ANY (+RO-DATA) ; Application RO data (.constdata)
;ROM code
.ANY (.text.CODE_FAST)
.ANY (.text.CALLOUT_CODE)
.ANY (.text.CODE_SLOW)
.ANY (.text.APPL_CODE)
.ANY (.text.CODE)
.ANY (.CAN_PUBLIC_CODE_ROM)
.ANY (.CAN_PRIVATE_CODE_ROM)
.ANY (.WDG_PUBLIC_CODE_ROM)
.ANY (.WDG_PRIVATE_CODE_ROM)
.ANY (.CAN_APPL_CODE_ROM)
.ANY (.CAN_FAST_CODE_ROM)
.ANY (.ETH_PUBLIC_CODE_ROM)
.ANY (.ETH_PRIVATE_CODE_ROM)
.ANY (.ETH_FAST_CODE_ROM)
.ANY (.DEFAULT_CODE_ROM)
.ANY (.constdata.CONFIG_DATA_1)
.ANY (.constdata.CONFIG_DATA_8)
.ANY (.constdata.CONFIG_DATA_16)
.ANY (.constdata.CONFIG_DATA_32)
.ANY (.constdata.CONFIG_DATA_UNSPECIFIED)
.ANY (.ETH_CFG_DATA_UNSPECIFIED)
.ANY (.ETH_CFG_DBTOC_UNSPECIFIED)
.ANY (.constdata.CONFIG_DBTOC_DATA_UNSPECIFIED)
;ROM constants
.ANY (.constdata.CONST_1)
.ANY (.constdata.CONST_8)
.ANY (.constdata.CONST_16)
.ANY (.constdata.CONST_32)
.ANY (.constdata.CONST_UNSPECIFIED)
.ANY (.constdata.CONST_ROM_1BIT)
.ANY (.constdata.CONST_ROM_8BIT)
.ANY (.constdata.CONST_ROM_16BIT)
.ANY (.constdata.CONST_ROM_32BIT)
.ANY (.constdata.CONST_ROM_UNSPECIFIED)
.ANY (.constdata.CONST_ROM_1BIT)
.ANY (.constdata.CONST_ROM_8BIT)
.ANY (.constdata.CONST_ROM_16BIT)
.ANY (.constdata.CONST_ROM_32BIT)
.ANY (.CONST_FAR_ROM_1BIT)
.ANY (.CONST_FAR_ROM_8BIT)
.ANY (.CONST_FAR_ROM_16BIT)
.ANY (.CONST_FAR_ROM_32BIT)
.ANY (.CONST_FAR_ROM_UNSPECIFIED)
}
RW_DATA +0
{
.ANY (+RW)
;RAM variables initialized from ROM on reset
.ANY (.data.VAR_INIT_1)
.ANY (.data.VAR_INIT_8)
.ANY (.data.VAR_INIT_16)
.ANY (.data.VAR_INIT_32)
.ANY (.data.VAR_INIT_UNSPECIFIED)
.ANY (.CAN_CFG_RAM_UNSPECIFIED)
.ANY (.CAN_RSCAN_CFG_DATA_1BIT)
.ANY (.CAN_CFG_DATA_8BIT)
.ANY (.CAN_CFG_DATA_16BIT)
.ANY (.CAN_CFG_DATA_32BIT)
.ANY (.CAN_CFG_DATA_UNSPECIFIED)
.ANY (.CAN_CFG_DBTOC_UNSPECIFIED)
.ANY (.CAN_CFG_DBCC_UNSPECIFIED)
.ANY (.CAN_PUBLIC_CODE_ROM)
.ANY (.CAN_PRIVATE_CODE_ROM)
.ANY (.CAN_APPL_CODE_ROM)
.ANY (.CAN_FAST_CODE_ROM)
.ANY (.FAST_RAM_1BIT)
.ANY (.FAST_RAM_8BIT)
.ANY (.FAST_RAM_16BIT)
.ANY (.FAST_RAM_32BIT)
.ANY (.FAST_RAM_UNSPECIFIED)
.ANY (.RAM_1BIT)
.ANY (.RAM_8BIT)
.ANY (.RAM_16BIT)
.ANY (.RAM_32BIT)
.ANY (.RAM_UNSPECIFIED)
.ANY (.INIT_RAM_PTR)
} ; Application RW data (.data)
NO_INIT_DATA +0
{
;RAM variables not initialized
.ANY (.data.VAR_NO_INIT_1)
.ANY (.data.VAR_NO_INIT_8)
.ANY (.data.VAR_NO_INIT_16)
.ANY (.data.VAR_NO_INIT_32)
.ANY (.data.VAR_NO_INIT_UNSPECIFIED)
.ANY (.NOINIT_RAM_1BIT)
.ANY (.NOINIT_RAM_8BIT)
.ANY (.NOINIT_RAM_16BIT)
.ANY (.NOINIT_RAM_32BIT)
.ANY (.NOINIT_RAM_UNSPECIFIED)
.ANY (.data.VAR_NO_INIT_PTR)
}
ZI_DATA +0
{
.ANY (+ZI)
.ANY (.bss.VAR_CLEARED_1)
.ANY (.bss.VAR_CLEARED_8)
.ANY (.bss.VAR_CLEARED_16)
.ANY (.bss.VAR_CLEARED_32)
.ANY (.bss.VAR_CLEARED_UNSPECIFIED)
} ; Application ZI data (.bss)
HEAP +0 ALIGN 8 EMPTY 0x100 {}
HYP_STACK +0 ALIGN 8 EMPTY 0x10 {}
UND_STACK +0 ALIGN 8 EMPTY 0x10 {}
ABT_STACK +0 ALIGN 8 EMPTY 0x10 {}
SVC_STACK +0 ALIGN 8 EMPTY 0x100 {}
FIQ_STACK +0 ALIGN 8 EMPTY 0x100 {}
IRQ_STACK +0 ALIGN 8 EMPTY 0x1000 {}
SYS_STACK +0 ALIGN 8 EMPTY 0x1000 {}
}
; URAM area (need to reconsider when integrating)
URAM_ETH 0x46480000 0x740000
{
; User URAM
URAM_DATA +0 ALIGN 32
{
.ANY (.bss.VAR_CLEARED_USER_RAM_UNSPECIFIED)
.ANY (.bss.ETH_PORT_RAM_0)
.ANY (.bss.ETH_PORT_RAM_1)
.ANY (.bss.ETH_PORT_RAM_2)
} ; URAM area (data) cached
; ETH area descriptor
URAM_DESCRIPTOR 0x46780000
{
.ANY (.bss.VAR_CLEARED_DESCRIPTOR_32)
.ANY (.bss.ETH_VAR_DESC_RAM)
.ANY (.bss.ETH_PORT_DESCRIPTOR_0)
.ANY (.bss.ETH_PORT_DESCRIPTOR_1)
.ANY (.bss.ETH_PORT_DESCRIPTOR_2)
} ; URAM area - noncached (descriptor)
}
URAM_CRC 0x48320600 0x740000
{
; CRC area
DESC_DATA +0 ALIGN 16
{
.ANY (.bss.VAR_CLEARED_DESC_UNSPECIFIED)
} ; DESC area - noncached (descriptor)
}

View File

@@ -0,0 +1,209 @@
/*===========================================================================*/
/* Project = AUTOSAR Renesas CPF MCAL Components */
/* Module = App_Sample_db.scat */
/* SW-VERSION = 1.0.3 */
/*===========================================================================*/
/* COPYRIGHT */
/*===========================================================================*/
/* Copyright(c) 2021-2022 Renesas Electronics Corporation. */
/*===========================================================================*/
/* Purpose: ARM linker file of R-Car V4H */
/* for sample application (all modules) and global application */
/*===========================================================================*/
/* */
/* Warranty Disclaimer */
/* */
/* Because the Product(s) is licensed free of charge, there is no warranty */
/* of any kind whatsoever and expressly disclaimed and excluded by Renesas, */
/* either expressed or implied, including but not limited to those for */
/* non-infringement of intellectual property, merchantability and/or */
/* fitness for the particular purpose. */
/* Renesas shall not have any obligation to maintain, service or provide bug */
/* fixes for the supplied Product(s) and/or the Application. */
/* */
/* Each User is solely responsible for determining the appropriateness of */
/* using the Product(s) and assumes all risks associated with its exercise */
/* of rights under this Agreement, including, but not limited to the risks */
/* and costs of program errors, compliance with applicable laws, damage to */
/* or loss of data, programs or equipment, and unavailability or */
/* interruption of operations. */
/* */
/* Limitation of Liability */
/* */
/* In no event shall Renesas be liable to the User for any incidental, */
/* consequential, indirect, or punitive damage (including but not limited */
/* to lost profits) regardless of whether such liability is based on breach */
/* of contract, tort, strict liability, breach of warranties, failure of */
/* essential purpose or otherwise and even if advised of the possibility of */
/* such damages. Renesas shall not be liable for any services or products */
/* provided by third party vendors, developers or consultants identified or */
/* referred to the User by Renesas in connection with the Product(s) and/or */
/* the Application. */
/* */
/*===========================================================================*/
/* Environment: */
/* Device: CPF */
/*===========================================================================*/
/******************************************************************************
** Revision Control History **
******************************************************************************/
/*
* 1.0.3: 20/08/2021 : Add new sections ".data.VAR_NO_INIT_PTR" and
* ".constdata.CONFIG_DBTOC_DATA_UNSPECIFIED"
* 1.0.2: 07/04/2022 : Update boot address
* 1.0.1: 06/01/2022 : Update boot address
* 1.0.0: 06/11/2021 : Initial Version
*/
/*****************************************************************************/
RTOS 0xE2100000 0x100000
{
BOOT 0xE2100000
{
/**(InRoot$$Sections)*/
start.o
*(Veneer$$Code)
}
APP_CODE +0
{
.ANY (+RO-CODE) ; Application RO code (.text)
;ROM configure constants
.ANY (+RO-DATA) ; Application RO data (.constdata)
;ROM code
.ANY (.text.CODE_FAST)
.ANY (.text.CALLOUT_CODE)
.ANY (.text.CODE_SLOW)
.ANY (.text.APPL_CODE)
.ANY (.text.CODE)
.ANY (.CAN_PUBLIC_CODE_ROM)
.ANY (.CAN_PRIVATE_CODE_ROM)
.ANY (.CAN_APPL_CODE_ROM)
.ANY (.CAN_FAST_CODE_ROM)
.ANY (.ETH_PUBLIC_CODE_ROM)
.ANY (.ETH_PRIVATE_CODE_ROM)
.ANY (.ETH_FAST_CODE_ROM)
.ANY (.DEFAULT_CODE_ROM)
.ANY (.constdata.CONFIG_DATA_1)
.ANY (.constdata.CONFIG_DATA_8)
.ANY (.constdata.CONFIG_DATA_16)
.ANY (.constdata.CONFIG_DATA_32)
.ANY (.constdata.CONFIG_DATA_UNSPECIFIED)
.ANY (.ETH_CFG_DATA_UNSPECIFIED)
.ANY (.ETH_CFG_DBTOC_UNSPECIFIED)
.ANY (.constdata.CONFIG_DBTOC_DATA_UNSPECIFIED)
;ROM constants
.ANY (.constdata.CONST_1)
.ANY (.constdata.CONST_8)
.ANY (.constdata.CONST_16)
.ANY (.constdata.CONST_32)
.ANY (.constdata.CONST_UNSPECIFIED)
.ANY (.constdata.CONST_ROM_1BIT)
.ANY (.constdata.CONST_ROM_8BIT)
.ANY (.constdata.CONST_ROM_16BIT)
.ANY (.constdata.CONST_ROM_32BIT)
.ANY (.constdata.CONST_ROM_UNSPECIFIED)
.ANY (.constdata.CONST_ROM_1BIT)
.ANY (.constdata.CONST_ROM_8BIT)
.ANY (.constdata.CONST_ROM_16BIT)
.ANY (.constdata.CONST_ROM_32BIT)
.ANY (.CONST_FAR_ROM_1BIT)
.ANY (.CONST_FAR_ROM_8BIT)
.ANY (.CONST_FAR_ROM_16BIT)
.ANY (.CONST_FAR_ROM_32BIT)
.ANY (.CONST_FAR_ROM_UNSPECIFIED)
}
RW_DATA +0
{
.ANY (+RW)
;RAM variables initialized from ROM on reset
.ANY (.data.VAR_INIT_1)
.ANY (.data.VAR_INIT_8)
.ANY (.data.VAR_INIT_16)
.ANY (.data.VAR_INIT_32)
.ANY (.data.VAR_INIT_UNSPECIFIED)
.ANY (.CAN_CFG_RAM_UNSPECIFIED)
.ANY (.CAN_RSCAN_CFG_DATA_1BIT)
.ANY (.CAN_CFG_DATA_8BIT)
.ANY (.CAN_CFG_DATA_16BIT)
.ANY (.CAN_CFG_DATA_32BIT)
.ANY (.CAN_CFG_DATA_UNSPECIFIED)
.ANY (.CAN_CFG_DBTOC_UNSPECIFIED)
.ANY (.CAN_CFG_DBCC_UNSPECIFIED)
.ANY (.CAN_PUBLIC_CODE_ROM)
.ANY (.CAN_PRIVATE_CODE_ROM)
.ANY (.CAN_APPL_CODE_ROM)
.ANY (.CAN_FAST_CODE_ROM)
.ANY (.FAST_RAM_1BIT)
.ANY (.FAST_RAM_8BIT)
.ANY (.FAST_RAM_16BIT)
.ANY (.FAST_RAM_32BIT)
.ANY (.FAST_RAM_UNSPECIFIED)
.ANY (.RAM_1BIT)
.ANY (.RAM_8BIT)
.ANY (.RAM_16BIT)
.ANY (.RAM_32BIT)
.ANY (.RAM_UNSPECIFIED)
.ANY (.INIT_RAM_PTR)
} ; Application RW data (.data)
NO_INIT_DATA +0
{
;RAM variables not initialized
.ANY (.data.VAR_NO_INIT_1)
.ANY (.data.VAR_NO_INIT_8)
.ANY (.data.VAR_NO_INIT_16)
.ANY (.data.VAR_NO_INIT_32)
.ANY (.data.VAR_NO_INIT_UNSPECIFIED)
.ANY (.NOINIT_RAM_1BIT)
.ANY (.NOINIT_RAM_8BIT)
.ANY (.NOINIT_RAM_16BIT)
.ANY (.NOINIT_RAM_32BIT)
.ANY (.NOINIT_RAM_UNSPECIFIED)
.ANY (.data.VAR_NO_INIT_PTR)
}
ZI_DATA +0
{
.ANY (+ZI)
.ANY (.bss.VAR_CLEARED_1)
.ANY (.bss.VAR_CLEARED_8)
.ANY (.bss.VAR_CLEARED_16)
.ANY (.bss.VAR_CLEARED_32)
.ANY (.bss.VAR_CLEARED_UNSPECIFIED)
} ; Application ZI data (.bss)
HEAP +0 ALIGN 8 EMPTY 0x100 {}
HYP_STACK +0 ALIGN 8 EMPTY 0x10 {}
UND_STACK +0 ALIGN 8 EMPTY 0x10 {}
ABT_STACK +0 ALIGN 8 EMPTY 0x10 {}
SVC_STACK +0 ALIGN 8 EMPTY 0x100 {}
FIQ_STACK +0 ALIGN 8 EMPTY 0x100 {}
IRQ_STACK +0 ALIGN 8 EMPTY 0x1000 {}
SYS_STACK +0 ALIGN 8 EMPTY 0x1000 {}
}
; URAM area for ETH application (need to reconsider when integrating)
ETH 0x48320600 0x740000
{
URAM_DATA +0 ALIGN 32
{
.ANY (.bss.VAR_CLEARED_USER_RAM_UNSPECIFIED)
} ; URAM area (data)
URAM_DESCRIPTOR 0x48A40000
{
.ANY (.bss.VAR_CLEARED_DESCRIPTOR_32)
.ANY (.bss.ETH_VAR_DESC_RAM)
.ANY (.bss.ETH_PORT_RAM_0)
.ANY (.bss.ETH_PORT_RAM_1)
.ANY (.bss.ETH_PORT_RAM_2)
.ANY (.bss.ETH_VAR_TX_RAM)
.ANY (.bss.ETH_VAR_RX_RAM)
} ; URAM area - noncached (descriptor)
}

View File

@@ -0,0 +1,546 @@
################################################################################
# Common part of the Makefile to compile and build the sample application #
# Software Component (For Test purposes only) #
# Compatible with GNU Make 3.81 for Win32. #
################################################################################
################################################################################
# Subroutine to convert Module Name To All Upper Case for Naming convention.
uc = $(subst a,A,$(subst b,B,$(subst c,C,$(subst d,D,$(subst e,E,$(subst f,F,$(subst g,G,$(subst h,H,$(subst i,I,$(subst j,J,$(subst k,K,$(subst l,L,$(subst m,M,$(subst n,N,$(subst o,O,$(subst p,P,$(subst q,Q,$(subst r,R,$(subst s,S,$(subst t,T,$(subst u,U,$(subst v,V,$(subst w,W,$(subst x,X,$(subst y,Y,$(subst z,Z,$1))))))))))))))))))))))))))
################################################################################
################################################################################
# Subroutine to convert Module Name To Lower Case
#
lc = $(subst A,a,$(subst B,b,$(subst C,c,$(subst D,d,$(subst E,e,$(subst F,f,$(subst G,g,$(subst H,h,$(subst I,i,$(subst J,j,$(subst K,k,$(subst L,l,$(subst M,m,$(subst N,n,$(subst O,o,$(subst P,p,$(subst Q,q,$(subst R,r,$(subst S,s,$(subst T,t,$(subst U,u,$(subst V,v,$(subst W,w,$(subst X,x,$(subst Y,y,$(subst Z,z,$1))))))))))))))))))))))))))
################################################################################
################################################################################
# Macro for Module names as per Naming Convention
#
MODULE_NAME = $(call lc,$(MODULE))
MSN_MODULE_NAME = $(call uc,$(MODULE))
ifeq (,$(findstring "cdd",$(MODULE_NAME)))
replace = $(subst cdd,CDD_,$1)
CDD_MODULE_NAME = $(call replace,$(MODULE_NAME))
MSN_NAME = $(call uc,$(CDD_MODULE_NAME))
else
MSN_NAME = $(MSN_MODULE_NAME)
endif
################################################################################
################################################################################
# Get name of the current application
#
CURRENT_APPL = App_$(MSN_NAME)
CURRENT_APPL2 = App_$(MSN_MODULE_NAME)
# Get the project directory into variable "PROJECT_ROOT"
PROJECT_ROOT := $(subst /,\,$(abspath ../../../../..))
# Get the current working directory into variable "SPECIFIC_APPL_ROOT_PATH"
SPECIFIC_APPL_ROOT_PATH := $(subst /,\,$(abspath .))
## Set the Cpu Core Based on Variant (g4mh, cr52):
CPU_CORE = cr52
################################################################################
################################################################################
# Macros for common path
#
ifeq (,$(filter $(MSN_MODULE_NAME),CAN ETH))
EXE = $(CURRENT_APPL2)_$(MICRO_SUB_VARIANT)_Sample.$(EXE_FILE_SUFFIX)
else
EXE = $(CURRENT_APPL)_$(MICRO_SUB_VARIANT)_Sample.$(EXE_FILE_SUFFIX)
endif
# Get the common sample application directory into variable "COMMON_SAMPLE_CORE_PATH"
COMMON_SAMPLE_CORE_PATH = $(PROJECT_ROOT)\$(MICRO_FAMILY)\modules\$(MODULE_NAME)\sample_application
# Get the current working directory into variable "SAMPLE_CORE_PATH"
SAMPLE_CORE_PATH = $(PROJECT_ROOT)\$(MICRO_FAMILY)\modules\$(MODULE_NAME)\sample_application\$(MICRO_SUB_VARIANT)
# Get the current working directory into variable "STUBS"
STUBS_PATH = $(PROJECT_ROOT)\$(MICRO_FAMILY)\common\generic\stubs\$(AUTOSAR_VERSION)
# Get current configuration path
MODULE_CONFIG_PATH = $(SAMPLE_CORE_PATH)\$(AUTOSAR_VERSION)
################################################################################
# Macros for build
#
LIBRARIES_TO_BUILD =
INSTANCE_OBJECTS =
#OBJECTS_LINK_ONLY =
OBJECT_OUTPUT_PATH = $(PROJECT_ROOT)\$(MICRO_FAMILY)\modules\$(MODULE_NAME)\sample_application\$(MICRO_SUB_VARIANT)\obj\arm
GENERATED_SOURCE_FILES =
CC_FILES_TO_BUILD =
CPP_FILES_TO_BUILD =
ASM_FILES_TO_BUILD =
CC_SRC_PATH =
CC_INCLUDE_PATH =
CPP_INCLUDE_PATH =
ASM_INCLUDE_PATH =
PREPROCESSOR_DEFINES =
LIBRARIES_LINK_ONLY =
DIRECTORIES_TO_CREATE =
DEPEND_GCC_OPTS =
MAKE_CLEAN_RULES =
MAKE_GENERATE_RULES =
MAKE_COMPILE_RULES =
MAKE_DEBUG_RULES =
MAKE_CONFIG_RULES =
MAKE_ADD_RULES =
MAKE_DEBUG_RULES += debug_base_make
COMMON_INFO=COMPILER_LINKER_ASSEMBLER_INCLUDES
.PHONY: $(MAKE_CLEAN_RULES) $(MAKE_GENERATE_RULES) $(MAKE_COMPILE_RULES) \
$(MAKE_DEBUG_RULES) $(MAKE_CONFIG_RULES) $(MAKE_ADD_RULES) \
################################################################################
################################################################################
# ARM Compiler for CR
#
COMPILER_CORE_PATH_COMMON = $(PROJECT_ROOT)\$(MICRO_FAMILY)\common\generic\compiler
include $(COMPILER_CORE_PATH_COMMON)\$(AUTOSAR_VERSION)\arm\make\compiler_rcar_r$(AUTOSAR_VERSION)_defs.mak
include $(COMPILER_CORE_PATH_COMMON)\common\arm\make\arm_rcar_rules.mak
COMPILER_CORE_PATH_DEVICE = $(PROJECT_ROOT)\$(MICRO_FAMILY)\$(MICRO_VARIANT)\common_family\compiler
COMPILER_CORE_FILES += \
$(COMPILER_CORE_PATH_DEVICE)\common\include \
$(COMPILER_CORE_PATH_DEVICE)\common\include\cfg \
$(COMPILER_CORE_PATH_DEVICE)\$(AUTOSAR_VERSION)\include \
$(COMPILER_CORE_PATH_COMMON)\common\arm\include \
$(COMPILER_CORE_PATH_COMMON)\common\arm\include\cfg \
$(COMPILER_CORE_PATH_COMMON)\$(AUTOSAR_VERSION)\arm\include \
################################################################################
# Path to Linker definition files for Sample Application
LNKFILE = $(PROJECT_ROOT)\$(MICRO_FAMILY)\$(MICRO_VARIANT)\Global_Sample_Application\make\arm\App_Sample.scat
LNKFILE_DB = $(PROJECT_ROOT)\$(MICRO_FAMILY)\$(MICRO_VARIANT)\Global_Sample_Application\make\arm\App_Sample_db.scat
###############################################################################
# Define ISR identifier of each module in vector table
#
CFLAGS += -D$(MSN_MODULE_NAME)_MODULE_SAMPLE
###############################################################################
# Define MCAL driver log print function using
#
ifeq ($(USE_LOG_PRINT),yes)
CFLAGS += -DMCAL_LOG_PRINT
endif
################################################################################
# Specify base address specified for Motorola S-record file.
SFLAGS += --base=0xE2100000
###############################################################################
# Define device identifier
#
CFLAGS += -DE2x=0
CFLAGS += -DU2x=0
CFLAGS += -DV4H=1
CFLAGS += -DDEVICE=V4H
ifeq ($(MSN_MODULE_NAME),ETH)
CFLAGS += -DETH_AVB_IF
endif
ifeq ($(MSN_MODULE_NAME),SPI)
CFLAGS += -DSPI_MSIOF
endif
################################################################################
################################################################################
# Modules to be included in the project #
################################################################################
# Get BSWMDT path
MODULE_BSWMDT_CONFIG_PATH = $(PROJECT_ROOT)\$(MICRO_FAMILY)\modules\$(MODULE_NAME)\generator\$(MICRO_SUB_VARIANT)
# Include make file for module
include $(PROJECT_ROOT)\$(MICRO_FAMILY)\modules\$(MODULE_NAME)\sample_application\make\arm\$(CURRENT_APPL)_Common_Sample.mak
###############################################################################
################################################################################
# Macros for gentool
#
#Common Generator
COMMON_TOOL_FILE = $(SPECIFIC_APPL_ROOT_PATH)\..\..\..\..\common\generic\generator\MCALConfGen.exe
# Get TRXML path
TRXML_CONFIG_PATH = $(PROJECT_ROOT)\$(MICRO_FAMILY)\$(MICRO_VARIANT)\common_family\generator\arm
# Path to TRXML Configuration File which is required for Test Application
TRXML_CONFIG_FILE = $(TRXML_CONFIG_PATH)\Sample_Application_$(MICRO_VARIANT).trxml
# Path to BSWMDT Configuration File which is required for Module Sample Application
MODULE_BSWMDT_CONFIG_FILE = $(MODULE_BSWMDT_CONFIG_PATH)\R1911_$(MSN_NAME)_$(MICRO_SUB_VARIANT)_BSWMDT.arxml
# Get current configuration file
MODULE_CONFIG_FILE = $(MODULE_CONFIG_PATH)\config\App_$(MSN_NAME)_$(MICRO_SUB_VARIANT)_Sample.arxml
# MCU arxml file path
PORT_CONFIG_PATH = $(PROJECT_ROOT)\$(MICRO_FAMILY)\$(MICRO_VARIANT)\common_family\config\$(MICRO_SUB_VARIANT)\$(AUTOSAR_VERSION)
PORT_CONFIG_FILE = $(PORT_CONFIG_PATH)\PORT_$(MSN_NAME)_$(DEVICE_NAME).arxml
# MCU arxml file path
MCU_CONFIG_PATH = $(PROJECT_ROOT)\$(MICRO_FAMILY)\$(MICRO_VARIANT)\common_family\config\$(MICRO_SUB_VARIANT)\$(AUTOSAR_VERSION)
MCU_CONFIG_FILE = $(MCU_CONFIG_PATH)\MCU_$(MSN_NAME)_$(DEVICE_NAME).arxml
# Path to ECUM Configuration File which is required for this module
ECUM_CONFIG_PATH = $(STUBS_PATH)\EcuM
ECUM_CONFIG_FILE = $(ECUM_CONFIG_PATH)\xml\EcuM_$(MSN_NAME_UFC).arxml
# Path to OS Configuration File which is required for this module
OS_CONFIG_FILE = $(STUBS_PATH)\Os\xml\Os_$(MSN_NAME_UFC).arxml
# Path to DEM Configuration File which is required for Module Sample Application
DEM_CONFIG_FILE = $(STUBS_PATH)\Dem\xml\Dem_$(MSN_NAME_UFC).arxml
################################################################################
################################################################################
# AUTOSAR TYPES Path
#
AUTOSARTYPE_PATH = $(PROJECT_ROOT)\common\make
include $(AUTOSARTYPE_PATH)\$(AUTOSAR_VERSION)\autosartypes_r$(AUTOSAR_VERSION)_defs.mak
################################################################################
################################################################################
# PLATFORM TYPES Path
#
PLATFORM_PATH = $(PROJECT_ROOT)\$(MICRO_FAMILY)\common\generic\make
include $(PLATFORM_PATH)\common\platformtypes_common_defs.mak
include $(PLATFORM_PATH)\$(AUTOSAR_VERSION)\platformtypes_r$(AUTOSAR_VERSION)_defs.mak
################################################################################
################################################################################
# STARTUP $(MICRO_SUB_VARIANT) CORE PATH
#
STARTUP_CORE_PATH_COMMON = $(PROJECT_ROOT)\$(MICRO_FAMILY)\common\generic
STARTUP_CORE_PATH_SPECIFIC = $(PROJECT_ROOT)\$(MICRO_FAMILY)\$(MICRO_VARIANT)\common_family
include $(STARTUP_CORE_PATH_SPECIFIC)\make\arm\startup_arm_$(MICRO_VARIANT)_defs.mak
include $(STARTUP_CORE_PATH_SPECIFIC)\make\arm\startup_arm_$(MICRO_VARIANT)_rules.mak
################################################################################
# Path to Linker Directives Files
#
LNKFILE = $(PROJECT_ROOT)\$(MICRO_FAMILY)\$(MICRO_VARIANT)\common_family\make\arm\App_Sample.scat
LNKFILE_DB = $(PROJECT_ROOT)\$(MICRO_FAMILY)\$(MICRO_VARIANT)\common_family\make\arm\App_Sample_db.scat
################################################################################
# Include generated source files list to the global "C" file list #
################################################################################
CC_FILES_TO_BUILD += $(GENERATED_SOURCE_FILES)
################################################################################
# Include sample app source files list to the global "C" file list #
################################################################################
################################################################################
# REGISTRY common sample app
#
CC_INCLUDE_PATH += $(COMMON_SAMPLE_CORE_PATH)\include
CC_SRC_PATH += $(COMMON_SAMPLE_CORE_PATH)\src
CPP_INCLUDE_PATH += $(COMMON_SAMPLE_CORE_PATH)\include
ASM_INCLUDE_PATH +=
PREPROCESSOR_DEFINES +=
###############################################################################
# REGISTRY device sample app
#
CC_INCLUDE_PATH += $(SAMPLE_CORE_PATH)\include
CC_SRC_PATH += $(SAMPLE_CORE_PATH)\src
CPP_INCLUDE_PATH += $(SAMPLE_CORE_PATH)\include
CC_INCLUDE_PATH += $(SAMPLE_CORE_PATH)\include\arm
CC_SRC_PATH += $(SAMPLE_CORE_PATH)\src\arm
CPP_INCLUDE_PATH += $(SAMPLE_CORE_PATH)\include\arm
ASM_INCLUDE_PATH +=
PREPROCESSOR_DEFINES +=
################################################################################
# Common SINGLE CORE SAMPLE
#
ifneq ($(MODULE_USE_MULTIINSTANCE),yes)
ifeq (,$(filter $(MSN_MODULE_NAME),DIO MCU PORT))
CC_FILES_TO_BUILD += \
$(COMMON_SAMPLE_CORE_PATH)\src\$(CURRENT_APPL)_Common_Sample.c
endif
###############################################################################
# Common MULTI CORE SAMPLE
#
else
CC_FILES_TO_BUILD += \
$(COMMON_SAMPLE_CORE_PATH)\src\$(CURRENT_APPL)_Multi_Sample.c
ifeq ($(MODULE_USE_INSTANCE0),yes)
CC_FILES_TO_BUILD += \
$(COMMON_SAMPLE_CORE_PATH)\src\$(CURRENT_APPL)_Common_Sample_0.c
endif
ifeq ($(MODULE_USE_INSTANCE1),yes)
CC_FILES_TO_BUILD += \
$(COMMON_SAMPLE_CORE_PATH)\src\$(CURRENT_APPL)_Common_Sample_1.c
endif
# end of ($(MODULE_USE_MULTIINSTANCE),yes)
endif
###############################################################################
# Device SINGLE SAMPLE APP
#
ifeq (,$(filter $(MSN_MODULE_NAME),CAN ETH CDDICCOM GPT DIO PORT MCU CDDIIC CDDTHS CDDIPMMU CDDCRC CDDEMM CDDRFSO))
CC_FILES_TO_BUILD += \
$(SAMPLE_CORE_PATH)\src\$(CURRENT_APPL)_$(MICRO_SUB_VARIANT)_Sample.c
else
CC_FILES_TO_BUILD += \
$(SAMPLE_CORE_PATH)\src\arm\$(CURRENT_APPL)_$(MICRO_SUB_VARIANT)_Sample.c
endif
###############################################################################
CPP_FILES_TO_BUILD +=
ASM_FILES_TO_BUILD +=
LIBRARIES_LINK_ONLY +=
OBJECTS_LINK_ONLY +=
GENERATED_SOURCE_FILES +=
MAKE_CLEAN_RULES +=
MAKE_GENERATE_RULES +=
MAKE_DEBUG_RULES += debug_common_appl_makefile
MAKE_CONFIG_RULES +=
###############################################################################
# Command to print debug information
debug_common_appl_makefile:
@echo COMMON_SAMPLE_CORE_PATH = $(COMMON_SAMPLE_CORE_PATH)
################################################################################
# End of Include sample app source files list to the global "C" file list #
################################################################################
################################################################################
# Search path for source and header files (For Make utility) #
################################################################################
VPATH=$(CC_SRC_PATH) $(CC_INCLUDE_PATH) $(OBJECT_OUTPUT_PATH)
################################################################################
# Create list of object files from source files #
################################################################################
OBJECT_FILES_BUILT := $(subst \,/, $(CC_FILES_TO_BUILD))
OBJECT_FILES_BUILT := $(subst :,/, $(OBJECT_FILES_BUILT))
OBJECT_FILES_BUILT := $(notdir $(OBJECT_FILES_BUILT))
OBJECT_FILES_BUILT := $(subst .$(C_FILE_SUFFIX),.$(OBJ_FILE_SUFFIX), $(OBJECT_FILES_BUILT))
OBJECT_FILES_BUILT += $(INSTANCE_OBJECTS)
OBJECT_PATH_FILES_BUILT := \
$(addprefix $(OBJECT_OUTPUT_PATH)\, $(OBJECT_FILES_BUILT))
################################################################################
# Create list of object files from assembly files #
################################################################################
ASM_OBJECT_FILES_BUILT := $(subst \,/, $(ASM_FILES_TO_BUILD))
ASM_OBJECT_FILES_BUILT := $(subst :,/, $(ASM_OBJECT_FILES_BUILT))
ASM_OBJECT_FILES_BUILT := $(notdir $(ASM_OBJECT_FILES_BUILT))
ASM_OBJECT_FILES_BUILT := \
$(subst .$(ASM_FILE_SUFFIX),.$(ASM_OBJ_FILE_SUFFIX), $(ASM_OBJECT_FILES_BUILT))
ASM_OBJECT_PATH_FILES_BUILT := $(ASM_OBJECT_FILES_BUILT)
ASM_OBJECT_PATH_FILES_BUILT := \
$(addprefix $(OBJECT_OUTPUT_PATH)\, $(ASM_OBJECT_FILES_BUILT))
OBJECT_PATH_FILES_BUILT += $(ASM_OBJECT_PATH_FILES_BUILT)
################################################################################
# Include auto-generated dependencies #
################################################################################
ifeq ($(findstring clean,$(MAKECMDGOALS)),)
OBJECT_DEPS := $(OBJECT_PATH_FILES_BUILT)
OBJECT_DEPS := $(OBJECT_DEPS:.$(OBJ_FILE_SUFFIX)=.d)
OBJECT_DEPS := $(OBJECT_DEPS:.$(ASM_OBJ_FILE_SUFFIX)=.d)
-include $(OBJECT_DEPS)
endif
################################################################################
# Remove the path from Source file names #
################################################################################
CC_FILES_BUILT := $(subst \,/, $(CC_FILES_TO_BUILD))
CC_FILES_BUILT := $(subst :,/, $(CC_FILES_BUILT))
CC_FILES_BUILT := $(notdir $(CC_FILES_BUILT))
################################################################################
# Remove the path from Source file names #
################################################################################
ASM_FILES_BUILT := $(subst \,/, $(ASM_FILES_TO_BUILD))
ASM_FILES_BUILT := $(subst :,/, $(ASM_FILES_BUILT))
ASM_FILES_BUILT := $(notdir $(ASM_FILES_BUILT))
################################################################################
# Prefix -I to all include paths (required for compiler) #
################################################################################
COMPILER_INCLUDE := $(patsubst %,-I%,$(CC_INCLUDE_PATH))
ASSEMBLER_INCLUDE := $(patsubst %,-I%,$(ASM_INCLUDE_PATH))
################################################################################
# Command to link all the generated object files and generate exe/S-Record #
################################################################################
$(EXE):$(COMMON_INFO) $(ASM_OBJECT_FILES_BUILT) $(LNKFILE)
@echo [ASSEMBLY]... Done
@echo --------------------------------------------------------------------
@echo [COMPILER] $(CC)
@echo [FLAGS] $(CFLAGS)
@echo [COMPILING]...
@echo $(CC_FILES_TO_BUILD)
@echo $(subst \,/, $(CC_FILES_TO_BUILD)) > list_file_to_build
@$(CC) $(CFLAGS) $(COMPILER_INCLUDE) @list_file_to_build
@cmd /C move *.o $(OBJECT_OUTPUT_PATH) \>list_log
@cmd /C move *.d $(OBJECT_OUTPUT_PATH) \>list_log
@cmd /C del /q list_*
@echo [COMPILATION]... Done
@echo --------------------------------------------------------------------
@echo [LINKER] $(LINKER)
@echo [FLAGS] $(LFLAGS)
@echo --scatter=$(LNKFILE)
@echo --list="$(OBJECT_OUTPUT_PATH)\$(CURRENT_APPL)_Sample.$(LST_FILE_SUFFIX)"
@echo -o "$(OBJECT_OUTPUT_PATH)\$(EXE)"
@echo [LINKING]...
@echo $(OBJECT_PATH_FILES_BUILT)
@$(LINKER) --scatter=$(LNKFILE) $(LFLAGS) $(OBJECT_PATH_FILES_BUILT) \
$(OBJECTS_LINK_ONLY) $(STD_LIBRARY) \
--list="$(OBJECT_OUTPUT_PATH)\$(CURRENT_APPL)_Sample.$(LST_FILE_SUFFIX)" \
-o "$(OBJECT_OUTPUT_PATH)\$(EXE)"
@echo [LINK]... Done
@echo --------------------------------------------------------------------
@echo [S-REC GENERATOR] $(CONVERTER)
@echo [FLAGS] $(SFLAGS) --output="$(OBJECT_OUTPUT_PATH)\$(CURRENT_APPL_SRECORD).$(S_RECORD_SUFFIX)"
@echo "$(OBJECT_OUTPUT_PATH)\$(EXE)"
@echo [GENERATING S-RECORD]...
@$(CONVERTER) $(SFLAGS) \
--output="$(OBJECT_OUTPUT_PATH)\$(CURRENT_APPL_SRECORD).$(S_RECORD_SUFFIX)" \
"$(OBJECT_OUTPUT_PATH)\$(EXE)"
@echo [GENERATION]... Done
################################################################################
# Command to generate object files from all dependent source files #
################################################################################
%.$(OBJ_FILE_SUFFIX) : %.$(C_FILE_SUFFIX)
@echo --------------------------------------------------------------------
@echo Compiling $< ...
@echo Generating $(OBJECT_OUTPUT_PATH)\$@ ...
$(CC) $(CFLAGS) $(COMPILER_INCLUDE) $< -o $(OBJECT_OUTPUT_PATH)\$@
@echo Done ...
################################################################################
# List General Info at the beginning of compilation process #
################################################################################
COMPILER_LINKER_ASSEMBLER_INCLUDES:
@echo --------------------------------------------------------------------
@echo [INCLUDES]
@echo $(COMPILER_INCLUDE)
@echo --------------------------------------------------------------------
@echo [AAA] $(LNKFILE)
@echo [FLAGS] $(AFLAGS)
@echo [ASSEMBLING]...
################################################################################
# Command to generate object files from specific assembly files #
################################################################################
%.$(ASM_OBJ_FILE_SUFFIX) : %.$(ASM_FILE_SUFFIX)
@echo $<
@$(ASM) $(AFLAGS) $(COMPILER_INCLUDE) $< -o $(OBJECT_OUTPUT_PATH)\$@
################################################################################
# Command to clean the generated files #
################################################################################
clean: $(MAKE_CLEAN_RULES)
################################################################################
# Command to generate the configuration files #
################################################################################
config: $(MAKE_CONFIG_RULES)
################################################################################
# Command to clean the generated object files #
################################################################################
clean_objs:
@if exist $(OBJECT_OUTPUT_PATH)\*.$(OBJ_FILE_SUFFIX) del /Q $(OBJECT_OUTPUT_PATH)\*.$(OBJ_FILE_SUFFIX)
################################################################################
# Command to clean all the files in the output folder #
################################################################################
clean_all:
@if exist $(OBJECT_OUTPUT_PATH)\*.* del /Q $(OBJECT_OUTPUT_PATH)\*.*
################################################################################
# Command to print debug information #
################################################################################
debug_base_make:
@echo PROJECT_ROOT = $(PROJECT_ROOT)
@echo SPECIFIC_APPL_ROOT_PATH = $(SPECIFIC_APPL_ROOT_PATH)
@echo OBJECT_OUTPUT_PATH = $(OBJECT_OUTPUT_PATH)
@echo STARTUP_CORE_PATH = $(STARTUP_CORE_PATH)
@echo ARM_CORE_PATH = $(ARM_CORE_PATH)
@echo $(MSN_MODULE_NAME)_CORE_PATH = $($(MSN_MODULE_NAME)_CORE_PATH)
@echo AUTOSARTYPE_CORE_PATH = $(AUTOSARTYPE_CORE_PATH)
@echo CC_INCLUDE_PATH = $(CC_INCLUDE_PATH)
@echo CC_FILES_TO_BUILD = $(CC_FILES_TO_BUILD)
@echo COMMON_SAMPLE_CORE_PATH = $(COMMON_SAMPLE_CORE_PATH)
@echo $(MSN_MODULE_NAME)_CONFIG_PATH = $($(MSN_MODULE_NAME)_CONFIG_PATH)
@echo $(MSN_MODULE_NAME)_CONFIG_FILE = $($(MSN_MODULE_NAME)_CONFIG_FILE)
@echo STUBS_PATH = $(STUBS_PATH)
@echo TRXML_CONFIG_PATH = $(TRXML_CONFIG_PATH)
@echo TRXML_CONFIG_FILE = $(TRXML_CONFIG_FILE)
@echo $(MSN_MODULE_NAME)_BSWMDT_CONFIG_PATH = $($(MSN_MODULE_NAME)_BSWMDT_CONFIG_PATH)
@echo $(MSN_MODULE_NAME)_BSWMDT_CONFIG_FILE = $($(MSN_MODULE_NAME)_BSWMDT_CONFIG_FILE)
@echo LNKFILE = $(LNKFILE)
@echo $(MSN_MODULE_NAME)_DB = $($(MSN_MODULE_NAME)_DB)
@echo LIBRARIES_TO_BUILD = $(LIBRARIES_TO_BUILD)
@echo OBJECTS_LINK_ONLY = $(OBJECTS_LINK_ONLY)
@echo GENERATED_SOURCE_FILES = $(GENERATED_SOURCE_FILES)
@echo CPP_FILES_TO_BUILD = $(CPP_FILES_TO_BUILD)
@echo ASM_FILES_TO_BUILD = $(ASM_FILES_TO_BUILD)
@echo OBJECT_PATH_FILES_BUILT = $(OBJECT_PATH_FILES_BUILT)
@echo CPP_INCLUDE_PATH = $(CPP_INCLUDE_PATH)
@echo ASM_INCLUDE_PATH = $(ASM_INCLUDE_PATH)
@echo PREPROCESSOR_DEFINES = $(PREPROCESSOR_DEFINES)
@echo LIBRARIES_LINK_ONLY = $(LIBRARIES_LINK_ONLY)
@echo DIRECTORIES_TO_CREATE = $(DIRECTORIES_TO_CREATE)
@echo DEPEND_GCC_OPTS = $(DEPEND_GCC_OPTS)
@echo MAKE_CLEAN_RULES = $(MAKE_CLEAN_RULES)
@echo MAKE_GENERATE_RULES = $(MAKE_GENERATE_RULES)
@echo MAKE_COMPILE_RULES = $(MAKE_COMPILE_RULES)
@echo MAKE_DEBUG_RULES = $(MAKE_DEBUG_RULES)
@echo MAKE_CONFIG_RULES = $(MAKE_CONFIG_RULES)
@echo MAKE_ADD_RULES = $(MAKE_ADD_RULES)
@echo CC_FILES_BUILT = $(CC_FILES_BUILT)
@echo OBJECT_FILES_BUILT = $(OBJECT_FILES_BUILT)
@echo ASM_OBJECT_FILES_BUILT = $(ASM_OBJECT_FILES_BUILT)
@echo VPATH = $(VPATH)
@echo EXE = $(EXE)
@echo COMPILER_INCLUDE = $(COMPILER_INCLUDE)
##############################################################################
# End of the Base Make script #
##############################################################################

View File

@@ -0,0 +1,307 @@
@echo off
setlocal EnableDelayedExpansion
set Filename=%~n0
echo ***************************************************************************
echo Run %Filename% ...
echo ***************************************************************************
echo.
IF "%GNUMAKE%" == "" (GOTO :noGnuMake) ELSE (GOTO :GnuMake)
:noGnuMake
echo If you have make.exe located in a different directory
echo then your standard path, please add a local
echo user variable named 'GNUMAKE' to your Windows
echo environment variables and specified the location
echo of make.exe by using this variable.
echo.
echo Your current path variable is
echo.
echo %path%
echo.
echo ***************************************************************************
GOTO :continue
:GnuMake
set path=%GNUMAKE%
echo Found user variable GNUMAKE ...
echo ***************************************************************************
echo Temporary modify path variable to be sure to use correct make, shell...
echo path = %path%
echo ***************************************************************************
GOTO :continue
:continue
SETLOCAL
:: set root folder
SET ROOT_FOLDER=..\..\..\..\..
::Specify the Family and Micro Variant (not change)
SET MICRO_FAMILY=rel
SET MICRO_VARIANT=V4H
SET MICRO_SOC=RCar
::CPU Option
:: CPUn_OPTION is CPUn_USED when the CPUn used
SET CPU0_OPTION=CPU0_USED
SET CPU1_OPTION=CPU1_NOT_USED
SET CPU2_OPTION=CPU2_NOT_USED
SET CPU3_OPTION=CPU3_NOT_USED
IF "%COMPILER_INSTALL_DIR%"=="" (
SET COMPILER_INSTALL_DIR=C:\ARMCompiler6.16.2\bin
)
IF /i "%1"=="DisplEnv" (
GOTO :Display_Env
)
IF /i "%1"=="" (
GOTO :Help
)
SET MODULE=%1
IF "%2" == "4.3.1" (
SET AUTOSAR_VERSION=4_3_1
)ELSE (
IF "%2" == "4.2.2" (
SET AUTOSAR_VERSION=4_2_2
)ELSE (
IF "%2" == "R19-11" (
SET AUTOSAR_VERSION=19_11
)ELSE (
SET AUTOSAR_VERSION=%2
)
)
)
SET DEVICE_NAME=%3
SET MODULE_USE_MULTIINSTANCE=%4
IF "%~4" == "" (
SET MODULE_USE_MULTIINSTANCE=no
)ELSE (
IF /I "%MODULE_USE_MULTIINSTANCE%" NEQ "yes" IF /I "%MODULE_USE_MULTIINSTANCE%" NEQ "no" (
GOTO :Help
)
)
SET MODULE_USE_LOG_PRINT=%5
IF "%~5" == "" (
SET MODULE_USE_LOG_PRINT=yes
)ELSE (
IF /I "%MODULE_USE_LOG_PRINT%" NEQ "yes" IF /I "%MODULE_USE_LOG_PRINT%" NEQ "no" (
GOTO :Help
)
)
SET BULID_OPTION=%6
SET COMPILER_NAME="arm6.16.2"
SET OBJ_FOLDER=%ROOT_FOLDER%\%MICRO_FAMILY%\modules\%MODULE%\sample_application\%DEVICE_NAME%\obj\arm
:: Check and create required folder
if not exist "%OBJ_FOLDER%" (
mkdir "%OBJ_FOLDER%"
)
IF "%AUTOSAR_VERSION%" NEQ "4_3_1" (
IF "%AUTOSAR_VERSION%" NEQ "4_2_2" (
IF "%AUTOSAR_VERSION%" NEQ "19_11" (
GOTO :Help
)
)
)
IF "%3" NEQ "V4H" (
GOTO :Help
)
::To Set the Sub Variant based on the Device.
CALL :SUB_VARIANT
::To Set the Max CPU Number on the Device.
CALL :TOTAL_CPU_NUMBER
:: To convert the case of MODULE_USE_MULTIINSTANCE name entered to Lowercase for Display
CALL :CONV_VAR_to_LOC MODULE_USE_MULTIINSTANCE
:: To convert the case of Module name entered to Uppercase for Display
CALL :CONV_VAR_to_LOC MODULE
SET MODULE_PCL=%MODULE:~0,1%
CALL :CONV_VAR_to_UPC MODULE_PCL
:: Pre-process for CDD and MCAL module
SET CDD_MSN_NAME=%MODULE:~3,-1%%MODULE:~-1,1%
CALL :CONV_VAR_to_LOC CDD_MSN_NAME
SET CDD_MSN_NAME_FC=%MODULE:~3,1%
CALL :CONV_VAR_to_UPC CDD_MSN_NAME_FC
:: Select MCAL or CDD module to make Msn naming
If not %MODULE:cdd=%==%MODULE% (
SET MSN_PREFIX=CDD_
SET MSN_FIRST_CHARACTER=%CDD_MSN_NAME_FC%
SET MSN_FULL_NAME=%CDD_MSN_NAME%
)else (
SET MSN_PREFIX=
SET MSN_FIRST_CHARACTER=%MODULE_PCL%
SET MSN_FULL_NAME=%MODULE%
)
SET MODULE_PCL=%MODULE_PCL%%MODULE:~1%
:: Assign to global variable (e.g. Can, Dio, CDD_Iccom, CDD_Iic,...)
SET MSN_NAME_UFC=%MSN_PREFIX%%MSN_FIRST_CHARACTER%%MSN_FULL_NAME:~1%
SET CONFIG_FOLDER=%ROOT_FOLDER%\%MICRO_FAMILY%\modules\%MODULE%\sample_application\%MICRO_SUB_VARIANT%\%AUTOSAR_VERSION%
If not exist "%ROOT_FOLDER%" (
echo Error! Root Folder %ROOT_FOLDER% doesn't exist.
GOTO :End
)
If not exist "%COMPILER_INSTALL_DIR%" (
echo Error! Compiler installed directory %COMPILER_INSTALL_DIR% doesn't exist.
GOTO :End
)
If not exist "%CONFIG_FOLDER%" (
echo Error! Folder %CONFIG_FOLDER% doesn't exist.
GOTO :End
)
IF /I "%MODULE_USE_LOG_PRINT%" EQU "yes" (
SET USE_LOG_PRINT=yes
)
SET OPTION=no
:: To convert the case of Module name entered to Uppercase for Display
CALL :CONV_VAR_to_UPC MODULE
echo.
echo ===========================================================================
echo BUILDING SAMPLE APPLICATION: %MODULE%
echo ===========================================================================
:: To convert the case of Module name entered to Lowercase for file path using
CALL :CONV_VAR_to_LOC MODULE
IF "%BULID_OPTION%"=="clean" (
SET OPTION=yes
echo ===========================================================================
echo CLEAN ONLY
echo ===========================================================================
make -f common.mak clean
make -f common.mak clean_all
)
IF "%BULID_OPTION%"=="generate" (
SET OPTION=yes
echo ===========================================================================
echo CLEAN AND RE-GENERATE
echo ===========================================================================
make -f common.mak clean
make -f common.mak clean_all
make -f common.mak generate_%MODULE%_config || GOTO :eof
)
IF "%BULID_OPTION%"=="make" (
SET OPTION=yes
echo ===========================================================================
echo MAKE ONLY
echo ===========================================================================
rem make -f common.mak debug_base_make
make -f common.mak App_%MODULE%_%MICRO_SUB_VARIANT%_Sample.elf
)
IF "%OPTION%"=="no" (
echo ===========================================================================
echo CLEAN AND RE-BUILD
echo ===========================================================================
make -f common.mak clean
make -f common.mak clean_all
rem make -f common.mak debug_base_make
make -f common.mak generate_%MODULE%_config || GOTO :eof
make -f common.mak App_%MODULE%_%MICRO_SUB_VARIANT%_Sample.elf
)
echo.
echo ===========================================================================
echo BUILDING COMPLETED
echo ===========================================================================
GOTO :eof
:CONV_VAR_to_LOC
FOR %%z IN (a b c d e f g h i j k l m n o p q r s t u v w x y z) DO CALL set %~1=%%%~1:%%z=%%z%%
GOTO :eof
:CONV_VAR_to_UPC
FOR %%z IN (A B C D E F G H I J K L M N O P Q R S T U V W X Y Z) DO CALL set %~1=%%%~1:%%z=%%z%%
GOTO :eof
:Help
echo.
echo ===========================================================================
echo HELP TO BUILD SAMPLE APPLICATION
echo ===========================================================================
echo Usage:
echo.
echo SampleApp.bat MODULE AUTOSAR_VERSION DEVICE MULTIINSTANCE MCAL_LOG_PRINT BUILD_OPTION
echo.
echo MODULE (*) - Module Short Name to be generated e.g. Port, Can, ...
echo Supported module: Fls, Dio, Port, Mcu, Gpt, Wdg, Spi,
echo. Can, Eth, Cddiccom, Cddiic, Cddcrc, Cddths, Cddemm
echo. Cddipmmu, cddrfso
echo.
echo.AUTOSAR_VERSION (*) - AUTOSAR version to be compiled which is available :
echo. R19-11
echo.
echo DEVICE (*) - Device Name to be compiled which is available :
echo. V4H : V4H
echo.
echo MULTIINSTANCE - Yes : Build sample application with multi instances (applicable for: none)
echo No or unset(null) : Build sample application with single instance (applicable for: all supported modules)
echo.
echo MCAL_LOG_PRINT - Yes or unset(null) : Output MCAL driver's log to console when using Console_Print() function in Sample Application
echo No : Do not output MCAL driver's log to console when using Console_Print() function in Sample Application
echo.
echo BUILD_OPTION - unset(null) : Build with all processes.
echo clean : Only delete object files.
echo generate : Only generation tool done.
echo make : Only compile and link (use already generated files)
echo.
echo DisplEnv - Display Useful Variable for debug
echo.
echo Note: (*) is mandantory input argument
echo ===========================================================================
goto :END
:SUB_VARIANT
FOR %%A IN (V4H) Do IF "%DEVICE_NAME%" == "%%A" SET MICRO_SUB_VARIANT=V4H
:TOTAL_CPU_NUMBER
FOR %%A IN (V4H) Do IF "%DEVICE_NAME%" == "%%A" SET TOTAL_CPU=1
GOTO :eof
:Display_Env
echo Display Env Variables
echo =================================
echo DEVICE_NAME=%DEVICE_NAME%
echo AUTOSAR_VERSION=%AUTOSAR_VERSION%
echo MODULE_NAME=%MODULE%
echo =================================
:End
ENDLOCAL
@echo on

View File

@@ -0,0 +1,15 @@
################################################################################
# REGISTRY
#
CC_INCLUDE_PATH += \
$(STARTUP_CORE_PATH_COMMON)\src \
$(STARTUP_CORE_PATH_COMMON)\src\arm \
$(STARTUP_CORE_PATH_COMMON)\include \
$(STARTUP_CORE_PATH_COMMON)\include\19_11 \
$(STARTUP_CORE_PATH_COMMON)\include\common \
$(STARTUP_CORE_PATH_COMMON)\include\common\arm \
$(STARTUP_CORE_PATH_SPECIFIC)\include \
$(STARTUP_CORE_PATH_SPECIFIC)\include\arm \
$(STARTUP_CORE_PATH_SPECIFIC)\src\arm
CPP_INCLUDE_PATH +=
PREPROCESSOR_DEFINES +=

View File

@@ -0,0 +1,42 @@
#######################################################################
# REGISTRY
#
LIBRARIES_TO_BUILD +=
CC_FILES_TO_BUILD += \
$(STARTUP_CORE_PATH_COMMON)\src\arm\Interrupt.c \
$(STARTUP_CORE_PATH_SPECIFIC)\src\arm\Interrupt_VectorTable.c \
$(STARTUP_CORE_PATH_COMMON)\src\arm\startup.c \
$(STARTUP_CORE_PATH_COMMON)\src\arm\rcar_cfg.c \
$(STARTUP_CORE_PATH_COMMON)\src\log.c \
$(STARTUP_CORE_PATH_COMMON)\src\scif.c \
$(STARTUP_CORE_PATH_SPECIFIC)\src\arm\device_cfg.c
CPP_FILES_TO_BUILD += \
$(STARTUP_CORE_PATH_COMMON)\src\arm\Interrupt.c \
$(STARTUP_CORE_PATH_SPECIFIC)\src\arm\Interrupt_VectorTable.c \
$(STARTUP_CORE_PATH_COMMON)\src\arm\startup.c \
$(STARTUP_CORE_PATH_COMMON)\src\arm\rcar_cfg.c \
$(STARTUP_CORE_PATH_COMMON)\src\log.c \
$(STARTUP_CORE_PATH_COMMON)\src\scif.c \
$(STARTUP_CORE_PATH_SPECIFIC)\src\arm\device_cfg.c
ASM_FILES_TO_BUILD += $(STARTUP_CORE_PATH_COMMON)\src\arm\start.s
LIBRARIES_LINK_ONLY +=
OBJECTS_LINK_ONLY +=
GENERATED_SOURCE_FILES +=
MAKE_CLEAN_RULES +=
MAKE_GENERATE_RULES +=
MAKE_DEBUG_RULES += debug_startup_renesas_rcar_makefile
MAKE_CONFIG_RULES +=
#######################################################################
# Command to print debug information #
#######################################################################
debug_startup_renesas_rcar_makefile:
@echo STARTUP_COMMON_CORE_PATH = $(STARTUP_CORE_PATH_COMMON)
@echo STARTUP_SPECIFIC_CORE_PATH = $(STARTUP_CORE_PATH_SPECIFIC)
@echo OBJ_FILE_SUFFIX = $(OBJ_FILE_SUFFIX)
#######################################################################

View File

@@ -0,0 +1,142 @@
/*============================================================================*/
/* Project = AUTOSAR Renesas CPF MCAL Components */
/* Module = RCar_FuSa.c */
/* SW-VERSION = 1.0.0 */
/*============================================================================*/
/* COPYRIGHT */
/*============================================================================*/
/* Copyright(c) 2021 Renesas Electronics Corporation. */
/*============================================================================*/
/* Purpose: */
/* Provision of Initialization, ReInitialization and */
/* Version Control Functionality. */
/* */
/*============================================================================*/
/* */
/* Unless otherwise agreed upon in writing between your company and */
/* Renesas Electronics Corporation the following shall apply! */
/* */
/* Warranty Disclaimer */
/* */
/* There is no warranty of any kind whatsoever granted by Renesas. Any */
/* warranty is expressly disclaimed and excluded by Renesas, either expressed */
/* or implied, including but not limited to those for non-infringement of */
/* intellectual property, merchantability and/or fitness for the particular */
/* purpose. */
/* */
/* Renesas shall not have any obligation to maintain, service or provide bug */
/* fixes for the supplied Product(s) and/or the Application. */
/* */
/* Each User is solely responsible for determining the appropriateness of */
/* using the Product(s) and assumes all risks associated with its exercise */
/* of rights under this Agreement, including, but not limited to the risks */
/* and costs of program errors, compliance with applicable laws, damage to */
/* or loss of data, programs or equipment, and unavailability or */
/* interruption of operations. */
/* */
/* Limitation of Liability */
/* */
/* In no event shall Renesas be liable to the User for any incidental, */
/* consequential, indirect, or punitive damage (including but not limited */
/* to lost profits) regardless of whether such liability is based on breach */
/* of contract, tort, strict liability, breach of warranties, failure of */
/* essential purpose or otherwise and even if advised of the possibility of */
/* such damages. Renesas shall not be liable for any services or products */
/* provided by third party vendors, developers or consultants identified or */
/* referred to the User by Renesas in connection with the Product(s) and/or */
/* the Application. */
/* */
/*============================================================================*/
/* Environment: */
/* Devices: CPF */
/*============================================================================*/
/*******************************************************************************
** Revision Control History **
*******************************************************************************/
/*
* 1.0.0: 06-Nov-2021 : Initial Version
*/
/******************************************************************************/
/*******************************************************************************
** Include Section **
*******************************************************************************/
#include "RCar_FuSa.h"
/*******************************************************************************
** Function Name : RCar_RfsoFaultControl
**
** Service ID : None
**
** Description : Write 1 to the CFEO_0 bit in the FSO_CTL register to
** assert FSO_CFE_0.
** Write 1 to the CFEO_0 and CFEO_1 bits in the FSO_CTL
** register to assert FSO_CFE_1.
**
** Sync/Async : None
**
** Reentrancy : Non-Reentrant
**
** Input Parameters : ch, fault_type
** ch : RFSO channel number selected.
** fault_type : Fault control types.
**
** InOut Parameters : None
**
** Output Parameters : None
**
** Return parameter : None
**
** Preconditions : None
**
** Global Variables Used : None
**
** Functions Invoked : None
**
** Registers Used : FSO_CTL
**
*******************************************************************************/
#define FUSA_START_SEC_CODE_FAST
#include "FuSa_MemMap.h"
FUNC(void, FUSA_CODE_FAST) RCar_RfsoFaultControl
(
VAR(uint8, AUTOMATIC) ch,
VAR(uint8, AUTOMATIC) fault_type
)
{
if (RFSO_CH_OOR(ch))
{
switch (fault_type) {
case RFSO_FAULT_RESET:
/* Write b'00 to the CFEO_0 and CFEO_1 bits in FSO_CTL register */
*((volatile uint32 *)(FSO_CTL(ch))) =
(FSO_KEYCODE | ((*((volatile uint32 *)(FSO_CTL(ch)))) &
(~(FSO_CTL_CFEO_0 | FSO_CTL_CFEO_1))));
break;
case RFSO_FAULT_TRANSIENT:
/* Write b'1 to the CFEO_0 bit in FSO_CTL register */
*((volatile uint32 *)(FSO_CTL(ch))) |= (FSO_KEYCODE | FSO_CTL_CFEO_0);
break;
case RFSO_FAULT_PERMANENT:
/* Write b'11 to the CFEO_0 and CFEO_1 bits in FSO_CTL register */
*((volatile uint32 *)(FSO_CTL(ch))) |= (FSO_KEYCODE | FSO_CTL_CFEO_0);
*((volatile uint32 *)(FSO_CTL(ch))) |= (FSO_KEYCODE | FSO_CTL_CFEO_1);
break;
default:
break;
}
}
else
{
/* No action required */
}
}
#define FUSA_STOP_SEC_CODE_FAST
#include "FuSa_MemMap.h"
/*******************************************************************************
** End of File **
*******************************************************************************/

View File

@@ -0,0 +1,431 @@
/*============================================================================*/
/* Project = AUTOSAR Renesas CPF MCAL Components */
/* Module = device_cfg.c */
/* SW-VERSION = 1.0.6 */
/*============================================================================*/
/* COPYRIGHT */
/*============================================================================*/
/* Copyright(c) 2021-2024 Renesas Electronics Corporation. */
/*============================================================================*/
/* Purpose: */
/* Configuration for R-Car V4H */
/* */
/*============================================================================*/
/* */
/* Unless otherwise agreed upon in writing between your company and */
/* Renesas Electronics Corporation the following shall apply! */
/* */
/* Warranty Disclaimer */
/* */
/* There is no warranty of any kind whatsoever granted by Renesas. Any */
/* warranty is expressly disclaimed and excluded by Renesas, either expressed */
/* or implied, including but not limited to those for non-infringement of */
/* intellectual property, merchantability and/or fitness for the particular */
/* purpose. */
/* */
/* Renesas shall not have any obligation to maintain, service or provide bug */
/* fixes for the supplied Product(s) and/or the Application. */
/* */
/* Each User is solely responsible for determining the appropriateness of */
/* using the Product(s) and assumes all risks associated with its exercise */
/* of rights under this Agreement, including, but not limited to the risks */
/* and costs of program errors, compliance with applicable laws, damage to */
/* or loss of data, programs or equipment, and unavailability or */
/* interruption of operations. */
/* */
/* Limitation of Liability */
/* */
/* In no event shall Renesas be liable to the User for any incidental, */
/* consequential, indirect, or punitive damage (including but not limited */
/* to lost profits) regardless of whether such liability is based on breach */
/* of contract, tort, strict liability, breach of warranties, failure of */
/* essential purpose or otherwise and even if advised of the possibility of */
/* such damages. Renesas shall not be liable for any services or products */
/* provided by third party vendors, developers or consultants identified or */
/* referred to the User by Renesas in connection with the Product(s) and/or */
/* the Application. */
/* */
/*============================================================================*/
/* Environment: */
/* Devices: CPF */
/*============================================================================*/
/*******************************************************************************
** Revision Control History **
*******************************************************************************/
/*
* 1.0.6: 25/12/2024 : Correct the address of MPU Area 4/5 for SDRAM
* 1.0.5: 25/02/2023 : Correct the end address of MPU Area 4 for SDRAM.
* 1.0.4: 17/04/2022 : Initial address for External Space Area at
* Area 2 address H'0800 00000 - H'0BFF FFFF
* 1.0.3: 07/04/2022 : Update MPU Area address for V4H to support new IPL
* 1.0.2: 25/03/2022 : Support for HSCIF
* 1.0.1: 06/01/2022 : Update MPU Area address and PFC setting for SCIF
* 1.0.0: 06/11/2021 : Initial Version
*/
/*******************************************************************************
** Include Section **
*******************************************************************************/
#include "arm_cr.h"
/*******************************************************************************
** Global Symbols **
*******************************************************************************/
/* CPG */
#define CPG_BASE_ADDR (0xE6150000)
#define CPG_SCIF *((volatile uint32 *)(CPG_BASE_ADDR + 0x2D1C))
#define CPG_HSCIF *((volatile uint32 *)(CPG_BASE_ADDR + 0x2D14))
#define CPG_PFC *((volatile uint32 *)(CPG_BASE_ADDR + 0x2D24))
#define CPG_TMU0 *((volatile uint32 *)(CPG_BASE_ADDR + 0x2D1C))
#define CPG_CPGWPR *((volatile uint32 *)(CPG_BASE_ADDR + 0x0000))
#define CPG_SCIF_MASK ((uint32)(1 << 2))
#define CPG_HSCIF_MASK ((uint32)(1 << 14))
#define CPG_PFC_MASK ((uint32)(1 << 16))
#define CPG_TMU0_MASK ((uint32)(1 << 13))
/* Using SCIF HWIP for MCAL Console print */
#if (RCAR_SCIF == CONSOLE_HWIP)
/* PFC */
#define PFC_PMMR1 *((volatile uint32 *)(PFC_GP1_BASE + 0x0000))
#define PFC_GPSR1_TX *((volatile uint32 *)(PFC_GP1_BASE + 0x0040))
#define PFC_GPSR1_RX *((volatile uint32 *)(PFC_GP1_BASE + 0x0040))
#define PFC_IP1SR1_TX *((volatile uint32 *)(PFC_GP1_BASE + 0x0064))
#define PFC_IP2SR1_RX *((volatile uint32 *)(PFC_GP1_BASE + 0x0068))
#define PFC_GPSR1_TX_MASK ((uint32)(1 << 12))
#define PFC_GPSR1_RX_MASK ((uint32)(1 << 16))
#define PFC_IP1SR1_TX_MASK ((uint32)(0xF << 16))
#define PFC_IP1SR1_TX_VAL ((uint32)(1 << 16))
#define PFC_IP2SR1_RX_MASK ((uint32)(0xF << 0))
#define PFC_IP2SR1_RX_VAL ((uint32)(1 << 0))
/* Using HSCIF HWIP for MCAL Console print */
#else
/* PFC */
#define PFC_PMMR1 *((volatile uint32 *)(PFC_GP1_BASE + 0x0000))
#define PFC_GPSR1_HTX *((volatile uint32 *)(PFC_GP1_BASE + 0x0040))
#define PFC_GPSR1_HRX *((volatile uint32 *)(PFC_GP1_BASE + 0x0040))
#define PFC_IP1SR1_HTX *((volatile uint32 *)(PFC_GP1_BASE + 0x0064))
#define PFC_IP2SR1_HRX *((volatile uint32 *)(PFC_GP1_BASE + 0x0068))
#define PFC_GPSR1_HTX_MASK ((uint32)(1 << 12))
#define PFC_GPSR1_HRX_MASK ((uint32)(1 << 16))
#define PFC_IP1SR1_HTX_MASK ((uint32)(0xF << 16))
#define PFC_IP1SR1_HTX_VAL ((uint32)(0 << 16))
#define PFC_IP2SR1_HRX_MASK ((uint32)(0xF << 0))
#define PFC_IP2SR1_HRX_VAL ((uint32)(0 << 0))
#endif
/* End of RCAR_SCIF == CONSOLE_HWIP */
/* MPU attributes */
MPU_Attr mpu_attr_tbl[] =
{
/* In : Non-cacheable
Out : Non-cacheable */
MPU_ATTR_MEMORY(MPU_ATTR_NON_CACHEABLE,MPU_ATTR_NON_CACHEABLE),
/* In : Non Transient, Write Back, Read Allocation, Write Allocation
Out : Non Transient, Write Back, Read Allocation, Write Allocation */
MPU_ATTR_MEMORY(MPU_ATTR(1,1,1,1),MPU_ATTR(1,1,1,1)),
/* In : Non Transient, Write Back, Read Allocation, Non Write Allocation
Out : Non Transient, Write Back, Read Allocation, Non Write Allocation */
MPU_ATTR_MEMORY(MPU_ATTR(1,1,1,0),MPU_ATTR(1,1,1,0)),
/* In : Non Transient, Write Back, Non Read Allocation, Write Allocation
Out : Non Transient, Write Back, Non Read Allocation, Write Allocation */
MPU_ATTR_MEMORY(MPU_ATTR(1,1,0,1),MPU_ATTR(1,1,0,1)),
/* Device memory type non Gathering, non Re-ordering,
non Early Write Acknowledgement */
MPU_ATTR_DEVICE_nGnRnE,
/* Device memory type non Gathering, non Re-ordering,
Early Write Acknowledgement */
MPU_ATTR_DEVICE_nGnRE,
/* Device memory type non Gathering, Re-ordering,
Early Write Acknowledgement */
MPU_ATTR_DEVICE_nGRE,
/* Device memory type Gathering, Re-ordering,
Early Write Acknowledgement */
MPU_ATTR_DEVICE_GRE,
};
#define MPU_NUM_REGIONS 15
/* Based on Table 5A.9 Memory Map (after ROM Boot) - V4H HWUM */
/* MPU regions */
MPU_Region mpu_regions[MPU_NUM_REGIONS] =
{
/* Area 0 : H'E210 0000 - H'E22F FFC0
* Normal memory, Non-shareable, Write-Back, Read/Write Allocation
* Instruction permitted
* Setup in start.s
*/
/* Area 1 : H'0000 00000 - H'07FF FFFF
* Normal memory, Non-shareable, Write-Back, Read/Write Allocation
* Instruction permitted
*/
{
1,
0x00000000UL,
0x07FFFFFFUL,
1,
MPU_XN_AP_SH(MPU_XN_ALWAYS,MPU_AP_RW_RW,MPU_SH_NON_SHARE)
},
/* Area 2 : H'0800 00000 - H'0BFF FFFF
* Normal memory, Non-shareable, Non-cache
* Instruction permitted
*/
{
2,
0x08000000UL,
0x0BFFFFFFUL,
0,
MPU_XN_AP_SH(MPU_XN_ALWAYS,MPU_AP_RW_RW,MPU_SH_NON_SHARE)
},
/* Area 3 : H'0C00 0000 - H'3FFF FFFF
* Normal memory, Non-shareable, Write-Back, Read/Write Allocation
* Instruction permitted
*/
{
3,
0x0C000000UL,
0x3FFFFFFFUL,
1,
MPU_XN_AP_SH(MPU_XN_ALWAYS,MPU_AP_RW_RW,MPU_SH_NON_SHARE)
},
/* Area 4 : H'4000 00000 - H'402F FFFF
* Normal memory, Non-shareable, Write-Back, Read/Write Allocation
* Instruction permitted
*/
{
4,
0x40000000UL,
0x4677FFFFUL,
1,
MPU_XN_AP_SH(MPU_XN_ALWAYS,MPU_AP_RW_RW,MPU_SH_NON_SHARE)
},
/* Area 5 : H'4030 0000 - H'BFFF FFFF
* Normal memory, Non-shareable, Write-Back, Read/Write Allocation
* Instruction permitted
*/
{
5,
0x46780000UL,
0xBFFFFFFFUL,
4,
MPU_XN_AP_SH(MPU_XN_NEVER,MPU_AP_RW_RW,MPU_SH_NON_SHARE)
},
/* Area 6 : H'C000 00000 - H'DFFF FFFF
* Device-nGnRnE, Non-shareable
* Execute never
*/
{
6,
0xC0000000UL,
0xDFFFFFFFUL,
4,
MPU_XN_AP_SH(MPU_XN_NEVER,MPU_AP_RW_RW,MPU_SH_NON_SHARE)
},
/* Area 7 : H'E22FFFC1 - H'E3FF FFFF
* Device-nGnRnE, Non-shareable
* Execute never
*/
{
7,
0xE22FFFC1UL,
0xE3FFFFFFUL,
4,
MPU_XN_AP_SH(MPU_XN_NEVER,MPU_AP_RW_RW,MPU_SH_NON_SHARE)
},
/* Area 8 : H'E400 00000 - H'E42F FFFF
* Normal memory, Non-shareable, Write-Back, Read/Write Allocation
* Instruction permitted
*/
{
8,
0xE4000000UL,
0xE42FFFFFUL,
1,
MPU_XN_AP_SH(MPU_XN_ALWAYS,MPU_AP_RW_RW,MPU_SH_NON_SHARE)
},
/* Area 9 : H'E430 00000 - H'E62F FFFF
* Device-nGnRnE, Non-shareable
* Execute never
*/
{
9,
0xE4300000UL,
0xE62FFFFFUL,
4,
MPU_XN_AP_SH(MPU_XN_NEVER,MPU_AP_RW_RW,MPU_SH_NON_SHARE)
},
/* Area 10 : H'E630 00000 - H'E63F FFFF
* Normal memory, Non-shareable, Write-Back, Read/Write Allocation
* Instruction permitted
*/
{
10,
0xE6300000UL,
0xE63FFFFFUL,
1,
MPU_XN_AP_SH(MPU_XN_ALWAYS,MPU_AP_RW_RW,MPU_SH_NON_SHARE)
},
/* Area 11 : H'E640 00000 - H'EB0F FFFF
* Device-nGnRnE, Non-shareable
* Execute never
*/
{
11,
0xE6400000UL,
0xEB0FFFFFUL,
4,
MPU_XN_AP_SH(MPU_XN_NEVER,MPU_AP_RW_RW,MPU_SH_NON_SHARE)
},
/* Area 12 : H'EB10 00000 - H'EB12 7FFF
* Normal memory, Non-shareable, Write-Back, Read/Write Allocation
* Instruction permitted
*/
{
12,
0xEB100000UL,
0xEB127FFFUL,
1,
MPU_XN_AP_SH(MPU_XN_ALWAYS,MPU_AP_RW_RW,MPU_SH_NON_SHARE)
},
/* Area 13 : H'EB12 80000 - H'EB1F FFFF
* Device-nGnRnE, Non-shareable
* Execute never
*/
{
13,
0xEB128000UL,
0xEB1FFFFFUL,
4,
MPU_XN_AP_SH(MPU_XN_NEVER,MPU_AP_RW_RW,MPU_SH_NON_SHARE)
},
/* Area 14 : H'EB20 0000 - H'EB3F FFFF
* Normal memory, Non-shareable, Write-Back, Read/Write Allocation
* Instruction permitted
*/
{
14,
0xEB200000UL,
0xEB3FFFFFUL,
1,
MPU_XN_AP_SH(MPU_XN_ALWAYS,MPU_AP_RW_RW,MPU_SH_NON_SHARE)
},
/* Area 15 : H'EB40 00000 - H'FFFF FFFF
* Device-nGnRnE, Non-shareable
* Execute never
*/
{
15,
0xEB400000UL,
0xFFFFFFFFUL,
4,
MPU_XN_AP_SH(MPU_XN_NEVER,MPU_AP_RW_RW,MPU_SH_NON_SHARE)
},
};
/* MPU configuration */
MPU_Setting mpu_setting_tbl =
{
.table = mpu_regions,
.num_region = MPU_NUM_REGIONS
};
/*******************************************************************************
** Global Data Types **
*******************************************************************************/
/*******************************************************************************
** Function Prototypes **
*******************************************************************************/
/* Initialize clocks and pins */
static void Clock_Pin_Init()
{
uint32 Value;
/* CPG setting */
CPG_CPGWPR = ~(CPG_TMU0 & ~CPG_TMU0_MASK);
CPG_TMU0 &= ~CPG_TMU0_MASK;
/* Using SCIF HWIP for MCAL Console print */
#if (RCAR_SCIF == CONSOLE_HWIP)
/* CPG setting */
CPG_CPGWPR = ~(CPG_SCIF & ~CPG_SCIF_MASK);
CPG_SCIF &= ~CPG_SCIF_MASK;
CPG_CPGWPR = ~(CPG_PFC & ~CPG_PFC_MASK);
CPG_PFC &= ~CPG_PFC_MASK;
/* PFC setting */
/* SCIF TX */
Value = PFC_IP1SR1_TX;
Value &= (~PFC_IP1SR1_TX_MASK);
Value |= PFC_IP1SR1_TX_VAL;
PFC_PMMR1 = ~Value;
PFC_IP1SR1_TX = Value;
Value = PFC_GPSR1_TX;
Value |= PFC_GPSR1_TX_MASK;
PFC_PMMR1 = ~Value;
PFC_GPSR1_TX = Value;
/* SCIF RX */
Value = PFC_IP2SR1_RX;
Value &= (~PFC_IP2SR1_RX_MASK);
Value |= PFC_IP2SR1_RX_VAL;
PFC_PMMR1 = ~Value;
PFC_IP2SR1_RX = Value;
Value = PFC_GPSR1_RX;
Value |= PFC_GPSR1_RX_MASK;
PFC_PMMR1 = ~Value;
PFC_GPSR1_RX = Value;
/* Using HSCIF HWIP for MCAL Console print */
#else
/* CPG setting */
CPG_CPGWPR = ~(CPG_HSCIF & ~CPG_HSCIF_MASK);
CPG_HSCIF &= ~CPG_HSCIF_MASK;
CPG_CPGWPR = ~(CPG_PFC & ~CPG_PFC_MASK);
CPG_PFC &= ~CPG_PFC_MASK;
/* PFC setting */
/* HSCIF TX */
Value = PFC_IP1SR1_HTX;
Value &= (~PFC_IP1SR1_HTX_MASK);
Value |= PFC_IP1SR1_HTX_VAL;
PFC_PMMR1 = ~Value;
PFC_IP1SR1_HTX = Value;
Value = PFC_GPSR1_HTX;
Value |= PFC_GPSR1_HTX_MASK;
PFC_PMMR1 = ~Value;
PFC_GPSR1_HTX = Value;
/* HSCIF RX */
Value = PFC_IP2SR1_HRX;
Value &= (~PFC_IP2SR1_HRX_MASK);
Value |= PFC_IP2SR1_HRX_VAL;
PFC_PMMR1 = ~Value;
PFC_IP2SR1_HRX = Value;
Value = PFC_GPSR1_HRX;
Value |= PFC_GPSR1_HRX_MASK;
PFC_PMMR1 = ~Value;
PFC_GPSR1_HRX = Value;
#endif
/* End of RCAR_SCIF == CONSOLE_HWIP */
}
void Device_Init()
{
Clock_Pin_Init();
}
/*******************************************************************************
** End of File **
*******************************************************************************/

View File

@@ -0,0 +1,953 @@
/*============================================================================*/
/* Project = AUTOSAR Renesas X2x, R-Car S4 MCAL Components */
/* Module = Can_MemMap.h */
/* SW-VERSION = 1.1.13 */
/*============================================================================*/
/* COPYRIGHT */
/*============================================================================*/
/* Copyright(c) 2021-2022 Renesas Electronics Corporation. */
/*============================================================================*/
/* Purpose: */
/* Provision for sections for Memory Mapping */
/* */
/*============================================================================*/
/* */
/* Unless otherwise agreed upon in writing between your company and */
/* Renesas Electronics Corporation the following shall apply! */
/* */
/* Warranty Disclaimer */
/* */
/* There is no warranty of any kind whatsoever granted by Renesas. Any */
/* warranty is expressly disclaimed and excluded by Renesas, either expressed */
/* or implied, including but not limited to those for non-infringement of */
/* intellectual property, merchantability and/or fitness for the particular */
/* purpose. */
/* */
/* Renesas shall not have any obligation to maintain, service or provide bug */
/* fixes for the supplied Product(s) and/or the Application. */
/* */
/* Each User is solely responsible for determining the appropriateness of */
/* using the Product(s) and assumes all risks associated with its exercise */
/* of rights under this Agreement, including, but not limited to the risks */
/* and costs of program errors, compliance with applicable laws, damage to */
/* or loss of data, programs or equipment, and unavailability or */
/* interruption of operations. */
/* */
/* Limitation of Liability */
/* */
/* In no event shall Renesas be liable to the User for any incidental, */
/* consequential, indirect, or punitive damage (including but not limited */
/* to lost profits) regardless of whether such liability is based on breach */
/* of contract, tort, strict liability, breach of warranties, failure of */
/* essential purpose or otherwise and even if advised of the possibility of */
/* such damages. Renesas shall not be liable for any services or products */
/* provided by third party vendors, developers or consultants identified or */
/* referred to the User by Renesas in connection with the Product(s) and/or */
/* the Application. */
/* */
/*============================================================================*/
/* Environment: */
/* Devices: R-Car */
/*============================================================================*/
/*******************************************************************************
** Revision Control History **
*******************************************************************************/
/*
* 1.1.10 06/12/2022 Update PRIVATE_SECTION
* 1.0.1 08/04/2022 Remove block of code define/undefine SEC_NAME,
* SECTION_TYPE
* 1.0.0 20/08/2021 Initial Version
*/
/******************************************************************************/
/*******************************************************************************
** Include Section **
*******************************************************************************/
/*******************************************************************************
** Version Information **
*******************************************************************************/
/*
* AUTOSAR specification version information
*/
#define CAN_MEMMAP_AR_RELEASE_MAJOR_VERSION 4
#define CAN_MEMMAP_AR_RELEASE_MINOR_VERSION 5
#define CAN_MEMMAP_AR_RELEASE_REVISION_VERSION 0
/*
* File version information
*/
#define CAN_MEMMAP_SW_MAJOR_VERSION 1
#define CAN_MEMMAP_SW_MINOR_VERSION 1
#define CAN_MEMMAP_SW_PATCH_VERSION 10
/*******************************************************************************
** Global Symbols **
*******************************************************************************/
/*******************************************************************************
** Global Data Types **
*******************************************************************************/
/*******************************************************************************
** Module section mapping **
*******************************************************************************/
/*
* The symbol 'START_WITH_IF' is undefined.
*
* Thus, the preprocessor continues searching for defined symbols
* This first #ifdef makes integration of delivered parts of MemMap.h
* easier because every supplier starts with #elif
*/
#if defined (START_WITH_IF)
/* -------------------------------------------------------------------------- */
/* CAN Driver */
/* -------------------------------------------------------------------------- */
#elif defined (CAN_RSCAN_START_SEC_VAR_INIT_BOOLEAN)
#ifdef VAR_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_BOOLEAN_SEC_STARTED
#undef CAN_RSCAN_START_SEC_VAR_INIT_BOOLEAN
#define DEFAULT_START_SEC_VAR_1BIT
#endif
#elif defined (CAN_RSCAN_STOP_SEC_VAR_INIT_BOOLEAN)
#ifndef VAR_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_BOOLEAN_SEC_STARTED
#undef CAN_RSCAN_STOP_SEC_VAR_INIT_BOOLEAN
#define DEFAULT_STOP_SEC_VAR_1BIT
#endif
#elif defined (CAN_RSCAN_START_SEC_VAR_NO_INIT_BOOLEAN)
#ifdef VAR_NOINIT_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NOINIT_BOOLEAN_SEC_STARTED
#undef CAN_RSCAN_START_SEC_VAR_NO_INIT_BOOLEAN
#define DEFAULT_START_SEC_VAR_NOINIT_1BIT
#endif
#elif defined (CAN_RSCAN_STOP_SEC_VAR_NO_INIT_BOOLEAN)
#ifndef VAR_NOINIT_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NOINIT_BOOLEAN_SEC_STARTED
#undef CAN_RSCAN_STOP_SEC_VAR_NO_INIT_BOOLEAN
#define DEFAULT_STOP_SEC_VAR_NOINIT_1BIT
#endif
#elif defined (CAN_RSCAN_START_SEC_VAR_FAST_INIT_BOOLEAN)
#ifdef VAR_FAST_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_FAST_BOOLEAN_SEC_STARTED
#undef CAN_RSCAN_START_SEC_VAR_FAST_INIT_BOOLEAN
#define DEFAULT_START_SEC_VAR_FAST_1BIT
#endif
#elif defined (CAN_RSCAN_STOP_SEC_VAR_FAST_INIT_BOOLEAN)
#ifndef VAR_FAST_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_FAST_BOOLEAN_SEC_STARTED
#undef CAN_RSCAN_STOP_SEC_VAR_FAST_INIT_BOOLEAN
#define DEFAULT_STOP_SEC_VAR_FAST_1BIT
#endif
#elif defined (CAN_RSCAN_START_SEC_VAR_INIT_8)
#ifdef VAR_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_8_SEC_STARTED
#undef CAN_RSCAN_START_SEC_VAR_INIT_8
#define DEFAULT_START_SEC_VAR_8BIT
#endif
#elif defined (CAN_RSCAN_STOP_SEC_VAR_INIT_8)
#ifndef VAR_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_8_SEC_STARTED
#undef CAN_RSCAN_STOP_SEC_VAR_INIT_8
#define DEFAULT_STOP_SEC_VAR_8BIT
#endif
#elif defined (CAN_RSCAN_START_SEC_VAR_NO_INIT_8)
#ifdef VAR_NOINIT_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NOINIT_8_SEC_STARTED
#undef CAN_RSCAN_START_SEC_VAR_NO_INIT_8
#define DEFAULT_START_SEC_VAR_NOINIT_8BIT
#endif
#elif defined (CAN_RSCAN_STOP_SEC_VAR_NO_INIT_8)
#ifndef VAR_NOINIT_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NOINIT_8_SEC_STARTED
#undef CAN_RSCAN_STOP_SEC_VAR_NO_INIT_8
#define DEFAULT_STOP_SEC_VAR_NOINIT_8BIT
#endif
#elif defined (CAN_RSCAN_START_SEC_VAR_FAST_INIT_8)
#ifdef VAR_FAST_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_FAST_8_SEC_STARTED
#undef CAN_RSCAN_START_SEC_VAR_FAST_INIT_8
#define DEFAULT_START_SEC_VAR_FAST_8BIT
#endif
#elif defined (CAN_RSCAN_STOP_SEC_VAR_FAST_INIT_8)
#ifndef VAR_FAST_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_FAST_8_SEC_STARTED
#undef CAN_RSCAN_STOP_SEC_VAR_FAST_INIT_8
#define DEFAULT_STOP_SEC_VAR_FAST_8BIT
#endif
#elif defined (CAN_RSCAN_START_SEC_VAR_INIT_16)
#ifdef VAR_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_16_SEC_STARTED
#undef CAN_RSCAN_START_SEC_VAR_INIT_16
#define DEFAULT_START_SEC_VAR_16BIT
#endif
#elif defined (CAN_RSCAN_STOP_SEC_VAR_INIT_16)
#ifndef VAR_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_16_SEC_STARTED
#undef CAN_RSCAN_STOP_SEC_VAR_INIT_16
#define DEFAULT_STOP_SEC_VAR_16BIT
#endif
#elif defined (CAN_RSCAN_START_SEC_VAR_NO_INIT_16)
#ifdef VAR_NOINIT_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NOINIT_16_SEC_STARTED
#undef CAN_RSCAN_START_SEC_VAR_NO_INIT_16
#define DEFAULT_START_SEC_VAR_NOINIT_16BIT
#endif
#elif defined (CAN_RSCAN_STOP_SEC_VAR_NO_INIT_16)
#ifndef VAR_NOINIT_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NOINIT_16_SEC_STARTED
#undef CAN_RSCAN_STOP_SEC_VAR_NO_INIT_16
#define DEFAULT_STOP_SEC_VAR_NOINIT_16BIT
#endif
#elif defined (CAN_RSCAN_START_SEC_VAR_FAST_INIT_16)
#ifdef VAR_FAST_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_FAST_16_SEC_STARTED
#undef CAN_RSCAN_START_SEC_VAR_FAST_INIT_16
#define DEFAULT_START_SEC_VAR_FAST_16BIT
#endif
#elif defined (CAN_RSCAN_STOP_SEC_VAR_FAST_INIT_16)
#ifndef VAR_FAST_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_FAST_16_SEC_STARTED
#undef CAN_RSCAN_STOP_SEC_VAR_FAST_INIT_16
#define DEFAULT_STOP_SEC_VAR_FAST_16BIT
#endif
#elif defined (CAN_RSCAN_START_SEC_VAR_INIT_32)
#ifdef VAR_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_32_SEC_STARTED
#undef CAN_RSCAN_START_SEC_VAR_INIT_32
#define DEFAULT_START_SEC_VAR_32BIT
#endif
#elif defined (CAN_RSCAN_STOP_SEC_VAR_INIT_32)
#ifndef VAR_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_32_SEC_STARTED
#undef CAN_RSCAN_STOP_SEC_VAR_INIT_32
#define DEFAULT_STOP_SEC_VAR_32BIT
#endif
#elif defined (CAN_RSCAN_START_SEC_VAR_NO_INIT_32)
#ifdef VAR_NOINIT_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NOINIT_32_SEC_STARTED
#undef CAN_RSCAN_START_SEC_VAR_NO_INIT_32
#define DEFAULT_START_SEC_VAR_NOINIT_32BIT
#endif
#elif defined (CAN_RSCAN_STOP_SEC_VAR_NO_INIT_32)
#ifndef VAR_NOINIT_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NOINIT_32_SEC_STARTED
#undef CAN_RSCAN_STOP_SEC_VAR_NO_INIT_32
#define DEFAULT_STOP_SEC_VAR_NOINIT_32BIT
#endif
#elif defined (CAN_RSCAN_START_SEC_VAR_FAST_INIT_32)
#ifdef VAR_FAST_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_FAST_32_SEC_STARTED
#undef CAN_RSCAN_START_SEC_VAR_FAST_INIT_32
#define DEFAULT_START_SEC_VAR_FAST_32BIT
#endif
#elif defined (CAN_RSCAN_STOP_SEC_VAR_FAST_INIT_32)
#ifndef VAR_FAST_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_FAST_32_SEC_STARTED
#undef CAN_RSCAN_STOP_SEC_VAR_FAST_INIT_32
#define DEFAULT_STOP_SEC_VAR_FAST_32BIT
#endif
#elif defined (CAN_RSCAN_START_SEC_VAR_INIT_UNSPECIFIED)
#ifdef VAR_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_UNSPECIFIED_SEC_STARTED
#undef CAN_RSCAN_START_SEC_VAR_INIT_UNSPECIFIED
#define DEFAULT_START_SEC_VAR_UNSPECIFIED
#endif
#elif defined (CAN_RSCAN_STOP_SEC_VAR_INIT_UNSPECIFIED)
#ifndef VAR_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_UNSPECIFIED_SEC_STARTED
#undef CAN_RSCAN_STOP_SEC_VAR_INIT_UNSPECIFIED
#define DEFAULT_STOP_SEC_VAR_UNSPECIFIED
#endif
#elif defined (CAN_RSCAN_START_SEC_VAR_NO_INIT_UNSPECIFIED)
#ifdef VAR_NOINIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NOINIT_UNSPECIFIED_SEC_STARTED
#undef CAN_RSCAN_START_SEC_VAR_NO_INIT_UNSPECIFIED
#define DEFAULT_START_SEC_VAR_NOINIT_UNSPECIFIED
#endif
#elif defined (CAN_RSCAN_STOP_SEC_VAR_NO_INIT_UNSPECIFIED)
#ifndef VAR_NOINIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NOINIT_UNSPECIFIED_SEC_STARTED
#undef CAN_RSCAN_STOP_SEC_VAR_NO_INIT_UNSPECIFIED
#define DEFAULT_STOP_SEC_VAR_NOINIT_UNSPECIFIED
#endif
#elif defined (CAN_RSCAN_START_SEC_VAR_FAST_INIT_UNSPECIFIED)
#ifdef VAR_FAST_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_FAST_UNSPECIFIED_SEC_STARTED
#undef CAN_RSCAN_START_SEC_VAR_FAST_INIT_UNSPECIFIED
#define DEFAULT_START_SEC_VAR_FAST_UNSPECIFIED
#endif
#elif defined (CAN_RSCAN_STOP_SEC_VAR_FAST_INIT_UNSPECIFIED)
#ifndef VAR_FAST_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_FAST_UNSPECIFIED_SEC_STARTED
#undef CAN_RSCAN_STOP_SEC_VAR_FAST_INIT_UNSPECIFIED
#define DEFAULT_STOP_SEC_VAR_FAST_UNSPECIFIED
#endif
#elif defined (CAN_RSCAN_START_SEC_VAR_NO_INIT_PTR)
#ifdef VAR_NO_INIT_PTR_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_PTR_SEC_STARTED
#undef CAN_RSCAN_START_SEC_VAR_NO_INIT_PTR
#define DEFAULT_START_SEC_VAR_NO_INIT_PTR
#endif
#elif defined (CAN_RSCAN_STOP_SEC_VAR_NO_INIT_PTR)
#ifndef VAR_NO_INIT_PTR_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_PTR_SEC_STARTED
#undef CAN_RSCAN_STOP_SEC_VAR_NO_INIT_PTR
#define DEFAULT_STOP_SEC_VAR_NO_INIT_PTR
#endif
#elif defined (CAN_RSCAN_START_SEC_CONFIG_VAR_NO_INIT_UNSPECIFIED)
#ifdef VAR_NOINIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NOINIT_UNSPECIFIED_SEC_STARTED
#undef CAN_RSCAN_START_SEC_CONFIG_VAR_NO_INIT_UNSPECIFIED
#define PRIVATE_SECTION ".CAN_CFG_RAM_UNSPECIFIED"
#define SECTION_TYPE data
#endif
#elif defined (CAN_RSCAN_STOP_SEC_CONFIG_VAR_NO_INIT_UNSPECIFIED)
#ifndef VAR_NOINIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NOINIT_UNSPECIFIED_SEC_STARTED
#undef CAN_RSCAN_STOP_SEC_CONFIG_VAR_NO_INIT_UNSPECIFIED
#define PRIVATE_SECTION ".default"
#define SECTION_TYPE data
#endif
#elif defined (CAN_RSCAN_START_SEC_CONST_BOOLEAN)
#ifdef CONST_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_BOOLEAN_SEC_STARTED
#undef CAN_RSCAN_START_SEC_CONST_BOOLEAN
#define DEFAULT_START_SEC_CONST_1BIT
#endif
#elif defined (CAN_RSCAN_STOP_SEC_CONST_BOOLEAN)
#ifndef CONST_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_BOOLEAN_SEC_STARTED
#undef CAN_RSCAN_STOP_SEC_CONST_BOOLEAN
#define DEFAULT_STOP_SEC_CONST_1BIT
#endif
#elif defined (CAN_RSCAN_START_SEC_CONST_8)
#ifdef CONST_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_8_SEC_STARTED
#undef CAN_RSCAN_START_SEC_CONST_8
#define DEFAULT_START_SEC_CONST_8BIT
#endif
#elif defined (CAN_RSCAN_STOP_SEC_CONST_8)
#ifndef CONST_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_8_SEC_STARTED
#undef CAN_RSCAN_STOP_SEC_CONST_8
#define DEFAULT_STOP_SEC_CONST_8BIT
#endif
#elif defined (CAN_RSCAN_START_SEC_CONST_16)
#ifdef CONST_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_16_SEC_STARTED
#undef CAN_RSCAN_START_SEC_CONST_16
#define DEFAULT_START_SEC_CONST_16BIT
#endif
#elif defined (CAN_RSCAN_STOP_SEC_CONST_16)
#ifndef CONST_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_16_SEC_STARTED
#undef CAN_RSCAN_STOP_SEC_CONST_16
#define DEFAULT_STOP_SEC_CONST_16BIT
#endif
#elif defined (CAN_RSCAN_START_SEC_CONST_32)
#ifdef CONST_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_32_SEC_STARTED
#undef CAN_RSCAN_START_SEC_CONST_32
#define DEFAULT_START_SEC_CONST_32BIT
#endif
#elif defined (CAN_RSCAN_STOP_SEC_CONST_32)
#ifndef CONST_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_32_SEC_STARTED
#undef CAN_RSCAN_STOP_SEC_CONST_32
#define DEFAULT_STOP_SEC_CONST_32BIT
#endif
#elif defined (CAN_RSCAN_START_SEC_CONST_UNSPECIFIED)
#ifdef CONST_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_UNSPECIFIED_SEC_STARTED
#undef CAN_RSCAN_START_SEC_CONST_UNSPECIFIED
#define DEFAULT_START_SEC_CONST_UNSPECIFIED
#endif
#elif defined (CAN_RSCAN_STOP_SEC_CONST_UNSPECIFIED)
#ifndef CONST_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_UNSPECIFIED_SEC_STARTED
#undef CAN_RSCAN_STOP_SEC_CONST_UNSPECIFIED
#define DEFAULT_STOP_SEC_CONST_UNSPECIFIED
#endif
#elif defined (CAN_RSCAN_START_SEC_CONFIG_DATA_BOOLEAN)
#ifdef CAN_RSCAN_CONFIG_DATA_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CAN_RSCAN_CONFIG_DATA_BOOLEAN_SEC_STARTED
#undef CAN_RSCAN_START_SEC_CONFIG_DATA_BOOLEAN
#define PRIVATE_SECTION ".CAN_RSCAN_CFG_DATA_1BIT"
#define SECTION_TYPE data
#endif
#elif defined (CAN_RSCAN_STOP_SEC_CONFIG_DATA_BOOLEAN)
#ifndef CAN_RSCAN_CONFIG_DATA_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef CAN_RSCAN_CONFIG_DATA_BOOLEAN_SEC_STARTED
#undef CAN_RSCAN_STOP_SEC_CONFIG_DATA_BOOLEAN
#define DEFAULT_STOP_SEC_CONST_1BIT
#endif
#elif defined (CAN_RSCAN_START_SEC_CONFIG_DATA_8)
#ifdef CAN_RSCAN_CONFIG_DATA_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CAN_RSCAN_CONFIG_DATA_8_SEC_STARTED
#undef CAN_RSCAN_START_SEC_CONFIG_DATA_8
#define PRIVATE_SECTION ".CAN_CFG_DATA_8BIT"
#define SECTION_TYPE data
#endif
#elif defined (CAN_RSCAN_STOP_SEC_CONFIG_DATA_8)
#ifndef CAN_RSCAN_CONFIG_DATA_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef CAN_RSCAN_CONFIG_DATA_8_SEC_STARTED
#undef CAN_RSCAN_STOP_SEC_CONFIG_DATA_8
#define DEFAULT_STOP_SEC_CONST_8BIT
#endif
#elif defined (CAN_RSCAN_START_SEC_CONFIG_DATA_16)
#ifdef CAN_RSCAN_CONFIG_DATA_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CAN_RSCAN_CONFIG_DATA_16_SEC_STARTED
#undef CAN_RSCAN_START_SEC_CONFIG_DATA_16
#define PRIVATE_SECTION ".CAN_CFG_DATA_16BIT"
#define SECTION_TYPE data
#endif
#elif defined (CAN_RSCAN_STOP_SEC_CONFIG_DATA_16)
#ifndef CAN_RSCAN_CONFIG_DATA_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef CAN_RSCAN_CONFIG_DATA_16_SEC_STARTED
#undef CAN_RSCAN_STOP_SEC_CONFIG_DATA_16
#define DEFAULT_STOP_SEC_CONST_16BIT
#endif
#elif defined (CAN_RSCAN_START_SEC_CONFIG_DATA_32)
#ifdef CAN_RSCAN_CONFIG_DATA_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CAN_RSCAN_CONFIG_DATA_32_SEC_STARTED
#undef CAN_RSCAN_START_SEC_CONFIG_DATA_32
#define PRIVATE_SECTION ".CAN_CFG_DATA_32BIT"
#define SECTION_TYPE data
#endif
#elif defined (CAN_RSCAN_STOP_SEC_CONFIG_DATA_32)
#ifndef CAN_RSCAN_CONFIG_DATA_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef CAN_RSCAN_CONFIG_DATA_32_SEC_STARTED
#undef CAN_RSCAN_STOP_SEC_CONFIG_DATA_32
#define DEFAULT_STOP_SEC_CONST_32BIT
#endif
#elif defined (CAN_RSCAN_START_SEC_CONFIG_DATA_UNSPECIFIED)
#ifdef CAN_RSCAN_CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CAN_RSCAN_CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#undef CAN_RSCAN_START_SEC_CONFIG_DATA_UNSPECIFIED
#define PRIVATE_SECTION ".CAN_CFG_DATA_UNSPECIFIED"
#define SECTION_TYPE data
#endif
#elif defined (CAN_RSCAN_STOP_SEC_CONFIG_DATA_UNSPECIFIED)
#ifndef CAN_RSCAN_CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef CAN_RSCAN_CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#undef CAN_RSCAN_STOP_SEC_CONFIG_DATA_UNSPECIFIED
#define DEFAULT_STOP_SEC_CONST_UNSPECIFIED
#endif
#elif defined (CAN_RSCAN_START_SEC_DBTOC_DATA_UNSPECIFIED)
#ifdef DBTOC_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define DBTOC_DATA_UNSPECIFIED_SEC_STARTED
#undef CAN_RSCAN_START_SEC_DBTOC_DATA_UNSPECIFIED
#define PRIVATE_SECTION ".CAN_CFG_DBTOC_UNSPECIFIED"
#define SECTION_TYPE data
#endif
#elif defined (CAN_RSCAN_STOP_SEC_DBTOC_DATA_UNSPECIFIED)
#ifndef DBTOC_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef DBTOC_DATA_UNSPECIFIED_SEC_STARTED
#undef CAN_RSCAN_STOP_SEC_DBTOC_DATA_UNSPECIFIED
#define DEFAULT_STOP_SEC_CONST_UNSPECIFIED
#endif
#elif defined (CAN_RSCAN_START_SEC_DBTOC_CTRL_CFG_DATA_UNSPECIFIED)
#undef CAN_RSCAN_START_SEC_DBTOC_CTRL_CFG_DATA_UNSPECIFIED
#define PRIVATE_SECTION ".CAN_CFG_DBCC_UNSPECIFIED"
#define SECTION_TYPE data
#elif defined (CAN_RSCAN_STOP_SEC_DBTOC_CTRL_CFG_DATA_UNSPECIFIED)
#undef CAN_RSCAN_STOP_SEC_DBTOC_CTRL_CFG_DATA_UNSPECIFIED
#define DEFAULT_STOP_SEC_CONST_UNSPECIFIED
#elif defined (CAN_RSCAN_START_SEC_PUBLIC_CODE)
#ifdef PUBLIC_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define PUBLIC_CODE_SEC_STARTED
#undef CAN_RSCAN_START_SEC_PUBLIC_CODE
#define PRIVATE_SECTION ".CAN_PUBLIC_CODE_ROM"
#define SECTION_TYPE text
#endif
#elif defined (CAN_RSCAN_STOP_SEC_PUBLIC_CODE)
#ifndef PUBLIC_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef PUBLIC_CODE_SEC_STARTED
#undef CAN_RSCAN_STOP_SEC_PUBLIC_CODE
#define DEFAULT_STOP_SEC_CODE
#endif
#elif defined (CAN_RSCAN_START_SEC_PRIVATE_CODE)
#ifdef PRIVATE_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define PRIVATE_CODE_SEC_STARTED
#undef CAN_RSCAN_START_SEC_PRIVATE_CODE
#define PRIVATE_SECTION ".CAN_PRIVATE_CODE_ROM"
#define SECTION_TYPE text
#endif
#elif defined (CAN_RSCAN_STOP_SEC_PRIVATE_CODE)
#ifndef PRIVATE_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef PRIVATE_CODE_SEC_STARTED
#undef CAN_RSCAN_STOP_SEC_PRIVATE_CODE
#define DEFAULT_STOP_SEC_CODE
#endif
#elif defined (CAN_RSCAN_START_SEC_APPL_CODE)
#ifdef APPL_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define APPL_CODE_SEC_STARTED
#undef CAN_RSCAN_START_SEC_APPL_CODE
#define PRIVATE_SECTION ".CAN_APPL_CODE_ROM"
#define SECTION_TYPE text
#endif
#elif defined (CAN_RSCAN_STOP_SEC_APPL_CODE)
#ifndef APPL_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef APPL_CODE_SEC_STARTED
#undef CAN_RSCAN_STOP_SEC_APPL_CODE
#define DEFAULT_STOP_SEC_CODE
#endif
#elif defined (CAN_RSCAN_START_SEC_CODE_FAST)
#ifdef ISR_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define ISR_CODE_SEC_STARTED
#undef CAN_RSCAN_START_SEC_CODE_FAST
#define PRIVATE_SECTION ".CAN_FAST_CODE_ROM"
#define SECTION_TYPE text
#endif
#elif defined (CAN_RSCAN_STOP_SEC_CODE_FAST)
#ifndef ISR_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef ISR_CODE_SEC_STARTED
#undef CAN_RSCAN_STOP_SEC_CODE_FAST
#define DEFAULT_STOP_SEC_CODE
#endif
/* -------------------------------------------------------------------------- */
/* End of module section mapping */
/* -------------------------------------------------------------------------- */
#else
#error "Can_MemMap.h: No valid section define found"
#endif /* START_WITH_IF */
/*******************************************************************************
** Default section mapping **
*******************************************************************************/
/* general start of #elif chain whith #if */
#if defined (START_WITH_IF)
/* -------------------------------------------------------------------------- */
/* RAM variables initialized from ROM on reset */
/* -------------------------------------------------------------------------- */
#elif defined (DEFAULT_START_SEC_VAR_1BIT)
#undef DEFAULT_START_SEC_VAR_1BIT
#define PRIVATE_SECTION ".RAM_1BIT"
#define SECTION_TYPE data
#elif defined (DEFAULT_STOP_SEC_VAR_1BIT)
#undef DEFAULT_STOP_SEC_VAR_1BIT
#undef PRIVATE_SECTION
#define SECTION_TYPE data
#elif defined (DEFAULT_START_SEC_VAR_8BIT)
#undef DEFAULT_START_SEC_VAR_8BIT
#define PRIVATE_SECTION ".RAM_8BIT"
#define SECTION_TYPE data
#elif defined (DEFAULT_STOP_SEC_VAR_8BIT)
#undef DEFAULT_STOP_SEC_VAR_8BIT
#undef PRIVATE_SECTION
#define SECTION_TYPE data
#elif defined (DEFAULT_START_SEC_VAR_16BIT)
#undef DEFAULT_START_SEC_VAR_16BIT
#define PRIVATE_SECTION ".RAM_16BIT"
#define SECTION_TYPE data
#elif defined (DEFAULT_STOP_SEC_VAR_16BIT)
#undef DEFAULT_STOP_SEC_VAR_16BIT
#undef PRIVATE_SECTION
#define SECTION_TYPE data
#elif defined (DEFAULT_START_SEC_VAR_32BIT)
#undef DEFAULT_START_SEC_VAR_32BIT
#define PRIVATE_SECTION ".RAM_32BIT"
#define SECTION_TYPE data
#elif defined (DEFAULT_STOP_SEC_VAR_32BIT)
#undef DEFAULT_STOP_SEC_VAR_32BIT
#undef PRIVATE_SECTION
#define SECTION_TYPE data
#elif defined (DEFAULT_START_SEC_VAR_UNSPECIFIED)
#undef DEFAULT_START_SEC_VAR_UNSPECIFIED
#define PRIVATE_SECTION ".RAM_UNSPECIFIED"
#define SECTION_TYPE data
#elif defined (DEFAULT_STOP_SEC_VAR_UNSPECIFIED)
#undef DEFAULT_STOP_SEC_VAR_UNSPECIFIED
#undef PRIVATE_SECTION
#define SECTION_TYPE data
/* -------------------------------------------------------------------------- */
/* RAM variables not initialized */
/* -------------------------------------------------------------------------- */
#elif defined (DEFAULT_START_SEC_VAR_NOINIT_1BIT)
#undef DEFAULT_START_SEC_VAR_NOINIT_1BIT
#define PRIVATE_SECTION ".NOINIT_RAM_1BIT"
#define SECTION_TYPE data
#elif defined (DEFAULT_STOP_SEC_VAR_NOINIT_1BIT)
#undef DEFAULT_STOP_SEC_VAR_NOINIT_1BIT
#undef PRIVATE_SECTION
#define SECTION_TYPE data
#elif defined (DEFAULT_START_SEC_VAR_NOINIT_8BIT)
#undef DEFAULT_START_SEC_VAR_NOINIT_8BIT
#define PRIVATE_SECTION ".NOINIT_RAM_8BIT"
#define SECTION_TYPE data
#elif defined (DEFAULT_STOP_SEC_VAR_NOINIT_8BIT)
#undef DEFAULT_STOP_SEC_VAR_NOINIT_8BIT
#undef PRIVATE_SECTION
#define SECTION_TYPE data
#elif defined (DEFAULT_START_SEC_VAR_NOINIT_16BIT)
#undef DEFAULT_START_SEC_VAR_NOINIT_16BIT
#define PRIVATE_SECTION ".NOINIT_RAM_16BIT"
#define SECTION_TYPE data
#elif defined (DEFAULT_STOP_SEC_VAR_NOINIT_16BIT)
#undef DEFAULT_STOP_SEC_VAR_NOINIT_16BIT
#undef PRIVATE_SECTION
#define SECTION_TYPE data
#elif defined (DEFAULT_START_SEC_VAR_NOINIT_32BIT)
#undef DEFAULT_START_SEC_VAR_NOINIT_32BIT
#define PRIVATE_SECTION ".NOINIT_RAM_32BIT"
#define SECTION_TYPE data
#elif defined (DEFAULT_STOP_SEC_VAR_NOINIT_32BIT)
#undef DEFAULT_STOP_SEC_VAR_NOINIT_32BIT
#undef PRIVATE_SECTION
#define SECTION_TYPE data
#elif defined (DEFAULT_START_SEC_VAR_NOINIT_UNSPECIFIED)
#undef DEFAULT_START_SEC_VAR_NOINIT_UNSPECIFIED
#define PRIVATE_SECTION ".NOINIT_RAM_UNSPECIFIED"
#define SECTION_TYPE data
#elif defined (DEFAULT_STOP_SEC_VAR_NOINIT_UNSPECIFIED)
#undef DEFAULT_STOP_SEC_VAR_NOINIT_UNSPECIFIED
#undef PRIVATE_SECTION
#define SECTION_TYPE data
/* -------------------------------------------------------------------------- */
/* RAM variables frequently used or accessed bitwise */
/* -------------------------------------------------------------------------- */
#elif defined (DEFAULT_START_SEC_VAR_FAST_1BIT)
#undef DEFAULT_START_SEC_VAR_FAST_1BIT
#define PRIVATE_SECTION ".FAST_RAM_1BIT"
#define SECTION_TYPE data
#elif defined (DEFAULT_STOP_SEC_VAR_FAST_1BIT)
#undef DEFAULT_STOP_SEC_VAR_FAST_1BIT
#undef PRIVATE_SECTION
#define SECTION_TYPE data
#elif defined (DEFAULT_START_SEC_VAR_FAST_8BIT)
#undef DEFAULT_START_SEC_VAR_FAST_8BIT
#define PRIVATE_SECTION ".FAST_RAM_8BIT"
#define SECTION_TYPE data
#elif defined (DEFAULT_STOP_SEC_VAR_FAST_8BIT)
#undef DEFAULT_STOP_SEC_VAR_FAST_8BIT
#undef PRIVATE_SECTION
#define SECTION_TYPE data
#elif defined (DEFAULT_START_SEC_VAR_FAST_16BIT)
#undef DEFAULT_START_SEC_VAR_FAST_16BIT
#define PRIVATE_SECTION ".FAST_RAM_16BIT"
#define SECTION_TYPE data
#elif defined (DEFAULT_STOP_SEC_VAR_FAST_16BIT)
#undef DEFAULT_STOP_SEC_VAR_FAST_16BIT
#undef PRIVATE_SECTION
#define SECTION_TYPE data
#elif defined (DEFAULT_START_SEC_VAR_FAST_32BIT)
#undef DEFAULT_START_SEC_VAR_FAST_32BIT
#define PRIVATE_SECTION ".FAST_RAM_32BIT"
#define SECTION_TYPE data
#elif defined (DEFAULT_STOP_SEC_VAR_FAST_32BIT)
#undef DEFAULT_STOP_SEC_VAR_FAST_32BIT
#undef PRIVATE_SECTION
#define SECTION_TYPE data
#elif defined (DEFAULT_START_SEC_VAR_FAST_UNSPECIFIED)
#undef DEFAULT_START_SEC_VAR_FAST_UNSPECIFIED
#define PRIVATE_SECTION ".FAST_RAM_UNSPECIFIED"
#define SECTION_TYPE data
#elif defined (DEFAULT_STOP_SEC_VAR_FAST_UNSPECIFIED)
#undef DEFAULT_STOP_SEC_VAR_FAST_UNSPECIFIED
#undef PRIVATE_SECTION
#define SECTION_TYPE data
/* -------------------------------------------------------------------------- */
/* ROM constants */
/* -------------------------------------------------------------------------- */
#elif defined (DEFAULT_START_SEC_CONST_1BIT)
#undef DEFAULT_START_SEC_CONST_1BIT
#define PRIVATE_SECTION ".constdata.CONST_ROM_1BIT"
#define SECTION_TYPE rodata
#elif defined (DEFAULT_STOP_SEC_CONST_1BIT)
#undef DEFAULT_STOP_SEC_CONST_1BIT
#undef PRIVATE_SECTION
#define SECTION_TYPE rodata
#elif defined (DEFAULT_START_SEC_CONST_8BIT)
#undef DEFAULT_START_SEC_CONST_8BIT
#define PRIVATE_SECTION ".constdata.CONST_ROM_8BIT"
#define SECTION_TYPE rodata
#elif defined (DEFAULT_STOP_SEC_CONST_8BIT)
#undef DEFAULT_STOP_SEC_CONST_8BIT
#undef PRIVATE_SECTION
#define SECTION_TYPE rodata
#elif defined (DEFAULT_START_SEC_CONST_16BIT)
#undef DEFAULT_START_SEC_CONST_16BIT
#define PRIVATE_SECTION ".constdata.CONST_ROM_16BIT"
#define SECTION_TYPE rodata
#elif defined (DEFAULT_STOP_SEC_CONST_16BIT)
#undef DEFAULT_STOP_SEC_CONST_16BIT
#undef PRIVATE_SECTION
#define SECTION_TYPE rodata
#elif defined (DEFAULT_START_SEC_CONST_32BIT)
#undef DEFAULT_START_SEC_CONST_32BIT
#define PRIVATE_SECTION ".constdata.CONST_ROM_32BIT"
#define SECTION_TYPE rodata
#elif defined (DEFAULT_STOP_SEC_CONST_32BIT)
#undef DEFAULT_STOP_SEC_CONST_32BIT
#undef PRIVATE_SECTION
#define SECTION_TYPE rodata
#elif defined (DEFAULT_START_SEC_CONST_UNSPECIFIED)
#undef DEFAULT_START_SEC_CONST_UNSPECIFIED
#define PRIVATE_SECTION ".CONST_ROM_UNSPECIFIED"
#define SECTION_TYPE rodata
#elif defined (DEFAULT_STOP_SEC_CONST_UNSPECIFIED)
#undef DEFAULT_STOP_SEC_CONST_UNSPECIFIED
#undef PRIVATE_SECTION
#define SECTION_TYPE rodata
/* -------------------------------------------------------------------------- */
/* ROM FAR constants */
/* -------------------------------------------------------------------------- */
#elif defined (DEFAULT_START_SEC_CONST_1BIT_FAR)
#undef DEFAULT_START_SEC_CONST_1BIT_FAR
#define PRIVATE_SECTION ".CONST_FAR_ROM_1BIT"
#define SECTION_TYPE rodata
#elif defined (DEFAULT_STOP_SEC_CONST_1BIT_FAR)
#undef DEFAULT_STOP_SEC_CONST_1BIT_FAR
#undef PRIVATE_SECTION
#define SECTION_TYPE rodata
#elif defined (DEFAULT_START_SEC_CONST_8BIT_FAR)
#undef DEFAULT_START_SEC_CONST_8BIT_FAR
#define PRIVATE_SECTION ".CONST_FAR_ROM_8BIT"
#define SECTION_TYPE rodata
#elif defined (DEFAULT_STOP_SEC_CONST_8BIT_FAR)
#undef DEFAULT_STOP_SEC_CONST_8BIT_FAR
#undef PRIVATE_SECTION
#define SECTION_TYPE rodata
#elif defined (DEFAULT_START_SEC_CONST_16BIT_FAR)
#undef DEFAULT_START_SEC_CONST_16BIT_FAR
#define PRIVATE_SECTION ".CONST_FAR_ROM_16BIT"
#define SECTION_TYPE rodata
#elif defined (DEFAULT_STOP_SEC_CONST_16BIT_FAR)
#undef DEFAULT_STOP_SEC_CONST_16BIT_FAR
#undef PRIVATE_SECTION
#define SECTION_TYPE rodata
#elif defined (DEFAULT_START_SEC_CONST_32BIT_FAR)
#undef DEFAULT_START_SEC_CONST_32BIT_FAR
#define PRIVATE_SECTION ".CONST_FAR_ROM_32BIT"
#define SECTION_TYPE rodata
#elif defined (DEFAULT_STOP_SEC_CONST_32BIT_FAR)
#undef DEFAULT_STOP_SEC_CONST_32BIT_FAR
#undef PRIVATE_SECTION
#define SECTION_TYPE rodata
#elif defined (DEFAULT_START_SEC_CONST_UNSPECIFIED_FAR)
#undef DEFAULT_START_SEC_CONST_UNSPECIFIED_FAR
#define PRIVATE_SECTION ".CONST_FAR_ROM_UNSPECIFIED"
#define SECTION_TYPE rodata
#elif defined (DEFAULT_STOP_SEC_CONST_UNSPECIFIED_FAR)
#undef DEFAULT_STOP_SEC_CONST_UNSPECIFIED_FAR
#undef PRIVATE_SECTION
#define SECTION_TYPE rodata
/* -------------------------------------------------------------------------- */
/* ROM code */
/* -------------------------------------------------------------------------- */
#elif defined (DEFAULT_START_SEC_CODE)
#undef DEFAULT_START_SEC_CODE
#define PRIVATE_SECTION ".DEFAULT_CODE_ROM"
#define SECTION_TYPE text
#elif defined (DEFAULT_STOP_SEC_CODE)
#undef DEFAULT_STOP_SEC_CODE
#undef PRIVATE_SECTION
#define SECTION_TYPE text
/* ---------------------------------------------------------------------------*/
/* End of default section mapping */
/* ---------------------------------------------------------------------------*/
/*******************************************************************************
** Global Data Types **
*******************************************************************************/
#endif /* START_WITH_IF */
/*******************************************************************************
** Default section mapping **
*******************************************************************************/
#include "Common_MemMap.h"
/*******************************************************************************
** End of File **
*******************************************************************************/

View File

@@ -0,0 +1,660 @@
/*============================================================================*/
/* Project = AUTOSAR Renesas CPF MCAL Components */
/* Module = CddCrc_MemMap.h */
/*============================================================================*/
/* COPYRIGHT */
/*============================================================================*/
/* (c) 2022 Renesas Electronics Corporation. All rights reserved. */
/*============================================================================*/
/* Purpose: */
/* Provision for sections for Memory Mapping */
/* */
/*============================================================================*/
/* */
/* Unless otherwise agreed upon in writing between your company and */
/* Renesas Electronics Corporation the following shall apply! */
/* */
/* Warranty Disclaimer */
/* */
/* There is no warranty of any kind whatsoever granted by Renesas. Any */
/* warranty is expressly disclaimed and excluded by Renesas, either expressed */
/* or implied, including but not limited to those for non-infringement of */
/* intellectual property, merchantability and/or fitness for the particular */
/* purpose. */
/* */
/* Renesas shall not have any obligation to maintain, service or provide bug */
/* fixes for the supplied Product(s) and/or the Application. */
/* */
/* Each User is solely responsible for determining the appropriateness of */
/* using the Product(s) and assumes all risks associated with its exercise */
/* of rights under this Agreement, including, but not limited to the risks */
/* and costs of program errors, compliance with applicable laws, damage to */
/* or loss of data, programs or equipment, and unavailability or */
/* interruption of operations. */
/* */
/* Limitation of Liability */
/* */
/* In no event shall Renesas be liable to the User for any incidental, */
/* consequential, indirect, or punitive damage (including but not limited */
/* to lost profits) regardless of whether such liability is based on breach */
/* of contract, tort, strict liability, breach of warranties, failure of */
/* essential purpose or otherwise and even if advised of the possibility of */
/* such damages. Renesas shall not be liable for any services or products */
/* provided by third party vendors, developers or consultants identified or */
/* referred to the User by Renesas in connection with the Product(s) and/or */
/* the Application. */
/* */
/*============================================================================*/
/* Environment: */
/* Devices: R-Car Series, 4rd Generation */
/*============================================================================*/
/*
* 1.0.2 05-Jun-2022 Add CDDCRC_START_SEC_VAR_CLEARED_DESC_UNSPECIFIED,
* CDDCRC_STOP_SEC_VAR_CLEARED_DESC_UNSPECIFIED
* 26-May-2022 Add CDDCRC_START_SEC_VAR_USER_RAM,
* CDDCRC_STOP_SEC_VAR_USER_RAM
* 1.0.1 05-Apr-2022 Add PRIVATE_CODE, PUBLIC_CODE, and VAR_NO_INIT_PTR
* 1.0.0 18-Feb-2022 Initial Version
*/
/******************************************************************************/
/*******************************************************************************
** Include Section **
*******************************************************************************/
/*******************************************************************************
** Version Information **
*******************************************************************************/
/*
* AUTOSAR specification version information
*/
#ifndef CDDCRC_MEMMAP_AR_RELEASE_MAJOR_VERSION
#define CDDCRC_MEMMAP_AR_RELEASE_MAJOR_VERSION 4
#endif
#ifndef CDDCRC_MEMMAP_AR_RELEASE_MINOR_VERSION
#define CDDCRC_MEMMAP_AR_RELEASE_MINOR_VERSION 5
#endif
#ifndef CDDCRC_MEMMAP_AR_RELEASE_REVISION_VERSION
#define CDDCRC_MEMMAP_AR_RELEASE_REVISION_VERSION 0
#endif
/*
* File version information
*/
#ifndef CDDCRC_MEMMAP_SW_MAJOR_VERSION
#define CDDCRC_MEMMAP_SW_MAJOR_VERSION 1
#endif
#ifndef CDDCRC_MEMMAP_SW_MINOR_VERSION
#define CDDCRC_MEMMAP_SW_MINOR_VERSION 0
#endif
#ifndef CDDCRC_MEMMAP_SW_PATCH_VERSION
#define CDDCRC_MEMMAP_SW_PATCH_VERSION 0
#endif
/*******************************************************************************
** Global Symbols **
*******************************************************************************/
/*******************************************************************************
** Global Data Types **
*******************************************************************************/
/*******************************************************************************
** Module section mapping **
*******************************************************************************/
/*
* The symbol 'START_WITH_IF' is undefined.
*
* Thus, the preprocessor continues searching for defined symbols
* This first #ifdef makes integration of delivered parts of MemMap.h
* easier because every supplier starts with #elif
*/
#if defined (START_WITH_IF)
/* -------------------------------------------------------------------------- */
/* CRC Complex Driver */
/* -------------------------------------------------------------------------- */
#elif defined (CDDCRC_START_SEC_VAR_INIT_BOOLEAN)
#ifdef VAR_INIT_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_BOOLEAN_SEC_STARTED
#undef CDDCRC_START_SEC_VAR_INIT_BOOLEAN
#define DEFAULT_START_SEC_VAR_INIT_8
#endif
#elif defined (CDDCRC_STOP_SEC_VAR_INIT_BOOLEAN)
#ifndef VAR_INIT_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_BOOLEAN_SEC_STARTED
#undef CDDCRC_STOP_SEC_VAR_INIT_BOOLEAN
#define DEFAULT_STOP_SEC_VAR_INIT_8
#endif
#elif defined (CDDCRC_START_SEC_VAR_CLEARED_BOOLEAN)
#ifdef VAR_CLEARED_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_CLEARED_BOOLEAN_SEC_STARTED
#undef CDDCRC_START_SEC_VAR_CLEARED_BOOLEAN
#define DEFAULT_START_SEC_VAR_CLEARED_1
#endif
#elif defined (CDDCRC_STOP_SEC_VAR_CLEARED_BOOLEAN)
#ifndef VAR_CLEARED_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_CLEARED_BOOLEAN_SEC_STARTED
#undef CDDCRC_STOP_SEC_VAR_CLEARED_BOOLEAN
#define DEFAULT_STOP_SEC_VAR_CLEARED_1
#endif
#elif defined (CDDCRC_START_SEC_VAR_INIT_8)
#ifdef VAR_INIT_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_8_SEC_STARTED
#undef CDDCRC_START_SEC_VAR_INIT_8
#define DEFAULT_START_SEC_VAR_INIT_8
#endif
#elif defined (CDDCRC_STOP_SEC_VAR_INIT_8)
#ifndef VAR_INIT_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_8_SEC_STARTED
#undef CDDCRC_STOP_SEC_VAR_INIT_8
#define DEFAULT_STOP_SEC_VAR_INIT_8
#endif
#elif defined (CDDCRC_START_SEC_VAR_CLEARED_8)
#ifdef VAR_CLEARED_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_CLEARED_8_SEC_STARTED
#undef CDDCRC_START_SEC_VAR_CLEARED_8
#define DEFAULT_START_SEC_VAR_CLEARED_8
#endif
#elif defined (CDDCRC_STOP_SEC_VAR_CLEARED_8)
#ifndef VAR_CLEARED_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_CLEARED_8_SEC_STARTED
#undef CDDCRC_STOP_SEC_VAR_CLEARED_8
#define DEFAULT_STOP_SEC_VAR_CLEARED_8
#endif
#elif defined (CDDCRC_START_SEC_VAR_INIT_16)
#ifdef VAR_INIT_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_16_SEC_STARTED
#undef CDDCRC_START_SEC_VAR_INIT_16
#define DEFAULT_START_SEC_VAR_INIT_16
#endif
#elif defined (CDDCRC_STOP_SEC_VAR_INIT_16)
#ifndef VAR_INIT_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_16_SEC_STARTED
#undef CDDCRC_STOP_SEC_VAR_INIT_16
#define DEFAULT_STOP_SEC_VAR_INIT_16
#endif
#elif defined (CDDCRC_START_SEC_VAR_CLEARED_16)
#ifdef VAR_CLEARED_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_CLEARED_16_SEC_STARTED
#undef CDDCRC_START_SEC_VAR_CLEARED_16
#define DEFAULT_START_SEC_VAR_CLEARED_16
#endif
#elif defined (CDDCRC_STOP_SEC_VAR_CLEARED_16)
#ifndef VAR_CLEARED_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_CLEARED_16_SEC_STARTED
#undef CDDCRC_STOP_SEC_VAR_CLEARED_16
#define DEFAULT_STOP_SEC_VAR_CLEARED_16
#endif
#elif defined (CDDCRC_START_SEC_VAR_INIT_32)
#ifdef VAR_INIT_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_32_SEC_STARTED
#undef CDDCRC_START_SEC_VAR_INIT_32
#define DEFAULT_START_SEC_VAR_INIT_32
#endif
#elif defined (CDDCRC_STOP_SEC_VAR_INIT_32)
#ifndef VAR_INIT_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_32_SEC_STARTED
#undef CDDCRC_STOP_SEC_VAR_INIT_32
#define DEFAULT_STOP_SEC_VAR_INIT_32
#endif
#elif defined (CDDCRC_START_SEC_VAR_USER_RAM)
#ifdef CDDCRC_VAR_USER_RAM_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CDDCRC_VAR_USER_RAM_SEC_STARTED
#undef CDDCRC_START_SEC_VAR_USER_RAM
#define DEFAULT_START_SEC_VAR_CLEARED_USER_RAM_UNSPECIFIED
#endif
#elif defined (CDDCRC_STOP_SEC_VAR_USER_RAM)
#ifndef CDDCRC_VAR_USER_RAM_SEC_STARTED
#error "Memory section is not started"
#else
#undef CDDCRC_VAR_USER_RAM_SEC_STARTED
#undef CDDCRC_STOP_SEC_VAR_USER_RAM
#define DEFAULT_STOP_SEC_VAR_CLEARED_USER_RAM_UNSPECIFIED
#endif
#elif defined (CDDCRC_START_SEC_VAR_CLEARED_32)
#ifdef VAR_CLEARED_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_CLEARED_32_SEC_STARTED
#undef CDDCRC_START_SEC_VAR_CLEARED_32
#define DEFAULT_START_SEC_VAR_CLEARED_32
#endif
#elif defined (CDDCRC_STOP_SEC_VAR_CLEARED_32)
#ifndef VAR_CLEARED_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_CLEARED_32_SEC_STARTED
#undef CDDCRC_STOP_SEC_VAR_CLEARED_32
#define DEFAULT_STOP_SEC_VAR_CLEARED_32
#endif
#elif defined (CDDCRC_START_SEC_VAR_INIT_UNSPECIFIED)
#ifdef VAR_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_UNSPECIFIED_SEC_STARTED
#undef CDDCRC_START_SEC_VAR_INIT_UNSPECIFIED
#define DEFAULT_START_SEC_VAR_INIT_UNSPECIFIED
#endif
#elif defined (CDDCRC_STOP_SEC_VAR_INIT_UNSPECIFIED)
#ifndef VAR_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_UNSPECIFIED_SEC_STARTED
#undef CDDCRC_STOP_SEC_VAR_INIT_UNSPECIFIED
#define DEFAULT_STOP_SEC_VAR_INIT_UNSPECIFIED
#endif
#elif defined (CDDCRC_START_SEC_VAR_CLEARED_DESC_UNSPECIFIED)
#ifdef CDDCRC_VAR_CLEARED_DESC_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CDDCRC_VAR_CLEARED_DESC_UNSPECIFIED_SEC_STARTED
#undef CDDCRC_START_SEC_VAR_CLEARED_DESC_UNSPECIFIED
#define PRIVATE_SECTION ".bss.VAR_CLEARED_DESC_UNSPECIFIED"
#define SECTION_TYPE bss
#define ALIGNMENT_SECTION
#endif
#elif defined (CDDCRC_STOP_SEC_VAR_CLEARED_DESC_UNSPECIFIED)
#ifndef CDDCRC_VAR_CLEARED_DESC_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef CDDCRC_VAR_CLEARED_DESC_UNSPECIFIED_SEC_STARTED
#undef CDDCRC_STOP_SEC_VAR_CLEARED_DESC_UNSPECIFIED
#undef PRIVATE_SECTION
#undef ALIGNMENT_SECTION
#define SECTION_TYPE bss
#endif
#elif defined (CDDCRC_START_SEC_VAR_CLEARED_UNSPECIFIED)
#ifdef VAR_CLEARED_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_CLEARED_UNSPECIFIED_SEC_STARTED
#undef CDDCRC_START_SEC_VAR_CLEARED_UNSPECIFIED
#define DEFAULT_START_SEC_VAR_CLEARED_UNSPECIFIED
#endif
#elif defined (CDDCRC_STOP_SEC_VAR_CLEARED_UNSPECIFIED)
#ifndef VAR_CLEARED_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_CLEARED_UNSPECIFIED_SEC_STARTED
#undef CDDCRC_STOP_SEC_VAR_CLEARED_UNSPECIFIED
#define DEFAULT_STOP_SEC_VAR_CLEARED_UNSPECIFIED
#endif
#elif defined (CDDCRC_START_SEC_CONST_BOOLEAN)
#ifdef CONST_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_BOOLEAN_SEC_STARTED
#undef CDDCRC_START_SEC_CONST_BOOLEAN
#define DEFAULT_START_SEC_CONST_1
#endif
#elif defined (CDDCRC_STOP_SEC_CONST_BOOLEAN)
#ifndef CONST_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_BOOLEAN_SEC_STARTED
#undef CDDCRC_STOP_SEC_CONST_BOOLEAN
#define DEFAULT_STOP_SEC_CONST_1
#endif
#elif defined (CDDCRC_START_SEC_CONST_8)
#ifdef CONST_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_8_SEC_STARTED
#undef CDDCRC_START_SEC_CONST_8
#define DEFAULT_START_SEC_CONST_8
#endif
#elif defined (CDDCRC_STOP_SEC_CONST_8)
#ifndef CONST_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_8_SEC_STARTED
#undef CDDCRC_STOP_SEC_CONST_8
#define DEFAULT_STOP_SEC_CONST_8
#endif
#elif defined (CDDCRC_START_SEC_CONST_16)
#ifdef CONST_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_16_SEC_STARTED
#undef CDDCRC_START_SEC_CONST_16
#define DEFAULT_START_SEC_CONST_16
#endif
#elif defined (CDDCRC_STOP_SEC_CONST_16)
#ifndef CONST_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_16_SEC_STARTED
#undef CDDCRC_STOP_SEC_CONST_16
#define DEFAULT_STOP_SEC_CONST_16
#endif
#elif defined (CDDCRC_START_SEC_CONST_32)
#ifdef CONST_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_32_SEC_STARTED
#undef CDDCRC_START_SEC_CONST_32
#define DEFAULT_START_SEC_CONST_32
#endif
#elif defined (CDDCRC_STOP_SEC_CONST_32)
#ifndef CONST_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_32_SEC_STARTED
#undef CDDCRC_STOP_SEC_CONST_32
#define DEFAULT_STOP_SEC_CONST_32
#endif
#elif defined (CDDCRC_START_SEC_CONST_UNSPECIFIED)
#ifdef CONST_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_UNSPECIFIED_SEC_STARTED
#undef CDDCRC_START_SEC_CONST_UNSPECIFIED
#define DEFAULT_START_SEC_CONST_UNSPECIFIED
#endif
#elif defined (CDDCRC_STOP_SEC_CONST_UNSPECIFIED)
#ifndef CONST_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_UNSPECIFIED_SEC_STARTED
#undef CDDCRC_STOP_SEC_CONST_UNSPECIFIED
#define DEFAULT_STOP_SEC_CONST_UNSPECIFIED
#endif
#elif defined (CDDCRC_START_SEC_CONFIG_DATA_BOOLEAN)
#ifdef CONFIG_DATA_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_BOOLEAN_SEC_STARTED
#undef CDDCRC_START_SEC_CONFIG_DATA_BOOLEAN
#define DEFAULT_START_SEC_CONFIG_DATA_1
#endif
#elif defined (CDDCRC_STOP_SEC_CONFIG_DATA_BOOLEAN)
#ifndef CONFIG_DATA_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_BOOLEAN_SEC_STARTED
#undef CDDCRC_STOP_SEC_CONFIG_DATA_BOOLEAN
#define DEFAULT_STOP_SEC_CONFIG_DATA_1
#endif
#elif defined (CDDCRC_START_SEC_CONFIG_DATA_8)
#ifdef CONFIG_DATA_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_8_SEC_STARTED
#undef CDDCRC_START_SEC_CONFIG_DATA_8
#define DEFAULT_START_SEC_CONFIG_DATA_8
#endif
#elif defined (CDDCRC_STOP_SEC_CONFIG_DATA_8)
#ifndef CONFIG_DATA_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_8_SEC_STARTED
#undef CDDCRC_STOP_SEC_CONFIG_DATA_8
#define DEFAULT_STOP_SEC_CONFIG_DATA_8
#endif
#elif defined (CDDCRC_START_SEC_CONFIG_DATA_16)
#ifdef CONFIG_DATA_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_16_SEC_STARTED
#undef CDDCRC_START_SEC_CONFIG_DATA_16
#define DEFAULT_START_SEC_CONFIG_DATA_16
#endif
#elif defined (CDDCRC_STOP_SEC_CONFIG_DATA_16)
#ifndef CONFIG_DATA_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_16_SEC_STARTED
#undef CDDCRC_STOP_SEC_CONFIG_DATA_16
#define DEFAULT_STOP_SEC_CONFIG_DATA_16
#endif
#elif defined (CDDCRC_START_SEC_CONFIG_DATA_32)
#ifdef CONFIG_DATA_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_32_SEC_STARTED
#undef CDDCRC_START_SEC_CONFIG_DATA_32
#define DEFAULT_START_SEC_CONFIG_DATA_32
#endif
#elif defined (CDDCRC_STOP_SEC_CONFIG_DATA_32)
#ifndef CONFIG_DATA_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_32_SEC_STARTED
#undef CDDCRC_STOP_SEC_CONFIG_DATA_32
#define DEFAULT_STOP_SEC_CONFIG_DATA_32
#endif
#elif defined (CDDCRC_START_SEC_CONFIG_DATA_UNSPECIFIED)
#ifdef CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#undef CDDCRC_START_SEC_CONFIG_DATA_UNSPECIFIED
#define DEFAULT_START_SEC_CONFIG_DATA_UNSPECIFIED
#endif
#elif defined (CDDCRC_STOP_SEC_CONFIG_DATA_UNSPECIFIED)
#ifndef CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#undef CDDCRC_STOP_SEC_CONFIG_DATA_UNSPECIFIED
#define DEFAULT_STOP_SEC_CONFIG_DATA_UNSPECIFIED
#endif
#elif defined (CDDCRC_START_SEC_CODE_SLOW)
#ifdef CODE_SLOW_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CODE_SLOW_SEC_STARTED
#undef CDDCRC_START_SEC_CODE_SLOW
#define DEFAULT_START_SEC_CODE_SLOW
#endif
#elif defined (CDDCRC_STOP_SEC_CODE_SLOW)
#ifndef CODE_SLOW_SEC_STARTED
#error "Memory section is not started"
#else
#undef CODE_SLOW_SEC_STARTED
#undef CDDCRC_STOP_SEC_CODE_SLOW
#define DEFAULT_STOP_SEC_CODE_SLOW
#endif
#elif defined (CDDCRC_START_SEC_CALLOUT_CODE)
#ifdef CALLOUT_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CALLOUT_CODE_SEC_STARTED
#undef CDDCRC_START_SEC_CALLOUT_CODE
#define DEFAULT_START_SEC_CALLOUT_CODE
#endif
#elif defined (CDDCRC_STOP_SEC_CALLOUT_CODE)
#ifndef CALLOUT_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef CALLOUT_CODE_SEC_STARTED
#undef CDDCRC_STOP_SEC_CALLOUT_CODE
#define DEFAULT_STOP_SEC_CALLOUT_CODE
#endif
#elif defined (CDDCRC_START_SEC_APPL_CODE)
#ifdef APPL_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define APPL_CODE_SEC_STARTED
#undef CDDCRC_START_SEC_APPL_CODE
#define DEFAULT_START_SEC_APPL_CODE
#endif
#elif defined (CDDCRC_STOP_SEC_APPL_CODE)
#ifndef APPL_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef APPL_CODE_SEC_STARTED
#undef CDDCRC_STOP_SEC_APPL_CODE
#define DEFAULT_STOP_SEC_APPL_CODE
#endif
#elif defined (CDDCRC_START_SEC_CODE)
#ifdef CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CODE_SEC_STARTED
#undef CDDCRC_START_SEC_CODE
#define DEFAULT_START_SEC_CODE
#endif
#elif defined (CDDCRC_STOP_SEC_CODE)
#ifndef CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef CODE_SEC_STARTED
#undef CDDCRC_STOP_SEC_CODE
#define DEFAULT_STOP_SEC_CODE
#endif
#elif defined (CDDCRC_START_SEC_CODE_FAST)
#ifdef CODE_FAST_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CODE_FAST_SEC_STARTED
#undef CDDCRC_START_SEC_CODE_FAST
#define DEFAULT_START_SEC_CODE_FAST
#endif
#elif defined (CDDCRC_STOP_SEC_CODE_FAST)
#ifndef CODE_FAST_SEC_STARTED
#error "Memory section is not started"
#else
#undef CODE_FAST_SEC_STARTED
#undef CDDCRC_STOP_SEC_CODE_FAST
#define DEFAULT_STOP_SEC_CODE_FAST
#endif
#elif defined (CDDCRC_START_SEC_PRIVATE_CODE)
#ifdef PRIVATE_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define PRIVATE_CODE_SEC_STARTED
#undef CDDCRC_START_SEC_PRIVATE_CODE
#define PRIVATE_SECTION ".text.CDDCRC_PRIVATE_CODE_ROM"
#define SECTION_TYPE text
#endif
#elif defined (CDDCRC_STOP_SEC_PRIVATE_CODE)
#ifndef PRIVATE_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef PRIVATE_CODE_SEC_STARTED
#undef CDDCRC_STOP_SEC_PRIVATE_CODE
#define DEFAULT_STOP_SEC_CODE
#endif
#elif defined (CDDCRC_START_SEC_PUBLIC_CODE)
#ifdef PUBLIC_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define PUBLIC_CODE_SEC_STARTED
#undef CDDCRC_START_SEC_PUBLIC_CODE
#define PRIVATE_SECTION ".text.CDDCRC_PUBLIC_CODE_ROM"
#define SECTION_TYPE text
#endif
#elif defined (CDDCRC_STOP_SEC_PUBLIC_CODE)
#ifndef PUBLIC_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef PUBLIC_CODE_SEC_STARTED
#undef CDDCRC_STOP_SEC_PUBLIC_CODE
#define DEFAULT_STOP_SEC_CODE
#endif
#elif defined (CDDCRC_START_SEC_VAR_NO_INIT_PTR)
#ifdef VAR_NO_INIT_PTR_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_PTR_SEC_STARTED
#undef CDDCRC_START_SEC_VAR_NO_INIT_PTR
#define DEFAULT_START_SEC_VAR_NO_INIT_PTR
#endif
#elif defined (CDDCRC_STOP_SEC_VAR_NO_INIT_PTR)
#ifndef VAR_NO_INIT_PTR_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_PTR_SEC_STARTED
#undef CDDCRC_STOP_SEC_VAR_NO_INIT_PTR
#define DEFAULT_STOP_SEC_VAR_NO_INIT_PTR
#endif
#elif defined (CDDCRC_START_SEC_DBTOC_DATA_UNSPECIFIED)
#ifdef DBTOC_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define DBTOC_DATA_UNSPECIFIED_SEC_STARTED
#undef CDDCRC_START_SEC_DBTOC_DATA_UNSPECIFIED
#define DEFAULT_START_SEC_DBTOC_DATA_UNSPECIFIED
#endif
#elif defined (CDDCRC_STOP_SEC_DBTOC_DATA_UNSPECIFIED)
#ifndef DBTOC_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef DBTOC_DATA_UNSPECIFIED_SEC_STARTED
#undef CDDCRC_STOP_SEC_DBTOC_DATA_UNSPECIFIED
#define DEFAULT_STOP_SEC_DBTOC_DATA_UNSPECIFIED
#endif
/* -------------------------------------------------------------------------- */
/* End of module section mapping */
/* -------------------------------------------------------------------------- */
#else
#error "CDDCRC_MemMap.h: No valid section define found"
#endif /* START_WITH_IF */
/*******************************************************************************
** Default section mapping **
*******************************************************************************/
#include "Common_MemMap.h"
/*******************************************************************************
** End of File **
*******************************************************************************/

View File

@@ -0,0 +1,591 @@
/*============================================================================*/
/* Project = AUTOSAR Renesas CPF MCAL Components */
/* Module = CddEmm_MemMap.h */
/* SW-VERSION = 1.0.8 */
/*============================================================================*/
/* COPYRIGHT */
/*============================================================================*/
/* Copyright(c) 2022 Renesas Electronics Corporation */
/*============================================================================*/
/* Purpose: */
/* Provision for sections for Memory Mapping */
/* */
/*============================================================================*/
/* */
/* Unless otherwise agreed upon in writing between your company and */
/* Renesas Electronics Corporation the following shall apply! */
/* */
/* Warranty Disclaimer */
/* */
/* There is no warranty of any kind whatsoever granted by Renesas. Any */
/* warranty is expressly disclaimed and excluded by Renesas, either expressed */
/* or implied, including but not limited to those for non-infringement of */
/* intellectual property, merchantability and/or fitness for the particular */
/* purpose. */
/* */
/* Renesas shall not have any obligation to maintain, service or provide bug */
/* fixes for the supplied Product(s) and/or the Application. */
/* */
/* Each User is solely responsible for determining the appropriateness of */
/* using the Product(s) and assumes all risks associated with its exercise */
/* of rights under this Agreement, including, but not limited to the risks */
/* and costs of program errors, compliance with applicable laws, damage to */
/* or loss of data, programs or equipment, and unavailability or */
/* interruption of operations. */
/* */
/* Limitation of Liability */
/* */
/* In no event shall Renesas be liable to the User for any incidental, */
/* consequential, indirect, or punitive damage (including but not limited */
/* to lost profits) regardless of whether such liability is based on breach */
/* of contract, tort, strict liability, breach of warranties, failure of */
/* essential purpose or otherwise and even if advised of the possibility of */
/* such damages. Renesas shall not be liable for any services or products */
/* provided by third party vendors, developers or consultants identified or */
/* referred to the User by Renesas in connection with the Product(s) and/or */
/* the Application. */
/* */
/*============================================================================*/
/* Environment: */
/* Devices: R-Car Gen4 */
/*============================================================================*/
/*
* 1.0.1 04-Oct-2022 Add new memory section
* CDDEMM_START_SEC_VAR_NO_INIT_PTR and
* CDDEMM_STOP_SEC_VAR_NO_INIT_PTR
* 1.0.0 21-Feb-2022 Initial Version
*/
/******************************************************************************/
/*******************************************************************************
** Include Section **
*******************************************************************************/
/*******************************************************************************
** Version Information **
*******************************************************************************/
/*
* AUTOSAR specification version information
*/
#ifndef CDDEMM_MEMMAP_AR_RELEASE_MAJOR_VERSION
#define CDDEMM_MEMMAP_AR_RELEASE_MAJOR_VERSION 4
#endif
#ifndef CDDEMM_MEMMAP_AR_RELEASE_MINOR_VERSION
#define CDDEMM_MEMMAP_AR_RELEASE_MINOR_VERSION 5
#endif
#ifndef CDDEMM_MEMMAP_AR_RELEASE_REVISION_VERSION
#define CDDEMM_MEMMAP_AR_RELEASE_REVISION_VERSION 0
#endif
/*
* File version information
*/
#ifndef CDDEMM_MEMMAP_SW_MAJOR_VERSION
#define CDDEMM_MEMMAP_SW_MAJOR_VERSION 1
#endif
#ifndef CDDEMM_MEMMAP_SW_MINOR_VERSION
#define CDDEMM_MEMMAP_SW_MINOR_VERSION 0
#endif
#ifndef CDDEMM_MEMMAP_SW_PATCH_VERSION
#define CDDEMM_MEMMAP_SW_PATCH_VERSION 0
#endif
/*******************************************************************************
** Global Symbols **
*******************************************************************************/
/*******************************************************************************
** Global Data Types **
*******************************************************************************/
/*******************************************************************************
** Module section mapping **
*******************************************************************************/
/*
* The symbol 'START_WITH_IF' is undefined.
*
* Thus, the preprocessor continues searching for defined symbols
* This first #ifdef makes integration of delivered parts of MemMap.h
* easier because every supplier starts with #elif
*/
#if defined (START_WITH_IF)
/* -------------------------------------------------------------------------- */
/* EMM Complex Driver */
/* -------------------------------------------------------------------------- */
#elif defined (CDDEMM_START_SEC_VAR_INIT_BOOLEAN)
#ifdef VAR_INIT_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_BOOLEAN_SEC_STARTED
#undef CDDEMM_START_SEC_VAR_INIT_BOOLEAN
#define DEFAULT_START_SEC_VAR_INIT_1
#endif
#elif defined (CDDEMM_STOP_SEC_VAR_INIT_BOOLEAN)
#ifndef VAR_INIT_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_BOOLEAN_SEC_STARTED
#undef CDDEMM_STOP_SEC_VAR_INIT_BOOLEAN
#define DEFAULT_STOP_SEC_VAR_INIT_1
#endif
#elif defined (CDDEMM_START_SEC_VAR_NO_INIT_BOOLEAN)
#ifdef VAR_NO_INIT_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_BOOLEAN_SEC_STARTED
#undef CDDEMM_START_SEC_VAR_NO_INIT_BOOLEAN
#define DEFAULT_START_SEC_VAR_NO_INIT_1
#endif
#elif defined (CDDEMM_STOP_SEC_VAR_NO_INIT_BOOLEAN)
#ifndef VAR_NO_INIT_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_BOOLEAN_SEC_STARTED
#undef CDDEMM_STOP_SEC_VAR_NO_INIT_BOOLEAN
#define DEFAULT_STOP_SEC_VAR_NO_INIT_1
#endif
#elif defined (CDDEMM_START_SEC_VAR_INIT_8)
#ifdef VAR_INIT_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_8_SEC_STARTED
#undef CDDEMM_START_SEC_VAR_INIT_8
#define DEFAULT_START_SEC_VAR_INIT_8
#endif
#elif defined (CDDEMM_STOP_SEC_VAR_INIT_8)
#ifndef VAR_INIT_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_8_SEC_STARTED
#undef CDDEMM_STOP_SEC_VAR_INIT_8
#define DEFAULT_STOP_SEC_VAR_INIT_8
#endif
#elif defined (CDDEMM_START_SEC_VAR_NO_INIT_8)
#ifdef VAR_NO_INIT_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_8_SEC_STARTED
#undef CDDEMM_START_SEC_VAR_NO_INIT_8
#define DEFAULT_START_SEC_VAR_NO_INIT_8
#endif
#elif defined (CDDEMM_STOP_SEC_VAR_NO_INIT_8)
#ifndef VAR_NO_INIT_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_8_SEC_STARTED
#undef CDDEMM_STOP_SEC_VAR_NO_INIT_8
#define DEFAULT_STOP_SEC_VAR_NO_INIT_8
#endif
#elif defined (CDDEMM_START_SEC_VAR_INIT_16)
#ifdef VAR_INIT_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_16_SEC_STARTED
#undef CDDEMM_START_SEC_VAR_INIT_16
#define DEFAULT_START_SEC_VAR_INIT_16
#endif
#elif defined (CDDEMM_STOP_SEC_VAR_INIT_16)
#ifndef VAR_INIT_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_16_SEC_STARTED
#undef CDDEMM_STOP_SEC_VAR_INIT_16
#define DEFAULT_STOP_SEC_VAR_INIT_16
#endif
#elif defined (CDDEMM_START_SEC_VAR_NO_INIT_16)
#ifdef VAR_NO_INIT_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_16_SEC_STARTED
#undef CDDEMM_START_SEC_VAR_NO_INIT_16
#define DEFAULT_START_SEC_VAR_NO_INIT_16
#endif
#elif defined (CDDEMM_STOP_SEC_VAR_NO_INIT_16)
#ifndef VAR_NO_INIT_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_16_SEC_STARTED
#undef CDDEMM_STOP_SEC_VAR_NO_INIT_16
#define DEFAULT_STOP_SEC_VAR_NO_INIT_16
#endif
#elif defined (CDDEMM_START_SEC_VAR_NO_INIT_PTR)
#ifdef VAR_NO_INIT_PTR_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_PTR_SEC_STARTED
#undef CDDEMM_START_SEC_VAR_NO_INIT_PTR
#define DEFAULT_START_SEC_VAR_NO_INIT_PTR
#endif
#elif defined (CDDEMM_STOP_SEC_VAR_NO_INIT_PTR)
#ifndef VAR_NO_INIT_PTR_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_PTR_SEC_STARTED
#undef CDDEMM_STOP_SEC_VAR_NO_INIT_PTR
#define DEFAULT_STOP_SEC_VAR_NO_INIT_PTR
#endif
#elif defined (CDDEMM_START_SEC_VAR_INIT_32)
#ifdef VAR_INIT_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_32_SEC_STARTED
#undef CDDEMM_START_SEC_VAR_INIT_32
#define DEFAULT_START_SEC_VAR_INIT_32
#endif
#elif defined (CDDEMM_STOP_SEC_VAR_INIT_32)
#ifndef VAR_INIT_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_32_SEC_STARTED
#undef CDDEMM_STOP_SEC_VAR_INIT_32
#define DEFAULT_STOP_SEC_VAR_INIT_32
#endif
#elif defined (CDDEMM_START_SEC_VAR_NO_INIT_32)
#ifdef VAR_NO_INIT_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_32_SEC_STARTED
#undef CDDEMM_START_SEC_VAR_NO_INIT_32
#define DEFAULT_START_SEC_VAR_NO_INIT_32
#endif
#elif defined (CDDEMM_STOP_SEC_VAR_NO_INIT_32)
#ifndef VAR_NO_INIT_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_32_SEC_STARTED
#undef CDDEMM_STOP_SEC_VAR_NO_INIT_32
#define DEFAULT_STOP_SEC_VAR_NO_INIT_32
#endif
#elif defined (CDDEMM_START_SEC_VAR_CLEARED_32)
#ifdef VAR_CLEARED_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_CLEARED_32_SEC_STARTED
#undef CDDEMM_START_SEC_VAR_CLEARED_32
#define DEFAULT_START_SEC_VAR_CLEARED_32
#endif
#elif defined (CDDEMM_STOP_SEC_VAR_CLEARED_32)
#ifndef VAR_CLEARED_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_CLEARED_32_SEC_STARTED
#undef CDDEMM_STOP_SEC_VAR_CLEARED_32
#define DEFAULT_STOP_SEC_VAR_CLEARED_32
#endif
#elif defined (CDDEMM_START_SEC_VAR_INIT_UNSPECIFIED)
#ifdef VAR_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_UNSPECIFIED_SEC_STARTED
#undef CDDEMM_START_SEC_VAR_INIT_UNSPECIFIED
#define DEFAULT_START_SEC_VAR_INIT_UNSPECIFIED
#endif
#elif defined (CDDEMM_STOP_SEC_VAR_INIT_UNSPECIFIED)
#ifndef VAR_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_UNSPECIFIED_SEC_STARTED
#undef CDDEMM_STOP_SEC_VAR_INIT_UNSPECIFIED
#define DEFAULT_STOP_SEC_VAR_INIT_UNSPECIFIED
#endif
#elif defined (CDDEMM_START_SEC_VAR_NO_INIT_UNSPECIFIED)
#ifdef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#undef CDDEMM_START_SEC_VAR_NO_INIT_UNSPECIFIED
#define DEFAULT_START_SEC_VAR_NO_INIT_UNSPECIFIED
#endif
#elif defined (CDDEMM_STOP_SEC_VAR_NO_INIT_UNSPECIFIED)
#ifndef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#undef CDDEMM_STOP_SEC_VAR_NO_INIT_UNSPECIFIED
#define DEFAULT_STOP_SEC_VAR_NO_INIT_UNSPECIFIED
#endif
#elif defined (CDDEMM_START_SEC_CONST_BOOLEAN)
#ifdef CONST_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_BOOLEAN_SEC_STARTED
#undef CDDEMM_START_SEC_CONST_BOOLEAN
#define DEFAULT_START_SEC_CONST_1
#endif
#elif defined (CDDEMM_STOP_SEC_CONST_BOOLEAN)
#ifndef CONST_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_BOOLEAN_SEC_STARTED
#undef CDDEMM_STOP_SEC_CONST_BOOLEAN
#define DEFAULT_STOP_SEC_CONST_1
#endif
#elif defined (CDDEMM_START_SEC_CONST_8)
#ifdef CONST_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_8_SEC_STARTED
#undef CDDEMM_START_SEC_CONST_8
#define DEFAULT_START_SEC_CONST_8
#endif
#elif defined (CDDEMM_STOP_SEC_CONST_8)
#ifndef CONST_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_8_SEC_STARTED
#undef CDDEMM_STOP_SEC_CONST_8
#define DEFAULT_STOP_SEC_CONST_8
#endif
#elif defined (CDDEMM_START_SEC_CONST_16)
#ifdef CONST_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_16_SEC_STARTED
#undef CDDEMM_START_SEC_CONST_16
#define DEFAULT_START_SEC_CONST_16
#endif
#elif defined (CDDEMM_STOP_SEC_CONST_16)
#ifndef CONST_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_16_SEC_STARTED
#undef CDDEMM_STOP_SEC_CONST_16
#define DEFAULT_STOP_SEC_CONST_16
#endif
#elif defined (CDDEMM_START_SEC_CONST_32)
#ifdef CONST_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_32_SEC_STARTED
#undef CDDEMM_START_SEC_CONST_32
#define DEFAULT_START_SEC_CONST_32
#endif
#elif defined (CDDEMM_STOP_SEC_CONST_32)
#ifndef CONST_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_32_SEC_STARTED
#undef CDDEMM_STOP_SEC_CONST_32
#define DEFAULT_STOP_SEC_CONST_32
#endif
#elif defined (CDDEMM_START_SEC_CONST_UNSPECIFIED)
#ifdef CONST_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_UNSPECIFIED_SEC_STARTED
#undef CDDEMM_START_SEC_CONST_UNSPECIFIED
#define DEFAULT_START_SEC_CONST_UNSPECIFIED
#endif
#elif defined (CDDEMM_STOP_SEC_CONST_UNSPECIFIED)
#ifndef CONST_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_UNSPECIFIED_SEC_STARTED
#undef CDDEMM_STOP_SEC_CONST_UNSPECIFIED
#define DEFAULT_STOP_SEC_CONST_UNSPECIFIED
#endif
#elif defined (CDDEMM_START_SEC_CONFIG_DATA_BOOLEAN)
#ifdef CONFIG_DATA_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_BOOLEAN_SEC_STARTED
#undef CDDEMM_START_SEC_CONFIG_DATA_BOOLEAN
#define DEFAULT_START_SEC_CONFIG_DATA_1
#endif
#elif defined (CDDEMM_STOP_SEC_CONFIG_DATA_BOOLEAN)
#ifndef CONFIG_DATA_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_BOOLEAN_SEC_STARTED
#undef CDDEMM_STOP_SEC_CONFIG_DATA_BOOLEAN
#define DEFAULT_STOP_SEC_CONFIG_DATA_1
#endif
#elif defined (CDDEMM_START_SEC_CONFIG_DATA_8)
#ifdef CONFIG_DATA_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_8_SEC_STARTED
#undef CDDEMM_START_SEC_CONFIG_DATA_8
#define DEFAULT_START_SEC_CONFIG_DATA_8
#endif
#elif defined (CDDEMM_STOP_SEC_CONFIG_DATA_8)
#ifndef CONFIG_DATA_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_8_SEC_STARTED
#undef CDDEMM_STOP_SEC_CONFIG_DATA_8
#define DEFAULT_STOP_SEC_CONFIG_DATA_8
#endif
#elif defined (CDDEMM_START_SEC_CONFIG_DATA_16)
#ifdef CONFIG_DATA_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_16_SEC_STARTED
#undef CDDEMM_START_SEC_CONFIG_DATA_16
#define DEFAULT_START_SEC_CONFIG_DATA_16
#endif
#elif defined (CDDEMM_STOP_SEC_CONFIG_DATA_16)
#ifndef CONFIG_DATA_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_16_SEC_STARTED
#undef CDDEMM_STOP_SEC_CONFIG_DATA_16
#define DEFAULT_STOP_SEC_CONFIG_DATA_16
#endif
#elif defined (CDDEMM_START_SEC_CONFIG_DATA_32)
#ifdef CONFIG_DATA_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_32_SEC_STARTED
#undef CDDEMM_START_SEC_CONFIG_DATA_32
#define DEFAULT_START_SEC_CONFIG_DATA_32
#endif
#elif defined (CDDEMM_STOP_SEC_CONFIG_DATA_32)
#ifndef CONFIG_DATA_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_32_SEC_STARTED
#undef CDDEMM_STOP_SEC_CONFIG_DATA_32
#define DEFAULT_STOP_SEC_CONFIG_DATA_32
#endif
#elif defined (CDDEMM_START_SEC_CONFIG_DATA_UNSPECIFIED)
#ifdef CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#undef CDDEMM_START_SEC_CONFIG_DATA_UNSPECIFIED
#define DEFAULT_START_SEC_CONFIG_DATA_UNSPECIFIED
#endif
#elif defined (CDDEMM_STOP_SEC_CONFIG_DATA_UNSPECIFIED)
#ifndef CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#undef CDDEMM_STOP_SEC_CONFIG_DATA_UNSPECIFIED
#define DEFAULT_STOP_SEC_CONFIG_DATA_UNSPECIFIED
#endif
#elif defined (CDDEMM_START_SEC_CODE_SLOW)
#ifdef CODE_SLOW_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CODE_SLOW_SEC_STARTED
#undef CDDEMM_START_SEC_CODE_SLOW
#define DEFAULT_START_SEC_CODE_SLOW
#endif
#elif defined (CDDEMM_STOP_SEC_CODE_SLOW)
#ifndef CODE_SLOW_SEC_STARTED
#error "Memory section is not started"
#else
#undef CODE_SLOW_SEC_STARTED
#undef CDDEMM_STOP_SEC_CODE_SLOW
#define DEFAULT_STOP_SEC_CODE_SLOW
#endif
#elif defined (CDDEMM_START_SEC_CALLOUT_CODE)
#ifdef CALLOUT_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CALLOUT_CODE_SEC_STARTED
#undef CDDEMM_START_SEC_CALLOUT_CODE
#define DEFAULT_START_SEC_CALLOUT_CODE
#endif
#elif defined (CDDEMM_STOP_SEC_CALLOUT_CODE)
#ifndef CALLOUT_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef CALLOUT_CODE_SEC_STARTED
#undef CDDEMM_STOP_SEC_CALLOUT_CODE
#define DEFAULT_STOP_SEC_CALLOUT_CODE
#endif
#elif defined (CDDEMM_START_SEC_APPL_CODE)
#ifdef APPL_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define APPL_CODE_SEC_STARTED
#undef CDDEMM_START_SEC_APPL_CODE
#define DEFAULT_START_SEC_APPL_CODE
#endif
#elif defined (CDDEMM_STOP_SEC_APPL_CODE)
#ifndef APPL_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef APPL_CODE_SEC_STARTED
#undef CDDEMM_STOP_SEC_APPL_CODE
#define DEFAULT_STOP_SEC_APPL_CODE
#endif
#elif defined (CDDEMM_START_SEC_CODE)
#ifdef CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CODE_SEC_STARTED
#undef CDDEMM_START_SEC_CODE
#define DEFAULT_START_SEC_CODE
#endif
#elif defined (CDDEMM_STOP_SEC_CODE)
#ifndef CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef CODE_SEC_STARTED
#undef CDDEMM_STOP_SEC_CODE
#define DEFAULT_STOP_SEC_CODE
#endif
#elif defined (CDDEMM_START_SEC_CODE_FAST)
#ifdef CODE_FAST_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CODE_FAST_SEC_STARTED
#undef CDDEMM_START_SEC_CODE_FAST
#define DEFAULT_START_SEC_CODE_FAST
#endif
#elif defined (CDDEMM_STOP_SEC_CODE_FAST)
#ifndef CODE_FAST_SEC_STARTED
#error "Memory section is not started"
#else
#undef CODE_FAST_SEC_STARTED
#undef CDDEMM_STOP_SEC_CODE_FAST
#define DEFAULT_STOP_SEC_CODE_FAST
#endif
/* -------------------------------------------------------------------------- */
/* End of module section mapping */
/* -------------------------------------------------------------------------- */
#else
#error "CddEmm_MemMap.h: No valid section define found"
#endif /* START_WITH_IF */
/*******************************************************************************
** Default section mapping **
*******************************************************************************/
#include "Common_MemMap.h"
/*******************************************************************************
** End of File **
*******************************************************************************/

View File

@@ -0,0 +1,602 @@
/*============================================================================*/
/* Project = AUTOSAR Renesas CPF MCAL Components */
/* Module = CddIccom_MemMap.h */
/* SW-VERSION = 1.1.9 */
/*============================================================================*/
/* COPYRIGHT */
/*============================================================================*/
/* Copyright(c) 2021-2023 Renesas Electronics Corporation. */
/*============================================================================*/
/* Purpose: */
/* Provision for sections for Memory Mapping */
/* */
/*============================================================================*/
/* */
/* Unless otherwise agreed upon in writing between your company and */
/* Renesas Electronics Corporation the following shall apply! */
/* */
/* Warranty Disclaimer */
/* */
/* There is no warranty of any kind whatsoever granted by Renesas. Any */
/* warranty is expressly disclaimed and excluded by Renesas, either expressed */
/* or implied, including but not limited to those for non-infringement of */
/* intellectual property, merchantability and/or fitness for the particular */
/* purpose. */
/* */
/* Renesas shall not have any obligation to maintain, service or provide bug */
/* fixes for the supplied Product(s) and/or the Application. */
/* */
/* Each User is solely responsible for determining the appropriateness of */
/* using the Product(s) and assumes all risks associated with its exercise */
/* of rights under this Agreement, including, but not limited to the risks */
/* and costs of program errors, compliance with applicable laws, damage to */
/* or loss of data, programs or equipment, and unavailability or */
/* interruption of operations. */
/* */
/* Limitation of Liability */
/* */
/* In no event shall Renesas be liable to the User for any incidental, */
/* consequential, indirect, or punitive damage (including but not limited */
/* to lost profits) regardless of whether such liability is based on breach */
/* of contract, tort, strict liability, breach of warranties, failure of */
/* essential purpose or otherwise and even if advised of the possibility of */
/* such damages. Renesas shall not be liable for any services or products */
/* provided by third party vendors, developers or consultants identified or */
/* referred to the User by Renesas in connection with the Product(s) and/or */
/* the Application. */
/* */
/*============================================================================*/
/* Environment: */
/* Devices: CPF */
/*============================================================================*/
/*******************************************************************************
** Revision Control History **
*******************************************************************************/
/*
* 1.1.9 15-Mar-2023 Update CDDICCOM_MEMMAP_SW_PATCH_VERSION macro.
* 1.1.8 15-Dec-2022 Update CDDICCOM_MEMMAP_SW_PATCH_VERSION macro.
* 1.1.7 19-Nov-2022 Update CDDICCOM_MEMMAP_SW_PATCH_VERSION macro.
* 1.1.6 07-Sep-2022 Add new memory section
* CDDICCOM_START_SEC_VAR_NO_INIT_PTR and
* CDDICCOM_STOP_SEC_VAR_NO_INIT_PTR
* 1.0.0 20-Aug-2021 Initial Version
*/
/******************************************************************************/
/*******************************************************************************
** Include Section **
*******************************************************************************/
/*******************************************************************************
** Version Information **
*******************************************************************************/
/*
* AUTOSAR specification version information
*/
#define CDDICCOM_MEMMAP_AR_RELEASE_MAJOR_VERSION 4
#define CDDICCOM_MEMMAP_AR_RELEASE_MINOR_VERSION 5
#define CDDICCOM_MEMMAP_AR_RELEASE_REVISION_VERSION 0
/*
* File version information
*/
#define CDDICCOM_MEMMAP_SW_MAJOR_VERSION 1
#define CDDICCOM_MEMMAP_SW_MINOR_VERSION 1
#define CDDICCOM_MEMMAP_SW_PATCH_VERSION 9
/*******************************************************************************
** Global Symbols **
*******************************************************************************/
/*******************************************************************************
** Global Data Types **
*******************************************************************************/
/*******************************************************************************
** Module section mapping **
*******************************************************************************/
/*
* The symbol 'START_WITH_IF' is undefined.
*
* Thus, the preprocessor continues searching for defined symbols
* This first #ifdef makes integration of delivered parts of MemMap.h
* easier because every supplier starts with #elif
*/
#if defined (START_WITH_IF)
/* -------------------------------------------------------------------------- */
/* ICCOM Complex Driver */
/* -------------------------------------------------------------------------- */
#elif defined (CDDICCOM_START_SEC_VAR_INIT_BOOLEAN)
#ifdef VAR_INIT_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_BOOLEAN_SEC_STARTED
#undef CDDICCOM_START_SEC_VAR_INIT_BOOLEAN
#define DEFAULT_START_SEC_VAR_INIT_1
#endif
#elif defined (CDDICCOM_STOP_SEC_VAR_INIT_BOOLEAN)
#ifndef VAR_INIT_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_BOOLEAN_SEC_STARTED
#undef CDDICCOM_STOP_SEC_VAR_INIT_BOOLEAN
#define DEFAULT_STOP_SEC_VAR_INIT_1
#endif
#elif defined (CDDICCOM_START_SEC_VAR_NO_INIT_BOOLEAN)
#ifdef VAR_NO_INIT_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_BOOLEAN_SEC_STARTED
#undef CDDICCOM_START_SEC_VAR_NO_INIT_BOOLEAN
#define DEFAULT_START_SEC_VAR_NO_INIT_1
#endif
#elif defined (CDDICCOM_STOP_SEC_VAR_NO_INIT_BOOLEAN)
#ifndef VAR_NO_INIT_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_BOOLEAN_SEC_STARTED
#undef CDDICCOM_STOP_SEC_VAR_NO_INIT_BOOLEAN
#define DEFAULT_STOP_SEC_VAR_NO_INIT_1
#endif
#elif defined (CDDICCOM_START_SEC_VAR_INIT_8)
#ifdef VAR_INIT_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_8_SEC_STARTED
#undef CDDICCOM_START_SEC_VAR_INIT_8
#define DEFAULT_START_SEC_VAR_INIT_8
#endif
#elif defined (CDDICCOM_STOP_SEC_VAR_INIT_8)
#ifndef VAR_INIT_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_8_SEC_STARTED
#undef CDDICCOM_STOP_SEC_VAR_INIT_8
#define DEFAULT_STOP_SEC_VAR_INIT_8
#endif
#elif defined (CDDICCOM_START_SEC_VAR_NO_INIT_8)
#ifdef VAR_NO_INIT_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_8_SEC_STARTED
#undef CDDICCOM_START_SEC_VAR_NO_INIT_8
#define DEFAULT_START_SEC_VAR_NO_INIT_8
#endif
#elif defined (CDDICCOM_STOP_SEC_VAR_NO_INIT_8)
#ifndef VAR_NO_INIT_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_8_SEC_STARTED
#undef CDDICCOM_STOP_SEC_VAR_NO_INIT_8
#define DEFAULT_STOP_SEC_VAR_NO_INIT_8
#endif
#elif defined (CDDICCOM_START_SEC_VAR_INIT_16)
#ifdef VAR_INIT_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_16_SEC_STARTED
#undef CDDICCOM_START_SEC_VAR_INIT_16
#define DEFAULT_START_SEC_VAR_INIT_16
#endif
#elif defined (CDDICCOM_STOP_SEC_VAR_INIT_16)
#ifndef VAR_INIT_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_16_SEC_STARTED
#undef CDDICCOM_STOP_SEC_VAR_INIT_16
#define DEFAULT_STOP_SEC_VAR_INIT_16
#endif
#elif defined (CDDICCOM_START_SEC_VAR_NO_INIT_16)
#ifdef VAR_NO_INIT_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_16_SEC_STARTED
#undef CDDICCOM_START_SEC_VAR_NO_INIT_16
#define DEFAULT_START_SEC_VAR_NO_INIT_16
#endif
#elif defined (CDDICCOM_STOP_SEC_VAR_NO_INIT_16)
#ifndef VAR_NO_INIT_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_16_SEC_STARTED
#undef CDDICCOM_STOP_SEC_VAR_NO_INIT_16
#define DEFAULT_STOP_SEC_VAR_NO_INIT_16
#endif
#elif defined (CDDICCOM_START_SEC_VAR_INIT_32)
#ifdef VAR_INIT_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_32_SEC_STARTED
#undef CDDICCOM_START_SEC_VAR_INIT_32
#define DEFAULT_START_SEC_VAR_INIT_32
#endif
#elif defined (CDDICCOM_STOP_SEC_VAR_INIT_32)
#ifndef VAR_INIT_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_32_SEC_STARTED
#undef CDDICCOM_STOP_SEC_VAR_INIT_32
#define DEFAULT_STOP_SEC_VAR_INIT_32
#endif
#elif defined (CDDICCOM_START_SEC_VAR_NO_INIT_32)
#ifdef VAR_NO_INIT_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_32_SEC_STARTED
#undef CDDICCOM_START_SEC_VAR_NO_INIT_32
#define DEFAULT_START_SEC_VAR_NO_INIT_32
#endif
#elif defined (CDDICCOM_STOP_SEC_VAR_NO_INIT_32)
#ifndef VAR_NO_INIT_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_32_SEC_STARTED
#undef CDDICCOM_STOP_SEC_VAR_NO_INIT_32
#define DEFAULT_STOP_SEC_VAR_NO_INIT_32
#endif
#elif defined (CDDICCOM_START_SEC_VAR_CLEARED_32)
#ifdef VAR_CLEARED_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_CLEARED_32_SEC_STARTED
#undef CDDICCOM_START_SEC_VAR_CLEARED_32
#define DEFAULT_START_SEC_VAR_CLEARED_32
#endif
#elif defined (CDDICCOM_STOP_SEC_VAR_CLEARED_32)
#ifndef VAR_CLEARED_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_CLEARED_32_SEC_STARTED
#undef CDDICCOM_STOP_SEC_VAR_CLEARED_32
#define DEFAULT_STOP_SEC_VAR_CLEARED_32
#endif
#elif defined (CDDICCOM_START_SEC_VAR_NO_INIT_PTR)
#ifdef VAR_NO_INIT_PTR_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_PTR_SEC_STARTED
#undef CDDICCOM_START_SEC_VAR_NO_INIT_PTR
#define DEFAULT_START_SEC_VAR_NO_INIT_PTR
#endif
#elif defined (CDDICCOM_STOP_SEC_VAR_NO_INIT_PTR)
#ifndef VAR_NO_INIT_PTR_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_PTR_SEC_STARTED
#undef CDDICCOM_STOP_SEC_VAR_NO_INIT_PTR
#define DEFAULT_STOP_SEC_VAR_NO_INIT_PTR
#endif
#elif defined (CDDICCOM_START_SEC_VAR_INIT_UNSPECIFIED)
#ifdef VAR_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_UNSPECIFIED_SEC_STARTED
#undef CDDICCOM_START_SEC_VAR_INIT_UNSPECIFIED
#define DEFAULT_START_SEC_VAR_INIT_UNSPECIFIED
#endif
#elif defined (CDDICCOM_STOP_SEC_VAR_INIT_UNSPECIFIED)
#ifndef VAR_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_UNSPECIFIED_SEC_STARTED
#undef CDDICCOM_STOP_SEC_VAR_INIT_UNSPECIFIED
#define DEFAULT_STOP_SEC_VAR_INIT_UNSPECIFIED
#endif
#elif defined (CDDICCOM_START_SEC_VAR_NO_INIT_UNSPECIFIED)
#ifdef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#undef CDDICCOM_START_SEC_VAR_NO_INIT_UNSPECIFIED
#define DEFAULT_START_SEC_VAR_NO_INIT_UNSPECIFIED
#endif
#elif defined (CDDICCOM_STOP_SEC_VAR_NO_INIT_UNSPECIFIED)
#ifndef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#undef CDDICCOM_STOP_SEC_VAR_NO_INIT_UNSPECIFIED
#define DEFAULT_STOP_SEC_VAR_NO_INIT_UNSPECIFIED
#endif
#elif defined (CDDICCOM_START_SEC_CONST_BOOLEAN)
#ifdef CONST_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_BOOLEAN_SEC_STARTED
#undef CDDICCOM_START_SEC_CONST_BOOLEAN
#define DEFAULT_START_SEC_CONST_1
#endif
#elif defined (CDDICCOM_STOP_SEC_CONST_BOOLEAN)
#ifndef CONST_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_BOOLEAN_SEC_STARTED
#undef CDDICCOM_STOP_SEC_CONST_BOOLEAN
#define DEFAULT_STOP_SEC_CONST_1
#endif
#elif defined (CDDICCOM_START_SEC_CONST_8)
#ifdef CONST_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_8_SEC_STARTED
#undef CDDICCOM_START_SEC_CONST_8
#define DEFAULT_START_SEC_CONST_8
#endif
#elif defined (CDDICCOM_STOP_SEC_CONST_8)
#ifndef CONST_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_8_SEC_STARTED
#undef CDDICCOM_STOP_SEC_CONST_8
#define DEFAULT_STOP_SEC_CONST_8
#endif
#elif defined (CDDICCOM_START_SEC_CONST_16)
#ifdef CONST_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_16_SEC_STARTED
#undef CDDICCOM_START_SEC_CONST_16
#define DEFAULT_START_SEC_CONST_16
#endif
#elif defined (CDDICCOM_STOP_SEC_CONST_16)
#ifndef CONST_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_16_SEC_STARTED
#undef CDDICCOM_STOP_SEC_CONST_16
#define DEFAULT_STOP_SEC_CONST_16
#endif
#elif defined (CDDICCOM_START_SEC_CONST_32)
#ifdef CONST_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_32_SEC_STARTED
#undef CDDICCOM_START_SEC_CONST_32
#define DEFAULT_START_SEC_CONST_32
#endif
#elif defined (CDDICCOM_STOP_SEC_CONST_32)
#ifndef CONST_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_32_SEC_STARTED
#undef CDDICCOM_STOP_SEC_CONST_32
#define DEFAULT_STOP_SEC_CONST_32
#endif
#elif defined (CDDICCOM_START_SEC_CONST_UNSPECIFIED)
#ifdef CONST_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_UNSPECIFIED_SEC_STARTED
#undef CDDICCOM_START_SEC_CONST_UNSPECIFIED
#define DEFAULT_START_SEC_CONST_UNSPECIFIED
#endif
#elif defined (CDDICCOM_STOP_SEC_CONST_UNSPECIFIED)
#ifndef CONST_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_UNSPECIFIED_SEC_STARTED
#undef CDDICCOM_STOP_SEC_CONST_UNSPECIFIED
#define DEFAULT_STOP_SEC_CONST_UNSPECIFIED
#endif
#elif defined (CDDICCOM_START_SEC_CONFIG_DATA_BOOLEAN)
#ifdef CONFIG_DATA_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_BOOLEAN_SEC_STARTED
#undef CDDICCOM_START_SEC_CONFIG_DATA_BOOLEAN
#define DEFAULT_START_SEC_CONFIG_DATA_1
#endif
#elif defined (CDDICCOM_STOP_SEC_CONFIG_DATA_BOOLEAN)
#ifndef CONFIG_DATA_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_BOOLEAN_SEC_STARTED
#undef CDDICCOM_STOP_SEC_CONFIG_DATA_BOOLEAN
#define DEFAULT_STOP_SEC_CONFIG_DATA_1
#endif
#elif defined (CDDICCOM_START_SEC_CONFIG_DATA_8)
#ifdef CONFIG_DATA_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_8_SEC_STARTED
#undef CDDICCOM_START_SEC_CONFIG_DATA_8
#define DEFAULT_START_SEC_CONFIG_DATA_8
#endif
#elif defined (CDDICCOM_STOP_SEC_CONFIG_DATA_8)
#ifndef CONFIG_DATA_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_8_SEC_STARTED
#undef CDDICCOM_STOP_SEC_CONFIG_DATA_8
#define DEFAULT_STOP_SEC_CONFIG_DATA_8
#endif
#elif defined (CDDICCOM_START_SEC_CONFIG_DATA_16)
#ifdef CONFIG_DATA_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_16_SEC_STARTED
#undef CDDICCOM_START_SEC_CONFIG_DATA_16
#define DEFAULT_START_SEC_CONFIG_DATA_16
#endif
#elif defined (CDDICCOM_STOP_SEC_CONFIG_DATA_16)
#ifndef CONFIG_DATA_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_16_SEC_STARTED
#undef CDDICCOM_STOP_SEC_CONFIG_DATA_16
#define DEFAULT_STOP_SEC_CONFIG_DATA_16
#endif
#elif defined (CDDICCOM_START_SEC_CONFIG_DATA_32)
#ifdef CONFIG_DATA_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_32_SEC_STARTED
#undef CDDICCOM_START_SEC_CONFIG_DATA_32
#define DEFAULT_START_SEC_CONFIG_DATA_32
#endif
#elif defined (CDDICCOM_STOP_SEC_CONFIG_DATA_32)
#ifndef CONFIG_DATA_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_32_SEC_STARTED
#undef CDDICCOM_STOP_SEC_CONFIG_DATA_32
#define DEFAULT_STOP_SEC_CONFIG_DATA_32
#endif
#elif defined (CDDICCOM_START_SEC_CONFIG_DATA_UNSPECIFIED)
#ifdef CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#undef CDDICCOM_START_SEC_CONFIG_DATA_UNSPECIFIED
#define DEFAULT_START_SEC_CONFIG_DATA_UNSPECIFIED
#endif
#elif defined (CDDICCOM_STOP_SEC_CONFIG_DATA_UNSPECIFIED)
#ifndef CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#undef CDDICCOM_STOP_SEC_CONFIG_DATA_UNSPECIFIED
#define DEFAULT_STOP_SEC_CONFIG_DATA_UNSPECIFIED
#endif
#elif defined (CDDICCOM_START_SEC_CODE_SLOW)
#ifdef CODE_SLOW_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CODE_SLOW_SEC_STARTED
#undef CDDICCOM_START_SEC_CODE_SLOW
#define DEFAULT_START_SEC_CODE_SLOW
#endif
#elif defined (CDDICCOM_STOP_SEC_CODE_SLOW)
#ifndef CODE_SLOW_SEC_STARTED
#error "Memory section is not started"
#else
#undef CODE_SLOW_SEC_STARTED
#undef CDDICCOM_STOP_SEC_CODE_SLOW
#define DEFAULT_STOP_SEC_CODE_SLOW
#endif
#elif defined (CDDICCOM_START_SEC_CALLOUT_CODE)
#ifdef CALLOUT_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CALLOUT_CODE_SEC_STARTED
#undef CDDICCOM_START_SEC_CALLOUT_CODE
#define DEFAULT_START_SEC_CALLOUT_CODE
#endif
#elif defined (CDDICCOM_STOP_SEC_CALLOUT_CODE)
#ifndef CALLOUT_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef CALLOUT_CODE_SEC_STARTED
#undef CDDICCOM_STOP_SEC_CALLOUT_CODE
#define DEFAULT_STOP_SEC_CALLOUT_CODE
#endif
#elif defined (CDDICCOM_START_SEC_APPL_CODE)
#ifdef APPL_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define APPL_CODE_SEC_STARTED
#undef CDDICCOM_START_SEC_APPL_CODE
#define DEFAULT_START_SEC_APPL_CODE
#endif
#elif defined (CDDICCOM_STOP_SEC_APPL_CODE)
#ifndef APPL_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef APPL_CODE_SEC_STARTED
#undef CDDICCOM_STOP_SEC_APPL_CODE
#define DEFAULT_STOP_SEC_APPL_CODE
#endif
#elif defined (CDDICCOM_START_SEC_CODE)
#ifdef CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CODE_SEC_STARTED
#undef CDDICCOM_START_SEC_CODE
#define DEFAULT_START_SEC_CODE
#endif
#elif defined (CDDICCOM_STOP_SEC_CODE)
#ifndef CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef CODE_SEC_STARTED
#undef CDDICCOM_STOP_SEC_CODE
#define DEFAULT_STOP_SEC_CODE
#endif
#elif defined (CDDICCOM_START_SEC_CODE_FAST)
#ifdef CODE_FAST_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CODE_FAST_SEC_STARTED
#undef CDDICCOM_START_SEC_CODE_FAST
#define DEFAULT_START_SEC_CODE_FAST
#endif
#elif defined (CDDICCOM_STOP_SEC_CODE_FAST)
#ifndef CODE_FAST_SEC_STARTED
#error "Memory section is not started"
#else
#undef CODE_FAST_SEC_STARTED
#undef CDDICCOM_STOP_SEC_CODE_FAST
#define DEFAULT_STOP_SEC_CODE_FAST
#endif
#elif defined (CddIccom_START_SEC_CODE)
#ifdef CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CODE_SEC_STARTED
#undef CddIccom_START_SEC_CODE
#define DEFAULT_START_SEC_CODE
#endif
#elif defined (CddIccom_STOP_SEC_CODE)
#ifndef CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef CODE_SEC_STARTED
#undef CddIccom_STOP_SEC_CODE
#define DEFAULT_STOP_SEC_CODE
#endif
/* -------------------------------------------------------------------------- */
/* End of module section mapping */
/* -------------------------------------------------------------------------- */
#else
#error "CddIccom_MemMap.h: No valid section define found"
#endif /* START_WITH_IF */
/*******************************************************************************
** Default section mapping **
*******************************************************************************/
#include "Common_MemMap.h"
/*******************************************************************************
** End of File **
*******************************************************************************/

View File

@@ -0,0 +1,609 @@
/*============================================================================*/
/* Project = AUTOSAR Renesas CPF MCAL Components */
/* Module = CddIic_MemMap.h */
/* SW-VERSION = 1.0.9 */
/*============================================================================*/
/* COPYRIGHT */
/*============================================================================*/
/* (c) 2021 - 2022 Renesas Electronics Corporation. All rights reserved. */
/*============================================================================*/
/* Purpose: */
/* Provision for sections for Memory Mapping */
/* */
/*============================================================================*/
/* */
/* Unless otherwise agreed upon in writing between your company and */
/* Renesas Electronics Corporation the following shall apply! */
/* */
/* Warranty Disclaimer */
/* */
/* There is no warranty of any kind whatsoever granted by Renesas. Any */
/* warranty is expressly disclaimed and excluded by Renesas, either expressed */
/* or implied, including but not limited to those for non-infringement of */
/* intellectual property, merchantability and/or fitness for the particular */
/* purpose. */
/* */
/* Renesas shall not have any obligation to maintain, service or provide bug */
/* fixes for the supplied Product(s) and/or the Application. */
/* */
/* Each User is solely responsible for determining the appropriateness of */
/* using the Product(s) and assumes all risks associated with its exercise */
/* of rights under this Agreement, including, but not limited to the risks */
/* and costs of program errors, compliance with applicable laws, damage to */
/* or loss of data, programs or equipment, and unavailability or */
/* interruption of operations. */
/* */
/* Limitation of Liability */
/* */
/* In no event shall Renesas be liable to the User for any incidental, */
/* consequential, indirect, or punitive damage (including but not limited */
/* to lost profits) regardless of whether such liability is based on breach */
/* of contract, tort, strict liability, breach of warranties, failure of */
/* essential purpose or otherwise and even if advised of the possibility of */
/* such damages. Renesas shall not be liable for any services or products */
/* provided by third party vendors, developers or consultants identified or */
/* referred to the User by Renesas in connection with the Product(s) and/or */
/* the Application. */
/* */
/*============================================================================*/
/* Environment: */
/* Devices: R-Car */
/*============================================================================*/
/*******************************************************************************
** Revision Control History **
*******************************************************************************/
/*
* 1.0.0 14-Dec-2021 Initial Version
* 1.0.1 05-Oct-2022 Add new CDDIIC_START_SEC_VAR_NO_INIT_PTR
* CDDIIC_STOP_SEC_VAR_NO_INIT_PTR memory section
*/
/******************************************************************************/
/*******************************************************************************
** Include Section **
*******************************************************************************/
/*******************************************************************************
** Version Information **
*******************************************************************************/
/*
* AUTOSAR specification version information
*/
#ifndef CDDIIC_MEMMAP_AR_RELEASE_MAJOR_VERSION
#define CDDIIC_MEMMAP_AR_RELEASE_MAJOR_VERSION 4
#endif
#ifndef CDDIIC_MEMMAP_AR_RELEASE_MINOR_VERSION
#define CDDIIC_MEMMAP_AR_RELEASE_MINOR_VERSION 5
#endif
#ifndef CDDIIC_MEMMAP_AR_RELEASE_REVISION_VERSION
#define CDDIIC_MEMMAP_AR_RELEASE_REVISION_VERSION 0
#endif
/*
* File version information
*/
#ifndef CDDIIC_MEMMAP_SW_MAJOR_VERSION
#define CDDIIC_MEMMAP_SW_MAJOR_VERSION 1
#endif
#ifndef CDDIIC_MEMMAP_SW_MINOR_VERSION
#define CDDIIC_MEMMAP_SW_MINOR_VERSION 0
#endif
#ifndef CDDIIC_MEMMAP_SW_PATCH_VERSION
#define CDDIIC_MEMMAP_SW_PATCH_VERSION 9
#endif
/*******************************************************************************
** Global Symbols **
*******************************************************************************/
/*******************************************************************************
** Global Data Types **
*******************************************************************************/
/*******************************************************************************
** Module section mapping **
*******************************************************************************/
/*
* The symbol 'START_WITH_IF' is undefined.
*
* Thus, the preprocessor continues searching for defined symbols
* This first #ifdef makes integration of delivered parts of MemMap.h
* easier because every supplier starts with #elif
*/
#if defined (START_WITH_IF)
/* -------------------------------------------------------------------------- */
/* IIC Complex Driver */
/* -------------------------------------------------------------------------- */
#elif defined (CDDIIC_START_SEC_VAR_INIT_BOOLEAN)
#ifdef VAR_INIT_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_BOOLEAN_SEC_STARTED
#undef CDDIIC_START_SEC_VAR_INIT_BOOLEAN
#define DEFAULT_START_SEC_VAR_INIT_1
#endif
#elif defined (CDDIIC_STOP_SEC_VAR_INIT_BOOLEAN)
#ifndef VAR_INIT_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_BOOLEAN_SEC_STARTED
#undef CDDIIC_STOP_SEC_VAR_INIT_BOOLEAN
#define DEFAULT_STOP_SEC_VAR_INIT_1
#endif
#elif defined (CDDIIC_START_SEC_VAR_NO_INIT_BOOLEAN)
#ifdef VAR_NO_INIT_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_BOOLEAN_SEC_STARTED
#undef CDDIIC_START_SEC_VAR_NO_INIT_BOOLEAN
#define DEFAULT_START_SEC_VAR_NO_INIT_1
#endif
#elif defined (CDDIIC_STOP_SEC_VAR_NO_INIT_BOOLEAN)
#ifndef VAR_NO_INIT_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_BOOLEAN_SEC_STARTED
#undef CDDIIC_STOP_SEC_VAR_NO_INIT_BOOLEAN
#define DEFAULT_STOP_SEC_VAR_NO_INIT_1
#endif
#elif defined (CDDIIC_START_SEC_VAR_INIT_8)
#ifdef VAR_INIT_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_8_SEC_STARTED
#undef CDDIIC_START_SEC_VAR_INIT_8
#define DEFAULT_START_SEC_VAR_INIT_8
#endif
#elif defined (CDDIIC_STOP_SEC_VAR_INIT_8)
#ifndef VAR_INIT_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_8_SEC_STARTED
#undef CDDIIC_STOP_SEC_VAR_INIT_8
#define DEFAULT_STOP_SEC_VAR_INIT_8
#endif
#elif defined (CDDIIC_START_SEC_VAR_NO_INIT_8)
#ifdef VAR_NO_INIT_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_8_SEC_STARTED
#undef CDDIIC_START_SEC_VAR_NO_INIT_8
#define DEFAULT_START_SEC_VAR_NO_INIT_8
#endif
#elif defined (CDDIIC_STOP_SEC_VAR_NO_INIT_8)
#ifndef VAR_NO_INIT_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_8_SEC_STARTED
#undef CDDIIC_STOP_SEC_VAR_NO_INIT_8
#define DEFAULT_STOP_SEC_VAR_NO_INIT_8
#endif
#elif defined (CDDIIC_START_SEC_VAR_INIT_16)
#ifdef VAR_INIT_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_16_SEC_STARTED
#undef CDDIIC_START_SEC_VAR_INIT_16
#define DEFAULT_START_SEC_VAR_INIT_16
#endif
#elif defined (CDDIIC_STOP_SEC_VAR_INIT_16)
#ifndef VAR_INIT_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_16_SEC_STARTED
#undef CDDIIC_STOP_SEC_VAR_INIT_16
#define DEFAULT_STOP_SEC_VAR_INIT_16
#endif
#elif defined (CDDIIC_START_SEC_VAR_NO_INIT_16)
#ifdef VAR_NO_INIT_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_16_SEC_STARTED
#undef CDDIIC_START_SEC_VAR_NO_INIT_16
#define DEFAULT_START_SEC_VAR_NO_INIT_16
#endif
#elif defined (CDDIIC_STOP_SEC_VAR_NO_INIT_16)
#ifndef VAR_NO_INIT_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_16_SEC_STARTED
#undef CDDIIC_STOP_SEC_VAR_NO_INIT_16
#define DEFAULT_STOP_SEC_VAR_NO_INIT_16
#endif
#elif defined (CDDIIC_START_SEC_VAR_NO_INIT_PTR)
#ifdef VAR_NO_INIT_PTR_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_PTR_SEC_STARTED
#undef CDDIIC_START_SEC_VAR_NO_INIT_PTR
#define DEFAULT_START_SEC_VAR_NO_INIT_PTR
#endif
#elif defined (CDDIIC_STOP_SEC_VAR_NO_INIT_PTR)
#ifndef VAR_NO_INIT_PTR_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_PTR_SEC_STARTED
#undef CDDIIC_STOP_SEC_VAR_NO_INIT_PTR
#define DEFAULT_STOP_SEC_VAR_NO_INIT_PTR
#endif
#elif defined (CDDIIC_START_SEC_VAR_INIT_32)
#ifdef VAR_INIT_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_32_SEC_STARTED
#undef CDDIIC_START_SEC_VAR_INIT_32
#define DEFAULT_START_SEC_VAR_INIT_32
#endif
#elif defined (CDDIIC_STOP_SEC_VAR_INIT_32)
#ifndef VAR_INIT_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_32_SEC_STARTED
#undef CDDIIC_STOP_SEC_VAR_INIT_32
#define DEFAULT_STOP_SEC_VAR_INIT_32
#endif
#elif defined (CDDIIC_START_SEC_VAR_NO_INIT_32)
#ifdef VAR_NO_INIT_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_32_SEC_STARTED
#undef CDDIIC_START_SEC_VAR_NO_INIT_32
#define DEFAULT_START_SEC_VAR_NO_INIT_32
#endif
#elif defined (CDDIIC_STOP_SEC_VAR_NO_INIT_32)
#ifndef VAR_NO_INIT_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_32_SEC_STARTED
#undef CDDIIC_STOP_SEC_VAR_NO_INIT_32
#define DEFAULT_STOP_SEC_VAR_NO_INIT_32
#endif
#elif defined (CDDIIC_START_SEC_VAR_CLEARED_32)
#ifdef VAR_CLEARED_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_CLEARED_32_SEC_STARTED
#undef CDDIIC_START_SEC_VAR_CLEARED_32
#define DEFAULT_START_SEC_VAR_CLEARED_32
#endif
#elif defined (CDDIIC_STOP_SEC_VAR_CLEARED_32)
#ifndef VAR_CLEARED_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_CLEARED_32_SEC_STARTED
#undef CDDIIC_STOP_SEC_VAR_CLEARED_32
#define DEFAULT_STOP_SEC_VAR_CLEARED_32
#endif
#elif defined (CDDIIC_START_SEC_VAR_INIT_UNSPECIFIED)
#ifdef VAR_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_UNSPECIFIED_SEC_STARTED
#undef CDDIIC_START_SEC_VAR_INIT_UNSPECIFIED
#define DEFAULT_START_SEC_VAR_INIT_UNSPECIFIED
#endif
#elif defined (CDDIIC_STOP_SEC_VAR_INIT_UNSPECIFIED)
#ifndef VAR_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_UNSPECIFIED_SEC_STARTED
#undef CDDIIC_STOP_SEC_VAR_INIT_UNSPECIFIED
#define DEFAULT_STOP_SEC_VAR_INIT_UNSPECIFIED
#endif
#elif defined (CDDIIC_START_SEC_VAR_NO_INIT_UNSPECIFIED)
#ifdef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#undef CDDIIC_START_SEC_VAR_NO_INIT_UNSPECIFIED
#define DEFAULT_START_SEC_VAR_NO_INIT_UNSPECIFIED
#endif
#elif defined (CDDIIC_STOP_SEC_VAR_NO_INIT_UNSPECIFIED)
#ifndef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#undef CDDIIC_STOP_SEC_VAR_NO_INIT_UNSPECIFIED
#define DEFAULT_STOP_SEC_VAR_NO_INIT_UNSPECIFIED
#endif
#elif defined (CDDIIC_START_SEC_CONST_BOOLEAN)
#ifdef CONST_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_BOOLEAN_SEC_STARTED
#undef CDDIIC_START_SEC_CONST_BOOLEAN
#define DEFAULT_START_SEC_CONST_1
#endif
#elif defined (CDDIIC_STOP_SEC_CONST_BOOLEAN)
#ifndef CONST_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_BOOLEAN_SEC_STARTED
#undef CDDIIC_STOP_SEC_CONST_BOOLEAN
#define DEFAULT_STOP_SEC_CONST_1
#endif
#elif defined (CDDIIC_START_SEC_CONST_8)
#ifdef CONST_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_8_SEC_STARTED
#undef CDDIIC_START_SEC_CONST_8
#define DEFAULT_START_SEC_CONST_8
#endif
#elif defined (CDDIIC_STOP_SEC_CONST_8)
#ifndef CONST_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_8_SEC_STARTED
#undef CDDIIC_STOP_SEC_CONST_8
#define DEFAULT_STOP_SEC_CONST_8
#endif
#elif defined (CDDIIC_START_SEC_CONST_16)
#ifdef CONST_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_16_SEC_STARTED
#undef CDDIIC_START_SEC_CONST_16
#define DEFAULT_START_SEC_CONST_16
#endif
#elif defined (CDDIIC_STOP_SEC_CONST_16)
#ifndef CONST_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_16_SEC_STARTED
#undef CDDIIC_STOP_SEC_CONST_16
#define DEFAULT_STOP_SEC_CONST_16
#endif
#elif defined (CDDIIC_START_SEC_CONST_32)
#ifdef CONST_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_32_SEC_STARTED
#undef CDDIIC_START_SEC_CONST_32
#define DEFAULT_START_SEC_CONST_32
#endif
#elif defined (CDDIIC_STOP_SEC_CONST_32)
#ifndef CONST_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_32_SEC_STARTED
#undef CDDIIC_STOP_SEC_CONST_32
#define DEFAULT_STOP_SEC_CONST_32
#endif
#elif defined (CDDIIC_START_SEC_CONST_UNSPECIFIED)
#ifdef CONST_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_UNSPECIFIED_SEC_STARTED
#undef CDDIIC_START_SEC_CONST_UNSPECIFIED
#define DEFAULT_START_SEC_CONST_UNSPECIFIED
#endif
#elif defined (CDDIIC_STOP_SEC_CONST_UNSPECIFIED)
#ifndef CONST_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_UNSPECIFIED_SEC_STARTED
#undef CDDIIC_STOP_SEC_CONST_UNSPECIFIED
#define DEFAULT_STOP_SEC_CONST_UNSPECIFIED
#endif
#elif defined (CDDIIC_START_SEC_CONFIG_DATA_BOOLEAN)
#ifdef CONFIG_DATA_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_BOOLEAN_SEC_STARTED
#undef CDDIIC_START_SEC_CONFIG_DATA_BOOLEAN
#define DEFAULT_START_SEC_CONFIG_DATA_1
#endif
#elif defined (CDDIIC_STOP_SEC_CONFIG_DATA_BOOLEAN)
#ifndef CONFIG_DATA_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_BOOLEAN_SEC_STARTED
#undef CDDIIC_STOP_SEC_CONFIG_DATA_BOOLEAN
#define DEFAULT_STOP_SEC_CONFIG_DATA_1
#endif
#elif defined (CDDIIC_START_SEC_CONFIG_DATA_8)
#ifdef CONFIG_DATA_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_8_SEC_STARTED
#undef CDDIIC_START_SEC_CONFIG_DATA_8
#define DEFAULT_START_SEC_CONFIG_DATA_8
#endif
#elif defined (CDDIIC_STOP_SEC_CONFIG_DATA_8)
#ifndef CONFIG_DATA_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_8_SEC_STARTED
#undef CDDIIC_STOP_SEC_CONFIG_DATA_8
#define DEFAULT_STOP_SEC_CONFIG_DATA_8
#endif
#elif defined (CDDIIC_START_SEC_CONFIG_DATA_16)
#ifdef CONFIG_DATA_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_16_SEC_STARTED
#undef CDDIIC_START_SEC_CONFIG_DATA_16
#define DEFAULT_START_SEC_CONFIG_DATA_16
#endif
#elif defined (CDDIIC_STOP_SEC_CONFIG_DATA_16)
#ifndef CONFIG_DATA_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_16_SEC_STARTED
#undef CDDIIC_STOP_SEC_CONFIG_DATA_16
#define DEFAULT_STOP_SEC_CONFIG_DATA_16
#endif
#elif defined (CDDIIC_START_SEC_CONFIG_DATA_32)
#ifdef CONFIG_DATA_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_32_SEC_STARTED
#undef CDDIIC_START_SEC_CONFIG_DATA_32
#define DEFAULT_START_SEC_CONFIG_DATA_32
#endif
#elif defined (CDDIIC_STOP_SEC_CONFIG_DATA_32)
#ifndef CONFIG_DATA_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_32_SEC_STARTED
#undef CDDIIC_STOP_SEC_CONFIG_DATA_32
#define DEFAULT_STOP_SEC_CONFIG_DATA_32
#endif
#elif defined (CDDIIC_START_SEC_CONFIG_DATA_UNSPECIFIED)
#ifdef CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#undef CDDIIC_START_SEC_CONFIG_DATA_UNSPECIFIED
#define DEFAULT_START_SEC_CONFIG_DATA_UNSPECIFIED
#endif
#elif defined (CDDIIC_STOP_SEC_CONFIG_DATA_UNSPECIFIED)
#ifndef CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#undef CDDIIC_STOP_SEC_CONFIG_DATA_UNSPECIFIED
#define DEFAULT_STOP_SEC_CONFIG_DATA_UNSPECIFIED
#endif
#elif defined (CDDIIC_START_SEC_CODE_SLOW)
#ifdef CODE_SLOW_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CODE_SLOW_SEC_STARTED
#undef CDDIIC_START_SEC_CODE_SLOW
#define DEFAULT_START_SEC_CODE_SLOW
#endif
#elif defined (CDDIIC_STOP_SEC_CODE_SLOW)
#ifndef CODE_SLOW_SEC_STARTED
#error "Memory section is not started"
#else
#undef CODE_SLOW_SEC_STARTED
#undef CDDIIC_STOP_SEC_CODE_SLOW
#define DEFAULT_STOP_SEC_CODE_SLOW
#endif
#elif defined (CDDIIC_START_SEC_CALLOUT_CODE)
#ifdef CALLOUT_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CALLOUT_CODE_SEC_STARTED
#undef CDDIIC_START_SEC_CALLOUT_CODE
#define DEFAULT_START_SEC_CALLOUT_CODE
#endif
#elif defined (CDDIIC_STOP_SEC_CALLOUT_CODE)
#ifndef CALLOUT_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef CALLOUT_CODE_SEC_STARTED
#undef CDDIIC_STOP_SEC_CALLOUT_CODE
#define DEFAULT_STOP_SEC_CALLOUT_CODE
#endif
#elif defined (CDDIIC_START_SEC_APPL_CODE)
#ifdef APPL_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define APPL_CODE_SEC_STARTED
#undef CDDIIC_START_SEC_APPL_CODE
#define DEFAULT_START_SEC_APPL_CODE
#endif
#elif defined (CDDIIC_STOP_SEC_APPL_CODE)
#ifndef APPL_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef APPL_CODE_SEC_STARTED
#undef CDDIIC_STOP_SEC_APPL_CODE
#define DEFAULT_STOP_SEC_APPL_CODE
#endif
#elif defined (CDDIIC_START_SEC_CODE)
#ifdef CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CODE_SEC_STARTED
#undef CDDIIC_START_SEC_CODE
#define DEFAULT_START_SEC_CODE
#endif
#elif defined (CDDIIC_STOP_SEC_CODE)
#ifndef CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef CODE_SEC_STARTED
#undef CDDIIC_STOP_SEC_CODE
#define DEFAULT_STOP_SEC_CODE
#endif
#elif defined (CDDIIC_START_SEC_CODE_FAST)
#ifdef CODE_FAST_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CODE_FAST_SEC_STARTED
#undef CDDIIC_START_SEC_CODE_FAST
#define DEFAULT_START_SEC_CODE_FAST
#endif
#elif defined (CDDIIC_STOP_SEC_CODE_FAST)
#ifndef CODE_FAST_SEC_STARTED
#error "Memory section is not started"
#else
#undef CODE_FAST_SEC_STARTED
#undef CDDIIC_STOP_SEC_CODE_FAST
#define DEFAULT_STOP_SEC_CODE_FAST
#endif
#elif defined (CddIic_START_SEC_CODE)
#ifdef CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CODE_SEC_STARTED
#undef CddIic_START_SEC_CODE
#define DEFAULT_START_SEC_CODE
#endif
#elif defined (CddIic_STOP_SEC_CODE)
#ifndef CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef CODE_SEC_STARTED
#undef CddIic_STOP_SEC_CODE
#define DEFAULT_STOP_SEC_CODE
#endif
/* -------------------------------------------------------------------------- */
/* End of module section mapping */
/* -------------------------------------------------------------------------- */
#else
#error "CddIic_MemMap.h: No valid section define found"
#endif /* START_WITH_IF */
/*******************************************************************************
** Default section mapping **
*******************************************************************************/
#include "Common_MemMap.h"
/*******************************************************************************
** End of File **
*******************************************************************************/

View File

@@ -0,0 +1,574 @@
/*============================================================================*/
/* Project = AUTOSAR Renesas CPF MCAL Components */
/* Module = CddIpmmu_MemMap.h */
/* SW-VERSION = 1.0.6 */
/*============================================================================*/
/* COPYRIGHT */
/*============================================================================*/
/* (c) 2022 Renesas Electronics Corporation. All rights reserved. */
/*============================================================================*/
/* Purpose: */
/* Provision for sections for Memory Mapping . */
/* */
/*============================================================================*/
/* */
/* Unless otherwise agreed upon in writing between your company and */
/* Renesas Electronics Corporation the following shall apply! */
/* */
/* Warranty Disclaimer */
/* */
/* There is no warranty of any kind whatsoever granted by Renesas. Any */
/* warranty is expressly disclaimed and excluded by Renesas, either expressed */
/* or implied, including but not limited to those for non-infringement of */
/* intellectual property, merchantability and/or fitness for the particular */
/* purpose. */
/* */
/* Renesas shall not have any obligation to maintain, service or provide bug */
/* fixes for the supplied Product(s) and/or the Application. */
/* */
/* Each User is solely responsible for determining the appropriateness of */
/* using the Product(s) and assumes all risks associated with its exercise */
/* of rights under this Agreement, including, but not limited to the risks */
/* and costs of program errors, compliance with applicable laws, damage to */
/* or loss of data, programs or equipment, and unavailability or */
/* interruption of operations. */
/* */
/* Limitation of Liability */
/* */
/* In no event shall Renesas be liable to the User for any incidental, */
/* consequential, indirect, or punitive damage (including but not limited */
/* to lost profits) regardless of whether such liability is based on breach */
/* of contract, tort, strict liability, breach of warranties, failure of */
/* essential purpose or otherwise and even if advised of the possibility of */
/* such damages. Renesas shall not be liable for any services or products */
/* provided by third party vendors, developers or consultants identified or */
/* referred to the User by Renesas in connection with the Product(s) and/or */
/* the Application. */
/* */
/*============================================================================*/
/* Environment: */
/* Devices: R-Car Gen4 */
/*============================================================================*/
/*
* 1.0.1 02-Oct-2022 The following changes are made:
* - Add SW-VERSION 1.0.6 to header file
* - Update CDDIPMMU_MEMMAP_SW_PATCH_VERSION to 1
* - Add Memory Section VAR_NO_INIT_PTR
* 1.0.0 29-Jan-2022 Initial Version
*/
/******************************************************************************/
/*******************************************************************************
** Include Section **
*******************************************************************************/
/*******************************************************************************
** Version Information **
*******************************************************************************/
/*
* AUTOSAR specification version information
*/
#ifndef CDDIPMMU_MEMMAP_AR_RELEASE_MAJOR_VERSION
#define CDDIPMMU_MEMMAP_AR_RELEASE_MAJOR_VERSION 4
#endif
#ifndef CDDIPMMU_MEMMAP_AR_RELEASE_MINOR_VERSION
#define CDDIPMMU_MEMMAP_AR_RELEASE_MINOR_VERSION 5
#endif
#ifndef CDDIPMMU_MEMMAP_AR_RELEASE_REVISION_VERSION
#define CDDIPMMU_MEMMAP_AR_RELEASE_REVISION_VERSION 0
#endif
/*
* File version information
*/
#ifndef CDDIPMMU_MEMMAP_SW_MAJOR_VERSION
#define CDDIPMMU_MEMMAP_SW_MAJOR_VERSION 1
#endif
#ifndef CDDIPMMU_MEMMAP_SW_MINOR_VERSION
#define CDDIPMMU_MEMMAP_SW_MINOR_VERSION 0
#endif
#ifndef CDDIPMMU_MEMMAP_SW_PATCH_VERSION
#define CDDIPMMU_MEMMAP_SW_PATCH_VERSION 1
#endif
/*******************************************************************************
** Global Symbols **
*******************************************************************************/
/*******************************************************************************
** Global Data Types **
*******************************************************************************/
/*******************************************************************************
** Module section mapping **
*******************************************************************************/
/*
* The symbol 'START_WITH_IF' is undefined.
*
* Thus, the preprocessor continues searching for defined symbols
* This first #ifdef makes integration of delivered parts of MemMap.h
* easier because every supplier starts with #elif
*/
#if defined (START_WITH_IF)
/* -------------------------------------------------------------------------- */
/* IPMMU Complex Driver */
/* -------------------------------------------------------------------------- */
#elif defined (CDDIPMMU_START_SEC_VAR_INIT_BOOLEAN)
#ifdef VAR_INIT_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_BOOLEAN_SEC_STARTED
#undef CDDIPMMU_START_SEC_VAR_INIT_BOOLEAN
#define DEFAULT_START_SEC_VAR_INIT_1
#endif
#elif defined (CDDIPMMU_STOP_SEC_VAR_INIT_BOOLEAN)
#ifndef VAR_INIT_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_BOOLEAN_SEC_STARTED
#undef CDDIPMMU_STOP_SEC_VAR_INIT_BOOLEAN
#define DEFAULT_STOP_SEC_VAR_INIT_1
#endif
#elif defined (CDDIPMMU_START_SEC_VAR_CLEARED_BOOLEAN)
#ifdef VAR_CLEARED_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_CLEARED_BOOLEAN_SEC_STARTED
#undef CDDIPMMU_START_SEC_VAR_CLEARED_BOOLEAN
#define DEFAULT_START_SEC_VAR_CLEARED_1
#endif
#elif defined (CDDIPMMU_STOP_SEC_VAR_CLEARED_BOOLEAN)
#ifndef VAR_CLEARED_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_CLEARED_BOOLEAN_SEC_STARTED
#undef CDDIPMMU_STOP_SEC_VAR_CLEARED_BOOLEAN
#define DEFAULT_STOP_SEC_VAR_CLEARED_1
#endif
#elif defined (CDDIPMMU_START_SEC_VAR_INIT_8)
#ifdef VAR_INIT_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_8_SEC_STARTED
#undef CDDIPMMU_START_SEC_VAR_INIT_8
#define DEFAULT_START_SEC_VAR_INIT_8
#endif
#elif defined (CDDIPMMU_STOP_SEC_VAR_INIT_8)
#ifndef VAR_INIT_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_8_SEC_STARTED
#undef CDDIPMMU_STOP_SEC_VAR_INIT_8
#define DEFAULT_STOP_SEC_VAR_INIT_8
#endif
#elif defined (CDDIPMMU_START_SEC_VAR_CLEARED_8)
#ifdef VAR_CLEARED_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_CLEARED_8_SEC_STARTED
#undef CDDIPMMU_START_SEC_VAR_CLEARED_8
#define DEFAULT_START_SEC_VAR_CLEARED_8
#endif
#elif defined (CDDIPMMU_STOP_SEC_VAR_CLEARED_8)
#ifndef VAR_CLEARED_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_CLEARED_8_SEC_STARTED
#undef CDDIPMMU_STOP_SEC_VAR_CLEARED_8
#define DEFAULT_STOP_SEC_VAR_CLEARED_8
#endif
#elif defined (CDDIPMMU_START_SEC_VAR_INIT_16)
#ifdef VAR_INIT_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_16_SEC_STARTED
#undef CDDIPMMU_START_SEC_VAR_INIT_16
#define DEFAULT_START_SEC_VAR_INIT_16
#endif
#elif defined (CDDIPMMU_STOP_SEC_VAR_INIT_16)
#ifndef VAR_INIT_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_16_SEC_STARTED
#undef CDDIPMMU_STOP_SEC_VAR_INIT_16
#define DEFAULT_STOP_SEC_VAR_INIT_16
#endif
#elif defined (CDDIPMMU_START_SEC_VAR_CLEARED_16)
#ifdef VAR_CLEARED_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_CLEARED_16_SEC_STARTED
#undef CDDIPMMU_START_SEC_VAR_CLEARED_16
#define DEFAULT_START_SEC_VAR_CLEARED_16
#endif
#elif defined (CDDIPMMU_STOP_SEC_VAR_CLEARED_16)
#ifndef VAR_CLEARED_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_CLEARED_16_SEC_STARTED
#undef CDDIPMMU_STOP_SEC_VAR_CLEARED_16
#define DEFAULT_STOP_SEC_VAR_CLEARED_16
#endif
#elif defined (CDDIPMMU_START_SEC_VAR_INIT_32)
#ifdef VAR_INIT_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_32_SEC_STARTED
#undef CDDIPMMU_START_SEC_VAR_INIT_32
#define DEFAULT_START_SEC_VAR_INIT_32
#endif
#elif defined (CDDIPMMU_STOP_SEC_VAR_INIT_32)
#ifndef VAR_INIT_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_32_SEC_STARTED
#undef CDDIPMMU_STOP_SEC_VAR_INIT_32
#define DEFAULT_STOP_SEC_VAR_INIT_32
#endif
#elif defined (CDDIPMMU_START_SEC_VAR_CLEARED_32)
#ifdef VAR_CLEARED_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_CLEARED_32_SEC_STARTED
#undef CDDIPMMU_START_SEC_VAR_CLEARED_32
#define DEFAULT_START_SEC_VAR_CLEARED_32
#endif
#elif defined (CDDIPMMU_STOP_SEC_VAR_CLEARED_32)
#ifndef VAR_CLEARED_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_CLEARED_32_SEC_STARTED
#undef CDDIPMMU_STOP_SEC_VAR_CLEARED_32
#define DEFAULT_STOP_SEC_VAR_CLEARED_32
#endif
#elif defined (CDDIPMMU_START_SEC_VAR_NO_INIT_PTR)
#ifdef VAR_NO_INIT_PTR_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_PTR_SEC_STARTED
#undef CDDIPMMU_START_SEC_VAR_NO_INIT_PTR
#define DEFAULT_START_SEC_VAR_NO_INIT_PTR
#endif
#elif defined (CDDIPMMU_STOP_SEC_VAR_NO_INIT_PTR)
#ifndef VAR_NO_INIT_PTR_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_PTR_SEC_STARTED
#undef CDDIPMMU_STOP_SEC_VAR_NO_INIT_PTR
#define DEFAULT_STOP_SEC_VAR_NO_INIT_PTR
#endif
#elif defined (CDDIPMMU_START_SEC_VAR_INIT_UNSPECIFIED)
#ifdef VAR_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_UNSPECIFIED_SEC_STARTED
#undef CDDIPMMU_START_SEC_VAR_INIT_UNSPECIFIED
#define DEFAULT_START_SEC_VAR_INIT_UNSPECIFIED
#endif
#elif defined (CDDIPMMU_STOP_SEC_VAR_INIT_UNSPECIFIED)
#ifndef VAR_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_UNSPECIFIED_SEC_STARTED
#undef CDDIPMMU_STOP_SEC_VAR_INIT_UNSPECIFIED
#define DEFAULT_STOP_SEC_VAR_INIT_UNSPECIFIED
#endif
#elif defined (CDDIPMMU_START_SEC_VAR_CLEARED_UNSPECIFIED)
#ifdef VAR_CLEARED_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_CLEARED_UNSPECIFIED_SEC_STARTED
#undef CDDIPMMU_START_SEC_VAR_CLEARED_UNSPECIFIED
#define DEFAULT_START_SEC_VAR_CLEARED_UNSPECIFIED
#endif
#elif defined (CDDIPMMU_STOP_SEC_VAR_CLEARED_UNSPECIFIED)
#ifndef VAR_CLEARED_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_CLEARED_UNSPECIFIED_SEC_STARTED
#undef CDDIPMMU_STOP_SEC_VAR_CLEARED_UNSPECIFIED
#define DEFAULT_STOP_SEC_VAR_CLEARED_UNSPECIFIED
#endif
#elif defined (CDDIPMMU_START_SEC_CONST_BOOLEAN)
#ifdef CONST_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_BOOLEAN_SEC_STARTED
#undef CDDIPMMU_START_SEC_CONST_BOOLEAN
#define DEFAULT_START_SEC_CONST_1
#endif
#elif defined (CDDIPMMU_STOP_SEC_CONST_BOOLEAN)
#ifndef CONST_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_BOOLEAN_SEC_STARTED
#undef CDDIPMMU_STOP_SEC_CONST_BOOLEAN
#define DEFAULT_STOP_SEC_CONST_1
#endif
#elif defined (CDDIPMMU_START_SEC_CONST_8)
#ifdef CONST_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_8_SEC_STARTED
#undef CDDIPMMU_START_SEC_CONST_8
#define DEFAULT_START_SEC_CONST_8
#endif
#elif defined (CDDIPMMU_STOP_SEC_CONST_8)
#ifndef CONST_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_8_SEC_STARTED
#undef CDDIPMMU_STOP_SEC_CONST_8
#define DEFAULT_STOP_SEC_CONST_8
#endif
#elif defined (CDDIPMMU_START_SEC_CONST_16)
#ifdef CONST_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_16_SEC_STARTED
#undef CDDIPMMU_START_SEC_CONST_16
#define DEFAULT_START_SEC_CONST_16
#endif
#elif defined (CDDIPMMU_STOP_SEC_CONST_16)
#ifndef CONST_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_16_SEC_STARTED
#undef CDDIPMMU_STOP_SEC_CONST_16
#define DEFAULT_STOP_SEC_CONST_16
#endif
#elif defined (CDDIPMMU_START_SEC_CONST_32)
#ifdef CONST_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_32_SEC_STARTED
#undef CDDIPMMU_START_SEC_CONST_32
#define DEFAULT_START_SEC_CONST_32
#endif
#elif defined (CDDIPMMU_STOP_SEC_CONST_32)
#ifndef CONST_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_32_SEC_STARTED
#undef CDDIPMMU_STOP_SEC_CONST_32
#define DEFAULT_STOP_SEC_CONST_32
#endif
#elif defined (CDDIPMMU_START_SEC_CONST_UNSPECIFIED)
#ifdef CONST_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_UNSPECIFIED_SEC_STARTED
#undef CDDIPMMU_START_SEC_CONST_UNSPECIFIED
#define DEFAULT_START_SEC_CONST_UNSPECIFIED
#endif
#elif defined (CDDIPMMU_STOP_SEC_CONST_UNSPECIFIED)
#ifndef CONST_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_UNSPECIFIED_SEC_STARTED
#undef CDDIPMMU_STOP_SEC_CONST_UNSPECIFIED
#define DEFAULT_STOP_SEC_CONST_UNSPECIFIED
#endif
#elif defined (CDDIPMMU_START_SEC_CONFIG_DATA_BOOLEAN)
#ifdef CONFIG_DATA_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_BOOLEAN_SEC_STARTED
#undef CDDIPMMU_START_SEC_CONFIG_DATA_BOOLEAN
#define DEFAULT_START_SEC_CONFIG_DATA_1
#endif
#elif defined (CDDIPMMU_STOP_SEC_CONFIG_DATA_BOOLEAN)
#ifndef CONFIG_DATA_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_BOOLEAN_SEC_STARTED
#undef CDDIPMMU_STOP_SEC_CONFIG_DATA_BOOLEAN
#define DEFAULT_STOP_SEC_CONFIG_DATA_1
#endif
#elif defined (CDDIPMMU_START_SEC_CONFIG_DATA_8)
#ifdef CONFIG_DATA_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_8_SEC_STARTED
#undef CDDIPMMU_START_SEC_CONFIG_DATA_8
#define DEFAULT_START_SEC_CONFIG_DATA_8
#endif
#elif defined (CDDIPMMU_STOP_SEC_CONFIG_DATA_8)
#ifndef CONFIG_DATA_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_8_SEC_STARTED
#undef CDDIPMMU_STOP_SEC_CONFIG_DATA_8
#define DEFAULT_STOP_SEC_CONFIG_DATA_8
#endif
#elif defined (CDDIPMMU_START_SEC_CONFIG_DATA_16)
#ifdef CONFIG_DATA_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_16_SEC_STARTED
#undef CDDIPMMU_START_SEC_CONFIG_DATA_16
#define DEFAULT_START_SEC_CONFIG_DATA_16
#endif
#elif defined (CDDIPMMU_STOP_SEC_CONFIG_DATA_16)
#ifndef CONFIG_DATA_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_16_SEC_STARTED
#undef CDDIPMMU_STOP_SEC_CONFIG_DATA_16
#define DEFAULT_STOP_SEC_CONFIG_DATA_16
#endif
#elif defined (CDDIPMMU_START_SEC_CONFIG_DATA_32)
#ifdef CONFIG_DATA_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_32_SEC_STARTED
#undef CDDIPMMU_START_SEC_CONFIG_DATA_32
#define DEFAULT_START_SEC_CONFIG_DATA_32
#endif
#elif defined (CDDIPMMU_STOP_SEC_CONFIG_DATA_32)
#ifndef CONFIG_DATA_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_32_SEC_STARTED
#undef CDDIPMMU_STOP_SEC_CONFIG_DATA_32
#define DEFAULT_STOP_SEC_CONFIG_DATA_32
#endif
#elif defined (CDDIPMMU_START_SEC_CONFIG_DATA_UNSPECIFIED)
#ifdef CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#undef CDDIPMMU_START_SEC_CONFIG_DATA_UNSPECIFIED
#define DEFAULT_START_SEC_CONFIG_DATA_UNSPECIFIED
#endif
#elif defined (CDDIPMMU_STOP_SEC_CONFIG_DATA_UNSPECIFIED)
#ifndef CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#undef CDDIPMMU_STOP_SEC_CONFIG_DATA_UNSPECIFIED
#define DEFAULT_STOP_SEC_CONFIG_DATA_UNSPECIFIED
#endif
#elif defined (CDDIPMMU_START_SEC_CODE_SLOW)
#ifdef CODE_SLOW_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CODE_SLOW_SEC_STARTED
#undef CDDIPMMU_START_SEC_CODE_SLOW
#define DEFAULT_START_SEC_CODE_SLOW
#endif
#elif defined (CDDIPMMU_STOP_SEC_CODE_SLOW)
#ifndef CODE_SLOW_SEC_STARTED
#error "Memory section is not started"
#else
#undef CODE_SLOW_SEC_STARTED
#undef CDDIPMMU_STOP_SEC_CODE_SLOW
#define DEFAULT_STOP_SEC_CODE_SLOW
#endif
#elif defined (CDDIPMMU_START_SEC_CALLOUT_CODE)
#ifdef CALLOUT_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CALLOUT_CODE_SEC_STARTED
#undef CDDIPMMU_START_SEC_CALLOUT_CODE
#define DEFAULT_START_SEC_CALLOUT_CODE
#endif
#elif defined (CDDIPMMU_STOP_SEC_CALLOUT_CODE)
#ifndef CALLOUT_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef CALLOUT_CODE_SEC_STARTED
#undef CDDIPMMU_STOP_SEC_CALLOUT_CODE
#define DEFAULT_STOP_SEC_CALLOUT_CODE
#endif
#elif defined (CDDIPMMU_START_SEC_APPL_CODE)
#ifdef APPL_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define APPL_CODE_SEC_STARTED
#undef CDDIPMMU_START_SEC_APPL_CODE
#define DEFAULT_START_SEC_APPL_CODE
#endif
#elif defined (CDDIPMMU_STOP_SEC_APPL_CODE)
#ifndef APPL_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef APPL_CODE_SEC_STARTED
#undef CDDIPMMU_STOP_SEC_APPL_CODE
#define DEFAULT_STOP_SEC_APPL_CODE
#endif
#elif defined (CDDIPMMU_START_SEC_CODE)
#ifdef CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CODE_SEC_STARTED
#undef CDDIPMMU_START_SEC_CODE
#define DEFAULT_START_SEC_CODE
#endif
#elif defined (CDDIPMMU_STOP_SEC_CODE)
#ifndef CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef CODE_SEC_STARTED
#undef CDDIPMMU_STOP_SEC_CODE
#define DEFAULT_STOP_SEC_CODE
#endif
#elif defined (CDDIPMMU_START_SEC_CODE_FAST)
#ifdef CODE_FAST_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CODE_FAST_SEC_STARTED
#undef CDDIPMMU_START_SEC_CODE_FAST
#define DEFAULT_START_SEC_CODE_FAST
#endif
#elif defined (CDDIPMMU_STOP_SEC_CODE_FAST)
#ifndef CODE_FAST_SEC_STARTED
#error "Memory section is not started"
#else
#undef CODE_FAST_SEC_STARTED
#undef CDDIPMMU_STOP_SEC_CODE_FAST
#define DEFAULT_STOP_SEC_CODE_FAST
#endif
/* -------------------------------------------------------------------------- */
/* End of module section mapping */
/* -------------------------------------------------------------------------- */
#else
#error "CddIpmmu_MemMap.h: No valid section define found"
#endif /* START_WITH_IF */
/*******************************************************************************
** Default section mapping **
*******************************************************************************/
#include "Common_MemMap.h"
/*******************************************************************************
** End of File **
*******************************************************************************/

View File

@@ -0,0 +1,576 @@
/*============================================================================*/
/* Project = AUTOSAR Renesas CPF MCAL Components */
/* Module = CddRfso_MemMap.h */
/*============================================================================*/
/* COPYRIGHT */
/*============================================================================*/
/* (c) 2022 Renesas Electronics Corporation. All rights reserved. */
/*============================================================================*/
/* Purpose: */
/* Provision for sections for Memory Mapping */
/* */
/*============================================================================*/
/* */
/* Unless otherwise agreed upon in writing between your company and */
/* Renesas Electronics Corporation the following shall apply! */
/* */
/* Warranty Disclaimer */
/* */
/* There is no warranty of any kind whatsoever granted by Renesas. Any */
/* warranty is expressly disclaimed and excluded by Renesas, either expressed */
/* or implied, including but not limited to those for non-infringement of */
/* intellectual property, merchantability and/or fitness for the particular */
/* purpose. */
/* */
/* Renesas shall not have any obligation to maintain, service or provide bug */
/* fixes for the supplied Product(s) and/or the Application. */
/* */
/* Each User is solely responsible for determining the appropriateness of */
/* using the Product(s) and assumes all risks associated with its exercise */
/* of rights under this Agreement, including, but not limited to the risks */
/* and costs of program errors, compliance with applicable laws, damage to */
/* or loss of data, programs or equipment, and unavailability or */
/* interruption of operations. */
/* */
/* Limitation of Liability */
/* */
/* In no event shall Renesas be liable to the User for any incidental, */
/* consequential, indirect, or punitive damage (including but not limited */
/* to lost profits) regardless of whether such liability is based on breach */
/* of contract, tort, strict liability, breach of warranties, failure of */
/* essential purpose or otherwise and even if advised of the possibility of */
/* such damages. Renesas shall not be liable for any services or products */
/* provided by third party vendors, developers or consultants identified or */
/* referred to the User by Renesas in connection with the Product(s) and/or */
/* the Application. */
/* */
/*============================================================================*/
/* Environment: */
/* Devices: R-Car Gen4 */
/*============================================================================*/
/*******************************************************************************
** Revision Control History **
*******************************************************************************/
/*
* 1.0.1 04-Oct-2022 Add definiiton for
* CDDRFSO_START_SEC_VAR_NO_INIT_PTR and
* CDDRFSO_STOP_SEC_VAR_NO_INIT_PTR
* 1.0.0 11-Feb-2022 Initial Version
*/
/******************************************************************************/
/*******************************************************************************
** Include Section **
*******************************************************************************/
/*******************************************************************************
** Version Information **
*******************************************************************************/
/*
* AUTOSAR specification version information
*/
#ifndef CDDRFSO_MEMMAP_AR_RELEASE_MAJOR_VERSION
#define CDDRFSO_MEMMAP_AR_RELEASE_MAJOR_VERSION 4
#endif
#ifndef CDDRFSO_MEMMAP_AR_RELEASE_MINOR_VERSION
#define CDDRFSO_MEMMAP_AR_RELEASE_MINOR_VERSION 5
#endif
#ifndef CDDRFSO_MEMMAP_AR_RELEASE_REVISION_VERSION
#define CDDRFSO_MEMMAP_AR_RELEASE_REVISION_VERSION 0
#endif
/*
* File version information
*/
#ifndef CDDRFSO_MEMMAP_SW_MAJOR_VERSION
#define CDDRFSO_MEMMAP_SW_MAJOR_VERSION 1
#endif
#ifndef CDDRFSO_MEMMAP_SW_MINOR_VERSION
#define CDDRFSO_MEMMAP_SW_MINOR_VERSION 0
#endif
#ifndef CDDRFSO_MEMMAP_SW_PATCH_VERSION
#define CDDRFSO_MEMMAP_SW_PATCH_VERSION 5
#endif
/*******************************************************************************
** Global Symbols **
*******************************************************************************/
/*******************************************************************************
** Global Data Types **
*******************************************************************************/
/*******************************************************************************
** Module section mapping **
*******************************************************************************/
/*
* The symbol 'START_WITH_IF' is undefined.
*
* Thus, the preprocessor continues searching for defined symbols
* This first #ifdef makes integration of delivered parts of MemMap.h
* easier because every supplier starts with #elif
*/
#if defined (START_WITH_IF)
/* -------------------------------------------------------------------------- */
/* RFSO Complex Driver */
/* -------------------------------------------------------------------------- */
#elif defined (CDDRFSO_START_SEC_VAR_INIT_BOOLEAN)
#ifdef VAR_INIT_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_BOOLEAN_SEC_STARTED
#undef CDDRFSO_START_SEC_VAR_INIT_BOOLEAN
#define DEFAULT_START_SEC_VAR_INIT_1
#endif
#elif defined (CDDRFSO_STOP_SEC_VAR_INIT_BOOLEAN)
#ifndef VAR_INIT_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_BOOLEAN_SEC_STARTED
#undef CDDRFSO_STOP_SEC_VAR_INIT_BOOLEAN
#define DEFAULT_STOP_SEC_VAR_INIT_1
#endif
#elif defined (CDDRFSO_START_SEC_VAR_CLEARED_BOOLEAN)
#ifdef VAR_CLEARED_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_CLEARED_BOOLEAN_SEC_STARTED
#undef CDDRFSO_START_SEC_VAR_CLEARED_BOOLEAN
#define DEFAULT_START_SEC_VAR_CLEARED_1
#endif
#elif defined (CDDRFSO_STOP_SEC_VAR_CLEARED_BOOLEAN)
#ifndef VAR_CLEARED_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_CLEARED_BOOLEAN_SEC_STARTED
#undef CDDRFSO_STOP_SEC_VAR_CLEARED_BOOLEAN
#define DEFAULT_STOP_SEC_VAR_CLEARED_1
#endif
#elif defined (CDDRFSO_START_SEC_VAR_INIT_8)
#ifdef VAR_INIT_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_8_SEC_STARTED
#undef CDDRFSO_START_SEC_VAR_INIT_8
#define DEFAULT_START_SEC_VAR_INIT_8
#endif
#elif defined (CDDRFSO_STOP_SEC_VAR_INIT_8)
#ifndef VAR_INIT_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_8_SEC_STARTED
#undef CDDRFSO_STOP_SEC_VAR_INIT_8
#define DEFAULT_STOP_SEC_VAR_INIT_8
#endif
#elif defined (CDDRFSO_START_SEC_VAR_CLEARED_8)
#ifdef VAR_CLEARED_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_CLEARED_8_SEC_STARTED
#undef CDDRFSO_START_SEC_VAR_CLEARED_8
#define DEFAULT_START_SEC_VAR_CLEARED_8
#endif
#elif defined (CDDRFSO_STOP_SEC_VAR_CLEARED_8)
#ifndef VAR_CLEARED_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_CLEARED_8_SEC_STARTED
#undef CDDRFSO_STOP_SEC_VAR_CLEARED_8
#define DEFAULT_STOP_SEC_VAR_CLEARED_8
#endif
#elif defined (CDDRFSO_START_SEC_VAR_INIT_16)
#ifdef VAR_INIT_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_16_SEC_STARTED
#undef CDDRFSO_START_SEC_VAR_INIT_16
#define DEFAULT_START_SEC_VAR_INIT_16
#endif
#elif defined (CDDRFSO_STOP_SEC_VAR_INIT_16)
#ifndef VAR_INIT_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_16_SEC_STARTED
#undef CDDRFSO_STOP_SEC_VAR_INIT_16
#define DEFAULT_STOP_SEC_VAR_INIT_16
#endif
#elif defined (CDDRFSO_START_SEC_VAR_CLEARED_16)
#ifdef VAR_CLEARED_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_CLEARED_16_SEC_STARTED
#undef CDDRFSO_START_SEC_VAR_CLEARED_16
#define DEFAULT_START_SEC_VAR_CLEARED_16
#endif
#elif defined (CDDRFSO_STOP_SEC_VAR_CLEARED_16)
#ifndef VAR_CLEARED_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_CLEARED_16_SEC_STARTED
#undef CDDRFSO_STOP_SEC_VAR_CLEARED_16
#define DEFAULT_STOP_SEC_VAR_CLEARED_16
#endif
#elif defined (CDDRFSO_START_SEC_VAR_INIT_32)
#ifdef VAR_INIT_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_32_SEC_STARTED
#undef CDDRFSO_START_SEC_VAR_INIT_32
#define DEFAULT_START_SEC_VAR_INIT_32
#endif
#elif defined (CDDRFSO_STOP_SEC_VAR_INIT_32)
#ifndef VAR_INIT_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_32_SEC_STARTED
#undef CDDRFSO_STOP_SEC_VAR_INIT_32
#define DEFAULT_STOP_SEC_VAR_INIT_32
#endif
#elif defined (CDDRFSO_START_SEC_VAR_CLEARED_32)
#ifdef VAR_CLEARED_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_CLEARED_32_SEC_STARTED
#undef CDDRFSO_START_SEC_VAR_CLEARED_32
#define DEFAULT_START_SEC_VAR_CLEARED_32
#endif
#elif defined (CDDRFSO_STOP_SEC_VAR_CLEARED_32)
#ifndef VAR_CLEARED_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_CLEARED_32_SEC_STARTED
#undef CDDRFSO_STOP_SEC_VAR_CLEARED_32
#define DEFAULT_STOP_SEC_VAR_CLEARED_32
#endif
#elif defined (CDDRFSO_START_SEC_VAR_INIT_UNSPECIFIED)
#ifdef VAR_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_UNSPECIFIED_SEC_STARTED
#undef CDDRFSO_START_SEC_VAR_INIT_UNSPECIFIED
#define DEFAULT_START_SEC_VAR_INIT_UNSPECIFIED
#endif
#elif defined (CDDRFSO_STOP_SEC_VAR_INIT_UNSPECIFIED)
#ifndef VAR_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_UNSPECIFIED_SEC_STARTED
#undef CDDRFSO_STOP_SEC_VAR_INIT_UNSPECIFIED
#define DEFAULT_STOP_SEC_VAR_INIT_UNSPECIFIED
#endif
#elif defined (CDDRFSO_START_SEC_VAR_CLEARED_UNSPECIFIED)
#ifdef VAR_CLEARED_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_CLEARED_UNSPECIFIED_SEC_STARTED
#undef CDDRFSO_START_SEC_VAR_CLEARED_UNSPECIFIED
#define DEFAULT_START_SEC_VAR_CLEARED_UNSPECIFIED
#endif
#elif defined (CDDRFSO_STOP_SEC_VAR_CLEARED_UNSPECIFIED)
#ifndef VAR_CLEARED_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_CLEARED_UNSPECIFIED_SEC_STARTED
#undef CDDRFSO_STOP_SEC_VAR_CLEARED_UNSPECIFIED
#define DEFAULT_STOP_SEC_VAR_CLEARED_UNSPECIFIED
#endif
#elif defined (CDDRFSO_START_SEC_CONST_BOOLEAN)
#ifdef CONST_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_BOOLEAN_SEC_STARTED
#undef CDDRFSO_START_SEC_CONST_BOOLEAN
#define DEFAULT_START_SEC_CONST_1
#endif
#elif defined (CDDRFSO_STOP_SEC_CONST_BOOLEAN)
#ifndef CONST_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_BOOLEAN_SEC_STARTED
#undef CDDRFSO_STOP_SEC_CONST_BOOLEAN
#define DEFAULT_STOP_SEC_CONST_1
#endif
#elif defined (CDDRFSO_START_SEC_CONST_8)
#ifdef CONST_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_8_SEC_STARTED
#undef CDDRFSO_START_SEC_CONST_8
#define DEFAULT_START_SEC_CONST_8
#endif
#elif defined (CDDRFSO_STOP_SEC_CONST_8)
#ifndef CONST_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_8_SEC_STARTED
#undef CDDRFSO_STOP_SEC_CONST_8
#define DEFAULT_STOP_SEC_CONST_8
#endif
#elif defined (CDDRFSO_START_SEC_CONST_16)
#ifdef CONST_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_16_SEC_STARTED
#undef CDDRFSO_START_SEC_CONST_16
#define DEFAULT_START_SEC_CONST_16
#endif
#elif defined (CDDRFSO_STOP_SEC_CONST_16)
#ifndef CONST_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_16_SEC_STARTED
#undef CDDRFSO_STOP_SEC_CONST_16
#define DEFAULT_STOP_SEC_CONST_16
#endif
#elif defined (CDDRFSO_START_SEC_CONST_32)
#ifdef CONST_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_32_SEC_STARTED
#undef CDDRFSO_START_SEC_CONST_32
#define DEFAULT_START_SEC_CONST_32
#endif
#elif defined (CDDRFSO_STOP_SEC_CONST_32)
#ifndef CONST_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_32_SEC_STARTED
#undef CDDRFSO_STOP_SEC_CONST_32
#define DEFAULT_STOP_SEC_CONST_32
#endif
#elif defined (CDDRFSO_START_SEC_CONST_UNSPECIFIED)
#ifdef CONST_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_UNSPECIFIED_SEC_STARTED
#undef CDDRFSO_START_SEC_CONST_UNSPECIFIED
#define DEFAULT_START_SEC_CONST_UNSPECIFIED
#endif
#elif defined (CDDRFSO_STOP_SEC_CONST_UNSPECIFIED)
#ifndef CONST_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_UNSPECIFIED_SEC_STARTED
#undef CDDRFSO_STOP_SEC_CONST_UNSPECIFIED
#define DEFAULT_STOP_SEC_CONST_UNSPECIFIED
#endif
#elif defined (CDDRFSO_START_SEC_CONFIG_DATA_BOOLEAN)
#ifdef CONFIG_DATA_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_BOOLEAN_SEC_STARTED
#undef CDDRFSO_START_SEC_CONFIG_DATA_BOOLEAN
#define DEFAULT_START_SEC_CONFIG_DATA_1
#endif
#elif defined (CDDRFSO_STOP_SEC_CONFIG_DATA_BOOLEAN)
#ifndef CONFIG_DATA_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_BOOLEAN_SEC_STARTED
#undef CDDRFSO_STOP_SEC_CONFIG_DATA_BOOLEAN
#define DEFAULT_STOP_SEC_CONFIG_DATA_1
#endif
#elif defined (CDDRFSO_START_SEC_CONFIG_DATA_8)
#ifdef CONFIG_DATA_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_8_SEC_STARTED
#undef CDDRFSO_START_SEC_CONFIG_DATA_8
#define DEFAULT_START_SEC_CONFIG_DATA_8
#endif
#elif defined (CDDRFSO_STOP_SEC_CONFIG_DATA_8)
#ifndef CONFIG_DATA_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_8_SEC_STARTED
#undef CDDRFSO_STOP_SEC_CONFIG_DATA_8
#define DEFAULT_STOP_SEC_CONFIG_DATA_8
#endif
#elif defined (CDDRFSO_START_SEC_CONFIG_DATA_16)
#ifdef CONFIG_DATA_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_16_SEC_STARTED
#undef CDDRFSO_START_SEC_CONFIG_DATA_16
#define DEFAULT_START_SEC_CONFIG_DATA_16
#endif
#elif defined (CDDRFSO_STOP_SEC_CONFIG_DATA_16)
#ifndef CONFIG_DATA_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_16_SEC_STARTED
#undef CDDRFSO_STOP_SEC_CONFIG_DATA_16
#define DEFAULT_STOP_SEC_CONFIG_DATA_16
#endif
#elif defined (CDDRFSO_START_SEC_CONFIG_DATA_32)
#ifdef CONFIG_DATA_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_32_SEC_STARTED
#undef CDDRFSO_START_SEC_CONFIG_DATA_32
#define DEFAULT_START_SEC_CONFIG_DATA_32
#endif
#elif defined (CDDRFSO_STOP_SEC_CONFIG_DATA_32)
#ifndef CONFIG_DATA_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_32_SEC_STARTED
#undef CDDRFSO_STOP_SEC_CONFIG_DATA_32
#define DEFAULT_STOP_SEC_CONFIG_DATA_32
#endif
#elif defined (CDDRFSO_START_SEC_CONFIG_DATA_UNSPECIFIED)
#ifdef CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#undef CDDRFSO_START_SEC_CONFIG_DATA_UNSPECIFIED
#define DEFAULT_START_SEC_CONFIG_DATA_UNSPECIFIED
#endif
#elif defined (CDDRFSO_STOP_SEC_CONFIG_DATA_UNSPECIFIED)
#ifndef CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#undef CDDRFSO_STOP_SEC_CONFIG_DATA_UNSPECIFIED
#define DEFAULT_STOP_SEC_CONFIG_DATA_UNSPECIFIED
#endif
#elif defined (CDDRFSO_START_SEC_CODE_SLOW)
#ifdef CODE_SLOW_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CODE_SLOW_SEC_STARTED
#undef CDDRFSO_START_SEC_CODE_SLOW
#define DEFAULT_START_SEC_CODE_SLOW
#endif
#elif defined (CDDRFSO_STOP_SEC_CODE_SLOW)
#ifndef CODE_SLOW_SEC_STARTED
#error "Memory section is not started"
#else
#undef CODE_SLOW_SEC_STARTED
#undef CDDRFSO_STOP_SEC_CODE_SLOW
#define DEFAULT_STOP_SEC_CODE_SLOW
#endif
#elif defined (CDDRFSO_START_SEC_CALLOUT_CODE)
#ifdef CALLOUT_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CALLOUT_CODE_SEC_STARTED
#undef CDDRFSO_START_SEC_CALLOUT_CODE
#define DEFAULT_START_SEC_CALLOUT_CODE
#endif
#elif defined (CDDRFSO_STOP_SEC_CALLOUT_CODE)
#ifndef CALLOUT_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef CALLOUT_CODE_SEC_STARTED
#undef CDDRFSO_STOP_SEC_CALLOUT_CODE
#define DEFAULT_STOP_SEC_CALLOUT_CODE
#endif
#elif defined (CDDRFSO_START_SEC_APPL_CODE)
#ifdef APPL_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define APPL_CODE_SEC_STARTED
#undef CDDRFSO_START_SEC_APPL_CODE
#define DEFAULT_START_SEC_APPL_CODE
#endif
#elif defined (CDDRFSO_STOP_SEC_APPL_CODE)
#ifndef APPL_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef APPL_CODE_SEC_STARTED
#undef CDDRFSO_STOP_SEC_APPL_CODE
#define DEFAULT_STOP_SEC_APPL_CODE
#endif
#elif defined (CDDRFSO_START_SEC_CODE)
#ifdef CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CODE_SEC_STARTED
#undef CDDRFSO_START_SEC_CODE
#define DEFAULT_START_SEC_CODE
#endif
#elif defined (CDDRFSO_STOP_SEC_CODE)
#ifndef CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef CODE_SEC_STARTED
#undef CDDRFSO_STOP_SEC_CODE
#define DEFAULT_STOP_SEC_CODE
#endif
#elif defined (CDDRFSO_START_SEC_CODE_FAST)
#ifdef CODE_FAST_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CODE_FAST_SEC_STARTED
#undef CDDRFSO_START_SEC_CODE_FAST
#define DEFAULT_START_SEC_CODE_FAST
#endif
#elif defined (CDDRFSO_STOP_SEC_CODE_FAST)
#ifndef CODE_FAST_SEC_STARTED
#error "Memory section is not started"
#else
#undef CODE_FAST_SEC_STARTED
#undef CDDRFSO_STOP_SEC_CODE_FAST
#define DEFAULT_STOP_SEC_CODE_FAST
#endif
#elif defined (CDDRFSO_START_SEC_VAR_NO_INIT_PTR)
#ifdef VAR_NO_INIT_PTR_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_PTR_SEC_STARTED
#undef CDDRFSO_START_SEC_VAR_NO_INIT_PTR
#define DEFAULT_START_SEC_VAR_NO_INIT_PTR
#endif
#elif defined (CDDRFSO_STOP_SEC_VAR_NO_INIT_PTR)
#ifndef VAR_NO_INIT_PTR_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_PTR_SEC_STARTED
#undef CDDRFSO_STOP_SEC_VAR_NO_INIT_PTR
#define DEFAULT_STOP_SEC_VAR_NO_INIT_PTR
#endif
/* -------------------------------------------------------------------------- */
/* End of module section mapping */
/* -------------------------------------------------------------------------- */
#else
#error "CddRfso_MemMap.h: No valid section define found"
#endif /* START_WITH_IF */
/*******************************************************************************
** Default section mapping **
*******************************************************************************/
#include "Common_MemMap.h"
/*******************************************************************************
** End of File **
*******************************************************************************/

View File

@@ -0,0 +1,542 @@
/*============================================================================*/
/* Project = R-Car Gen4 AR19-11 MCAL */
/* Module = CddThs_MemMap.h */
/*============================================================================*/
/* COPYRIGHT */
/*============================================================================*/
/* (c) 2022 Renesas Electronics Corporation. All rights reserved. */
/*============================================================================*/
/* Purpose: */
/* Provision for sections for Memory Mapping */
/* */
/*============================================================================*/
/* */
/* Unless otherwise agreed upon in writing between your company and */
/* Renesas Electronics Corporation the following shall apply! */
/* */
/* Warranty Disclaimer */
/* */
/* There is no warranty of any kind whatsoever granted by Renesas. Any */
/* warranty is expressly disclaimed and excluded by Renesas, either expressed */
/* or implied, including but not limited to those for non-infringement of */
/* intellectual property, merchantability and/or fitness for the particular */
/* purpose. */
/* */
/* Renesas shall not have any obligation to maintain, service or provide bug */
/* fixes for the supplied Product(s) and/or the Application. */
/* */
/* Each User is solely responsible for determining the appropriateness of */
/* using the Product(s) and assumes all risks associated with its exercise */
/* of rights under this Agreement, including, but not limited to the risks */
/* and costs of program errors, compliance with applicable laws, damage to */
/* or loss of data, programs or equipment, and unavailability or */
/* interruption of operations. */
/* */
/* Limitation of Liability */
/* */
/* In no event shall Renesas be liable to the User for any incidental, */
/* consequential, indirect, or punitive damage (including but not limited */
/* to lost profits) regardless of whether such liability is based on breach */
/* of contract, tort, strict liability, breach of warranties, failure of */
/* essential purpose or otherwise and even if advised of the possibility of */
/* such damages. Renesas shall not be liable for any services or products */
/* provided by third party vendors, developers or consultants identified or */
/* referred to the User by Renesas in connection with the Product(s) and/or */
/* the Application. */
/* */
/*============================================================================*/
/* Environment: */
/* Devices: R-Car Series, 4th Generation */
/*============================================================================*/
/*
* V1.0.1: 06-Oct-2022 : Add CDD_THS_START_SEC_VAR_NO_INIT_PTR and
* CDD_THS_STOP_SEC_VAR_NO_INIT_PTR
* V1.0.0: 26-Jan-2022 : Initial Version
*/
/*******************************************************************************
** Include Section **
*******************************************************************************/
/*******************************************************************************
** Version Information **
*******************************************************************************/
/*
* AUTOSAR specification version information
*/
#ifndef CDD_THS_MEMMAP_AR_RELEASE_MAJOR_VERSION
#define CDD_THS_MEMMAP_AR_RELEASE_MAJOR_VERSION 4
#endif
#ifndef CDD_THS_MEMMAP_AR_RELEASE_MINOR_VERSION
#define CDD_THS_MEMMAP_AR_RELEASE_MINOR_VERSION 5
#endif
#ifndef CDD_THS_MEMMAP_AR_RELEASE_REVISION_VERSION
#define CDD_THS_MEMMAP_AR_RELEASE_REVISION_VERSION 0
#endif
/*
* File version information
*/
#ifndef CDD_THS_MEMMAP_SW_MAJOR_VERSION
#define CDD_THS_MEMMAP_SW_MAJOR_VERSION 1
#endif
#ifndef CDD_THS_MEMMAP_SW_MINOR_VERSION
#define CDD_THS_MEMMAP_SW_MINOR_VERSION 0
#endif
#ifndef CDD_THS_MEMMAP_SW_PATCH_VERSION
#define CDD_THS_MEMMAP_SW_PATCH_VERSION 0
#endif
/*******************************************************************************
** Global Symbols **
*******************************************************************************/
/*******************************************************************************
** Global Data Types **
*******************************************************************************/
/*******************************************************************************
** Module section mapping **
*******************************************************************************/
/*
* The symbol 'START_WITH_IF' is undefined.
*
* Thus, the preprocessor continues searching for defined symbols
* This first #ifdef makes integration of delivered parts of MemMap.h
* easier because every supplier starts with #elif
*/
#if defined (START_WITH_IF)
/* -------------------------------------------------------------------------- */
/* THS Complex Driver */
/* -------------------------------------------------------------------------- */
#elif defined (CDD_THS_START_SEC_VAR_INIT_BOOLEAN)
#ifdef VAR_INIT_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_BOOLEAN_SEC_STARTED
#undef CDD_THS_START_SEC_VAR_INIT_BOOLEAN
#define DEFAULT_START_SEC_VAR_INIT_1
#endif
#elif defined (CDD_THS_STOP_SEC_VAR_INIT_BOOLEAN)
#ifndef VAR_INIT_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_BOOLEAN_SEC_STARTED
#undef CDD_THS_STOP_SEC_VAR_INIT_BOOLEAN
#define DEFAULT_STOP_SEC_VAR_INIT_1
#endif
#elif defined (CDD_THS_START_SEC_VAR_NO_INIT_BOOLEAN)
#ifdef VAR_NO_INIT_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_BOOLEAN_SEC_STARTED
#undef CDD_THS_START_SEC_VAR_NO_INIT_BOOLEAN
#define DEFAULT_START_SEC_VAR_NO_INIT_1
#endif
#elif defined (CDD_THS_STOP_SEC_VAR_NO_INIT_BOOLEAN)
#ifndef VAR_NO_INIT_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_BOOLEAN_SEC_STARTED
#undef CDD_THS_STOP_SEC_VAR_NO_INIT_BOOLEAN
#define DEFAULT_STOP_SEC_VAR_NO_INIT_1
#endif
#elif defined (CDD_THS_START_SEC_VAR_INIT_8)
#ifdef VAR_INIT_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_8_SEC_STARTED
#undef CDD_THS_START_SEC_VAR_INIT_8
#define DEFAULT_START_SEC_VAR_INIT_8
#endif
#elif defined (CDD_THS_STOP_SEC_VAR_INIT_8)
#ifndef VAR_INIT_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_8_SEC_STARTED
#undef CDD_THS_STOP_SEC_VAR_INIT_8
#define DEFAULT_STOP_SEC_VAR_INIT_8
#endif
#elif defined (CDD_THS_START_SEC_VAR_NO_INIT_8)
#ifdef VAR_NO_INIT_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_8_SEC_STARTED
#undef CDD_THS_START_SEC_VAR_NO_INIT_8
#define DEFAULT_START_SEC_VAR_NO_INIT_8
#endif
#elif defined (CDD_THS_STOP_SEC_VAR_NO_INIT_8)
#ifndef VAR_NO_INIT_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_8_SEC_STARTED
#undef CDD_THS_STOP_SEC_VAR_NO_INIT_8
#define DEFAULT_STOP_SEC_VAR_NO_INIT_8
#endif
#elif defined (CDD_THS_START_SEC_VAR_INIT_16)
#ifdef VAR_INIT_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_16_SEC_STARTED
#undef CDD_THS_START_SEC_VAR_INIT_16
#define DEFAULT_START_SEC_VAR_INIT_16
#endif
#elif defined (CDD_THS_STOP_SEC_VAR_INIT_16)
#ifndef VAR_INIT_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_16_SEC_STARTED
#undef CDD_THS_STOP_SEC_VAR_INIT_16
#define DEFAULT_STOP_SEC_VAR_INIT_16
#endif
#elif defined (CDD_THS_START_SEC_VAR_NO_INIT_16)
#ifdef VAR_NO_INIT_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_16_SEC_STARTED
#undef CDD_THS_START_SEC_VAR_NO_INIT_16
#define DEFAULT_START_SEC_VAR_NO_INIT_16
#endif
#elif defined (CDD_THS_STOP_SEC_VAR_NO_INIT_16)
#ifndef VAR_NO_INIT_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_16_SEC_STARTED
#undef CDD_THS_STOP_SEC_VAR_NO_INIT_16
#define DEFAULT_STOP_SEC_VAR_NO_INIT_16
#endif
#elif defined (CDD_THS_START_SEC_VAR_INIT_32)
#ifdef VAR_INIT_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_32_SEC_STARTED
#undef CDD_THS_START_SEC_VAR_INIT_32
#define DEFAULT_START_SEC_VAR_INIT_32
#endif
#elif defined (CDD_THS_STOP_SEC_VAR_INIT_32)
#ifndef VAR_INIT_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_32_SEC_STARTED
#undef CDD_THS_STOP_SEC_VAR_INIT_32
#define DEFAULT_STOP_SEC_VAR_INIT_32
#endif
#elif defined (CDD_THS_START_SEC_VAR_NO_INIT_32)
#ifdef VAR_NO_INIT_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_32_SEC_STARTED
#undef CDD_THS_START_SEC_VAR_NO_INIT_32
#define DEFAULT_START_SEC_VAR_NO_INIT_32
#endif
#elif defined (CDD_THS_STOP_SEC_VAR_NO_INIT_32)
#ifndef VAR_NO_INIT_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_32_SEC_STARTED
#undef CDD_THS_STOP_SEC_VAR_NO_INIT_32
#define DEFAULT_STOP_SEC_VAR_NO_INIT_32
#endif
#elif defined (CDD_THS_START_SEC_VAR_INIT_UNSPECIFIED)
#ifdef VAR_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_UNSPECIFIED_SEC_STARTED
#undef CDD_THS_START_SEC_VAR_INIT_UNSPECIFIED
#define DEFAULT_START_SEC_VAR_INIT_UNSPECIFIED
#endif
#elif defined (CDD_THS_STOP_SEC_VAR_INIT_UNSPECIFIED)
#ifndef VAR_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_UNSPECIFIED_SEC_STARTED
#undef CDD_THS_STOP_SEC_VAR_INIT_UNSPECIFIED
#define DEFAULT_STOP_SEC_VAR_INIT_UNSPECIFIED
#endif
#elif defined (CDD_THS_START_SEC_VAR_NO_INIT_UNSPECIFIED)
#ifdef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#undef CDD_THS_START_SEC_VAR_NO_INIT_UNSPECIFIED
#define DEFAULT_START_SEC_VAR_NO_INIT_UNSPECIFIED
#endif
#elif defined (CDD_THS_STOP_SEC_VAR_NO_INIT_UNSPECIFIED)
#ifndef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#undef CDD_THS_STOP_SEC_VAR_NO_INIT_UNSPECIFIED
#define DEFAULT_STOP_SEC_VAR_NO_INIT_UNSPECIFIED
#endif
#elif defined (CDD_THS_START_SEC_CONST_BOOLEAN)
#ifdef CONST_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_BOOLEAN_SEC_STARTED
#undef CDD_THS_START_SEC_CONST_BOOLEAN
#define DEFAULT_START_SEC_CONST_1
#endif
#elif defined (CDD_THS_STOP_SEC_CONST_BOOLEAN)
#ifndef CONST_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_BOOLEAN_SEC_STARTED
#undef CDD_THS_STOP_SEC_CONST_BOOLEAN
#define DEFAULT_STOP_SEC_CONST_1
#endif
#elif defined (CDD_THS_START_SEC_CONST_8)
#ifdef CONST_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_8_SEC_STARTED
#undef CDD_THS_START_SEC_CONST_8
#define DEFAULT_START_SEC_CONST_8
#endif
#elif defined (CDD_THS_STOP_SEC_CONST_8)
#ifndef CONST_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_8_SEC_STARTED
#undef CDD_THS_STOP_SEC_CONST_8
#define DEFAULT_STOP_SEC_CONST_8
#endif
#elif defined (CDD_THS_START_SEC_CONST_16)
#ifdef CONST_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_16_SEC_STARTED
#undef CDD_THS_START_SEC_CONST_16
#define DEFAULT_START_SEC_CONST_16
#endif
#elif defined (CDD_THS_STOP_SEC_CONST_16)
#ifndef CONST_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_16_SEC_STARTED
#undef CDD_THS_STOP_SEC_CONST_16
#define DEFAULT_STOP_SEC_CONST_16
#endif
#elif defined (CDD_THS_START_SEC_CONST_32)
#ifdef CONST_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_32_SEC_STARTED
#undef CDD_THS_START_SEC_CONST_32
#define DEFAULT_START_SEC_CONST_32
#endif
#elif defined (CDD_THS_STOP_SEC_CONST_32)
#ifndef CONST_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_32_SEC_STARTED
#undef CDD_THS_STOP_SEC_CONST_32
#define DEFAULT_STOP_SEC_CONST_32
#endif
#elif defined (CDD_THS_START_SEC_CONST_UNSPECIFIED)
#ifdef CONST_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_UNSPECIFIED_SEC_STARTED
#undef CDD_THS_START_SEC_CONST_UNSPECIFIED
#define DEFAULT_START_SEC_CONST_UNSPECIFIED
#endif
#elif defined (CDD_THS_STOP_SEC_CONST_UNSPECIFIED)
#ifndef CONST_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_UNSPECIFIED_SEC_STARTED
#undef CDD_THS_STOP_SEC_CONST_UNSPECIFIED
#define DEFAULT_STOP_SEC_CONST_UNSPECIFIED
#endif
#elif defined (CDD_THS_START_SEC_CONFIG_DATA_BOOLEAN)
#ifdef CONFIG_DATA_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_BOOLEAN_SEC_STARTED
#undef CDD_THS_START_SEC_CONFIG_DATA_BOOLEAN
#define DEFAULT_START_SEC_CONFIG_DATA_1
#endif
#elif defined (CDD_THS_STOP_SEC_CONFIG_DATA_BOOLEAN)
#ifndef CONFIG_DATA_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_BOOLEAN_SEC_STARTED
#undef CDD_THS_STOP_SEC_CONFIG_DATA_BOOLEAN
#define DEFAULT_STOP_SEC_CONFIG_DATA_1
#endif
#elif defined (CDD_THS_START_SEC_CONFIG_DATA_8)
#ifdef CONFIG_DATA_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_8_SEC_STARTED
#undef CDD_THS_START_SEC_CONFIG_DATA_8
#define DEFAULT_START_SEC_CONFIG_DATA_8
#endif
#elif defined (CDD_THS_STOP_SEC_CONFIG_DATA_8)
#ifndef CONFIG_DATA_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_8_SEC_STARTED
#undef CDD_THS_STOP_SEC_CONFIG_DATA_8
#define DEFAULT_STOP_SEC_CONFIG_DATA_8
#endif
#elif defined (CDD_THS_START_SEC_CONFIG_DATA_16)
#ifdef CONFIG_DATA_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_16_SEC_STARTED
#undef CDD_THS_START_SEC_CONFIG_DATA_16
#define DEFAULT_START_SEC_CONFIG_DATA_16
#endif
#elif defined (CDD_THS_STOP_SEC_CONFIG_DATA_16)
#ifndef CONFIG_DATA_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_16_SEC_STARTED
#undef CDD_THS_STOP_SEC_CONFIG_DATA_16
#define DEFAULT_STOP_SEC_CONFIG_DATA_16
#endif
#elif defined (CDD_THS_START_SEC_CONFIG_DATA_32)
#ifdef CONFIG_DATA_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_32_SEC_STARTED
#undef CDD_THS_START_SEC_CONFIG_DATA_32
#define DEFAULT_START_SEC_CONFIG_DATA_32
#endif
#elif defined (CDD_THS_STOP_SEC_CONFIG_DATA_32)
#ifndef CONFIG_DATA_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_32_SEC_STARTED
#undef CDD_THS_STOP_SEC_CONFIG_DATA_32
#define DEFAULT_STOP_SEC_CONFIG_DATA_32
#endif
#elif defined (CDD_THS_START_SEC_CONFIG_DATA_UNSPECIFIED)
#ifdef CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#undef CDD_THS_START_SEC_CONFIG_DATA_UNSPECIFIED
#define DEFAULT_START_SEC_CONFIG_DATA_UNSPECIFIED
#endif
#elif defined (CDD_THS_STOP_SEC_CONFIG_DATA_UNSPECIFIED)
#ifndef CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#undef CDD_THS_STOP_SEC_CONFIG_DATA_UNSPECIFIED
#define DEFAULT_STOP_SEC_CONFIG_DATA_UNSPECIFIED
#endif
#elif defined (CDD_THS_START_SEC_CODE_SLOW)
#ifdef CODE_SLOW_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CODE_SLOW_SEC_STARTED
#undef CDD_THS_START_SEC_CODE_SLOW
#define DEFAULT_START_SEC_CODE_SLOW
#endif
#elif defined (CDD_THS_STOP_SEC_CODE_SLOW)
#ifndef CODE_SLOW_SEC_STARTED
#error "Memory section is not started"
#else
#undef CODE_SLOW_SEC_STARTED
#undef CDD_THS_STOP_SEC_CODE_SLOW
#define DEFAULT_STOP_SEC_CODE_SLOW
#endif
#elif defined (CDD_THS_START_SEC_CALLOUT_CODE)
#ifdef CALLOUT_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CALLOUT_CODE_SEC_STARTED
#undef CDD_THS_START_SEC_CALLOUT_CODE
#define DEFAULT_START_SEC_CALLOUT_CODE
#endif
#elif defined (CDD_THS_STOP_SEC_CALLOUT_CODE)
#ifndef CALLOUT_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef CALLOUT_CODE_SEC_STARTED
#undef CDD_THS_STOP_SEC_CALLOUT_CODE
#define DEFAULT_STOP_SEC_CALLOUT_CODE
#endif
#elif defined (CDD_THS_START_SEC_CODE)
#ifdef CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CODE_SEC_STARTED
#undef CDD_THS_START_SEC_CODE
#define DEFAULT_START_SEC_CODE
#endif
#elif defined (CDD_THS_STOP_SEC_CODE)
#ifndef CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef CODE_SEC_STARTED
#undef CDD_THS_STOP_SEC_CODE
#define DEFAULT_STOP_SEC_CODE
#endif
#elif defined (CDD_THS_START_SEC_CODE_FAST)
#ifdef CODE_FAST_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CODE_FAST_SEC_STARTED
#undef CDD_THS_START_SEC_CODE_FAST
#define DEFAULT_START_SEC_CODE_FAST
#endif
#elif defined (CDD_THS_STOP_SEC_CODE_FAST)
#ifndef CODE_FAST_SEC_STARTED
#error "Memory section is not started"
#else
#undef CODE_FAST_SEC_STARTED
#undef CDD_THS_STOP_SEC_CODE_FAST
#define DEFAULT_STOP_SEC_CODE_FAST
#endif
#elif defined (CDD_THS_START_SEC_VAR_NO_INIT_PTR)
#ifdef VAR_NO_INIT_PTR_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_PTR_SEC_STARTED
#undef CDD_THS_START_SEC_VAR_NO_INIT_PTR
#define DEFAULT_START_SEC_VAR_NO_INIT_PTR
#endif
#elif defined (CDD_THS_STOP_SEC_VAR_NO_INIT_PTR)
#ifndef VAR_NO_INIT_PTR_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_PTR_SEC_STARTED
#undef CDD_THS_STOP_SEC_VAR_NO_INIT_PTR
#define DEFAULT_STOP_SEC_VAR_NO_INIT_PTR
#endif
#else
#error "CddThs_MemMap.h: No valid section define found"
#endif /* START_WITH_IF */
/*******************************************************************************
** Default section mapping **
*******************************************************************************/
#include "Common_MemMap.h"
/*******************************************************************************
** End of File **
*******************************************************************************/

View File

@@ -0,0 +1,432 @@
/*============================================================================*/
/* Project = AUTOSAR Renesas CPF MCAL Components */
/* Module = Common_MemMap.h */
/* SW-VERSION = 1.0.1 */
/*============================================================================*/
/* COPYRIGHT */
/*============================================================================*/
/* Copyright(c) 2021-2022 Renesas Electronics Corporation. */
/*============================================================================*/
/* Purpose: */
/* Provision for sections for Memory Mapping */
/* */
/*============================================================================*/
/* */
/* Unless otherwise agreed upon in writing between your company and */
/* Renesas Electronics Corporation the following shall apply! */
/* */
/* Warranty Disclaimer */
/* */
/* There is no warranty of any kind whatsoever granted by Renesas. Any */
/* warranty is expressly disclaimed and excluded by Renesas, either expressed */
/* or implied, including but not limited to those for non-infringement of */
/* intellectual property, merchantability and/or fitness for the particular */
/* purpose. */
/* */
/* Renesas shall not have any obligation to maintain, service or provide bug */
/* fixes for the supplied Product(s) and/or the Application. */
/* */
/* Each User is solely responsible for determining the appropriateness of */
/* using the Product(s) and assumes all risks associated with its exercise */
/* of rights under this Agreement, including, but not limited to the risks */
/* and costs of program errors, compliance with applicable laws, damage to */
/* or loss of data, programs or equipment, and unavailability or */
/* interruption of operations. */
/* */
/* Limitation of Liability */
/* */
/* In no event shall Renesas be liable to the User for any incidental, */
/* consequential, indirect, or punitive damage (including but not limited */
/* to lost profits) regardless of whether such liability is based on breach */
/* of contract, tort, strict liability, breach of warranties, failure of */
/* essential purpose or otherwise and even if advised of the possibility of */
/* such damages. Renesas shall not be liable for any services or products */
/* provided by third party vendors, developers or consultants identified or */
/* referred to the User by Renesas in connection with the Product(s) and/or */
/* the Application. */
/* */
/*============================================================================*/
/* Environment: */
/* Devices: CPF */
/*============================================================================*/
/*******************************************************************************
** Revision Control History **
*******************************************************************************/
/*
* 1.0.1: 21/04/2022 : Add new sections ".data.VAR_NO_INIT_PTR" and
* ".constdata.CONFIG_DBTOC_DATA_UNSPECIFIED"
* 1.0.0: 20/08/2021 : Initial Version
*/
/******************************************************************************/
/*******************************************************************************
** Version Information **
*******************************************************************************/
/*******************************************************************************
** Global Symbols **
*******************************************************************************/
/*******************************************************************************
** Global Data Types **
*******************************************************************************/
/*******************************************************************************
** Default section mapping **
*******************************************************************************/
/* general start of #elif chain whith #if */
#if defined (START_WITH_IF)
/* -------------------------------------------------------------------------- */
/* RAM variables initialized from ROM on reset */
/* -------------------------------------------------------------------------- */
#elif defined (DEFAULT_START_SEC_VAR_INIT_1)
#undef DEFAULT_START_SEC_VAR_INIT_1
#define PRIVATE_SECTION ".data.VAR_INIT_1"
#define SECTION_TYPE data
#elif defined (DEFAULT_STOP_SEC_VAR_INIT_1)
#undef DEFAULT_STOP_SEC_VAR_INIT_1
#undef PRIVATE_SECTION
#define SECTION_TYPE data
#elif defined (DEFAULT_START_SEC_VAR_INIT_8)
#undef DEFAULT_START_SEC_VAR_INIT_8
#define PRIVATE_SECTION ".data.VAR_INIT_8"
#define SECTION_TYPE data
#elif defined (DEFAULT_STOP_SEC_VAR_INIT_8)
#undef DEFAULT_STOP_SEC_VAR_INIT_8
#undef PRIVATE_SECTION
#define SECTION_TYPE data
#elif defined (DEFAULT_START_SEC_VAR_INIT_16)
#undef DEFAULT_START_SEC_VAR_INIT_16
#define PRIVATE_SECTION ".data.VAR_INIT_16"
#define SECTION_TYPE data
#elif defined (DEFAULT_STOP_SEC_VAR_INIT_16)
#undef DEFAULT_STOP_SEC_VAR_INIT_16
#undef PRIVATE_SECTION
#define SECTION_TYPE data
#elif defined (DEFAULT_START_SEC_VAR_INIT_32)
#undef DEFAULT_START_SEC_VAR_INIT_32
#define PRIVATE_SECTION ".data.VAR_INIT_32"
#define SECTION_TYPE data
#elif defined (DEFAULT_STOP_SEC_VAR_INIT_32)
#undef DEFAULT_STOP_SEC_VAR_INIT_32
#undef PRIVATE_SECTION
#define SECTION_TYPE data
#elif defined (DEFAULT_START_SEC_VAR_INIT_UNSPECIFIED)
#undef DEFAULT_START_SEC_VAR_INIT_UNSPECIFIED
#define PRIVATE_SECTION ".data.VAR_INIT_UNSPECIFIED"
#define SECTION_TYPE data
#elif defined (DEFAULT_STOP_SEC_VAR_INIT_UNSPECIFIED)
#undef DEFAULT_STOP_SEC_VAR_INIT_UNSPECIFIED
#undef PRIVATE_SECTION
#define SECTION_TYPE data
/* -------------------------------------------------------------------------- */
/* RAM variables not initialized */
/* -------------------------------------------------------------------------- */
#elif defined (DEFAULT_START_SEC_VAR_NO_INIT_1)
#undef DEFAULT_START_SEC_VAR_NO_INIT_1
#define PRIVATE_SECTION ".data.VAR_NO_INIT_1"
#define SECTION_TYPE data
#elif defined (DEFAULT_STOP_SEC_VAR_NO_INIT_1)
#undef DEFAULT_STOP_SEC_VAR_NO_INIT_1
#undef PRIVATE_SECTION
#define SECTION_TYPE data
#elif defined (DEFAULT_START_SEC_VAR_NO_INIT_8)
#undef DEFAULT_START_SEC_VAR_NO_INIT_8
#define PRIVATE_SECTION ".data.VAR_NO_INIT_8"
#define SECTION_TYPE data
#elif defined (DEFAULT_STOP_SEC_VAR_NO_INIT_8)
#undef DEFAULT_STOP_SEC_VAR_NO_INIT_8
#undef PRIVATE_SECTION
#define SECTION_TYPE data
#elif defined (DEFAULT_START_SEC_VAR_NO_INIT_16)
#undef DEFAULT_START_SEC_VAR_NO_INIT_16
#define PRIVATE_SECTION ".data.VAR_NO_INIT_16"
#define SECTION_TYPE data
#elif defined (DEFAULT_STOP_SEC_VAR_NO_INIT_16)
#undef DEFAULT_STOP_SEC_VAR_NO_INIT_16
#undef PRIVATE_SECTION
#define SECTION_TYPE data
#elif defined (DEFAULT_START_SEC_VAR_NO_INIT_32)
#undef DEFAULT_START_SEC_VAR_NO_INIT_32
#define PRIVATE_SECTION ".data.VAR_NO_INIT_32"
#define SECTION_TYPE data
#elif defined (DEFAULT_STOP_SEC_VAR_NO_INIT_32)
#undef DEFAULT_STOP_SEC_VAR_NO_INIT_32
#undef PRIVATE_SECTION
#define SECTION_TYPE data
#elif defined (DEFAULT_START_SEC_VAR_NO_INIT_UNSPECIFIED)
#undef DEFAULT_START_SEC_VAR_NO_INIT_UNSPECIFIED
#define PRIVATE_SECTION ".data.VAR_NO_INIT_UNSPECIFIED"
#define SECTION_TYPE data
#elif defined (DEFAULT_STOP_SEC_VAR_NO_INIT_UNSPECIFIED)
#undef DEFAULT_STOP_SEC_VAR_NO_INIT_UNSPECIFIED
#undef PRIVATE_SECTION
#define SECTION_TYPE data
#elif defined (DEFAULT_START_SEC_VAR_NO_INIT_PTR)
#undef DEFAULT_START_SEC_VAR_NO_INIT_PTR
#define PRIVATE_SECTION ".data.VAR_NO_INIT_PTR"
#define SECTION_TYPE data
#elif defined (DEFAULT_STOP_SEC_VAR_NO_INIT_PTR)
#undef DEFAULT_STOP_SEC_VAR_NO_INIT_PTR
#undef PRIVATE_SECTION
#define SECTION_TYPE data
/* -------------------------------------------------------------------------- */
/* RAM variables are cleared */
/* -------------------------------------------------------------------------- */
#elif defined (DEFAULT_START_SEC_VAR_CLEARED_1)
#undef DEFAULT_START_SEC_VAR_CLEARED_1
#define PRIVATE_SECTION ".bss.VAR_CLEARED_1"
#define SECTION_TYPE bss
#elif defined (DEFAULT_STOP_SEC_VAR_CLEARED_1)
#undef DEFAULT_STOP_SEC_VAR_CLEARED_1
#undef PRIVATE_SECTION
#define SECTION_TYPE bss
#elif defined (DEFAULT_START_SEC_VAR_CLEARED_8)
#undef DEFAULT_START_SEC_VAR_CLEARED_8
#define PRIVATE_SECTION ".bss.VAR_CLEARED_8"
#define SECTION_TYPE bss
#elif defined (DEFAULT_STOP_SEC_VAR_CLEARED_8)
#undef DEFAULT_STOP_SEC_VAR_CLEARED_8
#undef PRIVATE_SECTION
#define SECTION_TYPE bss
#elif defined (DEFAULT_START_SEC_VAR_CLEARED_16)
#undef DEFAULT_START_SEC_VAR_CLEARED_16
#define PRIVATE_SECTION ".bss.VAR_CLEARED_16"
#define SECTION_TYPE bss
#elif defined (DEFAULT_STOP_SEC_VAR_CLEARED_16)
#undef DEFAULT_STOP_SEC_VAR_CLEARED_16
#undef PRIVATE_SECTION
#define SECTION_TYPE bss
#elif defined (DEFAULT_START_SEC_VAR_CLEARED_32)
#undef DEFAULT_START_SEC_VAR_CLEARED_32
#define PRIVATE_SECTION ".bss.VAR_CLEARED_32"
#define SECTION_TYPE bss
#elif defined (DEFAULT_STOP_SEC_VAR_CLEARED_32)
#undef DEFAULT_STOP_SEC_VAR_CLEARED_32
#undef PRIVATE_SECTION
#define SECTION_TYPE bss
#elif defined (DEFAULT_START_SEC_VAR_CLEARED_UNSPECIFIED)
#undef DEFAULT_START_SEC_VAR_CLEARED_UNSPECIFIED
#define PRIVATE_SECTION ".bss.VAR_CLEARED_UNSPECIFIED"
#define SECTION_TYPE bss
#elif defined (DEFAULT_STOP_SEC_VAR_CLEARED_UNSPECIFIED)
#undef DEFAULT_STOP_SEC_VAR_CLEARED_UNSPECIFIED
#undef PRIVATE_SECTION
#define SECTION_TYPE bss
#elif defined (DEFAULT_START_SEC_VAR_CLEARED_USER_RAM_UNSPECIFIED)
#undef DEFAULT_START_SEC_VAR_CLEARED_USER_RAM_UNSPECIFIED
#define PRIVATE_SECTION ".bss.VAR_CLEARED_USER_RAM_UNSPECIFIED"
#define SECTION_TYPE bss
#define ALIGNMENT_SECTION
#elif defined (DEFAULT_STOP_SEC_VAR_CLEARED_USER_RAM_UNSPECIFIED)
#undef DEFAULT_STOP_SEC_VAR_CLEARED_USER_RAM_UNSPECIFIED
#undef PRIVATE_SECTION
#undef ALIGNMENT_SECTION
#define SECTION_TYPE bss
#elif defined (DEFAULT_START_SEC_VAR_CLEARED_DESCRIPTOR_32)
#undef DEFAULT_START_SEC_VAR_CLEARED_DESCRIPTOR_32
#define PRIVATE_SECTION ".bss.VAR_CLEARED_DESCRIPTOR_32"
#define SECTION_TYPE bss
#elif defined (DEFAULT_STOP_SEC_VAR_CLEARED_DESCRIPTOR_32)
#undef DEFAULT_STOP_SEC_VAR_CLEARED_DESCRIPTOR_32
#undef PRIVATE_SECTION
#define SECTION_TYPE bss
#elif defined (DEFAULT_START_SEC_VAR_CLEARED_USER_RAM_32)
#undef DEFAULT_START_SEC_VAR_CLEARED_USER_RAM_32
#define PRIVATE_SECTION ".bss.VAR_CLEARED_USER_RAM_32"
#define SECTION_TYPE bss
#elif defined (DEFAULT_STOP_SEC_VAR_CLEARED_USER_RAM_32)
#undef DEFAULT_STOP_SEC_VAR_CLEARED_USER_RAM_32
#undef PRIVATE_SECTION
#define SECTION_TYPE bss
/* -------------------------------------------------------------------------- */
/* ROM constants */
/* -------------------------------------------------------------------------- */
#elif defined (DEFAULT_START_SEC_CONST_1)
#undef DEFAULT_START_SEC_CONST_1
#define PRIVATE_SECTION ".constdata.CONST_1"
#define SECTION_TYPE rodata
#elif defined (DEFAULT_STOP_SEC_CONST_1)
#undef DEFAULT_STOP_SEC_CONST_1
#undef PRIVATE_SECTION
#define SECTION_TYPE rodata
#elif defined (DEFAULT_START_SEC_CONST_8)
#undef DEFAULT_START_SEC_CONST_8
#define PRIVATE_SECTION ".constdata.CONST_8"
#define SECTION_TYPE rodata
#elif defined (DEFAULT_STOP_SEC_CONST_8)
#undef DEFAULT_STOP_SEC_CONST_8
#undef PRIVATE_SECTION
#define SECTION_TYPE rodata
#elif defined (DEFAULT_START_SEC_CONST_16)
#undef DEFAULT_START_SEC_CONST_16
#define PRIVATE_SECTION ".constdata.CONST_16"
#define SECTION_TYPE rodata
#elif defined (DEFAULT_STOP_SEC_CONST_16)
#undef DEFAULT_STOP_SEC_CONST_16
#undef PRIVATE_SECTION
#define SECTION_TYPE rodata
#elif defined (DEFAULT_START_SEC_CONST_32)
#undef DEFAULT_START_SEC_CONST_32
#define PRIVATE_SECTION ".constdata.CONST_32"
#define SECTION_TYPE rodata
#elif defined (DEFAULT_STOP_SEC_CONST_32)
#undef DEFAULT_STOP_SEC_CONST_32
#undef PRIVATE_SECTION
#define SECTION_TYPE rodata
#elif defined (DEFAULT_START_SEC_CONST_UNSPECIFIED)
#undef DEFAULT_START_SEC_CONST_UNSPECIFIED
#define PRIVATE_SECTION ".constdata.CONST_UNSPECIFIED"
#define SECTION_TYPE rodata
#elif defined (DEFAULT_STOP_SEC_CONST_UNSPECIFIED)
#undef DEFAULT_STOP_SEC_CONST_UNSPECIFIED
#undef PRIVATE_SECTION
#define SECTION_TYPE rodata
/* -------------------------------------------------------------------------- */
/* ROM configure constants */
/* -------------------------------------------------------------------------- */
#elif defined (DEFAULT_START_SEC_CONFIG_DATA_1)
#undef DEFAULT_START_SEC_CONFIG_DATA_1
#define PRIVATE_SECTION ".constdata.CONFIG_DATA_1"
#define SECTION_TYPE rodata
#elif defined (DEFAULT_STOP_SEC_CONFIG_DATA_1)
#undef DEFAULT_STOP_SEC_CONFIG_DATA_1
#undef PRIVATE_SECTION
#define SECTION_TYPE rodata
#elif defined (DEFAULT_START_SEC_CONFIG_DATA_8)
#undef DEFAULT_START_SEC_CONFIG_DATA_8
#define PRIVATE_SECTION ".constdata.CONFIG_DATA_8"
#define SECTION_TYPE rodata
#elif defined (DEFAULT_STOP_SEC_CONFIG_DATA_8)
#undef DEFAULT_STOP_SEC_CONFIG_DATA_8
#undef PRIVATE_SECTION
#define SECTION_TYPE rodata
#elif defined (DEFAULT_START_SEC_CONFIG_DATA_16)
#undef DEFAULT_START_SEC_CONFIG_DATA_16
#define PRIVATE_SECTION ".constdata.CONFIG_DATA_16"
#define SECTION_TYPE rodata
#elif defined (DEFAULT_STOP_SEC_CONFIG_DATA_16)
#undef DEFAULT_STOP_SEC_CONFIG_DATA_16
#undef PRIVATE_SECTION
#define SECTION_TYPE rodata
#elif defined (DEFAULT_START_SEC_CONFIG_DATA_32)
#undef DEFAULT_START_SEC_CONFIG_DATA_32
#define PRIVATE_SECTION ".constdata.CONFIG_DATA_32"
#define SECTION_TYPE rodata
#elif defined (DEFAULT_STOP_SEC_CONFIG_DATA_32)
#undef DEFAULT_STOP_SEC_CONFIG_DATA_32
#undef PRIVATE_SECTION
#define SECTION_TYPE rodata
#elif defined (DEFAULT_START_SEC_CONFIG_DATA_UNSPECIFIED)
#undef DEFAULT_START_SEC_CONFIG_DATA_UNSPECIFIED
#define PRIVATE_SECTION ".constdata.CONFIG_DATA_UNSPECIFIED"
#define SECTION_TYPE rodata
#elif defined (DEFAULT_STOP_SEC_CONFIG_DATA_UNSPECIFIED)
#undef DEFAULT_STOP_SEC_CONFIG_DATA_UNSPECIFIED
#undef PRIVATE_SECTION
#define SECTION_TYPE rodata
#elif defined (DEFAULT_START_SEC_DBTOC_DATA_UNSPECIFIED)
#undef DEFAULT_START_SEC_DBTOC_DATA_UNSPECIFIED
#define PRIVATE_SECTION ".constdata.CONFIG_DBTOC_DATA_UNSPECIFIED"
#define SECTION_TYPE rodata
#elif defined (DEFAULT_STOP_SEC_DBTOC_DATA_UNSPECIFIED)
#undef DEFAULT_STOP_SEC_DBTOC_DATA_UNSPECIFIED
#undef PRIVATE_SECTION
#define SECTION_TYPE rodata
/* -------------------------------------------------------------------------- */
/* ROM code */
/* -------------------------------------------------------------------------- */
#elif defined (DEFAULT_START_SEC_CODE)
#undef DEFAULT_START_SEC_CODE
#define PRIVATE_SECTION ".text.CODE"
#define SECTION_TYPE text
#elif defined (DEFAULT_STOP_SEC_CODE)
#undef DEFAULT_STOP_SEC_CODE
#undef PRIVATE_SECTION
#define SECTION_TYPE text
#elif defined (DEFAULT_START_SEC_CODE_SLOW)
#undef DEFAULT_START_SEC_CODE_SLOW
#define PRIVATE_SECTION ".text.CODE_SLOW"
#define SECTION_TYPE text
#elif defined (DEFAULT_STOP_SEC_CODE_SLOW)
#undef DEFAULT_STOP_SEC_CODE_SLOW
#undef PRIVATE_SECTION
#define SECTION_TYPE text
#elif defined (DEFAULT_START_SEC_CALLOUT_CODE)
#undef DEFAULT_START_SEC_CALLOUT_CODE
#define PRIVATE_SECTION ".text.CALLOUT_CODE"
#define SECTION_TYPE text
#elif defined (DEFAULT_STOP_SEC_CALLOUT_CODE)
#undef DEFAULT_STOP_SEC_CALLOUT_CODE
#undef PRIVATE_SECTION
#define SECTION_TYPE text
#elif defined (DEFAULT_START_SEC_CODE_FAST)
#undef DEFAULT_START_SEC_CODE_FAST
#define PRIVATE_SECTION ".text.CODE_FAST"
#define SECTION_TYPE text
#elif defined (DEFAULT_STOP_SEC_CODE_FAST)
#undef DEFAULT_STOP_SEC_CODE_FAST
#undef PRIVATE_SECTION
#define SECTION_TYPE text
#elif defined (DEFAULT_START_SEC_APPL_CODE)
#undef DEFAULT_START_SEC_APPL_CODE
#define PRIVATE_SECTION ".text.APPL_CODE"
#define SECTION_TYPE text
#elif defined (DEFAULT_STOP_SEC_APPL_CODE)
#undef DEFAULT_STOP_SEC_APPL_CODE
#undef PRIVATE_SECTION
#define SECTION_TYPE text
/* ---------------------------------------------------------------------------*/
/* End of default section mapping */
/* ---------------------------------------------------------------------------*/
/*******************************************************************************
** Function Prototypes **
*******************************************************************************/
#endif /* START_WITH_IF */
/*******************************************************************************
** Include Section **
*******************************************************************************/
#include "MemMap_dep.h"
/*******************************************************************************
** End of File **
*******************************************************************************/

View File

@@ -0,0 +1,916 @@
/*============================================================================*/
/* Project = AUTOSAR Renesas MCAL Components */
/* Module = Dio_MemMap.h */
/* SW-VERSION = 1.3.8 */
/*============================================================================*/
/* COPYRIGHT */
/*============================================================================*/
/* Copyright(c) 2021-2022 Renesas Electronics Corporation. */
/*============================================================================*/
/* Purpose: */
/* Provision for sections for Memory Mapping */
/* */
/*============================================================================*/
/* */
/* Unless otherwise agreed upon in writing between your company and */
/* Renesas Electronics Corporation the following shall apply! */
/* */
/* Warranty Disclaimer */
/* */
/* There is no warranty of any kind whatsoever granted by Renesas. Any */
/* warranty is expressly disclaimed and excluded by Renesas, either expressed */
/* or implied, including but not limited to those for non-infringement of */
/* intellectual property, merchantability and/or fitness for the particular */
/* purpose. */
/* */
/* Renesas shall not have any obligation to maintain, service or provide bug */
/* fixes for the supplied Product(s) and/or the Application. */
/* */
/* Each User is solely responsible for determining the appropriateness of */
/* using the Product(s) and assumes all risks associated with its exercise */
/* of rights under this Agreement, including, but not limited to the risks */
/* and costs of program errors, compliance with applicable laws, damage to */
/* or loss of data, programs or equipment, and unavailability or */
/* interruption of operations. */
/* */
/* Limitation of Liability */
/* */
/* In no event shall Renesas be liable to the User for any incidental, */
/* consequential, indirect, or punitive damage (including but not limited */
/* to lost profits) regardless of whether such liability is based on breach */
/* of contract, tort, strict liability, breach of warranties, failure of */
/* essential purpose or otherwise and even if advised of the possibility of */
/* such damages. Renesas shall not be liable for any services or products */
/* provided by third party vendors, developers or consultants identified or */
/* referred to the User by Renesas in connection with the Product(s) and/or */
/* the Application. */
/* */
/*============================================================================*/
/* Environment: */
/* Devices: R-CarGen4 */
/*============================================================================*/
/*******************************************************************************
** Revision Control History **
*******************************************************************************/
/*
* 1.3.7 15-Nov-2022 Change PRIVATE_SECTION of
* DIO_START_SEC_CONFIG_DATA_UNSPECIFIED from
* DIO_CFG_RAM_UNSPECIFIED to DIO_CFG_DATA_UNSPECIFIED
* 1.0.3 12-Jul-2022 Remove DIO_START_SEC_CODE_SLOW
* 1.0.2 12-May-2022 Add DIO_START_SEC_CODE_SLOW
* 1.0.1 12-Apr-2022 Remove define SEC_NAME
* Define PRIVATE_SECTION instead of PUBLIC_CODE when
* DIO_START_SEC_PUBLIC_CODE is defined
* 1.0.0 20-Aug-2021 Initial Version
*/
/******************************************************************************/
/*******************************************************************************
** Include Section **
*******************************************************************************/
/*******************************************************************************
** Version Information **
*******************************************************************************/
/*
* AUTOSAR specification version information
*/
#define DIO_MEMMAP_AR_RELEASE_MAJOR_VERSION 4
#define DIO_MEMMAP_AR_RELEASE_MINOR_VERSION 5
#define DIO_MEMMAP_AR_RELEASE_REVISION_VERSION 0
/*
* File version information
*/
#define DIO_MEMMAP_SW_MAJOR_VERSION 1
#define DIO_MEMMAP_SW_MINOR_VERSION 0
#define DIO_MEMMAP_SW_PATCH_VERSION 0
/*******************************************************************************
** Global Symbols **
*******************************************************************************/
/*******************************************************************************
** Global Data Types **
*******************************************************************************/
/*******************************************************************************
** Module section mapping **
*******************************************************************************/
/*
* The symbol 'START_WITH_IF' is undefined.
*
* Thus, the preprocessor continues searching for defined symbols
* This first #ifdef makes integration of delivered parts of MemMap.h
* easier because every supplier starts with #elif
*/
#if defined (START_WITH_IF)
/* -------------------------------------------------------------------------- */
/* DIO */
/* -------------------------------------------------------------------------- */
#elif defined (DIO_START_SEC_VAR_INIT_BOOLEAN)
#ifdef VAR_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_BOOLEAN_SEC_STARTED
#undef DIO_START_SEC_VAR_INIT_BOOLEAN
#define DEFAULT_START_SEC_VAR_1BIT
#endif
#elif defined (DIO_STOP_SEC_VAR_INIT_BOOLEAN)
#ifndef VAR_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_BOOLEAN_SEC_STARTED
#undef DIO_STOP_SEC_VAR_INIT_BOOLEAN
#define DEFAULT_STOP_SEC_VAR_1BIT
#endif
#elif defined (DIO_START_SEC_VAR_NO_INIT_BOOLEAN)
#ifdef VAR_NOINIT_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NOINIT_BOOLEAN_SEC_STARTED
#undef DIO_START_SEC_VAR_NO_INIT_BOOLEAN
#define DEFAULT_START_SEC_VAR_NOINIT_1BIT
#endif
#elif defined (DIO_STOP_SEC_VAR_NO_INIT_BOOLEAN)
#ifndef VAR_NOINIT_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NOINIT_BOOLEAN_SEC_STARTED
#undef DIO_STOP_SEC_VAR_NO_INIT_BOOLEAN
#define DEFAULT_STOP_SEC_VAR_NOINIT_1BIT
#endif
#elif defined (DIO_START_SEC_VAR_FAST_INIT_BOOLEAN)
#ifdef VAR_FAST_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_FAST_BOOLEAN_SEC_STARTED
#undef DIO_START_SEC_VAR_FAST_INIT_BOOLEAN
#define DEFAULT_START_SEC_VAR_FAST_1BIT
#endif
#elif defined (DIO_STOP_SEC_VAR_FAST_INIT_BOOLEAN)
#ifndef VAR_FAST_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_FAST_BOOLEAN_SEC_STARTED
#undef DIO_STOP_SEC_VAR_FAST_INIT_BOOLEAN
#define DEFAULT_STOP_SEC_VAR_FAST_1BIT
#endif
#elif defined (DIO_START_SEC_VAR_INIT_8)
#ifdef VAR_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_8_SEC_STARTED
#undef DIO_START_SEC_VAR_INIT_8
#define DEFAULT_START_SEC_VAR_8BIT
#endif
#elif defined (DIO_STOP_SEC_VAR_INIT_8)
#ifndef VAR_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_8_SEC_STARTED
#undef DIO_STOP_SEC_VAR_INIT_8
#define DEFAULT_STOP_SEC_VAR_8BIT
#endif
#elif defined (DIO_START_SEC_VAR_NO_INIT_8)
#ifdef VAR_NOINIT_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NOINIT_8_SEC_STARTED
#undef DIO_START_SEC_VAR_NO_INIT_8
#define DEFAULT_START_SEC_VAR_NOINIT_8BIT
#endif
#elif defined (DIO_STOP_SEC_VAR_NO_INIT_8)
#ifndef VAR_NOINIT_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NOINIT_8_SEC_STARTED
#undef DIO_STOP_SEC_VAR_NO_INIT_8
#define DEFAULT_STOP_SEC_VAR_NOINIT_8BIT
#endif
#elif defined (DIO_START_SEC_VAR_FAST_INIT_8)
#ifdef VAR_FAST_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_FAST_8_SEC_STARTED
#undef DIO_START_SEC_VAR_FAST_INIT_8
#define DEFAULT_START_SEC_VAR_FAST_8BIT
#endif
#elif defined (DIO_STOP_SEC_VAR_FAST_INIT_8)
#ifndef VAR_FAST_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_FAST_8_SEC_STARTED
#undef DIO_STOP_SEC_VAR_FAST_INIT_8
#define DEFAULT_STOP_SEC_VAR_FAST_8BIT
#endif
#elif defined (DIO_START_SEC_VAR_INIT_16)
#ifdef VAR_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_16_SEC_STARTED
#undef DIO_START_SEC_VAR_INIT_16
#define DEFAULT_START_SEC_VAR_16BIT
#endif
#elif defined (DIO_STOP_SEC_VAR_INIT_16)
#ifndef VAR_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_16_SEC_STARTED
#undef DIO_STOP_SEC_VAR_INIT_16
#define DEFAULT_STOP_SEC_VAR_16BIT
#endif
#elif defined (DIO_START_SEC_VAR_NO_INIT_16)
#ifdef VAR_NOINIT_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NOINIT_16_SEC_STARTED
#undef DIO_START_SEC_VAR_NO_INIT_16
#define DEFAULT_START_SEC_VAR_NOINIT_16BIT
#endif
#elif defined (DIO_STOP_SEC_VAR_NO_INIT_16)
#ifndef VAR_NOINIT_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NOINIT_16_SEC_STARTED
#undef DIO_STOP_SEC_VAR_NO_INIT_16
#define DEFAULT_STOP_SEC_VAR_NOINIT_16BIT
#endif
#elif defined (DIO_START_SEC_VAR_FAST_INIT_16)
#ifdef VAR_FAST_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_FAST_16_SEC_STARTED
#undef DIO_START_SEC_VAR_FAST_INIT_16
#define DEFAULT_START_SEC_VAR_FAST_16BIT
#endif
#elif defined (DIO_STOP_SEC_VAR_FAST_INIT_16)
#ifndef VAR_FAST_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_FAST_16_SEC_STARTED
#undef DIO_STOP_SEC_VAR_FAST_INIT_16
#define DEFAULT_STOP_SEC_VAR_FAST_16BIT
#endif
#elif defined (DIO_START_SEC_VAR_INIT_32)
#ifdef VAR_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_32_SEC_STARTED
#undef DIO_START_SEC_VAR_INIT_32
#define DEFAULT_START_SEC_VAR_32BIT
#endif
#elif defined (DIO_STOP_SEC_VAR_INIT_32)
#ifndef VAR_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_32_SEC_STARTED
#undef DIO_STOP_SEC_VAR_INIT_32
#define DEFAULT_STOP_SEC_VAR_32BIT
#endif
#elif defined (DIO_START_SEC_VAR_NO_INIT_32)
#ifdef VAR_NOINIT_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NOINIT_32_SEC_STARTED
#undef DIO_START_SEC_VAR_NO_INIT_32
#define DEFAULT_START_SEC_VAR_NOINIT_32BIT
#endif
#elif defined (DIO_STOP_SEC_VAR_NO_INIT_32)
#ifndef VAR_NOINIT_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NOINIT_32_SEC_STARTED
#undef DIO_STOP_SEC_VAR_NO_INIT_32
#define DEFAULT_STOP_SEC_VAR_NOINIT_32BIT
#endif
#elif defined (DIO_START_SEC_VAR_FAST_INIT_32)
#ifdef VAR_FAST_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_FAST_32_SEC_STARTED
#undef DIO_START_SEC_VAR_FAST_INIT_32
#define DEFAULT_START_SEC_VAR_FAST_32BIT
#endif
#elif defined (DIO_STOP_SEC_VAR_FAST_INIT_32)
#ifndef VAR_FAST_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_FAST_32_SEC_STARTED
#undef DIO_STOP_SEC_VAR_FAST_INIT_32
#define DEFAULT_STOP_SEC_VAR_FAST_32BIT
#endif
#elif defined (DIO_START_SEC_VAR_INIT_UNSPECIFIED)
#ifdef VAR_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_UNSPECIFIED_SEC_STARTED
#undef DIO_START_SEC_VAR_INIT_UNSPECIFIED
#define DEFAULT_START_SEC_VAR_UNSPECIFIED
#endif
#elif defined (DIO_STOP_SEC_VAR_INIT_UNSPECIFIED)
#ifndef VAR_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_UNSPECIFIED_SEC_STARTED
#undef DIO_STOP_SEC_VAR_INIT_UNSPECIFIED
#define DEFAULT_STOP_SEC_VAR_UNSPECIFIED
#endif
#elif defined (DIO_START_SEC_VAR_NO_INIT_UNSPECIFIED)
#ifdef VAR_NOINIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NOINIT_UNSPECIFIED_SEC_STARTED
#undef DIO_START_SEC_VAR_NO_INIT_UNSPECIFIED
#define DEFAULT_START_SEC_VAR_NOINIT_UNSPECIFIED
#endif
#elif defined (DIO_STOP_SEC_VAR_NO_INIT_UNSPECIFIED)
#ifndef VAR_NOINIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NOINIT_UNSPECIFIED_SEC_STARTED
#undef DIO_STOP_SEC_VAR_NO_INIT_UNSPECIFIED
#define DEFAULT_STOP_SEC_VAR_NOINIT_UNSPECIFIED
#endif
#elif defined (DIO_START_SEC_VAR_FAST_INIT_UNSPECIFIED)
#ifdef VAR_FAST_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_FAST_UNSPECIFIED_SEC_STARTED
#undef DIO_START_SEC_VAR_FAST_INIT_UNSPECIFIED
#define DEFAULT_START_SEC_VAR_FAST_UNSPECIFIED
#endif
#elif defined (DIO_STOP_SEC_VAR_FAST_INIT_UNSPECIFIED)
#ifndef VAR_FAST_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_FAST_UNSPECIFIED_SEC_STARTED
#undef DIO_STOP_SEC_VAR_FAST_INIT_UNSPECIFIED
#define DEFAULT_STOP_SEC_VAR_FAST_UNSPECIFIED
#endif
#elif defined (DIO_START_SEC_CONFIG_VAR_NO_INIT_UNSPECIFIED)
#ifdef VAR_NOINIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NOINIT_UNSPECIFIED_SEC_STARTED
#undef DIO_START_SEC_CONFIG_VAR_NO_INIT_UNSPECIFIED
#define PRIVATE_SECTION ".DIO_CFG_RAM_UNSPECIFIED"
#define SECTION_TYPE data
#endif
#elif defined (DIO_STOP_SEC_CONFIG_VAR_NO_INIT_UNSPECIFIED)
#ifndef VAR_NOINIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NOINIT_UNSPECIFIED_SEC_STARTED
#undef DIO_STOP_SEC_CONFIG_VAR_NO_INIT_UNSPECIFIED
#define PRIVATE_SECTION ".default"
#define SECTION_TYPE data
#endif
#elif defined (DIO_START_SEC_CONST_BOOLEAN)
#ifdef CONST_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_BOOLEAN_SEC_STARTED
#undef DIO_START_SEC_CONST_BOOLEAN
#define DEFAULT_START_SEC_CONST_1BIT
#endif
#elif defined (DIO_STOP_SEC_CONST_BOOLEAN)
#ifndef CONST_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_BOOLEAN_SEC_STARTED
#undef DIO_STOP_SEC_CONST_BOOLEAN
#define DEFAULT_STOP_SEC_CONST_1BIT
#endif
#elif defined (DIO_START_SEC_CONST_8)
#ifdef CONST_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_8_SEC_STARTED
#undef DIO_START_SEC_CONST_8
#define DEFAULT_START_SEC_CONST_8BIT
#endif
#elif defined (DIO_STOP_SEC_CONST_8)
#ifndef CONST_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_8_SEC_STARTED
#undef DIO_STOP_SEC_CONST_8
#define DEFAULT_STOP_SEC_CONST_8BIT
#endif
#elif defined (DIO_START_SEC_CONST_16)
#ifdef CONST_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_16_SEC_STARTED
#undef DIO_START_SEC_CONST_16
#define DEFAULT_START_SEC_CONST_16BIT
#endif
#elif defined (DIO_STOP_SEC_CONST_16)
#ifndef CONST_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_16_SEC_STARTED
#undef DIO_STOP_SEC_CONST_16
#define DEFAULT_STOP_SEC_CONST_16BIT
#endif
#elif defined (DIO_START_SEC_CONST_32)
#ifdef CONST_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_32_SEC_STARTED
#undef DIO_START_SEC_CONST_32
#define DEFAULT_START_SEC_CONST_32BIT
#endif
#elif defined (DIO_STOP_SEC_CONST_32)
#ifndef CONST_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_32_SEC_STARTED
#undef DIO_STOP_SEC_CONST_32
#define DEFAULT_STOP_SEC_CONST_32BIT
#endif
#elif defined (DIO_START_SEC_CONST_UNSPECIFIED)
#ifdef CONST_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_UNSPECIFIED_SEC_STARTED
#undef DIO_START_SEC_CONST_UNSPECIFIED
#define DEFAULT_START_SEC_CONST_UNSPECIFIED
#endif
#elif defined (DIO_STOP_SEC_CONST_UNSPECIFIED)
#ifndef CONST_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_UNSPECIFIED_SEC_STARTED
#undef DIO_STOP_SEC_CONST_UNSPECIFIED
#define DEFAULT_STOP_SEC_CONST_UNSPECIFIED
#endif
#elif defined (DIO_START_SEC_CONFIG_DATA_BOOLEAN)
#ifdef DIO_CONFIG_DATA_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define DIO_CONFIG_DATA_BOOLEAN_SEC_STARTED
#undef DIO_START_SEC_CONFIG_DATA_BOOLEAN
#define PRIVATE_SECTION ".DIO_CFG_RAM_UNSPECIFIED"
#define SECTION_TYPE data
#endif
#elif defined (DIO_STOP_SEC_CONFIG_DATA_BOOLEAN)
#ifndef DIO_CONFIG_DATA_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef DIO_CONFIG_DATA_BOOLEAN_SEC_STARTED
#undef DIO_STOP_SEC_CONFIG_DATA_BOOLEAN
#define DEFAULT_STOP_SEC_CONST_1BIT
#endif
#elif defined (DIO_START_SEC_CONFIG_DATA_8)
#ifdef DIO_CONFIG_DATA_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define DIO_CONFIG_DATA_8_SEC_STARTED
#undef DIO_START_SEC_CONFIG_DATA_8
#define PRIVATE_SECTION ".DIO_CFG_RAM_UNSPECIFIED"
#define SECTION_TYPE data
#endif
#elif defined (DIO_STOP_SEC_CONFIG_DATA_8)
#ifndef DIO_CONFIG_DATA_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef DIO_CONFIG_DATA_8_SEC_STARTED
#undef DIO_STOP_SEC_CONFIG_DATA_8
#define DEFAULT_STOP_SEC_CONST_8BIT
#endif
#elif defined (DIO_START_SEC_CONFIG_DATA_16)
#ifdef DIO_CONFIG_DATA_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define DIO_CONFIG_DATA_16_SEC_STARTED
#undef DIO_START_SEC_CONFIG_DATA_16
#define PRIVATE_SECTION ".DIO_CFG_RAM_UNSPECIFIED"
#define SECTION_TYPE data
#endif
#elif defined (DIO_STOP_SEC_CONFIG_DATA_16)
#ifndef DIO_CONFIG_DATA_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef DIO_CONFIG_DATA_16_SEC_STARTED
#undef DIO_STOP_SEC_CONFIG_DATA_16
#define DEFAULT_STOP_SEC_CONST_16BIT
#endif
#elif defined (DIO_START_SEC_CONFIG_DATA_32)
#ifdef DIO_CONFIG_DATA_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define DIO_CONFIG_DATA_32_SEC_STARTED
#undef DIO_START_SEC_CONFIG_DATA_32
#define PRIVATE_SECTION ".DIO_CFG_RAM_UNSPECIFIED"
#define SECTION_TYPE data
#endif
#elif defined (DIO_STOP_SEC_CONFIG_DATA_32)
#ifndef DIO_CONFIG_DATA_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef DIO_CONFIG_DATA_32_SEC_STARTED
#undef DIO_STOP_SEC_CONFIG_DATA_32
#define DEFAULT_STOP_SEC_CONST_32BIT
#endif
#elif defined (DIO_START_SEC_CONFIG_DATA_UNSPECIFIED)
#ifdef DIO_CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define DIO_CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#undef DIO_START_SEC_CONFIG_DATA_UNSPECIFIED
#define PRIVATE_SECTION ".DIO_CFG_DATA_UNSPECIFIED"
#define SECTION_TYPE rodata
#endif
#elif defined (DIO_STOP_SEC_CONFIG_DATA_UNSPECIFIED)
#ifndef DIO_CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef DIO_CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#undef DIO_STOP_SEC_CONFIG_DATA_UNSPECIFIED
#define DEFAULT_STOP_SEC_CONST_UNSPECIFIED
#endif
#elif defined (DIO_START_SEC_DBTOC_DATA_UNSPECIFIED)
#ifdef DBTOC_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define DBTOC_DATA_UNSPECIFIED_SEC_STARTED
#undef DIO_START_SEC_DBTOC_DATA_UNSPECIFIED
#define PRIVATE_SECTION ".DIO_CFG_RAM_UNSPECIFIED"
#define SECTION_TYPE data
#endif
#elif defined (DIO_STOP_SEC_DBTOC_DATA_UNSPECIFIED)
#ifndef DBTOC_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef DBTOC_DATA_UNSPECIFIED_SEC_STARTED
#undef DIO_STOP_SEC_DBTOC_DATA_UNSPECIFIED
#define DEFAULT_STOP_SEC_CONST_UNSPECIFIED
#endif
#elif defined (DIO_START_SEC_PUBLIC_CODE)
#ifdef PUBLIC_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define PUBLIC_CODE_SEC_STARTED
#undef DIO_START_SEC_PUBLIC_CODE
#define PRIVATE_SECTION ".text.DIO_PUBLIC_CODE_ROM"
#define SECTION_TYPE text
#endif
#elif defined (DIO_STOP_SEC_PUBLIC_CODE)
#ifndef PUBLIC_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef PUBLIC_CODE_SEC_STARTED
#undef DIO_STOP_SEC_PUBLIC_CODE
#define DEFAULT_STOP_SEC_CODE
#endif
#elif defined (DIO_START_SEC_PRIVATE_CODE)
#ifdef PRIVATE_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define PRIVATE_CODE_SEC_STARTED
#undef DIO_START_SEC_PRIVATE_CODE
#define PRIVATE_SECTION ".text.DIO_PRIVATE_CODE_ROM"
#define SECTION_TYPE text
#endif
#elif defined (DIO_STOP_SEC_PRIVATE_CODE)
#ifndef PRIVATE_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef PRIVATE_CODE_SEC_STARTED
#undef DIO_STOP_SEC_PRIVATE_CODE
#define DEFAULT_STOP_SEC_CODE
#endif
#elif defined (DIO_START_SEC_APPL_CODE)
#ifdef APPL_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define APPL_CODE_SEC_STARTED
#undef DIO_START_SEC_APPL_CODE
#define PRIVATE_SECTION ".text.DIO_APPL_CODE_ROM"
#define SECTION_TYPE text
#endif
#elif defined (DIO_STOP_SEC_APPL_CODE)
#ifndef APPL_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef APPL_CODE_SEC_STARTED
#undef DIO_STOP_SEC_APPL_CODE
#define DEFAULT_STOP_SEC_CODE
#endif
/* -------------------------------------------------------------------------- */
/* End of module section mapping */
/* -------------------------------------------------------------------------- */
#else
#error "Dio_MemMap.h: No valid section define found"
#endif /* START_WITH_IF */
/*******************************************************************************
** Default section mapping **
*******************************************************************************/
/* general start of #elif chain whith #if */
#if defined (START_WITH_IF)
/* -------------------------------------------------------------------------- */
/* RAM variables initialized from ROM on reset */
/* -------------------------------------------------------------------------- */
#elif defined (DEFAULT_START_SEC_VAR_1BIT)
#undef DEFAULT_START_SEC_VAR_1BIT
#define PRIVATE_SECTION ".RAM_1BIT"
#define SECTION_TYPE data
#elif defined (DEFAULT_STOP_SEC_VAR_1BIT)
#undef DEFAULT_STOP_SEC_VAR_1BIT
#undef PRIVATE_SECTION
#define SECTION_TYPE data
#elif defined (DEFAULT_START_SEC_VAR_8BIT)
#undef DEFAULT_START_SEC_VAR_8BIT
#define PRIVATE_SECTION ".RAM_8BIT"
#define SECTION_TYPE data
#elif defined (DEFAULT_STOP_SEC_VAR_8BIT)
#undef DEFAULT_STOP_SEC_VAR_8BIT
#undef PRIVATE_SECTION
#define SECTION_TYPE data
#elif defined (DEFAULT_START_SEC_VAR_16BIT)
#undef DEFAULT_START_SEC_VAR_16BIT
#define PRIVATE_SECTION ".RAM_16BIT"
#define SECTION_TYPE data
#elif defined (DEFAULT_STOP_SEC_VAR_16BIT)
#undef DEFAULT_STOP_SEC_VAR_16BIT
#undef PRIVATE_SECTION
#define SECTION_TYPE data
#elif defined (DEFAULT_START_SEC_VAR_32BIT)
#undef DEFAULT_START_SEC_VAR_32BIT
#define PRIVATE_SECTION ".RAM_32BIT"
#define SECTION_TYPE data
#elif defined (DEFAULT_STOP_SEC_VAR_32BIT)
#undef DEFAULT_STOP_SEC_VAR_32BIT
#undef PRIVATE_SECTION
#define SECTION_TYPE data
#elif defined (DEFAULT_START_SEC_VAR_UNSPECIFIED)
#undef DEFAULT_START_SEC_VAR_UNSPECIFIED
#define PRIVATE_SECTION ".RAM_UNSPECIFIED"
#define SECTION_TYPE data
#elif defined (DEFAULT_STOP_SEC_VAR_UNSPECIFIED)
#undef DEFAULT_STOP_SEC_VAR_UNSPECIFIED
#undef PRIVATE_SECTION
#define SECTION_TYPE data
/* -------------------------------------------------------------------------- */
/* RAM variables not initialized */
/* -------------------------------------------------------------------------- */
#elif defined (DEFAULT_START_SEC_VAR_NOINIT_1BIT)
#undef DEFAULT_START_SEC_VAR_NOINIT_1BIT
#define PRIVATE_SECTION ".NOINIT_RAM_1BIT"
#define SECTION_TYPE data
#elif defined (DEFAULT_STOP_SEC_VAR_NOINIT_1BIT)
#undef DEFAULT_STOP_SEC_VAR_NOINIT_1BIT
#undef PRIVATE_SECTION
#define SECTION_TYPE data
#elif defined (DEFAULT_START_SEC_VAR_NOINIT_8BIT)
#undef DEFAULT_START_SEC_VAR_NOINIT_8BIT
#define PRIVATE_SECTION ".NOINIT_RAM_8BIT"
#define SECTION_TYPE data
#elif defined (DEFAULT_STOP_SEC_VAR_NOINIT_8BIT)
#undef DEFAULT_STOP_SEC_VAR_NOINIT_8BIT
#undef PRIVATE_SECTION
#define SECTION_TYPE data
#elif defined (DEFAULT_START_SEC_VAR_NOINIT_16BIT)
#undef DEFAULT_START_SEC_VAR_NOINIT_16BIT
#define PRIVATE_SECTION ".NOINIT_RAM_16BIT"
#define SECTION_TYPE data
#elif defined (DEFAULT_STOP_SEC_VAR_NOINIT_16BIT)
#undef DEFAULT_STOP_SEC_VAR_NOINIT_16BIT
#undef PRIVATE_SECTION
#define SECTION_TYPE data
#elif defined (DEFAULT_START_SEC_VAR_NOINIT_32BIT)
#undef DEFAULT_START_SEC_VAR_NOINIT_32BIT
#define PRIVATE_SECTION ".NOINIT_RAM_32BIT"
#define SECTION_TYPE data
#elif defined (DEFAULT_STOP_SEC_VAR_NOINIT_32BIT)
#undef DEFAULT_STOP_SEC_VAR_NOINIT_32BIT
#undef PRIVATE_SECTION
#define SECTION_TYPE data
#elif defined (DEFAULT_START_SEC_VAR_NOINIT_UNSPECIFIED)
#undef DEFAULT_START_SEC_VAR_NOINIT_UNSPECIFIED
#define PRIVATE_SECTION ".NOINIT_RAM_UNSPECIFIED"
#define SECTION_TYPE data
#elif defined (DEFAULT_STOP_SEC_VAR_NOINIT_UNSPECIFIED)
#undef DEFAULT_STOP_SEC_VAR_NOINIT_UNSPECIFIED
#undef PRIVATE_SECTION
#define SECTION_TYPE data
/* -------------------------------------------------------------------------- */
/* RAM variables frequently used or accessed bitwise */
/* -------------------------------------------------------------------------- */
#elif defined (DEFAULT_START_SEC_VAR_FAST_1BIT)
#undef DEFAULT_START_SEC_VAR_FAST_1BIT
#define PRIVATE_SECTION ".FAST_RAM_1BIT"
#define SECTION_TYPE data
#elif defined (DEFAULT_STOP_SEC_VAR_FAST_1BIT)
#undef DEFAULT_STOP_SEC_VAR_FAST_1BIT
#undef PRIVATE_SECTION
#define SECTION_TYPE data
#elif defined (DEFAULT_START_SEC_VAR_FAST_8BIT)
#undef DEFAULT_START_SEC_VAR_FAST_8BIT
#define PRIVATE_SECTION ".FAST_RAM_8BIT"
#define SECTION_TYPE data
#elif defined (DEFAULT_STOP_SEC_VAR_FAST_8BIT)
#undef DEFAULT_STOP_SEC_VAR_FAST_8BIT
#undef PRIVATE_SECTION
#define SECTION_TYPE data
#elif defined (DEFAULT_START_SEC_VAR_FAST_16BIT)
#undef DEFAULT_START_SEC_VAR_FAST_16BIT
#define PRIVATE_SECTION ".FAST_RAM_16BIT"
#define SECTION_TYPE data
#elif defined (DEFAULT_STOP_SEC_VAR_FAST_16BIT)
#undef DEFAULT_STOP_SEC_VAR_FAST_16BIT
#undef PRIVATE_SECTION
#define SECTION_TYPE data
#elif defined (DEFAULT_START_SEC_VAR_FAST_32BIT)
#undef DEFAULT_START_SEC_VAR_FAST_32BIT
#define PRIVATE_SECTION ".FAST_RAM_32BIT"
#define SECTION_TYPE data
#elif defined (DEFAULT_STOP_SEC_VAR_FAST_32BIT)
#undef DEFAULT_STOP_SEC_VAR_FAST_32BIT
#undef PRIVATE_SECTION
#define SECTION_TYPE data
#elif defined (DEFAULT_START_SEC_VAR_FAST_UNSPECIFIED)
#undef DEFAULT_START_SEC_VAR_FAST_UNSPECIFIED
#define PRIVATE_SECTION ".FAST_RAM_UNSPECIFIED"
#define SECTION_TYPE data
#elif defined (DEFAULT_STOP_SEC_VAR_FAST_UNSPECIFIED)
#undef DEFAULT_STOP_SEC_VAR_FAST_UNSPECIFIED
#undef PRIVATE_SECTION
#define SECTION_TYPE data
/* -------------------------------------------------------------------------- */
/* ROM constants */
/* -------------------------------------------------------------------------- */
#elif defined (DEFAULT_START_SEC_CONST_1BIT)
#undef DEFAULT_START_SEC_CONST_1BIT
#define PRIVATE_SECTION ".CONST_ROM_1BIT"
#define SECTION_TYPE rodata
#elif defined (DEFAULT_STOP_SEC_CONST_1BIT)
#undef DEFAULT_STOP_SEC_CONST_1BIT
#undef PRIVATE_SECTION
#define SECTION_TYPE rodata
#elif defined (DEFAULT_START_SEC_CONST_8BIT)
#undef DEFAULT_START_SEC_CONST_8BIT
#define PRIVATE_SECTION ".CONST_ROM_8BIT"
#define SECTION_TYPE rodata
#elif defined (DEFAULT_STOP_SEC_CONST_8BIT)
#undef DEFAULT_STOP_SEC_CONST_8BIT
#undef PRIVATE_SECTION
#define SECTION_TYPE rodata
#elif defined (DEFAULT_START_SEC_CONST_16BIT)
#undef DEFAULT_START_SEC_CONST_16BIT
#define PRIVATE_SECTION ".CONST_ROM_16BIT"
#define SECTION_TYPE rodata
#elif defined (DEFAULT_STOP_SEC_CONST_16BIT)
#undef DEFAULT_STOP_SEC_CONST_16BIT
#undef PRIVATE_SECTION
#define SECTION_TYPE rodata
#elif defined (DEFAULT_START_SEC_CONST_32BIT)
#undef DEFAULT_START_SEC_CONST_32BIT
#define PRIVATE_SECTION ".CONST_ROM_32BIT"
#define SECTION_TYPE rodata
#elif defined (DEFAULT_STOP_SEC_CONST_32BIT)
#undef DEFAULT_STOP_SEC_CONST_32BIT
#undef PRIVATE_SECTION
#define SECTION_TYPE rodata
#elif defined (DEFAULT_START_SEC_CONST_UNSPECIFIED)
#undef DEFAULT_START_SEC_CONST_UNSPECIFIED
#define PRIVATE_SECTION ".CONST_ROM_UNSPECIFIED"
#define SECTION_TYPE rodata
#elif defined (DEFAULT_STOP_SEC_CONST_UNSPECIFIED)
#undef DEFAULT_STOP_SEC_CONST_UNSPECIFIED
#undef PRIVATE_SECTION
#define SECTION_TYPE rodata
/* -------------------------------------------------------------------------- */
/* ROM FAR constants */
/* -------------------------------------------------------------------------- */
#elif defined (DEFAULT_START_SEC_CONST_1BIT_FAR)
#undef DEFAULT_START_SEC_CONST_1BIT_FAR
#define PRIVATE_SECTION ".CONST_FAR_ROM_1BIT"
#define SECTION_TYPE rodata
#elif defined (DEFAULT_STOP_SEC_CONST_1BIT_FAR)
#undef DEFAULT_STOP_SEC_CONST_1BIT_FAR
#undef PRIVATE_SECTION
#define SECTION_TYPE rodata
#elif defined (DEFAULT_START_SEC_CONST_8BIT_FAR)
#undef DEFAULT_START_SEC_CONST_8BIT_FAR
#define PRIVATE_SECTION ".CONST_FAR_ROM_8BIT"
#define SECTION_TYPE rodata
#elif defined (DEFAULT_STOP_SEC_CONST_8BIT_FAR)
#undef DEFAULT_STOP_SEC_CONST_8BIT_FAR
#undef PRIVATE_SECTION
#define SECTION_TYPE rodata
#elif defined (DEFAULT_START_SEC_CONST_16BIT_FAR)
#undef DEFAULT_START_SEC_CONST_16BIT_FAR
#define PRIVATE_SECTION ".CONST_FAR_ROM_16BIT"
#define SECTION_TYPE rodata
#elif defined (DEFAULT_STOP_SEC_CONST_16BIT_FAR)
#undef DEFAULT_STOP_SEC_CONST_16BIT_FAR
#undef PRIVATE_SECTION
#define SECTION_TYPE rodata
#elif defined (DEFAULT_START_SEC_CONST_32BIT_FAR)
#undef DEFAULT_START_SEC_CONST_32BIT_FAR
#define PRIVATE_SECTION ".CONST_FAR_ROM_32BIT"
#define SECTION_TYPE rodata
#elif defined (DEFAULT_STOP_SEC_CONST_32BIT_FAR)
#undef DEFAULT_STOP_SEC_CONST_32BIT_FAR
#undef PRIVATE_SECTION
#define SECTION_TYPE rodata
#elif defined (DEFAULT_START_SEC_CONST_UNSPECIFIED_FAR)
#undef DEFAULT_START_SEC_CONST_UNSPECIFIED_FAR
#define PRIVATE_SECTION ".CONST_FAR_ROM_UNSPECIFIED"
#define SECTION_TYPE rodata
#elif defined (DEFAULT_STOP_SEC_CONST_UNSPECIFIED_FAR)
#undef DEFAULT_STOP_SEC_CONST_UNSPECIFIED_FAR
#undef PRIVATE_SECTION
#define SECTION_TYPE rodata
/* -------------------------------------------------------------------------- */
/* ROM code */
/* -------------------------------------------------------------------------- */
#elif defined (DEFAULT_START_SEC_CODE)
#undef DEFAULT_START_SEC_CODE
#define PRIVATE_SECTION ".DEFAULT_CODE_ROM"
#define SECTION_TYPE text
#elif defined (DEFAULT_STOP_SEC_CODE)
#undef DEFAULT_STOP_SEC_CODE
#undef PRIVATE_SECTION
#define SECTION_TYPE text
/* ---------------------------------------------------------------------------*/
/* End of default section mapping */
/* ---------------------------------------------------------------------------*/
/*******************************************************************************
** Global Data Types **
*******************************************************************************/
/*******************************************************************************
** Function Prototypes **
*******************************************************************************/
#endif /* START_WITH_IF */
#include "Common_MemMap.h"
/*******************************************************************************
** End of File **
*******************************************************************************/

View File

@@ -0,0 +1,490 @@
/*============================================================================*/
/* Project = R-Car Gen4 AR19-11 MCAL Project */
/* Module = Fls_MemMap.h */
/* SW-VERSION = 1.1.10 */
/* Date = 06/10/2022 */
/*============================================================================*/
/* COPYRIGHT */
/*============================================================================*/
/* Copyright(c) 2021-2022 Renesas Electronics Corporation. */
/*============================================================================*/
/* Purpose: */
/* Provision for sections for Memory Mapping */
/* */
/*============================================================================*/
/* */
/* Unless otherwise agreed upon in writing between your company and */
/* Renesas Electronics Corporation the following shall apply! */
/* */
/* Warranty Disclaimer */
/* */
/* There is no warranty of any kind whatsoever granted by Renesas. Any */
/* warranty is expressly disclaimed and excluded by Renesas, either expressed */
/* or implied, including but not limited to those for non-infringement of */
/* intellectual property, merchantability and/or fitness for the particular */
/* purpose. */
/* */
/* Renesas shall not have any obligation to maintain, service or provide bug */
/* fixes for the supplied Product(s) and/or the Application. */
/* */
/* Each User is solely responsible for determining the appropriateness of */
/* using the Product(s) and assumes all risks associated with its exercise */
/* of rights under this Agreement, including, but not limited to the risks */
/* and costs of program errors, compliance with applicable laws, damage to */
/* or loss of data, programs or equipment, and unavailability or */
/* interruption of operations. */
/* */
/* Limitation of Liability */
/* */
/* In no event shall Renesas be liable to the User for any incidental, */
/* consequential, indirect, or punitive damage (including but not limited */
/* to lost profits) regardless of whether such liability is based on breach */
/* of contract, tort, strict liability, breach of warranties, failure of */
/* essential purpose or otherwise and even if advised of the possibility of */
/* such damages. Renesas shall not be liable for any services or products */
/* provided by third party vendors, developers or consultants identified or */
/* referred to the User by Renesas in connection with the Product(s) and/or */
/* the Application. */
/* */
/*============================================================================*/
/* Environment: */
/* Devices: R-Car Gen4 */
/*============================================================================*/
/*******************************************************************************
** Revision Control History **
*******************************************************************************/
/*
* 1.1.8: 06/10/2022 : Add FLS_START_SEC_VAR_NO_INIT_PTR and
* FLS_STOP_SEC_VAR_NO_INIT_PTR.
* 1.0.1: 17/04/2022 : Update memory section for FLS conform to common
* memory section.
* 1.0.0: 10/11/2021 : Initial Version
*
*/
/******************************************************************************/
/*******************************************************************************
** Include Section **
*******************************************************************************/
/*******************************************************************************
** Version Information **
*******************************************************************************/
/*
* AUTOSAR specification version information
*/
#define FLS_MEMMAP_AR_RELEASE_MAJOR_VERSION 4
#define FLS_MEMMAP_AR_RELEASE_MINOR_VERSION 5
#define FLS_MEMMAP_AR_RELEASE_REVISION_VERSION 0
/*
* File version information
*/
#define FLS_MEMMAP_SW_MAJOR_VERSION 1
#define FLS_MEMMAP_SW_MINOR_VERSION 0
#define FLS_MEMMAP_SW_PATCH_VERSION 0
/*******************************************************************************
** Global Symbols **
*******************************************************************************/
/*******************************************************************************
** Global Data Types **
*******************************************************************************/
/*******************************************************************************
** Module section mapping **
*******************************************************************************/
/*
* The symbol 'START_WITH_IF' is undefined.
*
* Thus, the preprocessor continues searching for defined symbols
* This first #ifdef makes integration of delivered parts of Fls_MemMap.h
* easier because every supplier starts with #elif
*/
#if defined (START_WITH_IF)
/* -------------------------------------------------------------------------- */
/* FLS */
/* -------------------------------------------------------------------------- */
#elif defined (FLS_START_SEC_VAR_INIT_BOOLEAN)
#ifdef VAR_INIT_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_BOOLEAN_SEC_STARTED
#undef FLS_START_SEC_VAR_INIT_BOOLEAN
#define DEFAULT_START_SEC_VAR_INIT_1
#endif
#elif defined (FLS_STOP_SEC_VAR_INIT_BOOLEAN)
#ifndef VAR_INIT_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_BOOLEAN_SEC_STARTED
#undef FLS_STOP_SEC_VAR_INIT_BOOLEAN
#define DEFAULT_STOP_SEC_VAR_INIT_1
#endif
#elif defined (FLS_START_SEC_VAR_NO_INIT_BOOLEAN)
#ifdef VAR_NO_INIT_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_BOOLEAN_SEC_STARTED
#undef FLS_START_SEC_VAR_NO_INIT_BOOLEAN
#define DEFAULT_START_SEC_VAR_NO_INIT_1
#endif
#elif defined (FLS_STOP_SEC_VAR_NO_INIT_BOOLEAN)
#ifndef VAR_NO_INIT_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_BOOLEAN_SEC_STARTED
#undef FLS_STOP_SEC_VAR_NO_INIT_BOOLEAN
#define DEFAULT_STOP_SEC_VAR_NO_INIT_1
#endif
#elif defined (FLS_START_SEC_VAR_INIT_8)
#ifdef VAR_INIT_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_8_SEC_STARTED
#undef FLS_START_SEC_VAR_INIT_8
#define DEFAULT_START_SEC_VAR_INIT_8
#endif
#elif defined (FLS_STOP_SEC_VAR_INIT_8)
#ifndef VAR_INIT_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_8_SEC_STARTED
#undef FLS_STOP_SEC_VAR_INIT_8
#define DEFAULT_STOP_SEC_VAR_INIT_8
#endif
#elif defined (FLS_START_SEC_VAR_NO_INIT_8)
#ifdef VAR_NO_INIT_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_8_SEC_STARTED
#undef FLS_START_SEC_VAR_NO_INIT_8
#define DEFAULT_START_SEC_VAR_NO_INIT_8
#endif
#elif defined (FLS_STOP_SEC_VAR_NO_INIT_8)
#ifndef VAR_NO_INIT_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_8_SEC_STARTED
#undef FLS_STOP_SEC_VAR_NO_INIT_8
#define DEFAULT_STOP_SEC_VAR_NO_INIT_8
#endif
#elif defined (FLS_START_SEC_VAR_INIT_16)
#ifdef VAR_INIT_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_16_SEC_STARTED
#undef FLS_START_SEC_VAR_INIT_16
#define DEFAULT_START_SEC_VAR_INIT_16
#endif
#elif defined (FLS_STOP_SEC_VAR_INIT_16)
#ifndef VAR_INIT_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_16_SEC_STARTED
#undef FLS_STOP_SEC_VAR_INIT_16
#define DEFAULT_STOP_SEC_VAR_INIT_16
#endif
#elif defined (FLS_START_SEC_VAR_NO_INIT_16)
#ifdef VAR_NO_INIT_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_16_SEC_STARTED
#undef FLS_START_SEC_VAR_NO_INIT_16
#define DEFAULT_START_SEC_VAR_NO_INIT_16
#endif
#elif defined (FLS_STOP_SEC_VAR_NO_INIT_16)
#ifndef VAR_NO_INIT_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_16_SEC_STARTED
#undef FLS_STOP_SEC_VAR_NO_INIT_16
#define DEFAULT_STOP_SEC_VAR_NO_INIT_16
#endif
#elif defined (FLS_START_SEC_VAR_INIT_32)
#ifdef VAR_INIT_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_32_SEC_STARTED
#undef FLS_START_SEC_VAR_INIT_32
#define DEFAULT_START_SEC_VAR_INIT_32
#endif
#elif defined (FLS_STOP_SEC_VAR_INIT_32)
#ifndef VAR_INIT_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_32_SEC_STARTED
#undef FLS_STOP_SEC_VAR_INIT_32
#define DEFAULT_STOP_SEC_VAR_INIT_32
#endif
#elif defined (FLS_START_SEC_VAR_NO_INIT_32)
#ifdef VAR_NO_INIT_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_32_SEC_STARTED
#undef FLS_START_SEC_VAR_NO_INIT_32
#define DEFAULT_START_SEC_VAR_NO_INIT_32
#endif
#elif defined (FLS_STOP_SEC_VAR_NO_INIT_32)
#ifndef VAR_NO_INIT_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_32_SEC_STARTED
#undef FLS_STOP_SEC_VAR_NO_INIT_32
#define DEFAULT_STOP_SEC_VAR_NO_INIT_32
#endif
#elif defined (FLS_START_SEC_VAR_INIT_UNSPECIFIED)
#ifdef VAR_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_UNSPECIFIED_SEC_STARTED
#undef FLS_START_SEC_VAR_INIT_UNSPECIFIED
#define DEFAULT_START_SEC_VAR_INIT_UNSPECIFIED
#endif
#elif defined (FLS_STOP_SEC_VAR_INIT_UNSPECIFIED)
#ifndef VAR_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_UNSPECIFIED_SEC_STARTED
#undef FLS_STOP_SEC_VAR_INIT_UNSPECIFIED
#define DEFAULT_STOP_SEC_VAR_INIT_UNSPECIFIED
#endif
#elif defined (FLS_START_SEC_VAR_NO_INIT_PTR)
#ifdef VAR_NO_INIT_PTR_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_PTR_SEC_STARTED
#undef FLS_START_SEC_VAR_NO_INIT_PTR
#define DEFAULT_START_SEC_VAR_NO_INIT_PTR
#endif
#elif defined (FLS_STOP_SEC_VAR_NO_INIT_PTR)
#ifndef VAR_NO_INIT_PTR_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_PTR_SEC_STARTED
#undef FLS_STOP_SEC_VAR_NO_INIT_PTR
#define DEFAULT_STOP_SEC_VAR_NO_INIT_PTR
#endif
#elif defined (FLS_START_SEC_VAR_NO_INIT_UNSPECIFIED)
#ifdef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#undef FLS_START_SEC_VAR_NO_INIT_UNSPECIFIED
#define DEFAULT_START_SEC_VAR_NO_INIT_UNSPECIFIED
#endif
#elif defined (FLS_STOP_SEC_VAR_NO_INIT_UNSPECIFIED)
#ifndef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#undef FLS_STOP_SEC_VAR_NO_INIT_UNSPECIFIED
#define DEFAULT_STOP_SEC_VAR_NO_INIT_UNSPECIFIED
#endif
#elif defined (FLS_START_SEC_BURAM_VAR_NO_INIT_UNSPECIFIED)
#ifdef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#undef FLS_START_SEC_BURAM_VAR_NO_INIT_UNSPECIFIED
#define DEFAULT_START_SEC_VAR_NO_INIT_UNSPECIFIED
#endif
#elif defined (FLS_STOP_SEC_BURAM_VAR_NO_INIT_UNSPECIFIED)
#ifndef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#undef FLS_STOP_SEC_BURAM_VAR_NO_INIT_UNSPECIFIED
#define DEFAULT_STOP_SEC_VAR_NO_INIT_UNSPECIFIED
#endif
#elif defined (FLS_START_SEC_CONFIG_VAR_NO_INIT_UNSPECIFIED)
#ifdef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#undef FLS_START_SEC_CONFIG_VAR_NO_INIT_UNSPECIFIED
#define DEFAULT_START_SEC_VAR_NO_INIT_UNSPECIFIED
#endif
#elif defined (FLS_STOP_SEC_CONFIG_VAR_NO_INIT_UNSPECIFIED)
#ifndef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#undef FLS_STOP_SEC_CONFIG_VAR_NO_INIT_UNSPECIFIED
#define DEFAULT_STOP_SEC_VAR_NO_INIT_UNSPECIFIED
#endif
#elif defined (FLS_START_SEC_CONST_BOOLEAN)
#ifdef CONST_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_BOOLEAN_SEC_STARTED
#undef FLS_START_SEC_CONST_BOOLEAN
#define DEFAULT_START_SEC_CONST_1
#endif
#elif defined (FLS_STOP_SEC_CONST_BOOLEAN)
#ifndef CONST_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_BOOLEAN_SEC_STARTED
#undef FLS_STOP_SEC_CONST_BOOLEAN
#define DEFAULT_STOP_SEC_CONST_1
#endif
#elif defined (FLS_START_SEC_CONST_8)
#ifdef CONST_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_8_SEC_STARTED
#undef FLS_START_SEC_CONST_8
#define DEFAULT_START_SEC_CONST_8
#endif
#elif defined (FLS_STOP_SEC_CONST_8)
#ifndef CONST_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_8_SEC_STARTED
#undef FLS_STOP_SEC_CONST_8
#define DEFAULT_STOP_SEC_CONST_8
#endif
#elif defined (FLS_START_SEC_CONST_16)
#ifdef CONST_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_16_SEC_STARTED
#undef FLS_START_SEC_CONST_16
#define DEFAULT_START_SEC_CONST_16
#endif
#elif defined (FLS_STOP_SEC_CONST_16)
#ifndef CONST_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_16_SEC_STARTED
#undef FLS_STOP_SEC_CONST_16
#define DEFAULT_STOP_SEC_CONST_16
#endif
#elif defined (FLS_START_SEC_CONST_32)
#ifdef CONST_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_32_SEC_STARTED
#undef FLS_START_SEC_CONST_32
#define DEFAULT_START_SEC_CONST_32
#endif
#elif defined (FLS_STOP_SEC_CONST_32)
#ifndef CONST_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_32_SEC_STARTED
#undef FLS_STOP_SEC_CONST_32
#define DEFAULT_STOP_SEC_CONST_32
#endif
#elif defined (FLS_START_SEC_CONST_UNSPECIFIED)
#ifdef CONST_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_UNSPECIFIED_SEC_STARTED
#undef FLS_START_SEC_CONST_UNSPECIFIED
#define DEFAULT_START_SEC_CONST_UNSPECIFIED
#endif
#elif defined (FLS_STOP_SEC_CONST_UNSPECIFIED)
#ifndef CONST_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_UNSPECIFIED_SEC_STARTED
#undef FLS_STOP_SEC_CONST_UNSPECIFIED
#define DEFAULT_STOP_SEC_CONST_UNSPECIFIED
#endif
#elif defined (FLS_START_SEC_CONFIG_DATA_UNSPECIFIED)
#ifdef CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#undef FLS_START_SEC_CONFIG_DATA_UNSPECIFIED
#define DEFAULT_START_SEC_CONFIG_DATA_UNSPECIFIED
#endif
#elif defined (FLS_STOP_SEC_CONFIG_DATA_UNSPECIFIED)
#ifndef CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#undef FLS_STOP_SEC_CONFIG_DATA_UNSPECIFIED
#define DEFAULT_STOP_SEC_CONFIG_DATA_UNSPECIFIED
#endif
#elif defined (FLS_START_SEC_CODE_SLOW)
#ifdef CODE_SLOW_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CODE_SLOW_SEC_STARTED
#undef FLS_START_SEC_CODE_SLOW
#define DEFAULT_START_SEC_CODE_SLOW
#endif
#elif defined (FLS_STOP_SEC_CODE_SLOW)
#ifndef CODE_SLOW_SEC_STARTED
#error "Memory section is not started"
#else
#undef CODE_SLOW_SEC_STARTED
#undef FLS_STOP_SEC_CODE_SLOW
#define DEFAULT_STOP_SEC_CODE_SLOW
#endif
#elif defined (FLS_START_SEC_CALLOUT_CODE)
#ifdef CALLOUT_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CALLOUT_CODE_SEC_STARTED
#undef FLS_START_SEC_CALLOUT_CODE
#define DEFAULT_START_SEC_CALLOUT_CODE
#endif
#elif defined (FLS_STOP_SEC_CALLOUT_CODE)
#ifndef CALLOUT_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef CALLOUT_CODE_SEC_STARTED
#undef FLS_STOP_SEC_CALLOUT_CODE
#define DEFAULT_STOP_SEC_CALLOUT_CODE
#endif
#elif defined (FLS_START_SEC_CODE_FAST)
#ifdef ISR_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define ISR_CODE_SEC_STARTED
#undef FLS_START_SEC_CODE_FAST
#define DEFAULT_START_SEC_CODE_FAST
#endif
#elif defined (FLS_STOP_SEC_CODE_FAST)
#ifndef ISR_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef ISR_CODE_SEC_STARTED
#undef FLS_STOP_SEC_CODE_FAST
#define DEFAULT_STOP_SEC_CODE_FAST
#endif
#else
#error "Fls_MemMap.h: No valid section define found"
#endif /* START_WITH_IF */
/*******************************************************************************
** Default section mapping **
*******************************************************************************/
#include "Common_MemMap.h"
/*******************************************************************************
** End of File **
*******************************************************************************/

View File

@@ -0,0 +1,557 @@
/*============================================================================*/
/* Project = AUTOSAR Renesas CPF MCAL Components */
/* Module = FuSa_MemMap.h */
/* SW-VERSION = 1.0.0 */
/*============================================================================*/
/* COPYRIGHT */
/*============================================================================*/
/* Copyright(c) 2021 Renesas Electronics Corporation. */
/*============================================================================*/
/* Purpose: */
/* Provision for sections for Memory Mapping */
/* */
/*============================================================================*/
/* */
/* Unless otherwise agreed upon in writing between your company and */
/* Renesas Electronics Corporation the following shall apply! */
/* */
/* Warranty Disclaimer */
/* */
/* There is no warranty of any kind whatsoever granted by Renesas. Any */
/* warranty is expressly disclaimed and excluded by Renesas, either expressed */
/* or implied, including but not limited to those for non-infringement of */
/* intellectual property, merchantability and/or fitness for the particular */
/* purpose. */
/* */
/* Renesas shall not have any obligation to maintain, service or provide bug */
/* fixes for the supplied Product(s) and/or the Application. */
/* */
/* Each User is solely responsible for determining the appropriateness of */
/* using the Product(s) and assumes all risks associated with its exercise */
/* of rights under this Agreement, including, but not limited to the risks */
/* and costs of program errors, compliance with applicable laws, damage to */
/* or loss of data, programs or equipment, and unavailability or */
/* interruption of operations. */
/* */
/* Limitation of Liability */
/* */
/* In no event shall Renesas be liable to the User for any incidental, */
/* consequential, indirect, or punitive damage (including but not limited */
/* to lost profits) regardless of whether such liability is based on breach */
/* of contract, tort, strict liability, breach of warranties, failure of */
/* essential purpose or otherwise and even if advised of the possibility of */
/* such damages. Renesas shall not be liable for any services or products */
/* provided by third party vendors, developers or consultants identified or */
/* referred to the User by Renesas in connection with the Product(s) and/or */
/* the Application. */
/* */
/*============================================================================*/
/* Environment: */
/* Devices: CPF */
/*============================================================================*/
/*******************************************************************************
** Revision Control History **
*******************************************************************************/
/*
* 1.0.0: 20/08/2021 : Initial Version
*/
/******************************************************************************/
/*******************************************************************************
** Include Section **
*******************************************************************************/
/*******************************************************************************
** Version Information **
*******************************************************************************/
/*
* AUTOSAR specification version information
*/
#ifndef FUSA_MEMMAP_AR_RELEASE_MAJOR_VERSION
#define FUSA_MEMMAP_AR_RELEASE_MAJOR_VERSION 4
#endif
#ifndef FUSA_MEMMAP_AR_RELEASE_MINOR_VERSION
#define FUSA_MEMMAP_AR_RELEASE_MINOR_VERSION 5
#endif
#ifndef FUSA_MEMMAP_AR_RELEASE_REVISION_VERSION
#define FUSA_MEMMAP_AR_RELEASE_REVISION_VERSION 0
#endif
/*
* File version information
*/
#ifndef FUSA_MEMMAP_SW_MAJOR_VERSION
#define FUSA_MEMMAP_SW_MAJOR_VERSION 1
#endif
#ifndef FUSA_MEMMAP_SW_MINOR_VERSION
#define FUSA_MEMMAP_SW_MINOR_VERSION 0
#endif
#ifndef FUSA_MEMMAP_SW_PATCH_VERSION
#define FUSA_MEMMAP_SW_PATCH_VERSION 0
#endif
/*******************************************************************************
** Global Symbols **
*******************************************************************************/
/*******************************************************************************
** Global Data Types **
*******************************************************************************/
/*******************************************************************************
** Module section mapping **
*******************************************************************************/
/*
* The symbol 'START_WITH_IF' is undefined.
*
* Thus, the preprocessor continues searching for defined symbols
* This first #ifdef makes integration of delivered parts of MemMap.h
* easier because every supplier starts with #elif
*/
#if defined (START_WITH_IF)
/* -------------------------------------------------------------------------- */
/* FuSa Function */
/* -------------------------------------------------------------------------- */
#elif defined (FUSA_START_SEC_VAR_INIT_BOOLEAN)
#ifdef VAR_INIT_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_BOOLEAN_SEC_STARTED
#undef FUSA_START_SEC_VAR_INIT_BOOLEAN
#define DEFAULT_START_SEC_VAR_INIT_1
#endif
#elif defined (FUSA_STOP_SEC_VAR_INIT_BOOLEAN)
#ifndef VAR_INIT_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_BOOLEAN_SEC_STARTED
#undef FUSA_STOP_SEC_VAR_INIT_BOOLEAN
#define DEFAULT_STOP_SEC_VAR_INIT_1
#endif
#elif defined (FUSA_START_SEC_VAR_CLEARED_BOOLEAN)
#ifdef VAR_CLEARED_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_CLEARED_BOOLEAN_SEC_STARTED
#undef FUSA_START_SEC_VAR_CLEARED_BOOLEAN
#define DEFAULT_START_SEC_VAR_CLEARED_1
#endif
#elif defined (FUSA_STOP_SEC_VAR_CLEARED_BOOLEAN)
#ifndef VAR_CLEARED_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_CLEARED_BOOLEAN_SEC_STARTED
#undef FUSA_STOP_SEC_VAR_CLEARED_BOOLEAN
#define DEFAULT_STOP_SEC_VAR_CLEARED_1
#endif
#elif defined (FUSA_START_SEC_VAR_INIT_8)
#ifdef VAR_INIT_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_8_SEC_STARTED
#undef FUSA_START_SEC_VAR_INIT_8
#define DEFAULT_START_SEC_VAR_INIT_8
#endif
#elif defined (FUSA_STOP_SEC_VAR_INIT_8)
#ifndef VAR_INIT_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_8_SEC_STARTED
#undef FUSA_STOP_SEC_VAR_INIT_8
#define DEFAULT_STOP_SEC_VAR_INIT_8
#endif
#elif defined (FUSA_START_SEC_VAR_CLEARED_8)
#ifdef VAR_CLEARED_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_CLEARED_8_SEC_STARTED
#undef FUSA_START_SEC_VAR_CLEARED_8
#define DEFAULT_START_SEC_VAR_CLEARED_8
#endif
#elif defined (FUSA_STOP_SEC_VAR_CLEARED_8)
#ifndef VAR_CLEARED_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_CLEARED_8_SEC_STARTED
#undef FUSA_STOP_SEC_VAR_CLEARED_8
#define DEFAULT_STOP_SEC_VAR_CLEARED_8
#endif
#elif defined (FUSA_START_SEC_VAR_INIT_16)
#ifdef VAR_INIT_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_16_SEC_STARTED
#undef FUSA_START_SEC_VAR_INIT_16
#define DEFAULT_START_SEC_VAR_INIT_16
#endif
#elif defined (FUSA_STOP_SEC_VAR_INIT_16)
#ifndef VAR_INIT_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_16_SEC_STARTED
#undef FUSA_STOP_SEC_VAR_INIT_16
#define DEFAULT_STOP_SEC_VAR_INIT_16
#endif
#elif defined (FUSA_START_SEC_VAR_CLEARED_16)
#ifdef VAR_CLEARED_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_CLEARED_16_SEC_STARTED
#undef FUSA_START_SEC_VAR_CLEARED_16
#define DEFAULT_START_SEC_VAR_CLEARED_16
#endif
#elif defined (FUSA_STOP_SEC_VAR_CLEARED_16)
#ifndef VAR_CLEARED_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_CLEARED_16_SEC_STARTED
#undef FUSA_STOP_SEC_VAR_CLEARED_16
#define DEFAULT_STOP_SEC_VAR_CLEARED_16
#endif
#elif defined (FUSA_START_SEC_VAR_INIT_32)
#ifdef VAR_INIT_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_32_SEC_STARTED
#undef FUSA_START_SEC_VAR_INIT_32
#define DEFAULT_START_SEC_VAR_INIT_32
#endif
#elif defined (FUSA_STOP_SEC_VAR_INIT_32)
#ifndef VAR_INIT_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_32_SEC_STARTED
#undef FUSA_STOP_SEC_VAR_INIT_32
#define DEFAULT_STOP_SEC_VAR_INIT_32
#endif
#elif defined (FUSA_START_SEC_VAR_CLEARED_32)
#ifdef VAR_CLEARED_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_CLEARED_32_SEC_STARTED
#undef FUSA_START_SEC_VAR_CLEARED_32
#define DEFAULT_START_SEC_VAR_CLEARED_32
#endif
#elif defined (FUSA_STOP_SEC_VAR_CLEARED_32)
#ifndef VAR_CLEARED_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_CLEARED_32_SEC_STARTED
#undef FUSA_STOP_SEC_VAR_CLEARED_32
#define DEFAULT_STOP_SEC_VAR_CLEARED_32
#endif
#elif defined (FUSA_START_SEC_VAR_INIT_UNSPECIFIED)
#ifdef VAR_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_UNSPECIFIED_SEC_STARTED
#undef FUSA_START_SEC_VAR_INIT_UNSPECIFIED
#define DEFAULT_START_SEC_VAR_INIT_UNSPECIFIED
#endif
#elif defined (FUSA_STOP_SEC_VAR_INIT_UNSPECIFIED)
#ifndef VAR_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_UNSPECIFIED_SEC_STARTED
#undef FUSA_STOP_SEC_VAR_INIT_UNSPECIFIED
#define DEFAULT_STOP_SEC_VAR_INIT_UNSPECIFIED
#endif
#elif defined (FUSA_START_SEC_VAR_CLEARED_UNSPECIFIED)
#ifdef VAR_CLEARED_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_CLEARED_UNSPECIFIED_SEC_STARTED
#undef FUSA_START_SEC_VAR_CLEARED_UNSPECIFIED
#define DEFAULT_START_SEC_VAR_CLEARED_UNSPECIFIED
#endif
#elif defined (FUSA_STOP_SEC_VAR_CLEARED_UNSPECIFIED)
#ifndef VAR_CLEARED_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_CLEARED_UNSPECIFIED_SEC_STARTED
#undef FUSA_STOP_SEC_VAR_CLEARED_UNSPECIFIED
#define DEFAULT_STOP_SEC_VAR_CLEARED_UNSPECIFIED
#endif
#elif defined (FUSA_START_SEC_CONST_BOOLEAN)
#ifdef CONST_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_BOOLEAN_SEC_STARTED
#undef FUSA_START_SEC_CONST_BOOLEAN
#define DEFAULT_START_SEC_CONST_1
#endif
#elif defined (FUSA_STOP_SEC_CONST_BOOLEAN)
#ifndef CONST_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_BOOLEAN_SEC_STARTED
#undef FUSA_STOP_SEC_CONST_BOOLEAN
#define DEFAULT_STOP_SEC_CONST_1
#endif
#elif defined (FUSA_START_SEC_CONST_8)
#ifdef CONST_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_8_SEC_STARTED
#undef FUSA_START_SEC_CONST_8
#define DEFAULT_START_SEC_CONST_8
#endif
#elif defined (FUSA_STOP_SEC_CONST_8)
#ifndef CONST_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_8_SEC_STARTED
#undef FUSA_STOP_SEC_CONST_8
#define DEFAULT_STOP_SEC_CONST_8
#endif
#elif defined (FUSA_START_SEC_CONST_16)
#ifdef CONST_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_16_SEC_STARTED
#undef FUSA_START_SEC_CONST_16
#define DEFAULT_START_SEC_CONST_16
#endif
#elif defined (FUSA_STOP_SEC_CONST_16)
#ifndef CONST_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_16_SEC_STARTED
#undef FUSA_STOP_SEC_CONST_16
#define DEFAULT_STOP_SEC_CONST_16
#endif
#elif defined (FUSA_START_SEC_CONST_32)
#ifdef CONST_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_32_SEC_STARTED
#undef FUSA_START_SEC_CONST_32
#define DEFAULT_START_SEC_CONST_32
#endif
#elif defined (FUSA_STOP_SEC_CONST_32)
#ifndef CONST_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_32_SEC_STARTED
#undef FUSA_STOP_SEC_CONST_32
#define DEFAULT_STOP_SEC_CONST_32
#endif
#elif defined (FUSA_START_SEC_CONST_UNSPECIFIED)
#ifdef CONST_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_UNSPECIFIED_SEC_STARTED
#undef FUSA_START_SEC_CONST_UNSPECIFIED
#define DEFAULT_START_SEC_CONST_UNSPECIFIED
#endif
#elif defined (FUSA_STOP_SEC_CONST_UNSPECIFIED)
#ifndef CONST_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_UNSPECIFIED_SEC_STARTED
#undef FUSA_STOP_SEC_CONST_UNSPECIFIED
#define DEFAULT_STOP_SEC_CONST_UNSPECIFIED
#endif
#elif defined (FUSA_START_SEC_CONFIG_DATA_BOOLEAN)
#ifdef CONFIG_DATA_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_BOOLEAN_SEC_STARTED
#undef FUSA_START_SEC_CONFIG_DATA_BOOLEAN
#define DEFAULT_START_SEC_CONFIG_DATA_1
#endif
#elif defined (FUSA_STOP_SEC_CONFIG_DATA_BOOLEAN)
#ifndef CONFIG_DATA_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_BOOLEAN_SEC_STARTED
#undef FUSA_STOP_SEC_CONFIG_DATA_BOOLEAN
#define DEFAULT_STOP_SEC_CONFIG_DATA_1
#endif
#elif defined (FUSA_START_SEC_CONFIG_DATA_8)
#ifdef CONFIG_DATA_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_8_SEC_STARTED
#undef FUSA_START_SEC_CONFIG_DATA_8
#define DEFAULT_START_SEC_CONFIG_DATA_8
#endif
#elif defined (FUSA_STOP_SEC_CONFIG_DATA_8)
#ifndef CONFIG_DATA_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_8_SEC_STARTED
#undef FUSA_STOP_SEC_CONFIG_DATA_8
#define DEFAULT_STOP_SEC_CONFIG_DATA_8
#endif
#elif defined (FUSA_START_SEC_CONFIG_DATA_16)
#ifdef CONFIG_DATA_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_16_SEC_STARTED
#undef FUSA_START_SEC_CONFIG_DATA_16
#define DEFAULT_START_SEC_CONFIG_DATA_16
#endif
#elif defined (FUSA_STOP_SEC_CONFIG_DATA_16)
#ifndef CONFIG_DATA_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_16_SEC_STARTED
#undef FUSA_STOP_SEC_CONFIG_DATA_16
#define DEFAULT_STOP_SEC_CONFIG_DATA_16
#endif
#elif defined (FUSA_START_SEC_CONFIG_DATA_32)
#ifdef CONFIG_DATA_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_32_SEC_STARTED
#undef FUSA_START_SEC_CONFIG_DATA_32
#define DEFAULT_START_SEC_CONFIG_DATA_32
#endif
#elif defined (FUSA_STOP_SEC_CONFIG_DATA_32)
#ifndef CONFIG_DATA_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_32_SEC_STARTED
#undef FUSA_STOP_SEC_CONFIG_DATA_32
#define DEFAULT_STOP_SEC_CONFIG_DATA_32
#endif
#elif defined (FUSA_START_SEC_CONFIG_DATA_UNSPECIFIED)
#ifdef CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#undef FUSA_START_SEC_CONFIG_DATA_UNSPECIFIED
#define DEFAULT_START_SEC_CONFIG_DATA_UNSPECIFIED
#endif
#elif defined (FUSA_STOP_SEC_CONFIG_DATA_UNSPECIFIED)
#ifndef CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#undef FUSA_STOP_SEC_CONFIG_DATA_UNSPECIFIED
#define DEFAULT_STOP_SEC_CONFIG_DATA_UNSPECIFIED
#endif
#elif defined (FUSA_START_SEC_CODE_SLOW)
#ifdef CODE_SLOW_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CODE_SLOW_SEC_STARTED
#undef FUSA_START_SEC_CODE_SLOW
#define DEFAULT_START_SEC_CODE_SLOW
#endif
#elif defined (FUSA_STOP_SEC_CODE_SLOW)
#ifndef CODE_SLOW_SEC_STARTED
#error "Memory section is not started"
#else
#undef CODE_SLOW_SEC_STARTED
#undef FUSA_STOP_SEC_CODE_SLOW
#define DEFAULT_STOP_SEC_CODE_SLOW
#endif
#elif defined (FUSA_START_SEC_CALLOUT_CODE)
#ifdef CALLOUT_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CALLOUT_CODE_SEC_STARTED
#undef FUSA_START_SEC_CALLOUT_CODE
#define DEFAULT_START_SEC_CALLOUT_CODE
#endif
#elif defined (FUSA_STOP_SEC_CALLOUT_CODE)
#ifndef CALLOUT_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef CALLOUT_CODE_SEC_STARTED
#undef FUSA_STOP_SEC_CALLOUT_CODE
#define DEFAULT_STOP_SEC_CALLOUT_CODE
#endif
#elif defined (FUSA_START_SEC_APPL_CODE)
#ifdef APPL_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define APPL_CODE_SEC_STARTED
#undef FUSA_START_SEC_APPL_CODE
#define DEFAULT_START_SEC_APPL_CODE
#endif
#elif defined (FUSA_STOP_SEC_APPL_CODE)
#ifndef APPL_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef APPL_CODE_SEC_STARTED
#undef FUSA_STOP_SEC_APPL_CODE
#define DEFAULT_STOP_SEC_APPL_CODE
#endif
#elif defined (FUSA_START_SEC_CODE)
#ifdef CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CODE_SEC_STARTED
#undef FUSA_START_SEC_CODE
#define DEFAULT_START_SEC_CODE
#endif
#elif defined (FUSA_STOP_SEC_CODE)
#ifndef CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef CODE_SEC_STARTED
#undef FUSA_STOP_SEC_CODE
#define DEFAULT_STOP_SEC_CODE
#endif
#elif defined (FUSA_START_SEC_CODE_FAST)
#ifdef CODE_FAST_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CODE_FAST_SEC_STARTED
#undef FUSA_START_SEC_CODE_FAST
#define DEFAULT_START_SEC_CODE_FAST
#endif
#elif defined (FUSA_STOP_SEC_CODE_FAST)
#ifndef CODE_FAST_SEC_STARTED
#error "Memory section is not started"
#else
#undef CODE_FAST_SEC_STARTED
#undef FUSA_STOP_SEC_CODE_FAST
#define DEFAULT_STOP_SEC_CODE_FAST
#endif
/* -------------------------------------------------------------------------- */
/* End of module section mapping */
/* -------------------------------------------------------------------------- */
#else
#error "FuSa_MemMap.h: No valid section define found"
#endif /* START_WITH_IF */
/*******************************************************************************
** Default section mapping **
*******************************************************************************/
#include "Common_MemMap.h"
/*******************************************************************************
** End of File **
*******************************************************************************/

View File

@@ -0,0 +1,591 @@
/*============================================================================*/
/* Project = AUTOSAR Renesas CPF MCAL Components */
/* Module = Gpt_MemMap.h */
/* SW-VERSION = 1.7.11 */
/*============================================================================*/
/* COPYRIGHT */
/*============================================================================*/
/* Copyright(c) 2017-2022 Renesas Electronics Corporation */
/*============================================================================*/
/* Purpose: */
/* Provision for sections for Memory Mapping */
/* */
/*============================================================================*/
/* */
/* Unless otherwise agreed upon in writing between your company and */
/* Renesas Electronics Corporation the following shall apply! */
/* */
/* Warranty Disclaimer */
/* */
/* There is no warranty of any kind whatsoever granted by Renesas. Any */
/* warranty is expressly disclaimed and excluded by Renesas, either expressed */
/* or implied, including but not limited to those for non-infringement of */
/* intellectual property, merchantability and/or fitness for the particular */
/* purpose. */
/* */
/* Renesas shall not have any obligation to maintain, service or provide bug */
/* fixes for the supplied Product(s) and/or the Application. */
/* */
/* Each User is solely responsible for determining the appropriateness of */
/* using the Product(s) and assumes all risks associated with its exercise */
/* of rights under this Agreement, including, but not limited to the risks */
/* and costs of program errors, compliance with applicable laws, damage to */
/* or loss of data, programs or equipment, and unavailability or */
/* interruption of operations. */
/* */
/* Limitation of Liability */
/* */
/* In no event shall Renesas be liable to the User for any incidental, */
/* consequential, indirect, or punitive damage (including but not limited */
/* to lost profits) regardless of whether such liability is based on breach */
/* of contract, tort, strict liability, breach of warranties, failure of */
/* essential purpose or otherwise and even if advised of the possibility of */
/* such damages. Renesas shall not be liable for any services or products */
/* provided by third party vendors, developers or consultants identified or */
/* referred to the User by Renesas in connection with the Product(s) and/or */
/* the Application. */
/* */
/*============================================================================*/
/* Environment: */
/* Devices: CPF */
/*============================================================================*/
/*******************************************************************************
** Revision Control History **
*******************************************************************************/
/*
* 1.3.2 13/08/2022 : Add new sections ".data.VAR_NO_INIT_PTR" to fix
* ARDAACL-15952.
* 1.3.1 22/04/2022 : Update Gpt_MemMap.h file to fix ARDAACL-8317
* 1.3.0 18/12/2020 : Release
* 1.2.1 18/12/2020 : Update GPT_MEMMAP_SW_MINOR_VERSION value
* 1.2.0 26/08/2020 : Release
* 15/07/2020 : Add prefix GPT when define for multi-instance macro.
* 1.1.0 19/06/2020 : Release
* 1.0.1 19/05/2020 : Update prefix in version information macro
* 1.0.0 26/01/2017 : Initial Version
*/
/******************************************************************************/
/*******************************************************************************
** Include Section **
*******************************************************************************/
/*******************************************************************************
** Version Information **
*******************************************************************************/
/*
* AUTOSAR specification version information
*/
#define GPT_MEMMAP_AR_RELEASE_MAJOR_VERSION 4
#define GPT_MEMMAP_AR_RELEASE_MINOR_VERSION 5
#define GPT_MEMMAP_AR_RELEASE_REVISION_VERSION 0
/*
* File version information
*/
#define GPT_MEMMAP_SW_MAJOR_VERSION 1
#define GPT_MEMMAP_SW_MINOR_VERSION 7
#define GPT_MEMMAP_SW_PATCH_VERSION 7
#define SEC_NAME section(PRIVATE_SECTION)
/*******************************************************************************
** Macro of multi instance **
*******************************************************************************/
#if defined(GPT_USE_MULTIINSTANCE)
#define GPT_MEMMULTI(section) GPT_MEMMULTI_(section, GPT_INSTANCE_INDEX)
#define GPT_MEMMULTI_(section, index) GPT_MEMMULTI__(section, index)
#define GPT_MEMMULTI__(section, index) section "_" #index
#else
#define GPT_MEMMULTI(section) section
#endif
#define GPT_SECTION_PUBLIC_CODE_ROM GPT_MEMMULTI(".GPT_PUBLIC_CODE_ROM")
#define GPT_SECTION_PRIVATE_CODE_ROM GPT_MEMMULTI(".GPT_PRIVATE_CODE_ROM")
#define GPT_SECTION_APPL_CODE_ROM GPT_MEMMULTI(".GPT_APPL_CODE_ROM")
#define GPT_SECTION_FAST_CODE_ROM GPT_MEMMULTI(".GPT_FAST_CODE_ROM")
#define GPT_SECTION_CFG_DBTOC_UNSPECIFIED GPT_MEMMULTI(".GPT_CFG_DBTOC_UNSPECIFIED")
#define GPT_SECTION_CFG_DATA_1BIT GPT_MEMMULTI(".GPT_CFG_DATA_1BIT")
#define GPT_SECTION_CFG_DATA_8BIT GPT_MEMMULTI(".GPT_CFG_DATA_8BIT")
#define GPT_SECTION_CFG_DATA_16BIT GPT_MEMMULTI(".GPT_CFG_DATA_16BIT")
#define GPT_SECTION_CFG_DATA_32BIT GPT_MEMMULTI(".GPT_CFG_DATA_32BIT")
#define GPT_SECTION_CFG_DATA_UNSPECIFIED GPT_MEMMULTI(".GPT_CFG_DATA_UNSPECIFIED")
#define GPT_SECTION_CFG_RAM_UNSPECIFIED GPT_MEMMULTI(".GPT_CFG_RAM_UNSPECIFIED")
/*******************************************************************************
** Global Symbols **
*******************************************************************************/
/*******************************************************************************
** Global Data Types **
*******************************************************************************/
/*******************************************************************************
** Module section mapping **
*******************************************************************************/
/*
* The symbol 'START_WITH_IF' is undefined.
*
* Thus, the preprocessor continues searching for defined symbols
* This first #ifdef makes integration of delivered parts of MemMap.h
* easier because every supplier starts with #elif
*/
#if defined (START_WITH_IF)
/* -------------------------------------------------------------------------- */
/* GPT */
/* -------------------------------------------------------------------------- */
#elif defined (GPT_START_SEC_VAR_INIT_BOOLEAN)
#ifdef VAR_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_BOOLEAN_SEC_STARTED
#undef GPT_START_SEC_VAR_INIT_BOOLEAN
#define PRIVATE_SECTION ".RAM_1BIT"
#endif
#elif defined (GPT_STOP_SEC_VAR_INIT_BOOLEAN)
#ifndef VAR_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_BOOLEAN_SEC_STARTED
#undef GPT_STOP_SEC_VAR_INIT_BOOLEAN
#undef PRIVATE_SECTION
#endif
#elif defined (GPT_START_SEC_VAR_NO_INIT_8)
#ifdef VAR_NOINIT_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NOINIT_8_SEC_STARTED
#undef GPT_START_SEC_VAR_NO_INIT_8
#define PRIVATE_SECTION ".NOINIT_RAM_8BIT"
#endif
#elif defined (GPT_STOP_SEC_VAR_NO_INIT_8)
#ifndef VAR_NOINIT_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NOINIT_8_SEC_STARTED
#undef GPT_STOP_SEC_VAR_NO_INIT_8
#undef PRIVATE_SECTION
#endif
#elif defined (GPT_START_SEC_VAR_NO_INIT_PTR)
#ifdef VAR_NO_INIT_PTR_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_PTR_SEC_STARTED
#undef GPT_START_SEC_VAR_NO_INIT_PTR
#define PRIVATE_SECTION ".data.VAR_NO_INIT_PTR"
#endif
#elif defined (GPT_STOP_SEC_VAR_NO_INIT_PTR)
#ifndef VAR_NO_INIT_PTR_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_PTR_SEC_STARTED
#undef GPT_STOP_SEC_VAR_NO_INIT_PTR
#undef PRIVATE_SECTION
#endif
#elif defined (GPT_START_SEC_VAR_NO_INIT_UNSPECIFIED)
#ifdef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#undef GPT_START_SEC_VAR_NO_INIT_UNSPECIFIED
#define PRIVATE_SECTION ".GPT_SECTION_CFG_RAM_UNSPECIFIED"
#endif
#elif defined (GPT_STOP_SEC_VAR_NO_INIT_UNSPECIFIED)
#ifndef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#undef GPT_STOP_SEC_VAR_NO_INIT_UNSPECIFIED
#undef PRIVATE_SECTION
#endif
#elif defined (GPT_START_SEC_CONFIG_DATA_UNSPECIFIED)
#ifdef CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#undef GPT_START_SEC_CONFIG_DATA_UNSPECIFIED
#define PRIVATE_SECTION ".GPT_SECTION_CFG_DATA_UNSPECIFIED"
#endif
#elif defined (GPT_STOP_SEC_CONFIG_DATA_UNSPECIFIED)
#ifndef CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#undef GPT_STOP_SEC_CONFIG_DATA_UNSPECIFIED
#undef PRIVATE_SECTION
#endif
#elif defined (GPT_START_SEC_DBTOC_DATA_UNSPECIFIED)
#ifdef DBTOC_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define DBTOC_DATA_UNSPECIFIED_SEC_STARTED
#undef GPT_START_SEC_DBTOC_DATA_UNSPECIFIED
#define PRIVATE_SECTION ".GPT_SECTION_CFG_DBTOC_UNSPECIFIED"
#endif
#elif defined (GPT_STOP_SEC_DBTOC_DATA_UNSPECIFIED)
#ifndef DBTOC_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef DBTOC_DATA_UNSPECIFIED_SEC_STARTED
#undef GPT_STOP_SEC_DBTOC_DATA_UNSPECIFIED
#undef PRIVATE_SECTION
#endif
#elif defined (GPT_START_SEC_PUBLIC_CODE)
#ifdef PUBLIC_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define PUBLIC_CODE_SEC_STARTED
#undef GPT_START_SEC_PUBLIC_CODE
#define PRIVATE_SECTION ".GPT_SECTION_PUBLIC_CODE_ROM"
#endif
#elif defined (GPT_STOP_SEC_PUBLIC_CODE)
#ifndef PUBLIC_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef PUBLIC_CODE_SEC_STARTED
#undef GPT_STOP_SEC_PUBLIC_CODE
#undef PRIVATE_SECTION
#endif
#elif defined (GPT_START_SEC_PRIVATE_CODE)
#ifdef PRIVATE_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define PRIVATE_CODE_SEC_STARTED
#undef GPT_START_SEC_PRIVATE_CODE
#define PRIVATE_SECTION ".GPT_SECTION_PRIVATE_CODE_ROM"
#endif
#elif defined (GPT_STOP_SEC_PRIVATE_CODE)
#ifndef PRIVATE_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef PRIVATE_CODE_SEC_STARTED
#undef GPT_STOP_SEC_PRIVATE_CODE
#undef PRIVATE_SECTION
#endif
#elif defined (GPT_START_SEC_APPL_CODE)
#ifdef APPL_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define APPL_CODE_SEC_STARTED
#undef GPT_START_SEC_APPL_CODE
#define PRIVATE_SECTION ".GPT_SECTION_APPL_CODE_ROM"
#endif
#elif defined (GPT_STOP_SEC_APPL_CODE)
#ifndef APPL_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef APPL_CODE_SEC_STARTED
#undef GPT_STOP_SEC_APPL_CODE
#undef PRIVATE_SECTION
#endif
#elif defined (GPT_START_SEC_CODE_FAST)
#ifdef ISR_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define ISR_CODE_SEC_STARTED
#undef GPT_START_SEC_CODE_FAST
#define PRIVATE_SECTION ".GPT_SECTION_FAST_CODE_ROM"
#endif
#elif defined (GPT_STOP_SEC_CODE_FAST)
#ifndef ISR_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef ISR_CODE_SEC_STARTED
#undef GPT_STOP_SEC_CODE_FAST
#undef PRIVATE_SECTION
#endif
/*******************************************************************************
** Multi instance **
*******************************************************************************/
/*******************************************************************************
** Instance 0 **
*******************************************************************************/
#elif defined (GPT_START_SEC_CONFIG_VAR_NO_INIT_UNSPECIFIED_0)
#ifdef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#undef GPT_START_SEC_CONFIG_VAR_NO_INIT_UNSPECIFIED_0
#endif
#elif defined (GPT_STOP_SEC_CONFIG_VAR_NO_INIT_UNSPECIFIED_0)
#ifndef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#undef GPT_STOP_SEC_CONFIG_VAR_NO_INIT_UNSPECIFIED_0
#endif
#elif defined (GPT_START_SEC_CONFIG_DATA_UNSPECIFIED_0)
#ifdef CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#undef GPT_START_SEC_CONFIG_DATA_UNSPECIFIED_0
#endif
#elif defined (GPT_STOP_SEC_CONFIG_DATA_UNSPECIFIED_0)
#ifndef CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#undef GPT_STOP_SEC_CONFIG_DATA_UNSPECIFIED_0
#define DEFAULT_STOP_SEC_CONST_UNSPECIFIED
#endif
#elif defined (GPT_START_SEC_DBTOC_DATA_UNSPECIFIED_0)
#ifdef DBTOC_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define DBTOC_DATA_UNSPECIFIED_SEC_STARTED
#undef GPT_START_SEC_DBTOC_DATA_UNSPECIFIED_0
#endif
#elif defined (GPT_STOP_SEC_DBTOC_DATA_UNSPECIFIED_0)
#ifndef DBTOC_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef DBTOC_DATA_UNSPECIFIED_SEC_STARTED
#undef GPT_STOP_SEC_DBTOC_DATA_UNSPECIFIED_0
#define DEFAULT_STOP_SEC_CONST_UNSPECIFIED
#endif
#elif defined (GPT_START_SEC_APPL_CODE_0)
#ifdef APPL_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define APPL_CODE_SEC_STARTED
#undef GPT_START_SEC_APPL_CODE_0
#endif
#elif defined (GPT_STOP_SEC_APPL_CODE_0)
#ifndef APPL_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef APPL_CODE_SEC_STARTED
#undef GPT_STOP_SEC_APPL_CODE_0
#define DEFAULT_STOP_SEC_CODE
#endif
/*******************************************************************************
** Instance 1 **
*******************************************************************************/
#elif defined (GPT_START_SEC_CONFIG_VAR_NO_INIT_UNSPECIFIED_1)
#ifdef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#undef GPT_START_SEC_CONFIG_VAR_NO_INIT_UNSPECIFIED_1
#endif
#elif defined (GPT_STOP_SEC_CONFIG_VAR_NO_INIT_UNSPECIFIED_1)
#ifndef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#undef GPT_STOP_SEC_CONFIG_VAR_NO_INIT_UNSPECIFIED_1
#endif
#elif defined (GPT_START_SEC_CONFIG_DATA_UNSPECIFIED_1)
#ifdef CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#undef GPT_START_SEC_CONFIG_DATA_UNSPECIFIED_1
#endif
#elif defined (GPT_STOP_SEC_CONFIG_DATA_UNSPECIFIED_1)
#ifndef CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#undef GPT_STOP_SEC_CONFIG_DATA_UNSPECIFIED_1
#define DEFAULT_STOP_SEC_CONST_UNSPECIFIED
#endif
#elif defined (GPT_START_SEC_DBTOC_DATA_UNSPECIFIED_1)
#ifdef DBTOC_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define DBTOC_DATA_UNSPECIFIED_SEC_STARTED
#undef GPT_START_SEC_DBTOC_DATA_UNSPECIFIED_1
#endif
#elif defined (GPT_STOP_SEC_DBTOC_DATA_UNSPECIFIED_1)
#ifndef DBTOC_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef DBTOC_DATA_UNSPECIFIED_SEC_STARTED
#undef GPT_STOP_SEC_DBTOC_DATA_UNSPECIFIED_1
#define DEFAULT_STOP_SEC_CONST_UNSPECIFIED
#endif
#elif defined (GPT_START_SEC_APPL_CODE_1)
#ifdef APPL_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define APPL_CODE_SEC_STARTED
#undef GPT_START_SEC_APPL_CODE_1
#endif
#elif defined (GPT_STOP_SEC_APPL_CODE_1)
#ifndef APPL_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef APPL_CODE_SEC_STARTED
#undef GPT_STOP_SEC_APPL_CODE_1
#define DEFAULT_STOP_SEC_CODE
#endif
/* -------------------------------------------------------------------------- */
/* End of module section mapping */
/* -------------------------------------------------------------------------- */
#else
#error "Gpt_MemMap.h: No valid section define found"
#endif /* START_WITH_IF */
/*******************************************************************************
** Default section mapping **
*******************************************************************************/
/* general start of #elif chain whith #if */
#if defined (START_WITH_IF)
/* -------------------------------------------------------------------------- */
/* RAM variables initialized from ROM on reset */
/* -------------------------------------------------------------------------- */
#elif defined (DEFAULT_START_SEC_VAR_1BIT)
#undef DEFAULT_START_SEC_VAR_1BIT
#elif defined (DEFAULT_STOP_SEC_VAR_1BIT)
#undef DEFAULT_STOP_SEC_VAR_1BIT
#elif defined (DEFAULT_START_SEC_VAR_8BIT)
#undef DEFAULT_START_SEC_VAR_8BIT
#elif defined (DEFAULT_STOP_SEC_VAR_8BIT)
#undef DEFAULT_STOP_SEC_VAR_8BIT
#elif defined (DEFAULT_START_SEC_VAR_16BIT)
#undef DEFAULT_START_SEC_VAR_16BIT
#elif defined (DEFAULT_STOP_SEC_VAR_16BIT)
#undef DEFAULT_STOP_SEC_VAR_16BIT
#elif defined (DEFAULT_START_SEC_VAR_32BIT)
#undef DEFAULT_START_SEC_VAR_32BIT
#elif defined (DEFAULT_STOP_SEC_VAR_32BIT)
#undef DEFAULT_STOP_SEC_VAR_32BIT
#elif defined (DEFAULT_START_SEC_VAR_UNSPECIFIED)
#undef DEFAULT_START_SEC_VAR_UNSPECIFIED
#elif defined (DEFAULT_STOP_SEC_VAR_UNSPECIFIED)
#undef DEFAULT_STOP_SEC_VAR_UNSPECIFIED
/* -------------------------------------------------------------------------- */
/* RAM variables not initialized */
/* -------------------------------------------------------------------------- */
#elif defined (DEFAULT_START_SEC_VAR_NOINIT_1BIT)
#undef DEFAULT_START_SEC_VAR_NOINIT_1BIT
#elif defined (DEFAULT_STOP_SEC_VAR_NOINIT_1BIT)
#undef DEFAULT_STOP_SEC_VAR_NOINIT_1BIT
#elif defined (DEFAULT_START_SEC_VAR_NOINIT_8BIT)
#undef DEFAULT_START_SEC_VAR_NOINIT_8BIT
#elif defined (DEFAULT_STOP_SEC_VAR_NOINIT_8BIT)
#undef DEFAULT_STOP_SEC_VAR_NOINIT_8BIT
#elif defined (DEFAULT_START_SEC_VAR_NOINIT_16BIT)
#undef DEFAULT_START_SEC_VAR_NOINIT_16BIT
#elif defined (DEFAULT_STOP_SEC_VAR_NOINIT_16BIT)
#undef DEFAULT_STOP_SEC_VAR_NOINIT_16BIT
#elif defined (DEFAULT_START_SEC_VAR_NOINIT_32BIT)
#undef DEFAULT_START_SEC_VAR_NOINIT_32BIT
#elif defined (DEFAULT_STOP_SEC_VAR_NOINIT_32BIT)
#undef DEFAULT_STOP_SEC_VAR_NOINIT_32BIT
#elif defined (DEFAULT_START_SEC_VAR_NO_INIT_PTR)
#undef DEFAULT_START_SEC_VAR_NO_INIT_PTR
#elif defined (DEFAULT_STOP_SEC_VAR_NO_INIT_PTR)
#undef DEFAULT_STOP_SEC_VAR_NO_INIT_PTR
/* -------------------------------------------------------------------------- */
/* RAM variables frequently used or accessed bitwise */
/* -------------------------------------------------------------------------- */
#elif defined (DEFAULT_START_SEC_VAR_FAST_1BIT)
#undef DEFAULT_START_SEC_VAR_FAST_1BIT
#elif defined (DEFAULT_STOP_SEC_VAR_FAST_1BIT)
#undef DEFAULT_STOP_SEC_VAR_FAST_1BIT
#elif defined (DEFAULT_START_SEC_VAR_FAST_8BIT)
#undef DEFAULT_START_SEC_VAR_FAST_8BIT
#elif defined (DEFAULT_STOP_SEC_VAR_FAST_8BIT)
#undef DEFAULT_STOP_SEC_VAR_FAST_8BIT
#elif defined (DEFAULT_START_SEC_VAR_FAST_16BIT)
#undef DEFAULT_START_SEC_VAR_FAST_16BIT
#elif defined (DEFAULT_STOP_SEC_VAR_FAST_16BIT)
#undef DEFAULT_STOP_SEC_VAR_FAST_16BIT
#elif defined (DEFAULT_START_SEC_VAR_FAST_32BIT)
#undef DEFAULT_START_SEC_VAR_FAST_32BIT
#elif defined (DEFAULT_STOP_SEC_VAR_FAST_32BIT)
#undef DEFAULT_STOP_SEC_VAR_FAST_32BIT
#elif defined (DEFAULT_START_SEC_VAR_FAST_UNSPECIFIED)
#undef DEFAULT_START_SEC_VAR_FAST_UNSPECIFIED
#elif defined (DEFAULT_STOP_SEC_VAR_FAST_UNSPECIFIED)
#undef DEFAULT_STOP_SEC_VAR_FAST_UNSPECIFIED
/* -------------------------------------------------------------------------- */
/* ROM constants */
/* -------------------------------------------------------------------------- */
#elif defined (DEFAULT_START_SEC_CONST_1BIT)
#undef DEFAULT_START_SEC_CONST_1BIT
#elif defined (DEFAULT_STOP_SEC_CONST_1BIT)
#undef DEFAULT_STOP_SEC_CONST_1BIT
#elif defined (DEFAULT_START_SEC_CONST_8BIT)
#undef DEFAULT_START_SEC_CONST_8BIT
#elif defined (DEFAULT_STOP_SEC_CONST_8BIT)
#undef DEFAULT_STOP_SEC_CONST_8BIT
#elif defined (DEFAULT_START_SEC_CONST_16BIT)
#undef DEFAULT_START_SEC_CONST_16BIT
#elif defined (DEFAULT_STOP_SEC_CONST_16BIT)
#undef DEFAULT_STOP_SEC_CONST_16BIT
#elif defined (DEFAULT_START_SEC_CONST_32BIT)
#undef DEFAULT_START_SEC_CONST_32BIT
#elif defined (DEFAULT_STOP_SEC_CONST_32BIT)
#undef DEFAULT_STOP_SEC_CONST_32BIT
#elif defined (DEFAULT_START_SEC_CONST_UNSPECIFIED)
#undef DEFAULT_START_SEC_CONST_UNSPECIFIED
#elif defined (DEFAULT_STOP_SEC_CONST_UNSPECIFIED)
#undef DEFAULT_STOP_SEC_CONST_UNSPECIFIED
/* -------------------------------------------------------------------------- */
/* ROM code */
/* -------------------------------------------------------------------------- */
#elif defined (DEFAULT_STOP_SEC_CODE)
#undef DEFAULT_STOP_SEC_CODE
/* ---------------------------------------------------------------------------*/
/* End of default section mapping */
/* ---------------------------------------------------------------------------*/
/*******************************************************************************
** Global Data Types **
*******************************************************************************/
/*******************************************************************************
** Function Prototypes **
*******************************************************************************/
#endif /* START_WITH_IF */
/*******************************************************************************
** End of File **
*******************************************************************************/

View File

@@ -0,0 +1,624 @@
/*============================================================================*/
/* Project = AUTOSAR Renesas CPF MCAL Components */
/* Module = Mcu_MemMap.h */
/* SW-VERSION = 1.1.10 */
/*============================================================================*/
/* COPYRIGHT */
/*============================================================================*/
/* Copyright(c) 2021-2022 Renesas Electronics Corporation */
/*============================================================================*/
/* Purpose: */
/* Provision for sections for Memory Mapping */
/* */
/*============================================================================*/
/* */
/* Unless otherwise agreed upon in writing between your company and */
/* Renesas Electronics Corporation the following shall apply! */
/* */
/* Warranty Disclaimer */
/* */
/* There is no warranty of any kind whatsoever granted by Renesas. Any */
/* warranty is expressly disclaimed and excluded by Renesas, either expressed */
/* or implied, including but not limited to those for non-infringement of */
/* intellectual property, merchantability and/or fitness for the particular */
/* purpose. */
/* */
/* Renesas shall not have any obligation to maintain, service or provide bug */
/* fixes for the supplied Product(s) and/or the Application. */
/* */
/* Each User is solely responsible for determining the appropriateness of */
/* using the Product(s) and assumes all risks associated with its exercise */
/* of rights under this Agreement, including, but not limited to the risks */
/* and costs of program errors, compliance with applicable laws, damage to */
/* or loss of data, programs or equipment, and unavailability or */
/* interruption of operations. */
/* */
/* Limitation of Liability */
/* */
/* In no event shall Renesas be liable to the User for any incidental, */
/* consequential, indirect, or punitive damage (including but not limited */
/* to lost profits) regardless of whether such liability is based on breach */
/* of contract, tort, strict liability, breach of warranties, failure of */
/* essential purpose or otherwise and even if advised of the possibility of */
/* such damages. Renesas shall not be liable for any services or products */
/* provided by third party vendors, developers or consultants identified or */
/* referred to the User by Renesas in connection with the Product(s) and/or */
/* the Application. */
/* */
/*============================================================================*/
/* Environment: */
/* Devices: CPF */
/*============================================================================*/
/*******************************************************************************
** Revision Control History **
*******************************************************************************/
/*
* 1.1.8 13-Oct-2022 Add section config data 8
* 1.1.6 23-Aug-2022 Update the Copyright
* 1.0.0 20-Aug-2021 Initial Version
*
*/
/******************************************************************************/
/*******************************************************************************
** Include Section **
*******************************************************************************/
/*******************************************************************************
** Version Information **
*******************************************************************************/
/*
* AUTOSAR specification version information
*/
#define MCU_MEMMAP_AR_RELEASE_MAJOR_VERSION 4
#define MCU_MEMMAP_AR_RELEASE_MINOR_VERSION 5
#define MCU_MEMMAP_AR_RELEASE_REVISION_VERSION 0
/*
* File version information
*/
#define MCU_MEMMAP_SW_MAJOR_VERSION 1
#define MCU_MEMMAP_SW_MINOR_VERSION 1
#define MCU_MEMMAP_SW_PATCH_VERSION 8
/*******************************************************************************
** Global Symbols **
*******************************************************************************/
/*******************************************************************************
** Global Data Types **
*******************************************************************************/
/*******************************************************************************
** Module section mapping **
*******************************************************************************/
/*
* The symbol 'START_WITH_IF' is undefined.
*
* Thus, the preprocessor continues searching for defined symbols
* This first #ifdef makes integration of delivered parts of MemMap.h
* easier because every supplier starts with #elif
*/
#if defined (START_WITH_IF)
#elif defined (MCU_START_SEC_VAR_INIT_BOOLEAN)
#ifdef VAR_INIT_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_BOOLEAN_SEC_STARTED
#undef MCU_START_SEC_VAR_INIT_BOOLEAN
#define DEFAULT_START_SEC_VAR_INIT_1
#endif
#elif defined (MCU_STOP_SEC_VAR_INIT_BOOLEAN)
#ifndef VAR_INIT_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_BOOLEAN_SEC_STARTED
#undef MCU_STOP_SEC_VAR_INIT_BOOLEAN
#define DEFAULT_STOP_SEC_VAR_INIT_1
#endif
#elif defined (MCU_START_SEC_VAR_NO_INIT_BOOLEAN)
#ifdef VAR_NO_INIT_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_BOOLEAN_SEC_STARTED
#undef MCU_START_SEC_VAR_NO_INIT_BOOLEAN
#define DEFAULT_START_SEC_VAR_NO_INIT_1
#endif
#elif defined (MCU_STOP_SEC_VAR_NO_INIT_BOOLEAN)
#ifndef VAR_NO_INIT_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_BOOLEAN_SEC_STARTED
#undef MCU_STOP_SEC_VAR_NO_INIT_BOOLEAN
#define DEFAULT_STOP_SEC_VAR_NO_INIT_1
#endif
#elif defined (MCU_START_SEC_VAR_INIT_8)
#ifdef VAR_INIT_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_8_SEC_STARTED
#undef MCU_START_SEC_VAR_INIT_8
#define DEFAULT_START_SEC_VAR_INIT_8
#endif
#elif defined (MCU_STOP_SEC_VAR_INIT_8)
#ifndef VAR_INIT_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_8_SEC_STARTED
#undef MCU_STOP_SEC_VAR_INIT_8
#define DEFAULT_STOP_SEC_VAR_INIT_8
#endif
#elif defined (MCU_START_SEC_VAR_NO_INIT_8)
#ifdef VAR_NO_INIT_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_8_SEC_STARTED
#undef MCU_START_SEC_VAR_NO_INIT_8
#define DEFAULT_START_SEC_VAR_NO_INIT_8
#endif
#elif defined (MCU_STOP_SEC_VAR_NO_INIT_8)
#ifndef VAR_NO_INIT_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_8_SEC_STARTED
#undef MCU_STOP_SEC_VAR_NO_INIT_8
#define DEFAULT_STOP_SEC_VAR_NO_INIT_8
#endif
#elif defined (MCU_START_SEC_VAR_INIT_16)
#ifdef VAR_INIT_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_16_SEC_STARTED
#undef MCU_START_SEC_VAR_INIT_16
#define DEFAULT_START_SEC_VAR_INIT_16
#endif
#elif defined (MCU_STOP_SEC_VAR_INIT_16)
#ifndef VAR_INIT_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_16_SEC_STARTED
#undef MCU_STOP_SEC_VAR_INIT_16
#define DEFAULT_STOP_SEC_VAR_INIT_16
#endif
#elif defined (MCU_START_SEC_VAR_NO_INIT_16)
#ifdef VAR_NO_INIT_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_16_SEC_STARTED
#undef MCU_START_SEC_VAR_NO_INIT_16
#define DEFAULT_START_SEC_VAR_NO_INIT_16
#endif
#elif defined (MCU_STOP_SEC_VAR_NO_INIT_16)
#ifndef VAR_NO_INIT_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_16_SEC_STARTED
#undef MCU_STOP_SEC_VAR_NO_INIT_16
#define DEFAULT_STOP_SEC_VAR_NO_INIT_16
#endif
#elif defined (MCU_START_SEC_VAR_INIT_32)
#ifdef VAR_INIT_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_32_SEC_STARTED
#undef MCU_START_SEC_VAR_INIT_32
#define DEFAULT_START_SEC_VAR_INIT_32
#endif
#elif defined (MCU_STOP_SEC_VAR_INIT_32)
#ifndef VAR_INIT_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_32_SEC_STARTED
#undef MCU_STOP_SEC_VAR_INIT_32
#define DEFAULT_STOP_SEC_VAR_INIT_32
#endif
#elif defined (MCU_START_SEC_VAR_NO_INIT_32)
#ifdef VAR_NO_INIT_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_32_SEC_STARTED
#undef MCU_START_SEC_VAR_NO_INIT_32
#define DEFAULT_START_SEC_VAR_NO_INIT_32
#endif
#elif defined (MCU_STOP_SEC_VAR_NO_INIT_32)
#ifndef VAR_NO_INIT_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_32_SEC_STARTED
#undef MCU_STOP_SEC_VAR_NO_INIT_32
#define DEFAULT_STOP_SEC_VAR_NO_INIT_32
#endif
#elif defined (MCU_START_SEC_VAR_INIT_UNSPECIFIED)
#ifdef VAR_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_INIT_UNSPECIFIED_SEC_STARTED
#undef MCU_START_SEC_VAR_INIT_UNSPECIFIED
#define DEFAULT_START_SEC_VAR_INIT_UNSPECIFIED
#endif
#elif defined (MCU_STOP_SEC_VAR_INIT_UNSPECIFIED)
#ifndef VAR_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_INIT_UNSPECIFIED_SEC_STARTED
#undef MCU_STOP_SEC_VAR_INIT_UNSPECIFIED
#define DEFAULT_STOP_SEC_VAR_INIT_UNSPECIFIED
#endif
#elif defined (MCU_START_SEC_VAR_NO_INIT_UNSPECIFIED)
#ifdef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#undef MCU_START_SEC_VAR_NO_INIT_UNSPECIFIED
#define DEFAULT_START_SEC_VAR_NO_INIT_UNSPECIFIED
#endif
#elif defined (MCU_STOP_SEC_VAR_NO_INIT_UNSPECIFIED)
#ifndef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#undef MCU_STOP_SEC_VAR_NO_INIT_UNSPECIFIED
#define DEFAULT_STOP_SEC_VAR_NO_INIT_UNSPECIFIED
#endif
#elif defined (MCU_START_SEC_CONFIG_VAR_NO_INIT_UNSPECIFIED)
#ifdef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#undef MCU_START_SEC_CONFIG_VAR_NO_INIT_UNSPECIFIED
#define DEFAULT_START_SEC_VAR_NO_INIT_UNSPECIFIED
#endif
#elif defined (MCU_STOP_SEC_CONFIG_VAR_NO_INIT_UNSPECIFIED)
#ifndef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#undef MCU_STOP_SEC_CONFIG_VAR_NO_INIT_UNSPECIFIED
#define DEFAULT_STOP_SEC_VAR_NO_INIT_UNSPECIFIED
#endif
#elif defined (MCU_START_SEC_CONST_BOOLEAN)
#ifdef CONST_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_BOOLEAN_SEC_STARTED
#undef MCU_START_SEC_CONST_BOOLEAN
#define DEFAULT_START_SEC_CONST_1
#endif
#elif defined (MCU_STOP_SEC_CONST_BOOLEAN)
#ifndef CONST_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_BOOLEAN_SEC_STARTED
#undef MCU_STOP_SEC_CONST_BOOLEAN
#define DEFAULT_STOP_SEC_CONST_1
#endif
#elif defined (MCU_START_SEC_CONST_8)
#ifdef CONST_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_8_SEC_STARTED
#undef MCU_START_SEC_CONST_8
#define DEFAULT_START_SEC_CONST_8
#endif
#elif defined (MCU_STOP_SEC_CONST_8)
#ifndef CONST_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_8_SEC_STARTED
#undef MCU_STOP_SEC_CONST_8
#define DEFAULT_STOP_SEC_CONST_8
#endif
#elif defined (MCU_START_SEC_CONST_16)
#ifdef CONST_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_16_SEC_STARTED
#undef MCU_START_SEC_CONST_16
#define DEFAULT_START_SEC_CONST_16
#endif
#elif defined (MCU_STOP_SEC_CONST_16)
#ifndef CONST_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_16_SEC_STARTED
#undef MCU_STOP_SEC_CONST_16
#define DEFAULT_STOP_SEC_CONST_16
#endif
#elif defined (MCU_START_SEC_CONST_32)
#ifdef CONST_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_32_SEC_STARTED
#undef MCU_START_SEC_CONST_32
#define DEFAULT_START_SEC_CONST_32
#endif
#elif defined (MCU_STOP_SEC_CONST_32)
#ifndef CONST_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_32_SEC_STARTED
#undef MCU_STOP_SEC_CONST_32
#define DEFAULT_STOP_SEC_CONST_32
#endif
#elif defined (MCU_START_SEC_CONST_UNSPECIFIED)
#ifdef CONST_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_UNSPECIFIED_SEC_STARTED
#undef MCU_START_SEC_CONST_UNSPECIFIED
#define DEFAULT_START_SEC_CONST_UNSPECIFIED
#endif
#elif defined (MCU_STOP_SEC_CONST_UNSPECIFIED)
#ifndef CONST_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_UNSPECIFIED_SEC_STARTED
#undef MCU_STOP_SEC_CONST_UNSPECIFIED
#define DEFAULT_STOP_SEC_CONST_UNSPECIFIED
#endif
#elif defined (MCU_START_SEC_CONFIG_DATA_8)
#ifdef CONFIG_DATA_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_8_SEC_STARTED
#undef MCU_START_SEC_CONFIG_DATA_8
#define DEFAULT_START_SEC_CONFIG_DATA_8
#endif
#elif defined (MCU_STOP_SEC_CONFIG_DATA_8)
#ifndef CONFIG_DATA_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_8_SEC_STARTED
#undef MCU_STOP_SEC_CONFIG_DATA_8
#define DEFAULT_STOP_SEC_CONFIG_DATA_8
#endif
#elif defined (MCU_START_SEC_CONFIG_DATA_32)
#ifdef CONFIG_DATA_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_32_SEC_STARTED
#undef MCU_START_SEC_CONFIG_DATA_32
#define DEFAULT_START_SEC_CONFIG_DATA_32
#endif
#elif defined (MCU_STOP_SEC_CONFIG_DATA_32)
#ifndef CONFIG_DATA_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_32_SEC_STARTED
#undef MCU_STOP_SEC_CONFIG_DATA_32
#define DEFAULT_STOP_SEC_CONFIG_DATA_32
#endif
#elif defined (MCU_START_SEC_CONFIG_DATA_UNSPECIFIED)
#ifdef CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#undef MCU_START_SEC_CONFIG_DATA_UNSPECIFIED
#define DEFAULT_START_SEC_CONFIG_DATA_UNSPECIFIED
#endif
#elif defined (MCU_STOP_SEC_CONFIG_DATA_UNSPECIFIED)
#ifndef CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#undef MCU_STOP_SEC_CONFIG_DATA_UNSPECIFIED
#define DEFAULT_STOP_SEC_CONFIG_DATA_UNSPECIFIED
#endif
#elif defined (MCU_START_SEC_DBTOC_DATA_UNSPECIFIED)
#ifdef DBTOC_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define DBTOC_DATA_UNSPECIFIED_SEC_STARTED
#undef MCU_START_SEC_DBTOC_DATA_UNSPECIFIED
#define DEFAULT_START_SEC_DBTOC_DATA_UNSPECIFIED
#endif
#elif defined (MCU_STOP_SEC_DBTOC_DATA_UNSPECIFIED)
#ifndef DBTOC_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef DBTOC_DATA_UNSPECIFIED_SEC_STARTED
#undef MCU_STOP_SEC_DBTOC_DATA_UNSPECIFIED
#define DEFAULT_STOP_SEC_DBTOC_DATA_UNSPECIFIED
#endif
#elif defined (MCU_START_SEC_VAR_NO_INIT_PTR)
#ifdef VAR_NO_INIT_PTR_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_PTR_SEC_STARTED
#undef MCU_START_SEC_VAR_NO_INIT_PTR
#define DEFAULT_START_SEC_VAR_NO_INIT_PTR
#endif
#elif defined (MCU_STOP_SEC_VAR_NO_INIT_PTR)
#ifndef VAR_NO_INIT_PTR_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_PTR_SEC_STARTED
#undef MCU_STOP_SEC_VAR_NO_INIT_PTR
#define DEFAULT_STOP_SEC_VAR_NO_INIT_PTR
#endif
#elif defined (MCU_START_SEC_CONFIG_VAR_NO_INIT_UNSPECIFIED)
#ifdef VAR_NOINIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NOINIT_UNSPECIFIED_SEC_STARTED
#undef MCU_START_SEC_CONFIG_VAR_NO_INIT_UNSPECIFIED
#define PRIVATE_SECTION ".MCU_CFG_RAM_UNSPECIFIED"
#define SECTION_TYPE data
#endif
#elif defined (MCU_STOP_SEC_CONFIG_VAR_NO_INIT_UNSPECIFIED)
#ifndef VAR_NOINIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NOINIT_UNSPECIFIED_SEC_STARTED
#undef MCU_STOP_SEC_CONFIG_VAR_NO_INIT_UNSPECIFIED
#define PRIVATE_SECTION ".default"
#define SECTION_TYPE data
#endif
#elif defined (MCU_START_SEC_CONST_BOOLEAN)
#ifdef CONST_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_BOOLEAN_SEC_STARTED
#undef MCU_START_SEC_CONST_BOOLEAN
#define DEFAULT_START_SEC_CONST_1BIT
#endif
#elif defined (MCU_STOP_SEC_CONST_BOOLEAN)
#ifndef CONST_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_BOOLEAN_SEC_STARTED
#undef MCU_STOP_SEC_CONST_BOOLEAN
#define DEFAULT_STOP_SEC_CONST_1BIT
#endif
#elif defined (MCU_START_SEC_CONST_8)
#ifdef CONST_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_8_SEC_STARTED
#undef MCU_START_SEC_CONST_8
#define DEFAULT_START_SEC_CONST_8BIT
#endif
#elif defined (MCU_STOP_SEC_CONST_8)
#ifndef CONST_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_8_SEC_STARTED
#undef MCU_STOP_SEC_CONST_8
#define DEFAULT_STOP_SEC_CONST_8BIT
#endif
#elif defined (MCU_START_SEC_CONST_16)
#ifdef CONST_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_16_SEC_STARTED
#undef MCU_START_SEC_CONST_16
#define DEFAULT_START_SEC_CONST_16BIT
#endif
#elif defined (MCU_STOP_SEC_CONST_16)
#ifndef CONST_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_16_SEC_STARTED
#undef MCU_STOP_SEC_CONST_16
#define DEFAULT_STOP_SEC_CONST_16BIT
#endif
#elif defined (MCU_START_SEC_CONST_32)
#ifdef CONST_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_32_SEC_STARTED
#undef MCU_START_SEC_CONST_32
#define DEFAULT_START_SEC_CONST_32BIT
#endif
#elif defined (MCU_STOP_SEC_CONST_32)
#ifndef CONST_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_32_SEC_STARTED
#undef MCU_STOP_SEC_CONST_32
#define DEFAULT_STOP_SEC_CONST_32BIT
#endif
#elif defined (MCU_START_SEC_CODE_SLOW)
#ifdef CODE_SLOW_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CODE_SLOW_SEC_STARTED
#undef MCU_START_SEC_CODE_SLOW
#define DEFAULT_START_SEC_CODE_SLOW
#endif
#elif defined (MCU_STOP_SEC_CODE_SLOW)
#ifndef CODE_SLOW_SEC_STARTED
#error "Memory section is not started"
#else
#undef CODE_SLOW_SEC_STARTED
#undef MCU_STOP_SEC_CODE_SLOW
#define DEFAULT_STOP_SEC_CODE_SLOW
#endif
#elif defined (MCU_START_SEC_CODE_FAST)
#ifdef ISR_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define ISR_CODE_SEC_STARTED
#undef MCU_START_SEC_CODE_FAST
#define DEFAULT_START_SEC_CODE_FAST
#endif
#elif defined (MCU_STOP_SEC_CODE_FAST)
#ifndef ISR_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef ISR_CODE_SEC_STARTED
#undef MCU_STOP_SEC_CODE_FAST
#define DEFAULT_STOP_SEC_CODE_FAST
#endif
#elif defined (MCU_START_SEC_PUBLIC_CODE)
#ifdef PUBLIC_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define PUBLIC_CODE_SEC_STARTED
#undef MCU_START_SEC_PUBLIC_CODE
#define PRIVATE_SECTION ".text.MCU_PUBLIC_CODE_ROM"
#define SECTION_TYPE text
#endif
#elif defined (MCU_STOP_SEC_PUBLIC_CODE)
#ifndef PUBLIC_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef PUBLIC_CODE_SEC_STARTED
#undef MCU_STOP_SEC_PUBLIC_CODE
#define DEFAULT_STOP_SEC_CODE
#endif
#elif defined (MCU_START_SEC_PRIVATE_CODE)
#ifdef PRIVATE_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define PRIVATE_CODE_SEC_STARTED
#undef MCU_START_SEC_PRIVATE_CODE
#define PRIVATE_SECTION ".text.MCU_PRIVATE_CODE_ROM"
#define SECTION_TYPE text
#endif
#elif defined (MCU_STOP_SEC_PRIVATE_CODE)
#ifndef PRIVATE_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef PRIVATE_CODE_SEC_STARTED
#undef MCU_STOP_SEC_PRIVATE_CODE
#define DEFAULT_STOP_SEC_CODE
#endif
#else
#error "MemMap.h: No valid section define found"
#endif /* START_WITH_IF */
/*******************************************************************************
** Default section mapping **
*******************************************************************************/
#include "Common_MemMap.h"
/*******************************************************************************
** End of File **
*******************************************************************************/

View File

@@ -0,0 +1,89 @@
/*============================================================================*/
/* Project = AUTOSAR Renesas CPF MCAL Components */
/* Module = MemMap_dep.h */
/* SW-VERSION = 1.0.0 */
/*============================================================================*/
/* COPYRIGHT */
/*============================================================================*/
/* Copyright(c) 2021 Renesas Electronics Corporation. */
/*============================================================================*/
/* Purpose: */
/* Provision for sections for Memory Mapping - ARM Compiler */
/* */
/*============================================================================*/
/* */
/* Unless otherwise agreed upon in writing between your company and */
/* Renesas Electronics Corporation the following shall apply! */
/* */
/* Warranty Disclaimer */
/* */
/* There is no warranty of any kind whatsoever granted by Renesas. Any */
/* warranty is expressly disclaimed and excluded by Renesas, either expressed */
/* or implied, including but not limited to those for non-infringement of */
/* intellectual property, merchantability and/or fitness for the particular */
/* purpose. */
/* */
/* Renesas shall not have any obligation to maintain, service or provide bug */
/* fixes for the supplied Product(s) and/or the Application. */
/* */
/* Each User is solely responsible for determining the appropriateness of */
/* using the Product(s) and assumes all risks associated with its exercise */
/* of rights under this Agreement, including, but not limited to the risks */
/* and costs of program errors, compliance with applicable laws, damage to */
/* or loss of data, programs or equipment, and unavailability or */
/* interruption of operations. */
/* */
/* Limitation of Liability */
/* */
/* In no event shall Renesas be liable to the User for any incidental, */
/* consequential, indirect, or punitive damage (including but not limited */
/* to lost profits) regardless of whether such liability is based on breach */
/* of contract, tort, strict liability, breach of warranties, failure of */
/* essential purpose or otherwise and even if advised of the possibility of */
/* such damages. Renesas shall not be liable for any services or products */
/* provided by third party vendors, developers or consultants identified or */
/* referred to the User by Renesas in connection with the Product(s) and/or */
/* the Application. */
/* */
/*============================================================================*/
/* Environment: */
/* Devices: CPF */
/*============================================================================*/
/*******************************************************************************
** Revision Control History **
*******************************************************************************/
/*
* 1.0.0: 20/08/2021 : Initial Version
*/
/******************************************************************************/
/*******************************************************************************
** Include Section **
*******************************************************************************/
/*******************************************************************************
** Version Information **
*******************************************************************************/
/*******************************************************************************
** Global Symbols **
*******************************************************************************/
/*******************************************************************************
** Global Data Types **
*******************************************************************************/
#ifdef PRIVATE_SECTION
#define SEC_NAME section(PRIVATE_SECTION)
#else
#undef SEC_NAME
#endif
#undef SECTION_TYPE
/*******************************************************************************
** Function Prototypes **
*******************************************************************************/
/*******************************************************************************
** End of File **
*******************************************************************************/

View File

@@ -0,0 +1,674 @@
/*============================================================================*/
/* Project = AUTOSAR Renesas ASR MCAL Components */
/* Module = Port_MemMap.h */
/* SW-VERSION = 1.1.11 */
/*============================================================================*/
/* COPYRIGHT */
/*============================================================================*/
/* Copyright(c) 2021-2022 Renesas Electronics Corporation. */
/*============================================================================*/
/* Purpose: */
/* Provision for sections for Memory Mapping */
/* */
/*============================================================================*/
/* */
/* Unless otherwise agreed upon in writing between your company and */
/* Renesas Electronics Corporation the following shall apply! */
/* */
/* Warranty Disclaimer */
/* */
/* There is no warranty of any kind whatsoever granted by Renesas. Any */
/* warranty is expressly disclaimed and excluded by Renesas, either expressed */
/* or implied, including but not limited to those for non-infringement of */
/* intellectual property, merchantability and/or fitness for the particular */
/* purpose. */
/* */
/* Renesas shall not have any obligation to maintain, service or provide bug */
/* fixes for the supplied Product(s) and/or the Application. */
/* */
/* Each User is solely responsible for determining the appropriateness of */
/* using the Product(s) and assumes all risks associated with its exercise */
/* of rights under this Agreement, including, but not limited to the risks */
/* and costs of program errors, compliance with applicable laws, damage to */
/* or loss of data, programs or equipment, and unavailability or */
/* interruption of operations. */
/* */
/* Limitation of Liability */
/* */
/* In no event shall Renesas be liable to the User for any incidental, */
/* consequential, indirect, or punitive damage (including but not limited */
/* to lost profits) regardless of whether such liability is based on breach */
/* of contract, tort, strict liability, breach of warranties, failure of */
/* essential purpose or otherwise and even if advised of the possibility of */
/* such damages. Renesas shall not be liable for any services or products */
/* provided by third party vendors, developers or consultants identified or */
/* referred to the User by Renesas in connection with the Product(s) and/or */
/* the Application. */
/* */
/*============================================================================*/
/* Environment: */
/* Devices: R-CarGen4 */
/*============================================================================*/
/*******************************************************************************
** Revision Control History **
*******************************************************************************/
/*
* 1.3.4: 11/10/2022 : Update SW-VERSION
* 1.3.3: 22/09/2022 : Increase version for commonize code
* 1.3.2: 12/07/2022 : Update SW-VERSION
* 08/07/2022 : Correct macros name:(a:number of bit; a = 1, 8, 16, 32)
* DEFAULT_START/STOP_SEC_VAR_<a>BIT
* to DEFAULT_START/STOP_SEC_VAR_INIT_<a>.
* DEFAULT_START/STOP_SEC_VAR_NOINIT_<a>BIT
* to DEFAULT_START/STOP_SEC_VAR_NO_INIT_<a>.
* DEFAULT_START/STOP_SEC_VAR_UNSPECIFIED
* to DEFAULT_START/STOP_SEC_VAR_INIT_UNSPECIFIED.
* DEFAULT_START/STOP_SEC_VAR_NOINIT_UNSPECIFIED
* to DEFAULT_START/STOP_SEC_VAR_NO_INIT_UNSPECIFIED.
* DEFAULT_START/STOP_SEC_CONST_<a>BIT
* to DEFAULT_START/STOP_SEC_CONST_<a>.
* Add declaration DEFAULT_START_SEC_CODE in the condition
* of checking PORT_START_SEC_APPL_CODE.
* 1.3.1: 18/04/2022 : Update SW-VERSION
* 14/04/2022 : Correct section name for:
* PORT_START_SEC_VAR_INIT_BOOLEAN,
* PORT_START_SEC_CONFIG_DATA_UNSPECIFIED,
* PORT_START_SEC_PUBLIC_CODE,
* PORT_START_SEC_PRIVATE_CODE,
* PORT_START_SEC_DBTOC_DATA_UNSPECIFIED
* 1.3.0: 24/11/2020 : Update SW-VERSION
* 1.2.0: 26/08/2020 : Release
* 1.1.1: 26/08/2020 : Update SW-VERSION
* 1.1.0: 19/06/2020 : Release
* 1.0.4: 19/05/2020 : Update prefix in version information macro
* 1.0.3: 14/05/2020 : Add NO_INIT_RAM_PTR memmory section.
* 1.0.2: 26/02/2020 : Change AR version to 4.3.1
* 1.0.1: 30/01/2018 : Corrected name
* from PORT_START_SEC_CONFIG_VAR_NOINIT_UNSPECIFIED to
* PORT_START_SEC_CONFIG_VAR_NO_INIT_UNSPECIFIED,
* from PORT_STOP_SEC_CONFIG_VAR_NOINIT_UNSPECIFIED to
* PORT_STOP_SEC_CONFIG_VAR_NO_INIT_UNSPECIFIED.
* 1.0.0: 10/01/2017 : Initial Version
*/
/******************************************************************************/
/*******************************************************************************
** Include Section **
*******************************************************************************/
/*******************************************************************************
** Version Information **
*******************************************************************************/
/*
* AUTOSAR specification version information
*/
#define PORT_MEMMAP_AR_RELEASE_MAJOR_VERSION 4
#define PORT_MEMMAP_AR_RELEASE_MINOR_VERSION 5
#define PORT_MEMMAP_AR_RELEASE_REVISION_VERSION 0
/*
* File version information
*/
#define PORT_MEMMAP_SW_MAJOR_VERSION 1
#define PORT_MEMMAP_SW_MINOR_VERSION 3
#define PORT_MEMMAP_SW_PATCH_VERSION 4
/*******************************************************************************
** Global Symbols **
*******************************************************************************/
/*******************************************************************************
** Global Data Types **
*******************************************************************************/
/*******************************************************************************
** Module section mapping **
*******************************************************************************/
/*
* The symbol 'START_WITH_IF' is undefined.
*
* Thus, the preprocessor continues searching for defined symbols
* This first #ifdef makes integration of delivered parts of MemMap.h
* easier because every supplier starts with #elif
*/
#if defined (START_WITH_IF)
/* -------------------------------------------------------------------------- */
/* PORT */
/* -------------------------------------------------------------------------- */
#elif defined (PORT_START_SEC_VAR_INIT_BOOLEAN)
#ifdef VAR_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_BOOLEAN_SEC_STARTED
#undef PORT_START_SEC_VAR_INIT_BOOLEAN
#define DEFAULT_START_SEC_VAR_INIT_1
#endif
#elif defined (PORT_STOP_SEC_VAR_INIT_BOOLEAN)
#ifndef VAR_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_BOOLEAN_SEC_STARTED
#undef PORT_STOP_SEC_VAR_INIT_BOOLEAN
#define DEFAULT_STOP_SEC_VAR_INIT_1
#endif
#elif defined (PORT_START_SEC_VAR_NO_INIT_BOOLEAN)
#ifdef VAR_NOINIT_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NOINIT_BOOLEAN_SEC_STARTED
#undef PORT_START_SEC_VAR_NO_INIT_BOOLEAN
#define DEFAULT_START_SEC_VAR_NO_INIT_1
#endif
#elif defined (PORT_STOP_SEC_VAR_NO_INIT_BOOLEAN)
#ifndef VAR_NOINIT_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NOINIT_BOOLEAN_SEC_STARTED
#undef PORT_STOP_SEC_VAR_NO_INIT_BOOLEAN
#define DEFAULT_STOP_SEC_VAR_NO_INIT_1
#endif
#elif defined (PORT_START_SEC_VAR_FAST_INIT_BOOLEAN)
#ifdef VAR_FAST_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_FAST_BOOLEAN_SEC_STARTED
#undef PORT_START_SEC_VAR_FAST_INIT_BOOLEAN
#define DEFAULT_START_SEC_VAR_FAST_1BIT
#endif
#elif defined (PORT_STOP_SEC_VAR_FAST_INIT_BOOLEAN)
#ifndef VAR_FAST_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_FAST_BOOLEAN_SEC_STARTED
#undef PORT_STOP_SEC_VAR_FAST_INIT_BOOLEAN
#define DEFAULT_STOP_SEC_VAR_FAST_1BIT
#endif
#elif defined (PORT_START_SEC_VAR_INIT_8)
#ifdef VAR_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_8_SEC_STARTED
#undef PORT_START_SEC_VAR_INIT_8
#define DEFAULT_START_SEC_VAR_INIT_8
#endif
#elif defined (PORT_STOP_SEC_VAR_INIT_8)
#ifndef VAR_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_8_SEC_STARTED
#undef PORT_STOP_SEC_VAR_INIT_8
#define DEFAULT_STOP_SEC_VAR_INIT_8
#endif
#elif defined (PORT_START_SEC_VAR_NO_INIT_8)
#ifdef VAR_NOINIT_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NOINIT_8_SEC_STARTED
#undef PORT_START_SEC_VAR_NO_INIT_8
#define DEFAULT_START_SEC_VAR_NO_INIT_8
#endif
#elif defined (PORT_STOP_SEC_VAR_NO_INIT_8)
#ifndef VAR_NOINIT_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NOINIT_8_SEC_STARTED
#undef PORT_STOP_SEC_VAR_NO_INIT_8
#define DEFAULT_STOP_SEC_VAR_NO_INIT_8
#endif
#elif defined (PORT_START_SEC_VAR_FAST_INIT_8)
#ifdef VAR_FAST_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_FAST_8_SEC_STARTED
#undef PORT_START_SEC_VAR_FAST_INIT_8
#define DEFAULT_START_SEC_VAR_FAST_8BIT
#endif
#elif defined (PORT_STOP_SEC_VAR_FAST_INIT_8)
#ifndef VAR_FAST_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_FAST_8_SEC_STARTED
#undef PORT_STOP_SEC_VAR_FAST_INIT_8
#define DEFAULT_STOP_SEC_VAR_FAST_8BIT
#endif
#elif defined (PORT_START_SEC_VAR_INIT_16)
#ifdef VAR_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_16_SEC_STARTED
#undef PORT_START_SEC_VAR_INIT_16
#define DEFAULT_START_SEC_VAR_INIT_16
#endif
#elif defined (PORT_STOP_SEC_VAR_INIT_16)
#ifndef VAR_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_16_SEC_STARTED
#undef PORT_STOP_SEC_VAR_INIT_16
#define DEFAULT_STOP_SEC_VAR_INIT_16
#endif
#elif defined (PORT_START_SEC_VAR_NO_INIT_16)
#ifdef VAR_NOINIT_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NOINIT_16_SEC_STARTED
#undef PORT_START_SEC_VAR_NO_INIT_16
#define DEFAULT_START_SEC_VAR_NO_INIT_16
#endif
#elif defined (PORT_STOP_SEC_VAR_NO_INIT_16)
#ifndef VAR_NOINIT_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NOINIT_16_SEC_STARTED
#undef PORT_STOP_SEC_VAR_NO_INIT_16
#define DEFAULT_STOP_SEC_VAR_NO_INIT_16
#endif
#elif defined (PORT_START_SEC_VAR_FAST_INIT_16)
#ifdef VAR_FAST_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_FAST_16_SEC_STARTED
#undef PORT_START_SEC_VAR_FAST_INIT_16
#define DEFAULT_START_SEC_VAR_FAST_16BIT
#endif
#elif defined (PORT_STOP_SEC_VAR_FAST_INIT_16)
#ifndef VAR_FAST_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_FAST_16_SEC_STARTED
#undef PORT_STOP_SEC_VAR_FAST_INIT_16
#define DEFAULT_STOP_SEC_VAR_FAST_16BIT
#endif
#elif defined (PORT_START_SEC_VAR_INIT_32)
#ifdef VAR_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_32_SEC_STARTED
#undef PORT_START_SEC_VAR_INIT_32
#define DEFAULT_START_SEC_VAR_INIT_32
#endif
#elif defined (PORT_STOP_SEC_VAR_INIT_32)
#ifndef VAR_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_32_SEC_STARTED
#undef PORT_STOP_SEC_VAR_INIT_32
#define DEFAULT_STOP_SEC_VAR_INIT_32
#endif
#elif defined (PORT_START_SEC_VAR_NO_INIT_32)
#ifdef VAR_NOINIT_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NOINIT_32_SEC_STARTED
#undef PORT_START_SEC_VAR_NO_INIT_32
#define DEFAULT_START_SEC_VAR_NO_INIT_32
#endif
#elif defined (PORT_STOP_SEC_VAR_NO_INIT_32)
#ifndef VAR_NOINIT_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NOINIT_32_SEC_STARTED
#undef PORT_STOP_SEC_VAR_NO_INIT_32
#define DEFAULT_STOP_SEC_VAR_NO_INIT_32
#endif
#elif defined (PORT_START_SEC_VAR_FAST_INIT_32)
#ifdef VAR_FAST_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_FAST_32_SEC_STARTED
#undef PORT_START_SEC_VAR_FAST_INIT_32
#define DEFAULT_START_SEC_VAR_FAST_32BIT
#endif
#elif defined (PORT_STOP_SEC_VAR_FAST_INIT_32)
#ifndef VAR_FAST_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_FAST_32_SEC_STARTED
#undef PORT_STOP_SEC_VAR_FAST_INIT_32
#define DEFAULT_STOP_SEC_VAR_FAST_32BIT
#endif
#elif defined (PORT_START_SEC_VAR_INIT_UNSPECIFIED)
#ifdef VAR_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_UNSPECIFIED_SEC_STARTED
#undef PORT_START_SEC_VAR_INIT_UNSPECIFIED
#define DEFAULT_START_SEC_VAR_INIT_UNSPECIFIED
#endif
#elif defined (PORT_STOP_SEC_VAR_INIT_UNSPECIFIED)
#ifndef VAR_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_UNSPECIFIED_SEC_STARTED
#undef PORT_STOP_SEC_VAR_INIT_UNSPECIFIED
#define DEFAULT_STOP_SEC_VAR_INIT_UNSPECIFIED
#endif
#elif defined (PORT_START_SEC_VAR_NO_INIT_UNSPECIFIED)
#ifdef VAR_NOINIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NOINIT_UNSPECIFIED_SEC_STARTED
#undef PORT_START_SEC_VAR_NO_INIT_UNSPECIFIED
#define DEFAULT_START_SEC_VAR_NO_INIT_UNSPECIFIED
#endif
#elif defined (PORT_STOP_SEC_VAR_NO_INIT_UNSPECIFIED)
#ifndef VAR_NOINIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NOINIT_UNSPECIFIED_SEC_STARTED
#undef PORT_STOP_SEC_VAR_NO_INIT_UNSPECIFIED
#define DEFAULT_STOP_SEC_VAR_NO_INIT_UNSPECIFIED
#endif
#elif defined (PORT_START_SEC_VAR_FAST_INIT_UNSPECIFIED)
#ifdef VAR_FAST_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_FAST_UNSPECIFIED_SEC_STARTED
#undef PORT_START_SEC_VAR_FAST_INIT_UNSPECIFIED
#define DEFAULT_START_SEC_VAR_FAST_UNSPECIFIED
#endif
#elif defined (PORT_STOP_SEC_VAR_FAST_INIT_UNSPECIFIED)
#ifndef VAR_FAST_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_FAST_UNSPECIFIED_SEC_STARTED
#undef PORT_STOP_SEC_VAR_FAST_INIT_UNSPECIFIED
#define DEFAULT_STOP_SEC_VAR_FAST_UNSPECIFIED
#endif
#elif defined (PORT_START_SEC_CONFIG_VAR_NO_INIT_UNSPECIFIED)
#ifdef VAR_NOINIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NOINIT_UNSPECIFIED_SEC_STARTED
#undef PORT_START_SEC_CONFIG_VAR_NO_INIT_UNSPECIFIED
#endif
#elif defined (PORT_STOP_SEC_CONFIG_VAR_NO_INIT_UNSPECIFIED)
#ifndef VAR_NOINIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NOINIT_UNSPECIFIED_SEC_STARTED
#undef PORT_STOP_SEC_CONFIG_VAR_NO_INIT_UNSPECIFIED
#endif
#elif defined (PORT_START_SEC_CONST_BOOLEAN)
#ifdef CONST_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_BOOLEAN_SEC_STARTED
#undef PORT_START_SEC_CONST_BOOLEAN
#define DEFAULT_START_SEC_CONST_1BIT
#endif
#elif defined (PORT_STOP_SEC_CONST_BOOLEAN)
#ifndef CONST_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_BOOLEAN_SEC_STARTED
#undef PORT_STOP_SEC_CONST_BOOLEAN
#define DEFAULT_STOP_SEC_CONST_1BIT
#endif
#elif defined (PORT_START_SEC_CONST_8)
#ifdef CONST_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_8_SEC_STARTED
#undef PORT_START_SEC_CONST_8
#define DEFAULT_START_SEC_CONST_8
#endif
#elif defined (PORT_STOP_SEC_CONST_8)
#ifndef CONST_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_8_SEC_STARTED
#undef PORT_STOP_SEC_CONST_8
#define DEFAULT_STOP_SEC_CONST_8
#endif
#elif defined (PORT_START_SEC_CONST_16)
#ifdef CONST_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_16_SEC_STARTED
#undef PORT_START_SEC_CONST_16
#define DEFAULT_START_SEC_CONST_16
#endif
#elif defined (PORT_STOP_SEC_CONST_16)
#ifndef CONST_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_16_SEC_STARTED
#undef PORT_STOP_SEC_CONST_16
#define DEFAULT_STOP_SEC_CONST_16
#endif
#elif defined (PORT_START_SEC_CONST_32)
#ifdef CONST_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_32_SEC_STARTED
#undef PORT_START_SEC_CONST_32
#define DEFAULT_START_SEC_CONST_32
#endif
#elif defined (PORT_STOP_SEC_CONST_32)
#ifndef CONST_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_32_SEC_STARTED
#undef PORT_STOP_SEC_CONST_32
#define DEFAULT_STOP_SEC_CONST_32
#endif
#elif defined (PORT_START_SEC_CONST_UNSPECIFIED)
#ifdef CONST_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_UNSPECIFIED_SEC_STARTED
#undef PORT_START_SEC_CONST_UNSPECIFIED
#define DEFAULT_START_SEC_CONST_UNSPECIFIED
#endif
#elif defined (PORT_STOP_SEC_CONST_UNSPECIFIED)
#ifndef CONST_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_UNSPECIFIED_SEC_STARTED
#undef PORT_STOP_SEC_CONST_UNSPECIFIED
#define DEFAULT_STOP_SEC_CONST_UNSPECIFIED
#endif
#elif defined (PORT_START_SEC_CONFIG_DATA_BOOLEAN)
#ifdef PORT_CONFIG_DATA_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define PORT_CONFIG_DATA_BOOLEAN_SEC_STARTED
#undef PORT_START_SEC_CONFIG_DATA_BOOLEAN
#endif
#elif defined (PORT_STOP_SEC_CONFIG_DATA_BOOLEAN)
#ifndef PORT_CONFIG_DATA_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef PORT_CONFIG_DATA_BOOLEAN_SEC_STARTED
#undef PORT_STOP_SEC_CONFIG_DATA_BOOLEAN
#define DEFAULT_STOP_SEC_CONST_1BIT
#endif
#elif defined (PORT_START_SEC_CONFIG_DATA_8)
#ifdef PORT_CONFIG_DATA_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define PORT_CONFIG_DATA_8_SEC_STARTED
#undef PORT_START_SEC_CONFIG_DATA_8
#endif
#elif defined (PORT_STOP_SEC_CONFIG_DATA_8)
#ifndef PORT_CONFIG_DATA_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef PORT_CONFIG_DATA_8_SEC_STARTED
#undef PORT_STOP_SEC_CONFIG_DATA_8
#define DEFAULT_STOP_SEC_CONST_8BIT
#endif
#elif defined (PORT_START_SEC_CONFIG_DATA_16)
#ifdef PORT_CONFIG_DATA_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define PORT_CONFIG_DATA_16_SEC_STARTED
#undef PORT_START_SEC_CONFIG_DATA_16
#endif
#elif defined (PORT_STOP_SEC_CONFIG_DATA_16)
#ifndef PORT_CONFIG_DATA_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef PORT_CONFIG_DATA_16_SEC_STARTED
#undef PORT_STOP_SEC_CONFIG_DATA_16
#define DEFAULT_STOP_SEC_CONST_16BIT
#endif
#elif defined (PORT_START_SEC_CONFIG_DATA_32)
#ifdef PORT_CONFIG_DATA_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define PORT_CONFIG_DATA_32_SEC_STARTED
#undef PORT_START_SEC_CONFIG_DATA_32
#endif
#elif defined (PORT_STOP_SEC_CONFIG_DATA_32)
#ifndef PORT_CONFIG_DATA_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef PORT_CONFIG_DATA_32_SEC_STARTED
#undef PORT_STOP_SEC_CONFIG_DATA_32
#define DEFAULT_STOP_SEC_CONST_32BIT
#endif
#elif defined (PORT_START_SEC_CONFIG_DATA_UNSPECIFIED)
#ifdef PORT_CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define PORT_CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#undef PORT_START_SEC_CONFIG_DATA_UNSPECIFIED
#define DEFAULT_START_SEC_CONFIG_DATA_UNSPECIFIED
#endif
#elif defined (PORT_STOP_SEC_CONFIG_DATA_UNSPECIFIED)
#ifndef PORT_CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef PORT_CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#undef PORT_STOP_SEC_CONFIG_DATA_UNSPECIFIED
#define DEFAULT_STOP_SEC_CONFIG_DATA_UNSPECIFIED
#endif
#elif defined (PORT_START_SEC_DBTOC_DATA_UNSPECIFIED)
#ifdef DBTOC_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define DBTOC_DATA_UNSPECIFIED_SEC_STARTED
#undef PORT_START_SEC_DBTOC_DATA_UNSPECIFIED
#define PRIVATE_SECTION ".PORT_CFG_DBTOC_UNSPECIFIED"
#endif
#elif defined (PORT_STOP_SEC_DBTOC_DATA_UNSPECIFIED)
#ifndef DBTOC_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef DBTOC_DATA_UNSPECIFIED_SEC_STARTED
#undef PORT_STOP_SEC_DBTOC_DATA_UNSPECIFIED
#define DEFAULT_STOP_SEC_CONST_UNSPECIFIED
#endif
#elif defined (PORT_START_SEC_PUBLIC_CODE)
#ifdef PUBLIC_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define PUBLIC_CODE_SEC_STARTED
#undef PORT_START_SEC_PUBLIC_CODE
#define PRIVATE_SECTION ".text.PORT_PUBLIC_CODE_ROM"
#endif
#elif defined (PORT_STOP_SEC_PUBLIC_CODE)
#ifndef PUBLIC_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef PUBLIC_CODE_SEC_STARTED
#undef PORT_STOP_SEC_PUBLIC_CODE
#undef PRIVATE_SECTION
#endif
#elif defined (PORT_START_SEC_PRIVATE_CODE)
#ifdef PRIVATE_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define PRIVATE_CODE_SEC_STARTED
#undef PORT_START_SEC_PRIVATE_CODE
#define PRIVATE_SECTION ".text.PORT_PRIVATE_CODE_ROM"
#endif
#elif defined (PORT_STOP_SEC_PRIVATE_CODE)
#ifndef PRIVATE_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef PRIVATE_CODE_SEC_STARTED
#undef PORT_STOP_SEC_PRIVATE_CODE
#undef PRIVATE_SECTION
#endif
#elif defined (PORT_START_SEC_APPL_CODE)
#ifdef APPL_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define APPL_CODE_SEC_STARTED
#undef PORT_START_SEC_APPL_CODE
#define DEFAULT_START_SEC_CODE
#endif
#elif defined (PORT_STOP_SEC_APPL_CODE)
#ifndef APPL_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef APPL_CODE_SEC_STARTED
#undef PORT_STOP_SEC_APPL_CODE
#define DEFAULT_STOP_SEC_CODE
#endif
#elif defined (PORT_START_SEC_VAR_NO_INIT_PTR)
#ifdef VAR_NO_INIT_PTR_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_PTR_SEC_STARTED
#undef PORT_START_SEC_VAR_NO_INIT_PTR
#define DEFAULT_START_SEC_VAR_NO_INIT_PTR
#endif
#elif defined (PORT_STOP_SEC_VAR_NO_INIT_PTR)
#ifndef VAR_NO_INIT_PTR_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_PTR_SEC_STARTED
#undef PORT_STOP_SEC_VAR_NO_INIT_PTR
#define DEFAULT_STOP_SEC_VAR_NO_INIT_PTR
#endif
/* -------------------------------------------------------------------------- */
/* End of module section mapping */
/* -------------------------------------------------------------------------- */
#else
#error "MemMap.h: No valid section define found"
#endif /* START_WITH_IF */
/*******************************************************************************
** Default section mapping **
*******************************************************************************/
#include "Common_MemMap.h"
/*******************************************************************************
** End of File **
*******************************************************************************/

View File

@@ -0,0 +1,720 @@
/*============================================================================*/
/* Project = R-Car Gen4 AR19-11 MCAL Project */
/* SW-VERSION = 1.5.10 */
/*============================================================================*/
/* COPYRIGHT */
/*============================================================================*/
/* Copyright(c) 2021-2022 Renesas Electronics Corporation. */
/*============================================================================*/
/* Purpose: */
/* Provision for sections for Memory Mapping */
/* */
/*============================================================================*/
/* */
/* Unless otherwise agreed upon in writing between your company and */
/* Renesas Electronics Corporation the following shall apply! */
/* */
/* Warranty Disclaimer */
/* */
/* There is no warranty of any kind whatsoever granted by Renesas. Any */
/* warranty is expressly disclaimed and excluded by Renesas, either expressed */
/* or implied, including but not limited to those for non-infringement of */
/* intellectual property, merchantability and/or fitness for the particular */
/* purpose. */
/* */
/* Renesas shall not have any obligation to maintain, service or provide bug */
/* fixes for the supplied Product(s) and/or the Application. */
/* */
/* Each User is solely responsible for determining the appropriateness of */
/* using the Product(s) and assumes all risks associated with its exercise */
/* of rights under this Agreement, including, but not limited to the risks */
/* and costs of program errors, compliance with applicable laws, damage to */
/* or loss of data, programs or equipment, and unavailability or */
/* interruption of operations. */
/* */
/* Limitation of Liability */
/* */
/* In no event shall Renesas be liable to the User for any incidental, */
/* consequential, indirect, or punitive damage (including but not limited */
/* to lost profits) regardless of whether such liability is based on breach */
/* of contract, tort, strict liability, breach of warranties, failure of */
/* essential purpose or otherwise and even if advised of the possibility of */
/* such damages. Renesas shall not be liable for any services or products */
/* provided by third party vendors, developers or consultants identified or */
/* referred to the User by Renesas in connection with the Product(s) and/or */
/* the Application. */
/* */
/*============================================================================*/
/* Environment: */
/* Devices: R-Car Gen4 */
/*============================================================================*/
/*******************************************************************************
** Revision Control History **
*******************************************************************************/
/*
* 1.5.7 08-Nov-2022 Update SW Version
* 1.5.6 13-Oct-2022 Update SW Version
* 1.0.1 06-Apr-2022 Update wrong macro definition
* 1.0.0 07-Dec-2021 Initial Version
*/
/******************************************************************************/
/*******************************************************************************
** Include Section **
*******************************************************************************/
/*******************************************************************************
** Version Information **
*******************************************************************************/
/*
* AUTOSAR specification version information
*/
#define SPI_MEMMAP_AR_RELEASE_MAJOR_VERSION 4
#define SPI_MEMMAP_AR_RELEASE_MINOR_VERSION 5
#define SPI_MEMMAP_AR_RELEASE_REVISION_VERSION 0
/*
* File version information
*/
#define SPI_MEMMAP_SW_MAJOR_VERSION 1
#define SPI_MEMMAP_SW_MINOR_VERSION 5
#define SPI_MEMMAP_SW_PATCH_VERSION 7
/*******************************************************************************
** Macro of multi instance **
*******************************************************************************/
#if defined(SPI_USE_MULTIINSTANCE)
#define SPI_MEMMULTI(section) SPI_MEMMULTI_(section, SPI_INSTANCE_INDEX)
#define SPI_MEMMULTI_(section, index) SPI_MEMMULTI__(section, index)
#define SPI_MEMMULTI__(section, index) section "_" #index
#else
#define SPI_MEMMULTI(section) section
#endif
#define SPI_SECTION_RAM_1BIT SPI_MEMMULTI(".RAM_1BIT")
#define SPI_SECTION_NO_INIT_RAM_32BIT SPI_MEMMULTI(".NOINIT_RAM_32BIT")
#define SPI_SECTION_NO_INIT_RAM_64BIT SPI_MEMMULTI(".NOINIT_RAM_64BIT")
#define SPI_SECTION_NO_INIT_RAM_UNSPECIFIED SPI_MEMMULTI(".NOINIT_RAM_UNSPECIFIED")
#define SPI_SECTION_NO_INIT_RAM_PTR SPI_MEMMULTI(".NOINIT_RAM_PTR")
#define SPI_SECTION_PUBLIC_CODE_ROM SPI_MEMMULTI(".SPI_PUBLIC_CODE_ROM")
#define SPI_SECTION_PRIVATE_CODE_ROM SPI_MEMMULTI(".SPI_PRIVATE_CODE_ROM")
#define SPI_SECTION_APPL_CODE_ROM SPI_MEMMULTI(".SPI_APPL_CODE_ROM")
#define SPI_SECTION_FAST_CODE_ROM SPI_MEMMULTI(".SPI_FAST_CODE_ROM")
#define SPI_SECTION_CONST_ROM_8BIT SPI_MEMMULTI(".CONST_ROM_8BIT")
#define SPI_SECTION_CONST_ROM_UNSPECIFIED SPI_MEMMULTI(".CONST_ROM_UNSPECIFIED")
#define SPI_SECTION_CFG_DATA_UNSPECIFIED SPI_MEMMULTI(".SPI_CFG_DATA_UNSPECIFIED")
#define SPI_SECTION_CFG_DBTOC_UNSPECIFIED SPI_MEMMULTI(".SPI_CFG_DBTOC_UNSPECIFIED")
/*******************************************************************************
** Global Symbols **
*******************************************************************************/
/*******************************************************************************
** Global Data Types **
*******************************************************************************/
/*******************************************************************************
** Module section mapping **
*******************************************************************************/
/*
* The symbol 'START_WITH_IF' is undefined.
*
* Thus, the preprocessor continues searching for defined symbols
* This first #ifdef makes integration of delivered parts of Spi_MemMap.h
* easier because every supplier starts with #elif
*/
#if defined (START_WITH_IF)
/* -------------------------------------------------------------------------- */
/* SPI */
/* -------------------------------------------------------------------------- */
#elif defined (SPI_START_SEC_VAR_INIT_BOOLEAN)
#ifdef VAR_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_BOOLEAN_SEC_STARTED
#undef SPI_START_SEC_VAR_INIT_BOOLEAN
#define DEFAULT_START_SEC_VAR_INIT_1
#endif
#elif defined (SPI_STOP_SEC_VAR_INIT_BOOLEAN)
#ifndef VAR_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_BOOLEAN_SEC_STARTED
#undef SPI_STOP_SEC_VAR_INIT_BOOLEAN
#define DEFAULT_STOP_SEC_VAR_INIT_1
#endif
#elif defined (SPI_START_SEC_VAR_NO_INIT_BOOLEAN)
#ifdef VAR_NO_INIT_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_BOOLEAN_SEC_STARTED
#undef SPI_START_SEC_VAR_NO_INIT_BOOLEAN
#define DEFAULT_START_SEC_VAR_NO_INIT_1
#endif
#elif defined (SPI_STOP_SEC_VAR_NO_INIT_BOOLEAN)
#ifndef VAR_NO_INIT_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_BOOLEAN_SEC_STARTED
#undef SPI_STOP_SEC_VAR_NO_INIT_BOOLEAN
#define DEFAULT_STOP_SEC_VAR_NO_INIT_1
#endif
#elif defined (SPI_START_SEC_VAR_FAST_INIT_BOOLEAN)
#ifdef VAR_FAST_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_FAST_BOOLEAN_SEC_STARTED
#undef SPI_START_SEC_VAR_FAST_INIT_BOOLEAN
#define DEFAULT_START_SEC_VAR_FAST_1BIT
#endif
#elif defined (SPI_STOP_SEC_VAR_FAST_INIT_BOOLEAN)
#ifndef VAR_FAST_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_FAST_BOOLEAN_SEC_STARTED
#undef SPI_STOP_SEC_VAR_FAST_INIT_BOOLEAN
#define DEFAULT_STOP_SEC_VAR_FAST_1BIT
#endif
#elif defined (SPI_START_SEC_VAR_INIT_8)
#ifdef VAR_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_8_SEC_STARTED
#undef SPI_START_SEC_VAR_INIT_8
#define DEFAULT_START_SEC_VAR_INIT_8
#endif
#elif defined (SPI_STOP_SEC_VAR_INIT_8)
#ifndef VAR_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_8_SEC_STARTED
#undef SPI_STOP_SEC_VAR_INIT_8
#define DEFAULT_STOP_SEC_VAR_INIT_8
#endif
#elif defined (SPI_START_SEC_VAR_NO_INIT_8)
#ifdef VAR_NO_INIT_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_8_SEC_STARTED
#undef SPI_START_SEC_VAR_NO_INIT_8
#define DEFAULT_START_SEC_VAR_NO_INIT_8
#endif
#elif defined (SPI_STOP_SEC_VAR_NO_INIT_8)
#ifndef VAR_NO_INIT_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_8_SEC_STARTED
#undef SPI_STOP_SEC_VAR_NO_INIT_8
#define DEFAULT_STOP_SEC_VAR_NO_INIT_8
#endif
#elif defined (SPI_START_SEC_VAR_FAST_INIT_8)
#ifdef VAR_FAST_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_FAST_8_SEC_STARTED
#undef SPI_START_SEC_VAR_FAST_INIT_8
#define DEFAULT_START_SEC_VAR_FAST_8BIT
#endif
#elif defined (SPI_STOP_SEC_VAR_FAST_INIT_8)
#ifndef VAR_FAST_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_FAST_8_SEC_STARTED
#undef SPI_STOP_SEC_VAR_FAST_INIT_8
#define DEFAULT_STOP_SEC_VAR_FAST_8BIT
#endif
#elif defined (SPI_START_SEC_VAR_INIT_16)
#ifdef VAR_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_16_SEC_STARTED
#undef SPI_START_SEC_VAR_INIT_16
#define DEFAULT_START_SEC_VAR_INIT_16
#endif
#elif defined (SPI_STOP_SEC_VAR_INIT_16)
#ifndef VAR_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_16_SEC_STARTED
#undef SPI_STOP_SEC_VAR_INIT_16
#define DEFAULT_STOP_SEC_VAR_INIT_16
#endif
#elif defined (SPI_START_SEC_VAR_NO_INIT_16)
#ifdef VAR_NO_INIT_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_16_SEC_STARTED
#undef SPI_START_SEC_VAR_NO_INIT_16
#define DEFAULT_START_SEC_VAR_NO_INIT_16
#endif
#elif defined (SPI_STOP_SEC_VAR_NO_INIT_16)
#ifndef VAR_NO_INIT_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_16_SEC_STARTED
#undef SPI_STOP_SEC_VAR_NO_INIT_16
#define DEFAULT_STOP_SEC_VAR_NO_INIT_16
#endif
#elif defined (SPI_START_SEC_VAR_FAST_INIT_16)
#ifdef VAR_FAST_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_FAST_16_SEC_STARTED
#undef SPI_START_SEC_VAR_FAST_INIT_16
#define DEFAULT_START_SEC_VAR_FAST_16BIT
#endif
#elif defined (SPI_STOP_SEC_VAR_FAST_INIT_16)
#ifndef VAR_FAST_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_FAST_16_SEC_STARTED
#undef SPI_STOP_SEC_VAR_FAST_INIT_16
#define DEFAULT_STOP_SEC_VAR_FAST_16BIT
#endif
#elif defined (SPI_START_SEC_VAR_INIT_32)
#ifdef VAR_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_32_SEC_STARTED
#undef SPI_START_SEC_VAR_INIT_32
#define DEFAULT_START_SEC_VAR_INIT_32
#endif
#elif defined (SPI_STOP_SEC_VAR_INIT_32)
#ifndef VAR_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_32_SEC_STARTED
#undef SPI_STOP_SEC_VAR_INIT_32
#define DEFAULT_STOP_SEC_VAR_INIT_32
#endif
#elif defined (SPI_START_SEC_VAR_NO_INIT_32)
#ifdef VAR_NO_INIT_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_32_SEC_STARTED
#undef SPI_START_SEC_VAR_NO_INIT_32
#define DEFAULT_START_SEC_VAR_NO_INIT_32
#endif
#elif defined (SPI_STOP_SEC_VAR_NO_INIT_32)
#ifndef VAR_NO_INIT_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_32_SEC_STARTED
#undef SPI_STOP_SEC_VAR_NO_INIT_32
#define DEFAULT_STOP_SEC_VAR_NO_INIT_32
#endif
#elif defined (SPI_START_SEC_VAR_FAST_INIT_32)
#ifdef VAR_FAST_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_FAST_32_SEC_STARTED
#undef SPI_START_SEC_VAR_FAST_INIT_32
#define DEFAULT_START_SEC_VAR_FAST_32BIT
#endif
#elif defined (SPI_STOP_SEC_VAR_FAST_INIT_32)
#ifndef VAR_FAST_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_FAST_32_SEC_STARTED
#undef SPI_STOP_SEC_VAR_FAST_INIT_32
#define DEFAULT_STOP_SEC_VAR_FAST_32BIT
#endif
#elif defined (SPI_START_SEC_VAR_NO_INIT_64)
#ifdef VAR_NO_INIT_64_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_64_SEC_STARTED
#undef SPI_START_SEC_VAR_NO_INIT_64
#define DEFAULT_START_SEC_VAR_NO_INIT_64BIT
#endif
#elif defined (SPI_STOP_SEC_VAR_NO_INIT_64)
#ifndef VAR_NO_INIT_64_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_64_SEC_STARTED
#undef SPI_STOP_SEC_VAR_NO_INIT_64
#define DEFAULT_STOP_SEC_VAR_NO_INIT_64BIT
#endif
#elif defined (SPI_START_SEC_VAR_INIT_UNSPECIFIED)
#ifdef VAR_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_UNSPECIFIED_SEC_STARTED
#undef SPI_START_SEC_VAR_INIT_UNSPECIFIED
#define DEFAULT_START_SEC_VAR_INIT_UNSPECIFIED
#endif
#elif defined (SPI_STOP_SEC_VAR_INIT_UNSPECIFIED)
#ifndef VAR_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_UNSPECIFIED_SEC_STARTED
#undef SPI_STOP_SEC_VAR_INIT_UNSPECIFIED
#define DEFAULT_STOP_SEC_VAR_INIT_UNSPECIFIED
#endif
#elif defined (SPI_START_SEC_VAR_NO_INIT_UNSPECIFIED)
#ifdef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#undef SPI_START_SEC_VAR_NO_INIT_UNSPECIFIED
#define DEFAULT_START_SEC_VAR_NO_INIT_UNSPECIFIED
#endif
#elif defined (SPI_STOP_SEC_VAR_NO_INIT_UNSPECIFIED)
#ifndef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#undef SPI_STOP_SEC_VAR_NO_INIT_UNSPECIFIED
#define DEFAULT_STOP_SEC_VAR_NO_INIT_UNSPECIFIED
#endif
#elif defined (SPI_START_SEC_VAR_NO_INIT_PTR)
#ifdef VAR_NO_INIT_PTR_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_PTR_SEC_STARTED
#undef SPI_START_SEC_VAR_NO_INIT_PTR
#define DEFAULT_START_SEC_VAR_NO_INIT_PTR
#endif
#elif defined (SPI_STOP_SEC_VAR_NO_INIT_PTR)
#ifndef VAR_NO_INIT_PTR_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_PTR_SEC_STARTED
#undef SPI_STOP_SEC_VAR_NO_INIT_PTR
#define DEFAULT_STOP_SEC_VAR_NO_INIT_PTR
#endif
#elif defined (SPI_START_SEC_VAR_FAST_INIT_UNSPECIFIED)
#ifdef VAR_FAST_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_FAST_UNSPECIFIED_SEC_STARTED
#undef SPI_START_SEC_VAR_FAST_INIT_UNSPECIFIED
#define DEFAULT_START_SEC_VAR_FAST_UNSPECIFIED
#endif
#elif defined (SPI_STOP_SEC_VAR_FAST_INIT_UNSPECIFIED)
#ifndef VAR_FAST_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_FAST_UNSPECIFIED_SEC_STARTED
#undef SPI_STOP_SEC_VAR_FAST_INIT_UNSPECIFIED
#define DEFAULT_STOP_SEC_VAR_FAST_UNSPECIFIED
#endif
#elif defined (SPI_START_SEC_CONFIG_VAR_NO_INIT_UNSPECIFIED)
#ifdef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#undef SPI_START_SEC_CONFIG_VAR_NO_INIT_UNSPECIFIED
#define DEFAULT_START_SEC_VAR_NO_INIT_UNSPECIFIED
#endif
#elif defined (SPI_STOP_SEC_CONFIG_VAR_NO_INIT_UNSPECIFIED)
#ifndef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NO_INIT_UNSPECIFIED_SEC_STARTED
#undef SPI_STOP_SEC_CONFIG_VAR_NO_INIT_UNSPECIFIED
#define DEFAULT_STOP_SEC_VAR_NO_INIT_UNSPECIFIED
#endif
#elif defined (SPI_START_SEC_CONST_BOOLEAN)
#ifdef CONST_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_BOOLEAN_SEC_STARTED
#undef SPI_START_SEC_CONST_BOOLEAN
#define DEFAULT_START_SEC_CONST_1
#endif
#elif defined (SPI_STOP_SEC_CONST_BOOLEAN)
#ifndef CONST_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_BOOLEAN_SEC_STARTED
#undef SPI_STOP_SEC_CONST_BOOLEAN
#define DEFAULT_STOP_SEC_CONST_1
#endif
#elif defined (SPI_START_SEC_CONST_8)
#ifdef CONST_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_8_SEC_STARTED
#undef SPI_START_SEC_CONST_8
#define DEFAULT_START_SEC_CONST_8
#endif
#elif defined (SPI_STOP_SEC_CONST_8)
#ifndef CONST_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_8_SEC_STARTED
#undef SPI_STOP_SEC_CONST_8
#define DEFAULT_STOP_SEC_CONST_8
#endif
#elif defined (SPI_START_SEC_CONST_16)
#ifdef CONST_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_16_SEC_STARTED
#undef SPI_START_SEC_CONST_16
#define DEFAULT_START_SEC_CONST_16
#endif
#elif defined (SPI_STOP_SEC_CONST_16)
#ifndef CONST_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_16_SEC_STARTED
#undef SPI_STOP_SEC_CONST_16
#define DEFAULT_STOP_SEC_CONST_16
#endif
#elif defined (SPI_START_SEC_CONST_32)
#ifdef CONST_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_32_SEC_STARTED
#undef SPI_START_SEC_CONST_32
#define DEFAULT_START_SEC_CONST_32
#endif
#elif defined (SPI_STOP_SEC_CONST_32)
#ifndef CONST_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_32_SEC_STARTED
#undef SPI_STOP_SEC_CONST_32
#define DEFAULT_STOP_SEC_CONST_32
#endif
#elif defined (SPI_START_SEC_CONST_UNSPECIFIED)
#ifdef CONST_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_UNSPECIFIED_SEC_STARTED
#undef SPI_START_SEC_CONST_UNSPECIFIED
#define DEFAULT_START_SEC_CONST_UNSPECIFIED
#endif
#elif defined (SPI_STOP_SEC_CONST_UNSPECIFIED)
#ifndef CONST_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_UNSPECIFIED_SEC_STARTED
#undef SPI_STOP_SEC_CONST_UNSPECIFIED
#define DEFAULT_STOP_SEC_CONST_UNSPECIFIED
#endif
#elif defined (SPI_START_SEC_CONFIG_DATA_BOOLEAN)
#ifdef SPI_CONFIG_DATA_BOOLEAN_SEC_STARTED
#error "Memory section is not stopped"
#else
#define SPI_CONFIG_DATA_BOOLEAN_SEC_STARTED
#undef SPI_START_SEC_CONFIG_DATA_BOOLEAN
#define DEFAULT_START_SEC_CONFIG_DATA_1
#endif
#elif defined (SPI_STOP_SEC_CONFIG_DATA_BOOLEAN)
#ifndef SPI_CONFIG_DATA_BOOLEAN_SEC_STARTED
#error "Memory section is not started"
#else
#undef SPI_CONFIG_DATA_BOOLEAN_SEC_STARTED
#undef SPI_STOP_SEC_CONFIG_DATA_BOOLEAN
#define DEFAULT_STOP_SEC_CONFIG_DATA_1
#endif
#elif defined (SPI_START_SEC_CONFIG_DATA_8)
#ifdef SPI_CONFIG_DATA_8_SEC_STARTED
#error "Memory section is not stopped"
#else
#define SPI_CONFIG_DATA_8_SEC_STARTED
#undef SPI_START_SEC_CONFIG_DATA_8
#define DEFAULT_START_SEC_CONFIG_DATA_8
#endif
#elif defined (SPI_STOP_SEC_CONFIG_DATA_8)
#ifndef SPI_CONFIG_DATA_8_SEC_STARTED
#error "Memory section is not started"
#else
#undef SPI_CONFIG_DATA_8_SEC_STARTED
#undef SPI_STOP_SEC_CONFIG_DATA_8
#define DEFAULT_STOP_SEC_CONFIG_DATA_8
#endif
#elif defined (SPI_START_SEC_CONFIG_DATA_16)
#ifdef SPI_CONFIG_DATA_16_SEC_STARTED
#error "Memory section is not stopped"
#else
#define SPI_CONFIG_DATA_16_SEC_STARTED
#undef SPI_START_SEC_CONFIG_DATA_16
#define DEFAULT_START_SEC_CONFIG_DATA_16
#endif
#elif defined (SPI_STOP_SEC_CONFIG_DATA_16)
#ifndef SPI_CONFIG_DATA_16_SEC_STARTED
#error "Memory section is not started"
#else
#undef SPI_CONFIG_DATA_16_SEC_STARTED
#undef SPI_STOP_SEC_CONFIG_DATA_16
#define DEFAULT_STOP_SEC_CONFIG_DATA_16
#endif
#elif defined (SPI_START_SEC_CONFIG_DATA_32)
#ifdef SPI_CONFIG_DATA_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define SPI_CONFIG_DATA_32_SEC_STARTED
#undef SPI_START_SEC_CONFIG_DATA_32
#define DEFAULT_START_SEC_CONFIG_DATA_32
#endif
#elif defined (SPI_STOP_SEC_CONFIG_DATA_32)
#ifndef SPI_CONFIG_DATA_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef SPI_CONFIG_DATA_32_SEC_STARTED
#undef SPI_STOP_SEC_CONFIG_DATA_32
#define DEFAULT_STOP_SEC_CONFIG_DATA_32
#endif
#elif defined (SPI_START_SEC_CONFIG_DATA_UNSPECIFIED)
#ifdef SPI_CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define SPI_CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#undef SPI_START_SEC_CONFIG_DATA_UNSPECIFIED
#define DEFAULT_START_SEC_CONFIG_DATA_UNSPECIFIED
#endif
#elif defined (SPI_STOP_SEC_CONFIG_DATA_UNSPECIFIED)
#ifndef SPI_CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef SPI_CONFIG_DATA_UNSPECIFIED_SEC_STARTED
#undef SPI_STOP_SEC_CONFIG_DATA_UNSPECIFIED
#define DEFAULT_STOP_SEC_CONFIG_DATA_UNSPECIFIED
#endif
#elif defined (SPI_START_SEC_DBTOC_DATA_UNSPECIFIED)
#ifdef DBTOC_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define DBTOC_DATA_UNSPECIFIED_SEC_STARTED
#undef SPI_START_SEC_DBTOC_DATA_UNSPECIFIED
#define DEFAULT_START_SEC_DBTOC_DATA_UNSPECIFIED
#endif
#elif defined (SPI_STOP_SEC_DBTOC_DATA_UNSPECIFIED)
#ifndef DBTOC_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef DBTOC_DATA_UNSPECIFIED_SEC_STARTED
#undef SPI_STOP_SEC_DBTOC_DATA_UNSPECIFIED
#define DEFAULT_STOP_SEC_DBTOC_DATA_UNSPECIFIED
#endif
#elif defined (SPI_START_SEC_PUBLIC_CODE)
#ifdef PUBLIC_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define PUBLIC_CODE_SEC_STARTED
#undef SPI_START_SEC_PUBLIC_CODE
#define PRIVATE_SECTION ".text.SPI_PUBLIC_CODE_ROM"
#define SECTION_TYPE text
#endif
#elif defined (SPI_STOP_SEC_PUBLIC_CODE)
#ifndef PUBLIC_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef PUBLIC_CODE_SEC_STARTED
#undef SPI_STOP_SEC_PUBLIC_CODE
#define DEFAULT_STOP_SEC_CODE
#endif
#elif defined (SPI_START_SEC_PRIVATE_CODE)
#ifdef PRIVATE_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define PRIVATE_CODE_SEC_STARTED
#undef SPI_START_SEC_PRIVATE_CODE
#define PRIVATE_SECTION ".text.SPI_PRIVATE_CODE_ROM"
#define SECTION_TYPE text
#endif
#elif defined (SPI_STOP_SEC_PRIVATE_CODE)
#ifndef PRIVATE_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef PRIVATE_CODE_SEC_STARTED
#undef SPI_STOP_SEC_PRIVATE_CODE
#define DEFAULT_STOP_SEC_CODE
#endif
#elif defined (SPI_START_SEC_APPL_CODE)
#ifdef APPL_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define APPL_CODE_SEC_STARTED
#undef SPI_START_SEC_APPL_CODE
#define PRIVATE_SECTION ".text.SPI_APPL_CODE_ROM"
#define SECTION_TYPE text
#endif
#elif defined (SPI_STOP_SEC_APPL_CODE)
#ifndef APPL_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef APPL_CODE_SEC_STARTED
#undef SPI_STOP_SEC_APPL_CODE
#define DEFAULT_STOP_SEC_CODE
#endif
#elif defined (SPI_START_SEC_CODE_FAST)
#ifdef ISR_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define ISR_CODE_SEC_STARTED
#undef SPI_START_SEC_CODE_FAST
#define DEFAULT_START_SEC_CODE_FAST
#endif
#elif defined (SPI_STOP_SEC_CODE_FAST)
#ifndef ISR_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef ISR_CODE_SEC_STARTED
#undef SPI_STOP_SEC_CODE_FAST
#define DEFAULT_STOP_SEC_CODE_FAST
#endif
/* -------------------------------------------------------------------------- */
/* End of module section mapping */
/* -------------------------------------------------------------------------- */
#else
#error "Spi_MemMap.h: No valid section define found"
#endif /* START_WITH_IF */
/*******************************************************************************
** Default section mapping **
*******************************************************************************/
#include "Common_MemMap.h"
/*******************************************************************************
** End of File **
*******************************************************************************/

View File

@@ -0,0 +1,282 @@
/*============================================================================*/
/* Project = AUTOSAR Renesas R-CarGen4 MCAL Components */
/* Module = Wdg_MemMap.h */
/* SW-VERSION = 1.4.4 */
/*============================================================================*/
/* COPYRIGHT */
/*============================================================================*/
/* (c) 2022 Renesas Electronics Corporation. All rights reserved. */
/*============================================================================*/
/* Purpose: */
/* Provision for sections for Memory Mapping */
/* */
/*============================================================================*/
/* */
/* Unless otherwise agreed upon in writing between your company and */
/* Renesas Electronics Corporation the following shall apply! */
/* */
/* Warranty Disclaimer */
/* */
/* There is no warranty of any kind whatsoever granted by Renesas. Any */
/* warranty is expressly disclaimed and excluded by Renesas, either expressed */
/* or implied, including but not limited to those for non-infringement of */
/* intellectual property, merchantability and/or fitness for the particular */
/* purpose. */
/* */
/* Renesas shall not have any obligation to maintain, service or provide bug */
/* fixes for the supplied Product(s) and/or the Application. */
/* */
/* Each User is solely responsible for determining the appropriateness of */
/* using the Product(s) and assumes all risks associated with its exercise */
/* of rights under this Agreement, including, but not limited to the risks */
/* and costs of program errors, compliance with applicable laws, damage to */
/* or loss of data, programs or equipment, and unavailability or */
/* interruption of operations. */
/* */
/* Limitation of Liability */
/* */
/* In no event shall Renesas be liable to the User for any incidental, */
/* consequential, indirect, or punitive damage (including but not limited */
/* to lost profits) regardless of whether such liability is based on breach */
/* of contract, tort, strict liability, breach of warranties, failure of */
/* essential purpose or otherwise and even if advised of the possibility of */
/* such damages. Renesas shall not be liable for any services or products */
/* provided by third party vendors, developers or consultants identified or */
/* referred to the User by Renesas in connection with the Product(s) and/or */
/* the Application. */
/* */
/*============================================================================*/
/* Environment: */
/* Devices: R-CarGen4 */
/*============================================================================*/
/*******************************************************************************
** Revision Control History **
*******************************************************************************/
/*
* 1.4.5: 05/12/2022 : Update WDG_MEMMAP_SW-VERSION as '1.4.5',
* Updated MCAL memory section
* 1.4.4: 07/11/2022 : Update SW-VERSION as '1.4.4'
* 1.4.3: 15/09/2022 : Update SW-VERSION as '1.4.3'
* 07/09/2022 : Update SW-VERSION as '0.1.4' and update MACRO to unify
* with Common Memmap
* 1.0.3: 17/08/2022 : Update SW-VERSION as '0.1.3'
* 1.0.2: 07/04/2022 : Updated MCAL memory section
* 1.0.1: 21/03/2022 : Updated SW-VERSION.
* 1.0.0: 16/02/2022 : Initial Version.
*/
/******************************************************************************/
/*******************************************************************************
** Include Section **
*******************************************************************************/
/*******************************************************************************
** Version Information **
*******************************************************************************/
/*
* AUTOSAR specification version information
*/
#define WDG_MEMMAP_AR_RELEASE_MAJOR_VERSION 4
#define WDG_MEMMAP_AR_RELEASE_MINOR_VERSION 5
#define WDG_MEMMAP_AR_RELEASE_REVISION_VERSION 0
/*
* File version information
*/
#define WDG_MEMMAP_SW_MAJOR_VERSION 1
#define WDG_MEMMAP_SW_MINOR_VERSION 4
#define WDG_MEMMAP_SW_PATCH_VERSION 5
/*******************************************************************************
** Global Symbols **
*******************************************************************************/
/*******************************************************************************
** Global Data Types **
*******************************************************************************/
/*******************************************************************************
** Module section mapping **
*******************************************************************************/
/*
* The symbol 'START_WITH_IF' is undefined.
*
* Thus, the preprocessor continues searching for defined symbols
* This first #ifdef makes integration of delivered parts of MemMap.h
* easier because every supplier starts with #elif
*/
#if defined (START_WITH_IF)
/* -------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------- */
#elif defined (WDG_START_SEC_VAR_NO_INIT_32)
#ifdef VAR_NOINIT_32_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NOINIT_32_SEC_STARTED
#undef WDG_START_SEC_VAR_NO_INIT_32
#define DEFAULT_START_SEC_VAR_NO_INIT_32
#endif
#elif defined (WDG_STOP_SEC_VAR_NO_INIT_32)
#ifndef VAR_NOINIT_32_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NOINIT_32_SEC_STARTED
#undef WDG_STOP_SEC_VAR_NO_INIT_32
#define DEFAULT_STOP_SEC_VAR_NO_INIT_32
#endif
#elif defined (WDG_START_SEC_VAR_NO_INIT_PTR)
#ifdef VAR_NOINIT_PTR_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NOINIT_PTR_SEC_STARTED
#undef WDG_START_SEC_VAR_NO_INIT_PTR
#define DEFAULT_START_SEC_VAR_NO_INIT_PTR
#endif
#elif defined (WDG_STOP_SEC_VAR_NO_INIT_PTR)
#ifndef VAR_NOINIT_PTR_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NOINIT_PTR_SEC_STARTED
#undef WDG_STOP_SEC_VAR_NO_INIT_PTR
#define DEFAULT_STOP_SEC_VAR_NO_INIT_PTR
#endif
#elif defined (WDG_START_SEC_VAR_INIT_UNSPECIFIED)
#ifdef VAR_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_UNSPECIFIED_SEC_STARTED
#undef WDG_START_SEC_VAR_INIT_UNSPECIFIED
#define DEFAULT_START_SEC_VAR_INIT_UNSPECIFIED
#endif
#elif defined (WDG_STOP_SEC_VAR_INIT_UNSPECIFIED)
#ifndef VAR_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_UNSPECIFIED_SEC_STARTED
#undef WDG_STOP_SEC_VAR_INIT_UNSPECIFIED
#define DEFAULT_STOP_SEC_VAR_INIT_UNSPECIFIED
#endif
#elif defined (WDG_START_SEC_VAR_NO_INIT_UNSPECIFIED)
#ifdef VAR_NOINIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define VAR_NOINIT_UNSPECIFIED_SEC_STARTED
#undef WDG_START_SEC_VAR_NO_INIT_UNSPECIFIED
#define DEFAULT_START_SEC_VAR_NO_INIT_UNSPECIFIED
#endif
#elif defined (WDG_STOP_SEC_VAR_NO_INIT_UNSPECIFIED)
#ifndef VAR_NOINIT_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef VAR_NOINIT_UNSPECIFIED_SEC_STARTED
#undef WDG_STOP_SEC_VAR_NO_INIT_UNSPECIFIED
#define DEFAULT_STOP_SEC_VAR_NO_INIT_UNSPECIFIED
#endif
#elif defined (WDG_START_SEC_DBTOC_DATA_UNSPECIFIED)
#ifdef DBTOC_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define DBTOC_DATA_UNSPECIFIED_SEC_STARTED
#undef WDG_START_SEC_DBTOC_DATA_UNSPECIFIED
#define DEFAULT_START_SEC_DBTOC_DATA_UNSPECIFIED
#endif
#elif defined (WDG_STOP_SEC_DBTOC_DATA_UNSPECIFIED)
#ifndef DBTOC_DATA_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef DBTOC_DATA_UNSPECIFIED_SEC_STARTED
#undef WDG_STOP_SEC_DBTOC_DATA_UNSPECIFIED
#define DEFAULT_STOP_SEC_DBTOC_DATA_UNSPECIFIED
#endif
#elif defined (WDG_START_SEC_PUBLIC_CODE)
#ifdef PUBLIC_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define PUBLIC_CODE_SEC_STARTED
#undef WDG_START_SEC_PUBLIC_CODE
#define PRIVATE_SECTION ".text.WDG_PUBLIC_CODE_ROM"
#define SECTION_TYPE text
#endif
#elif defined (WDG_STOP_SEC_PUBLIC_CODE)
#ifndef PUBLIC_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef PUBLIC_CODE_SEC_STARTED
#undef WDG_STOP_SEC_PUBLIC_CODE
#undef PRIVATE_SECTION
#undef SECTION_TYPE
#endif
#elif defined (WDG_START_SEC_CODE_FAST)
#ifdef ISR_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define ISR_CODE_SEC_STARTED
#undef WDG_START_SEC_CODE_FAST
#define DEFAULT_START_SEC_CODE_FAST
#endif
#elif defined (WDG_STOP_SEC_CODE_FAST)
#ifndef ISR_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef ISR_CODE_SEC_STARTED
#undef WDG_STOP_SEC_CODE_FAST
#define DEFAULT_STOP_SEC_CODE_FAST
#endif
#elif defined (WDG_START_SEC_PRIVATE_CODE)
#ifdef PRIVATE_CODE_SEC_STARTED
#error "Memory section is not stopped"
#else
#define PRIVATE_CODE_SEC_STARTED
#undef WDG_START_SEC_PRIVATE_CODE
#define PRIVATE_SECTION ".text.WDG_PRIVATE_CODE_ROM"
#define SECTION_TYPE text
#endif
#elif defined (WDG_STOP_SEC_PRIVATE_CODE)
#ifndef PRIVATE_CODE_SEC_STARTED
#error "Memory section is not started"
#else
#undef PRIVATE_CODE_SEC_STARTED
#undef WDG_STOP_SEC_PRIVATE_CODE
#undef PRIVATE_SECTION
#undef SECTION_TYPE
#endif
#elif defined (WDG_START_SEC_CONST_UNSPECIFIED)
#ifdef CONST_UNSPECIFIED_SEC_STARTED
#error "Memory section is not stopped"
#else
#define CONST_UNSPECIFIED_SEC_STARTED
#undef WDG_START_SEC_CONST_UNSPECIFIED
#define DEFAULT_START_SEC_CONST_UNSPECIFIED
#endif
#elif defined (WDG_STOP_SEC_CONST_UNSPECIFIED)
#ifndef CONST_UNSPECIFIED_SEC_STARTED
#error "Memory section is not started"
#else
#undef CONST_UNSPECIFIED_SEC_STARTED
#undef WDG_STOP_SEC_CONST_UNSPECIFIED
#define DEFAULT_STOP_SEC_CONST_UNSPECIFIED
#endif
#else
#error "Wdg_MemMap.h: No valid section define found"
#endif /* START_WITH_IF */
/*******************************************************************************
** Default section mapping **
*******************************************************************************/
#include "Common_MemMap.h"
/*******************************************************************************
** End of File **
*******************************************************************************/

View File

@@ -0,0 +1,94 @@
################################################################################
# INTERNAL REQUIRED CONFIGURATION
#
# COMPILER_INSTALL_DIR
#
################################################################################
# REQUIRED (in base_make)
#
# CC
# LINKER
# DBLINKER
# CONVERTER
# ARM Compiler
#ifeq ($(findstring arm, $(COMPILER_NAME)), arm)
# ARM Compiler Driver for compiling source files
CC="$(COMPILER_INSTALL_DIR)\armclang.exe"
# ARM Compiler Driver for assembling the startup files
ASM="$(COMPILER_INSTALL_DIR)\armclang.exe"
# ARM Compiler Driver for linking the object files and startup code
LINKER="$(COMPILER_INSTALL_DIR)\armlink.exe"
# ARM Linker for linking the object files without startup code
DBLINKER="$(COMPILER_INSTALL_DIR)\armar.exe"
# ARM Code converter to generate motorola S-Record file
CONVERTER="$(COMPILER_INSTALL_DIR)\fromelf.exe"
COMPILER=arm
################################################################################
################################################################################
# Compiler Flag
CFLAGS= -c -O3 --target=arm-arm-none-eabi -g -gdwarf-2 -fno-short-enums -mfloat-abi=hard -nostdlib -nostdlibinc -mno-unaligned-access -MD -MP -Wundef
################################################################################
################################################################################
# Linker Flag
LFLAGS= --datacompressor off --no-startup --entry=Start --callgraph --map --info=sizes --info=totals --info=unused --info=compression --info=stack --info=inline --diag_error=warning
################################################################################
################################################################################
# Compiler Flag
CFLAGS+= -std=c99 -pedantic-errors -Werror -Wall -Wextra -Wconversion -Wunused -Wuninitialized -DNDEBUG
################################################################################
################################################################################
# Flags
CFLAGS+= -mcpu=cortex-r52 -mfpu=neon-fp-armv8
LFLAGS+= --cpu=cortex-r52
################################################################################
################################################################################
# Assembler Flag
AFLAGS= $(CFLAGS) -x assembler-with-cpp
################################################################################
#endif
################################################################################
SFLAGS= --m32combined
################################################################################
# ARM Compiler
LNK_FILE_SUFFIX = scat
EXE_FILE_SUFFIX = elf
ASM_FILE_SUFFIX = s
OBJ_FILE_SUFFIX = o
ASM_OBJ_FILE_SUFFIX = o
LST_FILE_SUFFIX = lst
PRE_FILE_SUFFIX = pre
MAP_FILE_SUFFIX = map
S_RECORD_SUFFIX = srec
C_FILE_SUFFIX = c
LIB_FILE_SUFFIX = a
################################################################################
# REGISTRY
#
CC_INCLUDE_PATH += $(COMPILER_CORE_FILES)
CPP_INCLUDE_PATH +=
ASM_INCLUDE_PATH +=
PREPROCESSOR_DEFINES +=
################################################################################
# Directory to store the Assembly List file and the Preprocessor file #
################################################################################
export TEXTPATH=$(OBJECT_OUTPUT_PATH)
export OBJPATH=$(OBJECT_OUTPUT_PATH)
################################################################################

View File

@@ -0,0 +1,273 @@
/*============================================================================*/
/* Project = AUTOSAR Renesas CPF MCAL Components */
/* Module = Compiler.h */
/* SW-VERSION = 1.0.4 */
/*============================================================================*/
/* COPYRIGHT */
/*============================================================================*/
/* Copyright(c) 2021-2022 Renesas Electronics Corporation. */
/*============================================================================*/
/* Purpose: */
/* Provision for compiler abstraction macros */
/*============================================================================*/
/* */
/* Unless otherwise agreed upon in writing between your company and */
/* Renesas Electronics Corporation the following shall apply! */
/* */
/* Warranty Disclaimer */
/* */
/* There is no warranty of any kind whatsoever granted by Renesas. Any */
/* warranty is expressly disclaimed and excluded by Renesas, either expressed */
/* or implied, including but not limited to those for non-infringement of */
/* intellectual property, merchantability and/or fitness for the particular */
/* purpose. */
/* */
/* Renesas shall not have any obligation to maintain, service or provide bug */
/* fixes for the supplied Product(s) and/or the Application. */
/* */
/* Each User is solely responsible for determining the appropriateness of */
/* using the Product(s) and assumes all risks associated with its exercise */
/* of rights under this Agreement, including, but not limited to the risks */
/* and costs of program errors, compliance with applicable laws, damage to */
/* or loss of data, programs or equipment, and unavailability or */
/* interruption of operations. */
/* */
/* Limitation of Liability */
/* */
/* In no event shall Renesas be liable to the User for any incidental, */
/* consequential, indirect, or punitive damage (including but not limited */
/* to lost profits) regardless of whether such liability is based on breach */
/* of contract, tort, strict liability, breach of warranties, failure of */
/* essential purpose or otherwise and even if advised of the possibility of */
/* such damages. Renesas shall not be liable for any services or products */
/* provided by third party vendors, developers or consultants identified or */
/* referred to the User by Renesas in connection with the Product(s) and/or */
/* the Application. */
/* */
/*============================================================================*/
/* Environment: */
/* Devices: CPF */
/*============================================================================*/
/*******************************************************************************
** Revision Control History **
*******************************************************************************/
/*
* 1.0.4: 01/10/2022 : Remove Misra-C violation message comments.
* Update Compiler Abstraction macro's value.
* Remove macros NO_PROLOGUE and PRAGMA.
* 1.0.3: 22/09/2022 : Added inline asmembler wfi, wfe, dsb, isb to support
* SML structure solution.
* 1.0.2: 21/04/2022 : Update value of macro VAR.
* Remove unsupported GHS source code.
* 1.0.1: 12/04/2022 : Add ASM_WFI(), ASM_WFE(), ASM_DSB() and
* ASM_ISB() functions.
* 1.0.0: 18/10/2021 : Initial Version.
*
*/
/******************************************************************************/
#ifndef COMPILER_H
#define COMPILER_H
/*******************************************************************************
** Include Section **
*******************************************************************************/
#include "Compiler_Cfg.h" /* Module specific memory and pointer classes */
#include "arm_cr.h"
/*******************************************************************************
** Version Information **
*******************************************************************************/
/*******************************************************************************
** MISRA C Rule Violations **
*******************************************************************************/
/*******************************************************************************
** Global Symbols **
*******************************************************************************/
/*
* Compiler abstraction symbols
*/
#define STATIC static
#define _INTERRUPT_
/* The compiler abstraction shall provide the INLINE define for abstraction
of the keyword inline.
*/
/* SWS_COMPILER_00057 */
#define INLINE inline
/* The compiler abstraction shall provide the LOCAL_INLINE define
for abstraction of the keyword inline in functions with "static" scope
*/
/* SWS_COMPILER_00060 */
#define LOCAL_INLINE static inline
/* SWS_COMPILER_00051 */
#ifndef NULL_PTR
#define NULL_PTR ((void *)0)
#endif
/* AUTOMATIC used for the declaration of local pointers */
/* SWS_COMPILER_00046 */
#define AUTOMATIC
/* TYPEDEF used for defining pointer types within type definitions */
/* SWS_COMPILER_00059 */
#define TYPEDEF
/* The compiler abstraction shall define the P2FUNC macro for the type
definition of pointers to functions.
rettype return type of the function
ptrclass defines the classification of the pointer's distance
fctname function name respectively name of the defined type
*/
/* SWS_COMPILER_00039 */
#define P2FUNC(rettype, ptrclass, fctname) rettype (*fctname)
/* The compiler abstraction shall define the FUNC macro for the declaration and
definition of functions, that ensures correct syntax of function
declarations as required by a specific compiler. - used for API functions
rettype return type of the function
memclass classification of the function itself
*/
/* SWS_COMPILER_00001 */
#define FUNC(rettype, memclass) rettype memclass
/* The compiler abstraction shall define the FUNC_P2CONST macro for the
declaration and definition of functions returning a pointer to a constant.
This shall ensure the correct syntax of function declarations as required by
a specific compiler.
*/
/* SWS_COMPILER_00061 */
#define FUNC_P2CONST(rettype, ptrclass, memclass)\
const ptrclass rettype * memclass
/* The compiler abstraction shall define the FUNC_P2VAR macro for the
declaration and definition of functions returning a pointer to a variable.
This shall ensure the correct syntax of function declarations as required
by a specific compiler. */
/* SWS_COMPILER_00063 */
#define FUNC_P2VAR(rettype, ptrclass, memclass) ptrclass rettype * memclass
/* The compiler abstraction shall define the P2CONST macro for the declaration
and definition of pointers in RAM pointing to constants
The pointer itself is modifiable (e.g. ExamplePtr++).
The pointers target is not modifiable (read only).
ptrtype type of the referenced constant
memclass classification of the pointer's variable itself
ptrclass defines the classification of the pointer's distance
*/
/* SWS_COMPILER_00013 */
#define P2CONST(ptrtype, memclass, ptrclass) const ptrtype * memclass
/* The compiler abstraction shall define the P2VAR macro for the declaration and
definition of pointers in RAM, pointing to variables.
The pointer itself is modifiable (e.g. ExamplePtr++).
The pointers target is modifiable (e.g. *ExamplePtr = 5).
ptrtype type of the referenced variable
memclass classification of the pointer's variable itself
ptrclass defines the classification of the pointer's distance
*/
/* SWS_COMPILER_00006 */
#define P2VAR(ptrtype, memclass, ptrclass) ptrtype * memclass
/* The compiler abstraction shall define the CONSTP2VAR macro for the
declaration and definition of constant pointers accessing variables.
The pointer itself is not modifiable (fix address).
The pointers target is modifiable (e.g. *ExamplePtr = 18).
ptrtype type of the referenced variable
memclass classification of the pointer's variable itself
ptrclass defines the classification of the pointer's distance
*/
/* SWS_COMPILER_00031 */
#define CONSTP2VAR(ptrtype, memclass, ptrclass) ptrtype * const memclass
/* The compiler abstraction shall define the CONSTP2CONST macro for the
declaration and definition of constant pointers accessing constants.
The pointer itself is not modifiable (fix address).
The pointers target is not modifiable (read only).
ptrtype type of the referenced constant
memclass classification of the pointer's variable itself
ptrclass defines the classification of the pointer's distance
*/
/* SWS_COMPILER_00032 */
#define CONSTP2CONST(ptrtype, memclass, ptrclass) const ptrtype * const memclass
/* The compiler abstraction shall define the CONSTP2FUNC macro for the
type definition of constant pointers to functions.
rettype return type of the function
ptrclass defines the classification of the pointer's distance
fctname function name respectively name of the defined type
*/
/* SWS_COMPILER_00065 */
#define CONSTP2FUNC(rettype, ptrclass, fctname) rettype (* const fctname)
/* The compiler abstraction shall define the CONST macro for the
declaration and definition of constants.
consttype type of the constant
memclass classification of the constant itself
*/
/* SWS_COMPILER_00023 */
#define CONST(consttype, memclass) const consttype memclass
/* The compiler abstraction shall define the VAR macro for the declaration
and definition of variables.
vartype type of the variable
memclass classification of the variable itself
*/
/* SWS_COMPILER_00026 */
#define VAR(vartype, memclass) vartype memclass
/* Inline assembler support for HALT instruction */
#define ASM_HALT() __asm("halt")
/* Inline assembler support for NOP instruction */
#define ASM_NOP() __asm("nop")
/* Inline assembler support for WFI instruction */
#define ASM_WFI() __asm("wfi")
/* Inline assembler support for WFE instruction */
#define ASM_WFE() __asm("wfe")
/* Inline assembler support for DSB instruction */
#define ASM_DSB() __asm("dsb")
/* Inline assembler support for ISB instruction */
#define ASM_ISB() __asm("isb")
#define ENABLE_INTERRUPT() __asm("cpsie i\n\t")
#define DISABLE_INTERRUPT() __asm("cpsid i\n\t")
/* Inline assembler support for SYNCI instruction */
#define EXECUTE_SYNCI() __asm("nop")
/* Inline assembler support for syncp instruction */
#define EXECUTE_SYNCP() __asm("nop")
/* Inline assembler support for syncm instruction */
#define EXECUTE_SYNCM() __asm("nop")
#define __HAS_FPU__
/*******************************************************************************
** Global Data Types **
*******************************************************************************/
/*******************************************************************************
** Function Prototypes **
*******************************************************************************/
#endif /* COMPILER_H */
/*******************************************************************************
** End of File **
*******************************************************************************/

View File

@@ -0,0 +1,734 @@
/*============================================================================*/
/* Project = AUTOSAR Renesas CPF MCAL Components */
/* Module = Compiler_Cfg.h */
/* SW-VERSION = 1.0.6 */
/*============================================================================*/
/* COPYRIGHT */
/*============================================================================*/
/* Copyright(c) 2021-2022 Renesas Electronics Corporation. */
/*============================================================================*/
/* Purpose: */
/* This file contains compiler macros */
/*============================================================================*/
/* */
/* Unless otherwise agreed upon in writing between your company and */
/* Renesas Electronics Corporation the following shall apply! */
/* */
/* Warranty Disclaimer */
/* */
/* There is no warranty of any kind whatsoever granted by Renesas. Any */
/* warranty is expressly disclaimed and excluded by Renesas, either expressed */
/* or implied, including but not limited to those for non-infringement of */
/* intellectual property, merchantability and/or fitness for the particular */
/* purpose. */
/* */
/* Renesas shall not have any obligation to maintain, service or provide bug */
/* fixes for the supplied Product(s) and/or the Application. */
/* */
/* Each User is solely responsible for determining the appropriateness of */
/* using the Product(s) and assumes all risks associated with its exercise */
/* of rights under this Agreement, including, but not limited to the risks */
/* and costs of program errors, compliance with applicable laws, damage to */
/* or loss of data, programs or equipment, and unavailability or */
/* interruption of operations. */
/* */
/* Limitation of Liability */
/* */
/* In no event shall Renesas be liable to the User for any incidental, */
/* consequential, indirect, or punitive damage (including but not limited */
/* to lost profits) regardless of whether such liability is based on breach */
/* of contract, tort, strict liability, breach of warranties, failure of */
/* essential purpose or otherwise and even if advised of the possibility of */
/* such damages. Renesas shall not be liable for any services or products */
/* provided by third party vendors, developers or consultants identified or */
/* referred to the User by Renesas in connection with the Product(s) and/or */
/* the Application. */
/* */
/*============================================================================*/
/* Environment: */
/* Devices: CPF */
/*============================================================================*/
/*******************************************************************************
** Revision Control History **
*******************************************************************************/
/*
* 1.0.6: 13/10/2022 : Define value for memclass macros CDDIPMMU_APPL_CONST,
* CDDIPMMU_APPL_DATA and CDDIPMMU_CONFIG_DATA.
* Add macro COMPILER_ATTRIBUTE_GENERAL for definition of
* CDDRFSO_APPL_CONST, CDDRFSO_APPL_DATA and
* CDDRFSO_CONFIG_DATA.
* Change "CDD_THS" to "CDDTHS" for THS defined macro
* 1.0.5: 12/07/2022 : Remove DIO_CODE_SLOW for DIO module.
* 1.0.4: 20/05/2022 : Update compiler macro definitions in CAN.
* Add DIO_CODE_SLOW for DIO module.
* 1.0.3: 18/04/2022 : Update compiler macros for CAN, DIO, FLS, GPT, MCU,
* PORT, SPI, CRC and WDG modules.
* Remove unsupported modules PWM, ADC, ICU, FlexRay,
* LIN, FLSTST and RAMTST.
* 1.0.2: 03/03/2022 : Update compiler macros for WDG and ETH modules
* Add compiler define for THS, RFSO, IPMMU, CRC
* and EMM modules.
* 1.0.1: 10/11/2021 : Update SW-VERSION to 1.0.1.
* Add FLS_CODE_SLOW for FLS module.
* 1.0.0: 18/10/2021 : Initial Version.
*/
/******************************************************************************/
/*******************************************************************************
** Include Section **
*******************************************************************************/
#ifndef COMPILER_CFG_H
#define COMPILER_CFG_H
#include "Compiler_Cfg_dep.h"
/*******************************************************************************
** Version Information **
*******************************************************************************/
/*******************************************************************************
** Global Symbols **
*******************************************************************************/
/*******************************************************************************
** Configuration data **
*******************************************************************************/
/*
* The following memory and pointer classes can be configured per module.
* These #defines are passed to the compiler abstraction macros in Compiler.h
*
* Note:
* module internal functions (statics) that get into one section
* (together with API) shall fit into one page.
*/
/* ---------------------------------------------------------------------------*/
/* General */
/* ---------------------------------------------------------------------------*/
#define REGSPACE /* Registers */
/* ---------------------------------------------------------------------------*/
/* MCU */
/* ---------------------------------------------------------------------------*/
/* API functions */
#define MCU_PUBLIC_CODE COMPILER_ATTRIBUTE_GENERAL
/* API constants */
#define MCU_PUBLIC_CONST COMPILER_ATTRIBUTE_GENERAL
/* Internal functions */
#define MCU_PRIVATE_CODE COMPILER_ATTRIBUTE_GENERAL
/* Internal ROM Data */
#define MCU_PRIVATE_CONST COMPILER_ATTRIBUTE_GENERAL
/* callbacks of the Application */
#define MCU_APPL_CODE COMPILER_ATTRIBUTE_GENERAL
/* Applications' ROM Data */
#define MCU_APPL_CONST COMPILER_ATTRIBUTE_GENERAL
/* Applications' RAM Data */
#define MCU_APPL_DATA COMPILER_ATTRIBUTE_GENERAL
/* 'Near' RAM Data */
#define MCU_VAR_FAST_NO_INIT COMPILER_ATTRIBUTE_GENERAL
/* API functions */
#define MCU_CODE_FAST COMPILER_ATTRIBUTE_GENERAL
/* API constants */
#define MCU_CONST COMPILER_ATTRIBUTE_GENERAL
/* Desc. Tables -> Config-dependent Config. dependent (reg. size) data */
#define MCU_CONFIG_DATA COMPILER_ATTRIBUTE_GENERAL
/* Data which is initialized during Startup */
#define MCU_VAR_INIT COMPILER_ATTRIBUTE_GENERAL
/* Data which is not initialized during Startup */
#define MCU_VAR_NO_INIT COMPILER_ATTRIBUTE_GENERAL
/* Data Constants */
#define MCU_CONST COMPILER_ATTRIBUTE_GENERAL
/* Memory class for global variables which are initialized after every reset */
#define MCU_VAR COMPILER_ATTRIBUTE_GENERAL
/* ---------------------------------------------------------------------------*/
/* GPT */
/* ---------------------------------------------------------------------------*/
/* API functions */
#define GPT_PUBLIC_CODE COMPILER_ATTRIBUTE_GENERAL
/* API constants */
#define GPT_PUBLIC_CONST COMPILER_ATTRIBUTE_GENERAL
/* Internal functions */
#define GPT_PRIVATE_CODE COMPILER_ATTRIBUTE_GENERAL
/* Internal ROM Data */
#define GPT_PRIVATE_CONST COMPILER_ATTRIBUTE_GENERAL
/* callbacks of the Application */
#define GPT_APPL_CODE COMPILER_ATTRIBUTE_GENERAL
/* Applications' ROM Data */
#define GPT_APPL_CONST COMPILER_ATTRIBUTE_GENERAL
/* Applications' RAM Data */
#define GPT_APPL_DATA COMPILER_ATTRIBUTE_GENERAL
/* 'Near' RAM Data */
#define GPT_VAR_FAST_NO_INIT COMPILER_ATTRIBUTE_GENERAL
/* API functions */
#define GPT_CODE_FAST COMPILER_ATTRIBUTE_GENERAL
/* API constants */
#define GPT_CONST COMPILER_ATTRIBUTE_GENERAL
/* Desc. Tables -> Config-dependent Config. dependent (reg. size) data */
#define GPT_CONFIG_DATA COMPILER_ATTRIBUTE_GENERAL
/* Data which is initialized during Startup */
#define GPT_VAR_INIT COMPILER_ATTRIBUTE_GENERAL
/* Data which is not initialized during Startup */
#define GPT_VAR_NO_INIT COMPILER_ATTRIBUTE_GENERAL
/* Data Constants */
#define GPT_CONST COMPILER_ATTRIBUTE_GENERAL
/* Memory class for global variables which are initialized after every reset */
#define GPT_VAR COMPILER_ATTRIBUTE_GENERAL
/* ---------------------------------------------------------------------------*/
/* WDG */
/* ---------------------------------------------------------------------------*/
/* API functions */
#define WDG_PUBLIC_CODE COMPILER_ATTRIBUTE_GENERAL
/* API constants */
#define WDG_PUBLIC_CONST COMPILER_ATTRIBUTE_GENERAL
/* Internal functions */
#define WDG_PRIVATE_CODE COMPILER_ATTRIBUTE_GENERAL
/* Module internal data */
#define WDG_PRIVATE_DATA COMPILER_ATTRIBUTE_GENERAL
/* Internal ROM Data */
#define WDG_PRIVATE_CONST COMPILER_ATTRIBUTE_GENERAL
/* callbacks of the Application */
#define WDG_APPL_CODE COMPILER_ATTRIBUTE_GENERAL
/* Applications' ROM Data */
#define WDG_APPL_CONST COMPILER_ATTRIBUTE_GENERAL
/* Applications' RAM Data */
#define WDG_APPL_DATA COMPILER_ATTRIBUTE_GENERAL
/* 'Near' RAM Data */
#define WDG_FAST_DATA COMPILER_ATTRIBUTE_GENERAL
/* API functions */
#define WDG_CODE_FAST COMPILER_ATTRIBUTE_GENERAL
/* API constants */
#define WDG_FAST_CONST COMPILER_ATTRIBUTE_GENERAL
/* Desc. Tables -> Config-dependent */
#define WDG_CONFIG_CONST COMPILER_ATTRIBUTE_GENERAL
/* Config. dependent (reg. size) data */
#define WDG_CONFIG_DATA COMPILER_ATTRIBUTE_GENERAL
/* Data which is initialized during Startup */
#define WDG_INIT_DATA COMPILER_ATTRIBUTE_GENERAL
/* Data which is not initialized during Startup */
#define WDG_NO_INIT_DATA COMPILER_ATTRIBUTE_GENERAL
/* Data Constants */
#define WDG_CONST COMPILER_ATTRIBUTE_GENERAL
/* Memory class for global variables which are initialized after every reset */
#define WDG_VAR COMPILER_ATTRIBUTE_GENERAL
/* Memory class for global variables which are not initialized by driver */
#define WDG_VAR_NO_INIT COMPILER_ATTRIBUTE_GENERAL
/* Memory class for global variables which are initialized by driver */
#define WDG_VAR_INIT COMPILER_ATTRIBUTE_GENERAL
/* ---------------------------------------------------------------------------*/
/* PORT */
/* ---------------------------------------------------------------------------*/
/* API functions */
#define PORT_PUBLIC_CODE COMPILER_ATTRIBUTE_GENERAL
/* API constants */
#define PORT_PUBLIC_CONST COMPILER_ATTRIBUTE_GENERAL
/* Internal functions */
#define PORT_PRIVATE_CODE COMPILER_ATTRIBUTE_GENERAL
/* Internal ROM Data */
#define PORT_PRIVATE_CONST COMPILER_ATTRIBUTE_GENERAL
/* callbacks of the Application */
#define PORT_APPL_CODE COMPILER_ATTRIBUTE_GENERAL
/* Applications' ROM Data */
#define PORT_APPL_CONST COMPILER_ATTRIBUTE_GENERAL
/* Applications' RAM Data */
#define PORT_APPL_DATA COMPILER_ATTRIBUTE_GENERAL
/* 'Near' RAM Data */
#define PORT_VAR_FAST_NO_INIT COMPILER_ATTRIBUTE_GENERAL
/* API functions */
#define PORT_CODE_FAST COMPILER_ATTRIBUTE_GENERAL
/* API constants */
#define PORT_CONST COMPILER_ATTRIBUTE_GENERAL
/* Desc. Tables -> Config-dependent Config. dependent (reg. size) data */
#define PORT_CONFIG_DATA COMPILER_ATTRIBUTE_GENERAL
/* Data which is initialized during Startup */
#define PORT_VAR_INIT COMPILER_ATTRIBUTE_GENERAL
/* Data which is not initialized during Startup */
#define PORT_VAR_NO_INIT COMPILER_ATTRIBUTE_GENERAL
/* Data Constants */
#define PORT_CONST COMPILER_ATTRIBUTE_GENERAL
/* Memory class for global variables which are initialized after every reset */
#define PORT_VAR COMPILER_ATTRIBUTE_GENERAL
/* ---------------------------------------------------------------------------*/
/* DIO */
/* ---------------------------------------------------------------------------*/
/* API functions */
#define DIO_PUBLIC_CODE COMPILER_ATTRIBUTE_GENERAL
/* API constants */
#define DIO_PUBLIC_CONST COMPILER_ATTRIBUTE_GENERAL
/* Internal functions */
#define DIO_PRIVATE_CODE COMPILER_ATTRIBUTE_GENERAL
/* Internal ROM Data */
#define DIO_PRIVATE_CONST COMPILER_ATTRIBUTE_GENERAL
/* callbacks of the Application */
#define DIO_APPL_CODE COMPILER_ATTRIBUTE_GENERAL
/* Applications' ROM Data */
#define DIO_APPL_CONST COMPILER_ATTRIBUTE_GENERAL
/* Applications' RAM Data */
#define DIO_APPL_DATA COMPILER_ATTRIBUTE_GENERAL
/* 'Near' RAM Data */
#define DIO_VAR_FAST_NO_INIT COMPILER_ATTRIBUTE_GENERAL
/* API functions */
#define DIO_CODE_FAST COMPILER_ATTRIBUTE_GENERAL
/* API constants */
#define DIO_CONST COMPILER_ATTRIBUTE_GENERAL
/* Desc. Tables -> Config-dependent Config. dependent (reg. size) data */
#define DIO_CONFIG_DATA COMPILER_ATTRIBUTE_GENERAL
/* Data which is initialized during Startup */
#define DIO_VAR_INIT COMPILER_ATTRIBUTE_GENERAL
/* Data which is not initialized during Startup */
#define DIO_VAR_NO_INIT COMPILER_ATTRIBUTE_GENERAL
/* Data Constants */
#define DIO_CONST COMPILER_ATTRIBUTE_GENERAL
/* Memory class for global variables which are initialized after every reset */
#define DIO_VAR COMPILER_ATTRIBUTE_GENERAL
/* ---------------------------------------------------------------------------*/
/* SPI */
/* ---------------------------------------------------------------------------*/
/* API functions */
#define SPI_PUBLIC_CODE COMPILER_ATTRIBUTE_GENERAL
/* API constants */
#define SPI_PUBLIC_CONST COMPILER_ATTRIBUTE_GENERAL
/* Internal functions */
#define SPI_PRIVATE_CODE COMPILER_ATTRIBUTE_GENERAL
/* Internal ROM Data */
#define SPI_PRIVATE_CONST COMPILER_ATTRIBUTE_GENERAL
/* callbacks of the Application */
#define SPI_APPL_CODE COMPILER_ATTRIBUTE_GENERAL
/* Applications' ROM Data */
#define SPI_APPL_CONST COMPILER_ATTRIBUTE_GENERAL
/* Applications' RAM Data */
#define SPI_APPL_DATA COMPILER_ATTRIBUTE_GENERAL
/* 'Near' RAM Data */
#define SPI_VAR_FAST_NO_INIT COMPILER_ATTRIBUTE_GENERAL
/* API functions */
#define SPI_CODE_FAST COMPILER_ATTRIBUTE_GENERAL
/* API constants */
#define SPI_CONST COMPILER_ATTRIBUTE_GENERAL
/* Desc. Tables -> Config-dependent Config. dependent (reg. size) data */
#define SPI_CONFIG_DATA COMPILER_ATTRIBUTE_GENERAL
/* Data which is initialized during Startup */
#define SPI_VAR_INIT COMPILER_ATTRIBUTE_GENERAL
/* Data which is not initialized during Startup */
#define SPI_VAR_NO_INIT COMPILER_ATTRIBUTE_GENERAL
/* Data Constants */
#define SPI_CONST COMPILER_ATTRIBUTE_GENERAL
/* Memory class for global variables which are initialized after every reset */
#define SPI_VAR COMPILER_ATTRIBUTE_GENERAL
/* ---------------------------------------------------------------------------*/
/* CAN */
/* ---------------------------------------------------------------------------*/
/* API functions */
#define CAN_RSCAN_PUBLIC_CODE COMPILER_ATTRIBUTE_GENERAL
/* API constants */
#define CAN_RSCAN_PUBLIC_CONST COMPILER_ATTRIBUTE_GENERAL
/* Internal functions */
#define CAN_RSCAN_PRIVATE_CODE COMPILER_ATTRIBUTE_GENERAL
/* Internal ROM Data */
#define CAN_RSCAN_PRIVATE_CONST COMPILER_ATTRIBUTE_GENERAL
/* callbacks of the Application */
#define CAN_RSCAN_APPL_CODE COMPILER_ATTRIBUTE_GENERAL
/* Applications' ROM Data */
#define CAN_RSCAN_APPL_CONST COMPILER_ATTRIBUTE_GENERAL
/* Applications' RAM Data */
#define CAN_RSCAN_APPL_DATA COMPILER_ATTRIBUTE_GENERAL
/* API functions */
#define CAN_RSCAN_CODE_FAST COMPILER_ATTRIBUTE_GENERAL
/* API constants, Data Constants */
#define CAN_RSCAN_CONST COMPILER_ATTRIBUTE_GENERAL
/* Desc. Tables -> Config-dependent Config. dependent (reg. size) data */
#define CAN_RSCAN_CONFIG_DATA COMPILER_ATTRIBUTE_GENERAL
#define CAN_CONFIG_DATA COMPILER_ATTRIBUTE_GENERAL
/* Data which is initialized during Startup */
#define CAN_RSCAN_VAR_INIT COMPILER_ATTRIBUTE_GENERAL
/* Data which is not initialized during Startup */
#define CAN_RSCAN_VAR_NO_INIT COMPILER_ATTRIBUTE_GENERAL
/* Data Constants */
#define CAN_RSCAN_CONST COMPILER_ATTRIBUTE_GENERAL
/* Memory class for global variables which are initialized after every reset */
#define CAN_RSCAN_VAR COMPILER_ATTRIBUTE_GENERAL
/* ---------------------------------------------------------------------------*/
/* FLS */
/* ---------------------------------------------------------------------------*/
/* API functions */
#define FLS_PUBLIC_CODE COMPILER_ATTRIBUTE_GENERAL
/* API constants */
#define FLS_PUBLIC_CONST COMPILER_ATTRIBUTE_GENERAL
/* API functions */
#define FLS_CODE_SLOW COMPILER_ATTRIBUTE_GENERAL
/* Internal functions */
#define FLS_PRIVATE_CODE COMPILER_ATTRIBUTE_GENERAL
/* Internal ROM Data */
#define FLS_PRIVATE_CONST COMPILER_ATTRIBUTE_GENERAL
/* callbacks of the Application */
#define FLS_APPL_CODE COMPILER_ATTRIBUTE_GENERAL
/* Applications' ROM Data */
#define FLS_APPL_CONST COMPILER_ATTRIBUTE_GENERAL
/* Applications' RAM Data */
#define FLS_APPL_DATA COMPILER_ATTRIBUTE_GENERAL
/* 'Near' RAM Data */
#define FLS_VAR_FAST_NO_INIT COMPILER_ATTRIBUTE_GENERAL
/* API functions */
#define FLS_CODE_FAST COMPILER_ATTRIBUTE_GENERAL
/* API constants */
#define FLS_CONST COMPILER_ATTRIBUTE_GENERAL
/* Desc. Tables -> Config-dependent Config. dependent (reg. size) data */
#define FLS_CONFIG_DATA COMPILER_ATTRIBUTE_GENERAL
/* Data which is initialized during Startup */
#define FLS_VAR_INIT COMPILER_ATTRIBUTE_GENERAL
/* Data which is not initialized during Startup */
#define FLS_VAR_NO_INIT COMPILER_ATTRIBUTE_GENERAL
/* Data Constants */
#define FLS_CONST COMPILER_ATTRIBUTE_GENERAL
/* Memory class for global variables which are initialized after every reset */
#define FLS_VAR COMPILER_ATTRIBUTE_GENERAL
/* ---------------------------------------------------------------------------*/
/* ETH */
/* ---------------------------------------------------------------------------*/
/* API functions */
#define ETH_PUBLIC_CODE COMPILER_ATTRIBUTE_GENERAL
/* API constants */
#define ETH_PUBLIC_CONST COMPILER_ATTRIBUTE_GENERAL
/* ETH URAM descriptor */
#define ETH_PORT_RAM_0 COMPILER_ATTRIBUTE_GENERAL
/* ETH URAM descriptor */
#define ETH_PORT_RAM_1 COMPILER_ATTRIBUTE_GENERAL
/* ETH URAM descriptor */
#define ETH_PORT_RAM_2 COMPILER_ATTRIBUTE_GENERAL
/* ETH URAM descriptor */
#define ETH_VAR_TX_RAM COMPILER_ATTRIBUTE_GENERAL
/* ETH URAM descriptor */
#define ETH_VAR_RX_RAM COMPILER_ATTRIBUTE_GENERAL
/* Internal functions */
#define ETH_PRIVATE_CODE COMPILER_ATTRIBUTE_GENERAL
/* Internal ROM Data */
#define ETH_PRIVATE_CONST COMPILER_ATTRIBUTE_GENERAL
/* callbacks of the Application */
#define ETH_APPL_CODE COMPILER_ATTRIBUTE_GENERAL
/* Applications' ROM Data */
#define ETH_APPL_CONST COMPILER_ATTRIBUTE_GENERAL
/* Applications' RAM Data */
#define ETH_APPL_DATA COMPILER_ATTRIBUTE_GENERAL
/* 'Near' RAM Data */
#define ETH_VAR_FAST_NO_INIT COMPILER_ATTRIBUTE_GENERAL
/* API functions */
#define ETH_CODE_FAST COMPILER_ATTRIBUTE_GENERAL
/* API constants */
#define ETH_CONST COMPILER_ATTRIBUTE_GENERAL
/* Desc. Tables -> Config-dependent Config. dependent (reg. size) data */
#define ETH_CONFIG_DATA COMPILER_ATTRIBUTE_GENERAL
/* Data which is initialized during Startup */
#define ETH_VAR_INIT COMPILER_ATTRIBUTE_GENERAL
/* Data which is not initialized during Startup */
#define ETH_VAR_NO_INIT COMPILER_ATTRIBUTE_GENERAL
/* Data Constants */
#define ETH_CONST COMPILER_ATTRIBUTE_GENERAL
/* Memory class for global variables which are initialized after every reset */
#define ETH_VAR COMPILER_ATTRIBUTE_GENERAL
/* ---------------------------------------------------------------------------*/
/* CDDICCOM */
/* ---------------------------------------------------------------------------*/
/* API functions */
#define CDDICCOM_CODE COMPILER_ATTRIBUTE_GENERAL
/* API functions */
#define CDDICCOM_CODE_SLOW COMPILER_ATTRIBUTE_GENERAL
/* API functions */
#define CDDICCOM_CODE_FAST COMPILER_ATTRIBUTE_GENERAL
/* callbacks of the Application */
#define CDDICCOM_APPL_CODE COMPILER_ATTRIBUTE_GENERAL
/* Application's ROM Data */
#define CDDICCOM_APPL_CONST COMPILER_ATTRIBUTE_GENERAL
/* Application's RAM Data */
#define CDDICCOM_APPL_DATA COMPILER_ATTRIBUTE_GENERAL
/* Config. dependent (reg. size) data */
#define CDDICCOM_CONFIG_DATA COMPILER_ATTRIBUTE_GENERAL
/* Data which is initialized during Startup */
#define CDDICCOM_VAR_INIT COMPILER_ATTRIBUTE_GENERAL
/* Data which is not initialized during Startup */
#define CDDICCOM_VAR_NO_INIT COMPILER_ATTRIBUTE_GENERAL
/* Data which is cleared during Startup */
#define CDDICCOM_VAR_CLEARED COMPILER_ATTRIBUTE_GENERAL
/* Data Constants */
#define CDDICCOM_CONST COMPILER_ATTRIBUTE_GENERAL
/* Memory class for global variables */
#define CDDICCOM_VAR COMPILER_ATTRIBUTE_GENERAL
/* Memory class for runnable entities */
#define CddIccom_CODE COMPILER_ATTRIBUTE_GENERAL
/* ---------------------------------------------------------------------------*/
/* CDDIIC */
/* ---------------------------------------------------------------------------*/
/* API functions */
#define CDDIIC_CODE COMPILER_ATTRIBUTE_GENERAL
/* API functions */
#define CDDIIC_CODE_SLOW COMPILER_ATTRIBUTE_GENERAL
/* API functions */
#define CDDIIC_CODE_FAST COMPILER_ATTRIBUTE_GENERAL
/* callbacks of the Application */
#define CDDIIC_APPL_CODE COMPILER_ATTRIBUTE_GENERAL
/* Application's ROM Data */
#define CDDIIC_APPL_CONST COMPILER_ATTRIBUTE_GENERAL
/* Application's RAM Data */
#define CDDIIC_APPL_DATA COMPILER_ATTRIBUTE_GENERAL
/* Config. dependent (reg. size) data */
#define CDDIIC_CONFIG_DATA COMPILER_ATTRIBUTE_GENERAL
/* Data which is initialized during Startup */
#define CDDIIC_VAR_INIT COMPILER_ATTRIBUTE_GENERAL
/* Data which is not initialized during Startup */
#define CDDIIC_VAR_NO_INIT COMPILER_ATTRIBUTE_GENERAL
/* Data which is cleared during Startup */
#define CDDIIC_VAR_CLEARED COMPILER_ATTRIBUTE_GENERAL
/* Data Constants */
#define CDDIIC_CONST COMPILER_ATTRIBUTE_GENERAL
/* Memory class for global variables */
#define CDDIIC_VAR COMPILER_ATTRIBUTE_GENERAL
/* Memory class for runnable entities */
#define CddIic_CODE COMPILER_ATTRIBUTE_GENERAL
/* ---------------------------------------------------------------------------*/
/* CDDTHS */
/* ---------------------------------------------------------------------------*/
#define CDDTHS_CODE_SLOW COMPILER_ATTRIBUTE_GENERAL
/* API functions*/
#define CDDTHS_APPL_CODE COMPILER_ATTRIBUTE_GENERAL
/* notification callbacks of the Application */
#define CDDTHS_APPL_CONST COMPILER_ATTRIBUTE_GENERAL
/* Applications' ROM Data */
#define CDDTHS_APPL_DATA COMPILER_ATTRIBUTE_GENERAL
/* Applications' RAM Data */
#define CDDTHS_CODE_FAST COMPILER_ATTRIBUTE_GENERAL
/* API functions */
#define CDDTHS_CONFIG_DATA COMPILER_ATTRIBUTE_GENERAL
/* Config. dependent (reg. size) data */
#define CDDTHS_CONST COMPILER_ATTRIBUTE_GENERAL
/* Data Constants */
#define CDDTHS_VAR_INIT COMPILER_ATTRIBUTE_GENERAL
/* Memory class for global variables which are initialized after every reset */
#define CDDTHS_VAR_CLEARED COMPILER_ATTRIBUTE_GENERAL
/* Memory class for global variables which are cleared after every reset */
#define CDDTHS_VAR_POWER_ON_CLEARED COMPILER_ATTRIBUTE_GENERAL
/* Memory class for global variables which are cleared only after power
on reset */
#define CDDTHS_VAR_POWER_ON_INIT COMPILER_ATTRIBUTE_GENERAL
/* Memory class for global variables which are initialized only after */
/* power on reset */
#define CDDTHS_VAR_NO_INIT COMPILER_ATTRIBUTE_GENERAL
/* Memory class for global variables which are initialized by driver */
#define CDDTHS_VAR COMPILER_ATTRIBUTE_GENERAL
/* Memory class for global variables */
/* ---------------------------------------------------------------------------*/
/* CDDRFSO */
/* ---------------------------------------------------------------------------*/
/* API functions */
#define CDDRFSO_CODE COMPILER_ATTRIBUTE_GENERAL
#define CDDRFSO_CODE_SLOW COMPILER_ATTRIBUTE_GENERAL
#define CDDRFSO_CODE_FAST COMPILER_ATTRIBUTE_GENERAL
/* Callback of the Application */
#define CDDRFSO_APPL_CODE COMPILER_ATTRIBUTE_GENERAL
/* Applications' ROM Data */
#define CDDRFSO_APPL_CONST COMPILER_ATTRIBUTE_GENERAL
/* Applications' RAM Data */
#define CDDRFSO_APPL_DATA COMPILER_ATTRIBUTE_GENERAL
/* Config. dependent (reg. size) data */
#define CDDRFSO_CONFIG_DATA COMPILER_ATTRIBUTE_GENERAL
/* Data which is initialized during Startup */
#define CDDRFSO_VAR_INIT COMPILER_ATTRIBUTE_GENERAL
/* Data which is not initialized during Startup */
#define CDDRFSO_VAR_NO_INIT COMPILER_ATTRIBUTE_GENERAL
/* Data which is cleared during Startup */
#define CDDRFSO_VAR_CLEARED COMPILER_ATTRIBUTE_GENERAL
/* Data Constants */
#define CDDRFSO_CONST COMPILER_ATTRIBUTE_GENERAL
/* Memory class for global variables */
#define CDDRFSO_VAR COMPILER_ATTRIBUTE_GENERAL
/* ---------------------------------------------------------------------------*/
/* CDDIPMMU */
/* ---------------------------------------------------------------------------*/
/* API functions */
#define CDDIPMMU_CODE COMPILER_ATTRIBUTE_GENERAL
#define CDDIPMMU_CODE_SLOW COMPILER_ATTRIBUTE_GENERAL
#define CDDIPMMU_CODE_FAST COMPILER_ATTRIBUTE_GENERAL
/* Callback of the Application */
#define CDDIPMMU_APPL_CODE COMPILER_ATTRIBUTE_GENERAL
/* Applications' ROM Data */
#define CDDIPMMU_APPL_CONST COMPILER_ATTRIBUTE_GENERAL
/* Applications' RAM Data */
#define CDDIPMMU_APPL_DATA COMPILER_ATTRIBUTE_GENERAL
/* Config. dependent (reg. size) data */
#define CDDIPMMU_CONFIG_DATA COMPILER_ATTRIBUTE_GENERAL
/* Data which is initialized during Startup */
#define CDDIPMMU_VAR_INIT COMPILER_ATTRIBUTE_GENERAL
/* Data which is not initialized during Startup */
#define CDDIPMMU_VAR_NO_INIT COMPILER_ATTRIBUTE_GENERAL
/* Data which is cleared during Startup */
#define CDDIPMMU_VAR_CLEARED COMPILER_ATTRIBUTE_GENERAL
/* Data Constants */
#define CDDIPMMU_CONST COMPILER_ATTRIBUTE_GENERAL
/* Memory class for global variables */
#define CDDIPMMU_VAR COMPILER_ATTRIBUTE_GENERAL
/* ---------------------------------------------------------------------------*/
/* CDDCRC */
/* ---------------------------------------------------------------------------*/
/* API functions */
#define CDDCRC_CODE COMPILER_ATTRIBUTE_GENERAL
#define CDDCRC_CODE_SLOW COMPILER_ATTRIBUTE_GENERAL
#define CDDCRC_CODE_FAST COMPILER_ATTRIBUTE_GENERAL
#define CDDCRC_PUBLIC_CODE COMPILER_ATTRIBUTE_GENERAL
/* Callback of the Application */
#define CDDCRC_APPL_CODE COMPILER_ATTRIBUTE_GENERAL
/* Applications' ROM Data */
#define CDDCRC_APPL_CONST COMPILER_ATTRIBUTE_GENERAL
/* Applications' RAM Data */
#define CDDCRC_APPL_DATA COMPILER_ATTRIBUTE_GENERAL
/* Internal functions */
#define CDDCRC_PRIVATE_CODE COMPILER_ATTRIBUTE_GENERAL
/* Module internal data */
#define CDDCRC_PRIVATE_DATA COMPILER_ATTRIBUTE_GENERAL
/* Internal ROM Data */
#define CDDCRC_PRIVATE_CONST COMPILER_ATTRIBUTE_GENERAL
/* Config. dependent (reg. size) data */
#define CDDCRC_CONFIG_DATA COMPILER_ATTRIBUTE_GENERAL
/* Data which is initialized during Startup */
#define CDDCRC_VAR_INIT COMPILER_ATTRIBUTE_GENERAL
/* Data which is not initialized during Startup */
#define CDDCRC_VAR_NO_INIT COMPILER_ATTRIBUTE_GENERAL
/* Data which is cleared during Startup */
#define CDDCRC_VAR_CLEARED COMPILER_ATTRIBUTE_GENERAL
/* Data Constants */
#define CDDCRC_CONST COMPILER_ATTRIBUTE_GENERAL
/* Memory class for global variables */
#define CDDCRC_VAR COMPILER_ATTRIBUTE_GENERAL
/* ---------------------------------------------------------------------------*/
/* CDDEMM */
/* ---------------------------------------------------------------------------*/
/* API functions */
#define CDDEMM_CODE COMPILER_ATTRIBUTE_GENERAL
#define CDDEMM_CODE_SLOW COMPILER_ATTRIBUTE_GENERAL
#define CDDEMM_CODE_FAST COMPILER_ATTRIBUTE_GENERAL
/* Callback of the Application */
#define CDDEMM_APPL_CODE COMPILER_ATTRIBUTE_GENERAL
/* Applications' ROM Data */
#define CDDEMM_APPL_CONST COMPILER_ATTRIBUTE_GENERAL
/* Applications' RAM Data */
#define CDDEMM_APPL_DATA COMPILER_ATTRIBUTE_GENERAL
/* Config. dependent (reg. size) data */
#define CDDEMM_CONFIG_DATA COMPILER_ATTRIBUTE_GENERAL
/* Data which is initialized during Startup */
#define CDDEMM_VAR_INIT COMPILER_ATTRIBUTE_GENERAL
/* Data which is not initialized during Startup */
#define CDDEMM_VAR_NO_INIT COMPILER_ATTRIBUTE_GENERAL
/* Data which is cleared during Startup */
#define CDDEMM_VAR_CLEARED COMPILER_ATTRIBUTE_GENERAL
/* Data Constants */
#define CDDEMM_CONST COMPILER_ATTRIBUTE_GENERAL
/* Memory class for global variables */
#define CDDEMM_VAR COMPILER_ATTRIBUTE_GENERAL
/* ---------------------------------------------------------------------------*/
/* FuSa */
/* ---------------------------------------------------------------------------*/
/* API functions */
#define FUSA_CODE_SLOW COMPILER_ATTRIBUTE_GENERAL
/* API functions */
#define FUSA_CODE_FAST COMPILER_ATTRIBUTE_GENERAL
#endif /* COMPILER_CFG_H */
/*******************************************************************************
** End of File **
*******************************************************************************/

View File

@@ -0,0 +1,86 @@
/*============================================================================*/
/* Project = AUTOSAR Renesas CPF MCAL Components */
/* Module = Compiler_Cfg_dep.h */
/* SW-VERSION = 1.0.0 */
/*============================================================================*/
/* COPYRIGHT */
/*============================================================================*/
/* Copyright(c) 2020 Renesas Electronics Corporation. */
/*============================================================================*/
/* Purpose: */
/* This file contains compiler attribute definition for ARM compiler */
/*============================================================================*/
/* */
/* Unless otherwise agreed upon in writing between your company and */
/* Renesas Electronics Corporation the following shall apply! */
/* */
/* Warranty Disclaimer */
/* */
/* There is no warranty of any kind whatsoever granted by Renesas. Any */
/* warranty is expressly disclaimed and excluded by Renesas, either expressed */
/* or implied, including but not limited to those for non-infringement of */
/* intellectual property, merchantability and/or fitness for the particular */
/* purpose. */
/* */
/* Renesas shall not have any obligation to maintain, service or provide bug */
/* fixes for the supplied Product(s) and/or the Application. */
/* */
/* Each User is solely responsible for determining the appropriateness of */
/* using the Product(s) and assumes all risks associated with its exercise */
/* of rights under this Agreement, including, but not limited to the risks */
/* and costs of program errors, compliance with applicable laws, damage to */
/* or loss of data, programs or equipment, and unavailability or */
/* interruption of operations. */
/* */
/* Limitation of Liability */
/* */
/* In no event shall Renesas be liable to the User for any incidental, */
/* consequential, indirect, or punitive damage (including but not limited */
/* to lost profits) regardless of whether such liability is based on breach */
/* of contract, tort, strict liability, breach of warranties, failure of */
/* essential purpose or otherwise and even if advised of the possibility of */
/* such damages. Renesas shall not be liable for any services or products */
/* provided by third party vendors, developers or consultants identified or */
/* referred to the User by Renesas in connection with the Product(s) and/or */
/* the Application. */
/* */
/*============================================================================*/
/* Environment: */
/* Devices: CPF */
/*============================================================================*/
/*******************************************************************************
** Revision Control History **
*******************************************************************************/
/*
* 1.0.0: 21/09/2020 : Initial Version
*/
/******************************************************************************/
/*******************************************************************************
** Include Section **
*******************************************************************************/
#ifndef COMPILER_CFG_DEP_H
#define COMPILER_CFG_DEP_H
/*******************************************************************************
** Global Symbols **
*******************************************************************************/
/*******************************************************************************
** Global Data Types **
*******************************************************************************/
#define COMPILER_ATTRIBUTE_GENERAL __attribute__((SEC_NAME))
#define COMPILER_ATTRIBUTE_ALIGNMENT_32 __attribute__((SEC_NAME, aligned(32)))
/*******************************************************************************
** Function Prototypes **
*******************************************************************************/
#endif /* COMPILER_CFG_DEP_H */
/*******************************************************************************
** End of File **
*******************************************************************************/

View File

@@ -0,0 +1,20 @@
#######################################################################
# REGISTRY
#
CC_FILES_TO_BUILD +=
MAKE_DEBUG_RULES += debug_compiler_makefile
#######################################################################
# Command to print debug information #
#######################################################################
debug_compiler_makefile:
@echo COMPILER_CORE_PATH = $(COMPILER_CORE_PATH)
@echo COMPILER_INSTALL_DIR = $(COMPILER_INSTALL_DIR)
@echo CC = $(CC)
@echo CFLAGS = $(CFLAGS)
@echo MAKELIB = $(MAKELIB)
#######################################################################

View File

@@ -0,0 +1,91 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
********************************************************************************
** Project = AUTOSAR Renesas X2x MCAL Components **
** Module = CAN Driver **
** SW-VERSION = 1.3.1 **
** Date = 12/05/2021 **
********************************************************************************
** COPYRIGHT **
********************************************************************************
** Copyright(c) 2017-2021 Renesas Electronics Corporation. **
********************************************************************************
** Purpose: **
** Provides configuration setting for CAN Driver Generation Tool. **
** **
********************************************************************************
** **
** Unless otherwise agreed upon in writing between your company and **
** Renesas Electronics Corporation the following shall apply! **
** **
** Warranty Disclaimer **
** **
** There is no warranty of any kind whatsoever granted by Renesas. Any **
** warranty is expressly disclaimed and excluded by Renesas, either expressed **
** or implied, including but not limited to those for non-infringement of **
** intellectual property, merchantability and/or fitness for the particular **
** purpose. **
** **
** Renesas shall not have any obligation to maintain, service or provide bug **
** fixes for the supplied Product(s) and/or the Application. **
** **
** Each User is solely responsible for determining the appropriateness of **
** using the Product(s) and assumes all risks associated with its exercise **
** of rights under this Agreement, including, but not limited to the risks **
** and costs of program errors, compliance with applicable laws, damage to **
** or loss of data, programs or equipment, and unavailability or **
** interruption of operations. **
** **
** Limitation of Liability **
** **
** In no event shall Renesas be liable to the User for any incidental, **
** consequential, indirect, or punitive damage (including but not limited **
** to lost profits) regardless of whether such liability is based on breach **
** of contract, tort, strict liability, breach of warranties, failure of **
** essential purpose or otherwise and even if advised of the possibility of **
** such damages. Renesas shall not be liable for any services or products **
** provided by third party vendors, developers or consultants identified or **
** referred to the User by Renesas in connection with the Product(s) and/or **
** the Application. **
** **
********************************************************************************
** Environment: **
** Devices: X2x **
********************************************************************************
** Revision Control History **
********************************************************************************
** 1.3.1: 12/05/2021 : Add tag <STUBS><stub module></STUBS> into tag OPTION **
** 1.2.0: 09/07/2020 : Final Release. **
** 1.1.0: 19/06/2020 Beta Release. **
** 1.0.0: 31/01/2017 Initial Version **
********************************************************************************
-->
<!--
None of the tag from this XML should be renamed or deleted.
-->
<XML>
<!-- Supported Command Line options -->
<OPTION>
<!-- Only ON or OFF should be provided. -->
<HELP>OFF</HELP>
<!-- Only ON or OFF should be provided. -->
<LOG>OFF</LOG>
<!-- Only ON or OFF should be provided. -->
<DRYRUN>OFF</DRYRUN>
<!-- Only ON or OFF should be provided. -->
<OUTPUT>OFF</OUTPUT>
<!-- Name of output directory -->
<OUTPUT-PATH></OUTPUT-PATH>
<!-- Stub module provide -->
<STUBS>MCU, DEM, OS, ECUM</STUBS>
</OPTION>
<!-- To provide input files. If multiple input files need to be provided then
each file should be separated with ",". -->
<INPUT-FILE></INPUT-FILE>
</XML>

View File

@@ -0,0 +1,87 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
********************************************************************************
** Project = R-Car Gen4 AR19-11 MCAL **
** Module = CRC Driver **
** SW-VERSION = 1.0.0 **
** Date = 07/04/2022 **
********************************************************************************
** COPYRIGHT **
********************************************************************************
** (c) 2022 Renesas Electronics Corporation. All rights reserved. **
********************************************************************************
** Purpose: **
** Provides configuration setting for CRC Driver Generation Tool. **
** **
********************************************************************************
** **
** Unless otherwise agreed upon in writing between your company and **
** Renesas Electronics Corporation the following shall apply! **
** **
** Warranty Disclaimer **
** **
** There is no warranty of any kind whatsoever granted by Renesas. Any **
** warranty is expressly disclaimed and excluded by Renesas, either expressed **
** or implied, including but not limited to those for non-infringement of **
** intellectual property, merchantability and/or fitness for the particular **
** purpose. **
** **
** Renesas shall not have any obligation to maintain, service or provide bug **
** fixes for the supplied Product(s) and/or the Application. **
** **
** Each User is solely responsible for determining the appropriateness of **
** using the Product(s) and assumes all risks associated with its exercise **
** of rights under this Agreement, including, but not limited to the risks **
** and costs of program errors, compliance with applicable laws, damage to **
** or loss of data, programs or equipment, and unavailability or **
** interruption of operations. **
** **
** Limitation of Liability **
** **
** In no event shall Renesas be liable to the User for any incidental, **
** consequential, indirect, or punitive damage (including but not limited **
** to lost profits) regardless of whether such liability is based on breach **
** of contract, tort, strict liability, breach of warranties, failure of **
** essential purpose or otherwise and even if advised of the possibility of **
** such damages. Renesas shall not be liable for any services or products **
** provided by third party vendors, developers or consultants identified or **
** referred to the User by Renesas in connection with the Product(s) and/or **
** the Application. **
** **
********************************************************************************
** Environment: **
** Devices: R-Car Gen4 **
********************************************************************************
** Revision Control History **
********************************************************************************
** 1.0.0: 07/04/2021 Initial Version **
********************************************************************************
!-->
<!--
None of the tag from this XML should be renamed or deleted.
-->
<XML>
<!-- Supported Command Line options -->
<OPTION>
<!-- Only ON or OFF should be provided. -->
<HELP>OFF</HELP>
<!-- Only ON or OFF should be provided. -->
<LOG>OFF</LOG>
<!-- Only ON or OFF should be provided. -->
<DRYRUN>OFF</DRYRUN>
<!-- Only ON or OFF should be provided. -->
<OUTPUT>OFF</OUTPUT>
<!-- Name of output directory -->
<OUTPUT-PATH></OUTPUT-PATH>
<STUBS>Dem</STUBS>
</OPTION>
<!-- To provide input files. If multiple input files need to be provided then
each file should be separated with ",". -->
<INPUT-FILE></INPUT-FILE>
</XML>

View File

@@ -0,0 +1,39 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
None of the tag from this XML should be renamed or deleted.
-->
<XML>
<!-- Supported Command Line options -->
<OPTION>
<!-- Only ON or OFF should be provided. -->
<HELP>OFF</HELP>
<!-- Only ON or OFF should be provided. -->
<LOG>OFF</LOG>
<!-- Only ON or OFF should be provided. -->
<DRYRUN>OFF</DRYRUN>
<!-- Only ON or OFF should be provided. -->
<OUTPUT>OFF</OUTPUT>
<!-- The value of filter must be "ON" for CDD. The identifier of the module
which is to be parsed is given as the FILTER-NAME. All other modules will
be rejected. -->
<FILTER-RENESAS>ON</FILTER-RENESAS>
<FILTER-NAME>Renesas</FILTER-NAME>
<FILTER-NAME>AUTOSAR</FILTER-NAME>
<!-- Name of output directory -->
<OUTPUT-PATH>out</OUTPUT-PATH>
<!-- Stub module provide -->
<STUBS>DEM</STUBS>
</OPTION>
<!-- To provide input files. If multiple input files need to be provided then
each file should be separated with ",". -->
<INPUT-FILE></INPUT-FILE>
</XML>

View File

@@ -0,0 +1,95 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
********************************************************************************
** Project = AUTOSAR Renesas CPF MCAL Components **
** Module = CddIccom.cfgxml **
** SW-VERSION = 1.1.6 **
********************************************************************************
** COPYRIGHT **
********************************************************************************
** Copyright(c) 2022 Renesas Electronics Corporation. **
********************************************************************************
** Purpose: **
** Provides configuration setting for CDDICCOM Driver Generation Tool. **
** **
********************************************************************************
** **
** Unless otherwise agreed upon in writing between your company and **
** Renesas Electronics Corporation the following shall apply! **
** **
** Warranty Disclaimer **
** **
** There is no warranty of any kind whatsoever granted by Renesas. Any **
** warranty is expressly disclaimed and excluded by Renesas, either expressed **
** or implied, including but not limited to those for non-infringement of **
** intellectual property, merchantability and/or fitness for the particular **
** purpose. **
** **
** Renesas shall not have any obligation to maintain, service or provide bug **
** fixes for the supplied Product(s) and/or the Application. **
** **
** Each User is solely responsible for determining the appropriateness of **
** using the Product(s) and assumes all risks associated with its exercise **
** of rights under this Agreement, including, but not limited to the risks **
** and costs of program errors, compliance with applicable laws, damage to **
** or loss of data, programs or equipment, and unavailability or **
** interruption of operations. **
** **
** Limitation of Liability **
** **
** In no event shall Renesas be liable to the User for any incidental, **
** consequential, indirect, or punitive damage (including but not limited **
** to lost profits) regardless of whether such liability is based on breach **
** of contract, tort, strict liability, breach of warranties, failure of **
** essential purpose or otherwise and even if advised of the possibility of **
** such damages. Renesas shall not be liable for any services or products **
** provided by third party vendors, developers or consultants identified or **
** referred to the User by Renesas in connection with the Product(s) and/or **
** the Application. **
** **
********************************************************************************
** Environment: **
** Devices: CPF **
********************************************************************************
** Revision Control History **
********************************************************************************
** 1.0.0: 13/04/2022 Initial Version **
********************************************************************************
-->
<!--
None of the tag from this XML should be renamed or deleted.
-->
<XML>
<!-- Supported Command Line options -->
<OPTION>
<!-- Only ON or OFF should be provided. -->
<HELP>OFF</HELP>
<!-- Only ON or OFF should be provided. -->
<LOG>OFF</LOG>
<!-- Only ON or OFF should be provided. -->
<DRYRUN>OFF</DRYRUN>
<!-- Only ON or OFF should be provided. -->
<OUTPUT>OFF</OUTPUT>
<!-- The value of filter must be "ON" for CDD. The identifier of the module
which is to be parsed is given as the FILTER-NAME. All other modules will
be rejected. -->
<FILTER-RENESAS>ON</FILTER-RENESAS>
<FILTER-NAME>Renesas</FILTER-NAME>
<FILTER-NAME>AUTOSAR</FILTER-NAME>
<!-- Name of output directory -->
<OUTPUT-PATH>out</OUTPUT-PATH>
<!-- Stub module provide -->
<STUBS>DEM, OS</STUBS>
</OPTION>
<!-- To provide input files. If multiple input files need to be provided then
each file should be separated with ",". -->
<INPUT-FILE></INPUT-FILE>
</XML>

View File

@@ -0,0 +1,95 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
********************************************************************************
** Project = AUTOSAR Renesas CPF MCAL Components **
** Module = IIC Driver **
** Date = 17/06/2022 **
********************************************************************************
** COPYRIGHT **
********************************************************************************
** (c) 2022 Renesas Electronics Corporation. All rights reserved. **
********************************************************************************
** Purpose: **
** Provides configuration setting for IIC Driver Generation Tool. **
** **
********************************************************************************
** **
** Unless otherwise agreed upon in writing between your company and **
** Renesas Electronics Corporation the following shall apply! **
** **
** Warranty Disclaimer **
** **
** There is no warranty of any kind whatsoever granted by Renesas. Any **
** warranty is expressly disclaimed and excluded by Renesas, either expressed **
** or implied, including but not limited to those for non-infringement of **
** intellectual property, merchantability and/or fitness for the particular **
** purpose. **
** **
** Renesas shall not have any obligation to maintain, service or provide bug **
** fixes for the supplied Product(s) and/or the Application. **
** **
** Each User is solely responsible for determining the appropriateness of **
** using the Product(s) and assumes all risks associated with its exercise **
** of rights under this Agreement, including, but not limited to the risks **
** and costs of program errors, compliance with applicable laws, damage to **
** or loss of data, programs or equipment, and unavailability or **
** interruption of operations. **
** **
** Limitation of Liability **
** **
** In no event shall Renesas be liable to the User for any incidental, **
** consequential, indirect, or punitive damage (including but not limited **
** to lost profits) regardless of whether such liability is based on breach **
** of contract, tort, strict liability, breach of warranties, failure of **
** essential purpose or otherwise and even if advised of the possibility of **
** such damages. Renesas shall not be liable for any services or products **
** provided by third party vendors, developers or consultants identified or **
** referred to the User by Renesas in connection with the Product(s) and/or **
** the Application. **
** **
********************************************************************************
** Environment: **
** Devices: R-Car Gen4 **
********************************************************************************
** Revision Control History **
********************************************************************************
** 1.0.0: 17/06/2022 Initial Version **
********************************************************************************
-->
<!--
None of the tag from this XML should be renamed or deleted.
-->
<XML>
<!-- Supported Command Line options -->
<OPTION>
<!-- Only ON or OFF should be provided. -->
<HELP>OFF</HELP>
<!-- Only ON or OFF should be provided. -->
<LOG>OFF</LOG>
<!-- Only ON or OFF should be provided. -->
<DRYRUN>OFF</DRYRUN>
<!-- Only ON or OFF should be provided. -->
<OUTPUT>OFF</OUTPUT>
<!-- The value of filter must be "ON" for CDD. The identifier of the module
which is to be parsed is given as the FILTER-NAME. All other modules will
be rejected. -->
<FILTER-RENESAS>ON</FILTER-RENESAS>
<FILTER-NAME>Renesas</FILTER-NAME>
<FILTER-NAME>AUTOSAR</FILTER-NAME>
<!-- Name of output directory -->
<OUTPUT-PATH>out</OUTPUT-PATH>
<!-- Stub module provide -->
<STUBS>DEM</STUBS>
</OPTION>
<!-- To provide input files. If multiple input files need to be provided then
each file should be separated with ",". -->
<INPUT-FILE></INPUT-FILE>
</XML>

View File

@@ -0,0 +1,39 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
None of the tag from this XML should be renamed or deleted.
-->
<XML>
<!-- Supported Command Line options -->
<OPTION>
<!-- Only ON or OFF should be provided. -->
<HELP>OFF</HELP>
<!-- Only ON or OFF should be provided. -->
<LOG>OFF</LOG>
<!-- Only ON or OFF should be provided. -->
<DRYRUN>OFF</DRYRUN>
<!-- Only ON or OFF should be provided. -->
<OUTPUT>OFF</OUTPUT>
<!-- The value of filter must be "ON" for CDD. The identifier of the module
which is to be parsed is given as the FILTER-NAME. All other modules will
be rejected. -->
<FILTER-RENESAS>ON</FILTER-RENESAS>
<FILTER-NAME>Renesas</FILTER-NAME>
<FILTER-NAME>AUTOSAR</FILTER-NAME>
<!-- Name of output directory -->
<OUTPUT-PATH>out</OUTPUT-PATH>
<!-- Stub module provide -->
<STUBS>DEM</STUBS>
</OPTION>
<!-- To provide input files. If multiple input files need to be provided then
each file should be separated with ",". -->
<INPUT-FILE></INPUT-FILE>
</XML>

View File

@@ -0,0 +1,95 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
********************************************************************************
** Project = AUTOSAR Renesas CPF MCAL Components **
** Module = RFSO Complex Device Driver **
** SW-VERSION = 1.0.6 **
********************************************************************************
** COPYRIGHT **
********************************************************************************
** (c) 2022 Renesas Electronics Corporation. All rights reserved. **
********************************************************************************
** Purpose: **
** Provides configuration setting for RFSO Driver Generation Tool. **
** **
********************************************************************************
** **
** Unless otherwise agreed upon in writing between your company and **
** Renesas Electronics Corporation the following shall apply! **
** **
** Warranty Disclaimer **
** **
** There is no warranty of any kind whatsoever granted by Renesas. Any **
** warranty is expressly disclaimed and excluded by Renesas, either expressed **
** or implied, including but not limited to those for non-infringement of **
** intellectual property, merchantability and/or fitness for the particular **
** purpose. **
** **
** Renesas shall not have any obligation to maintain, service or provide bug **
** fixes for the supplied Product(s) and/or the Application. **
** **
** Each User is solely responsible for determining the appropriateness of **
** using the Product(s) and assumes all risks associated with its exercise **
** of rights under this Agreement, including, but not limited to the risks **
** and costs of program errors, compliance with applicable laws, damage to **
** or loss of data, programs or equipment, and unavailability or **
** interruption of operations. **
** **
** Limitation of Liability **
** **
** In no event shall Renesas be liable to the User for any incidental, **
** consequential, indirect, or punitive damage (including but not limited **
** to lost profits) regardless of whether such liability is based on breach **
** of contract, tort, strict liability, breach of warranties, failure of **
** essential purpose or otherwise and even if advised of the possibility of **
** such damages. Renesas shall not be liable for any services or products **
** provided by third party vendors, developers or consultants identified or **
** referred to the User by Renesas in connection with the Product(s) and/or **
** the Application. **
** **
********************************************************************************
** Environment: **
** Devices: R-Car Gen4 **
********************************************************************************
** Revision Control History **
********************************************************************************
** 1.0.0: 06/06/2022 Initial Version **
********************************************************************************
-->
<!--
None of the tag from this XML should be renamed or deleted.
-->
<XML>
<!-- Supported Command Line options -->
<OPTION>
<!-- Only ON or OFF should be provided. -->
<HELP>OFF</HELP>
<!-- Only ON or OFF should be provided. -->
<LOG>OFF</LOG>
<!-- Only ON or OFF should be provided. -->
<DRYRUN>OFF</DRYRUN>
<!-- Only ON or OFF should be provided. -->
<OUTPUT>OFF</OUTPUT>
<!-- The value of filter must be "ON" for CDD. The identifier of the module
which is to be parsed is given as the FILTER-NAME. All other modules will
be rejected. -->
<FILTER-RENESAS>ON</FILTER-RENESAS>
<FILTER-NAME>Renesas</FILTER-NAME>
<FILTER-NAME>AUTOSAR</FILTER-NAME>
<!-- Name of output directory -->
<OUTPUT-PATH>out</OUTPUT-PATH>
<!-- Stub module provide -->
<STUBS>DEM</STUBS>
</OPTION>
<!-- To provide input files. If multiple input files need to be provided then
each file should be separated with ",". -->
<INPUT-FILE></INPUT-FILE>
</XML>

View File

@@ -0,0 +1,95 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
********************************************************************************
** Project = AUTOSAR Renesas CPF MCAL Components **
** Module = THS Driver **
** SW-VERSION = 1.0.4 **
********************************************************************************
** COPYRIGHT **
********************************************************************************
** (c) 2022 Renesas Electronics Corporation. All rights reserved. **
********************************************************************************
** Purpose: **
** Provides configuration setting for ICCOM Driver Generation Tool. **
** **
********************************************************************************
** **
** Unless otherwise agreed upon in writing between your company and **
** Renesas Electronics Corporation the following shall apply! **
** **
** Warranty Disclaimer **
** **
** There is no warranty of any kind whatsoever granted by Renesas. Any **
** warranty is expressly disclaimed and excluded by Renesas, either expressed **
** or implied, including but not limited to those for non-infringement of **
** intellectual property, merchantability and/or fitness for the particular **
** purpose. **
** **
** Renesas shall not have any obligation to maintain, service or provide bug **
** fixes for the supplied Product(s) and/or the Application. **
** **
** Each User is solely responsible for determining the appropriateness of **
** using the Product(s) and assumes all risks associated with its exercise **
** of rights under this Agreement, including, but not limited to the risks **
** and costs of program errors, compliance with applicable laws, damage to **
** or loss of data, programs or equipment, and unavailability or **
** interruption of operations. **
** **
** Limitation of Liability **
** **
** In no event shall Renesas be liable to the User for any incidental, **
** consequential, indirect, or punitive damage (including but not limited **
** to lost profits) regardless of whether such liability is based on breach **
** of contract, tort, strict liability, breach of warranties, failure of **
** essential purpose or otherwise and even if advised of the possibility of **
** such damages. Renesas shall not be liable for any services or products **
** provided by third party vendors, developers or consultants identified or **
** referred to the User by Renesas in connection with the Product(s) and/or **
** the Application. **
** **
********************************************************************************
** Environment: **
** Devices: R-Car Gen4 **
********************************************************************************
** Revision Control History **
********************************************************************************
** 1.0.0: 13/04/2022 Initial Version **
********************************************************************************
-->
<!--
None of the tag from this XML should be renamed or deleted.
-->
<XML>
<!-- Supported Command Line options -->
<OPTION>
<!-- Only ON or OFF should be provided. -->
<HELP>OFF</HELP>
<!-- Only ON or OFF should be provided. -->
<LOG>OFF</LOG>
<!-- Only ON or OFF should be provided. -->
<DRYRUN>OFF</DRYRUN>
<!-- Only ON or OFF should be provided. -->
<OUTPUT>OFF</OUTPUT>
<!-- The value of filter must be "ON" for CDD. The identifier of the module
which is to be parsed is given as the FILTER-NAME. All other modules will
be rejected. -->
<FILTER-RENESAS>ON</FILTER-RENESAS>
<FILTER-NAME>Renesas</FILTER-NAME>
<FILTER-NAME>AUTOSAR</FILTER-NAME>
<!-- Name of output directory -->
<OUTPUT-PATH>out</OUTPUT-PATH>
<!-- Stub module provide -->
<STUBS>DEM, OS</STUBS>
</OPTION>
<!-- To provide input files. If multiple input files need to be provided then
each file should be separated with ",". -->
<INPUT-FILE></INPUT-FILE>
</XML>

View File

@@ -0,0 +1,91 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
********************************************************************************
** Project = AUTOSAR Renesas MCAL Components **
** Module = DIO Driver **
** SW-VERSION = 1.3.2 **
** Date = 05/05/2022 **
********************************************************************************
** COPYRIGHT **
********************************************************************************
** (c) 2017-2022 Renesas Electronics Corporation. All rights reserved. **
********************************************************************************
** Purpose: **
** Provides configuration setting for DIO Driver Generation Tool. **
** **
********************************************************************************
** **
** Unless otherwise agreed upon in writing between your company and **
** Renesas Electronics Corporation the following shall apply! **
** **
** Warranty Disclaimer **
** **
** There is no warranty of any kind whatsoever granted by Renesas. Any **
** warranty is expressly disclaimed and excluded by Renesas, either expressed **
** or implied, including but not limited to those for non-infringement of **
** intellectual property, merchantability and/or fitness for the particular **
** purpose. **
** **
** Renesas shall not have any obligation to maintain, service or provide bug **
** fixes for the supplied Product(s) and/or the Application. **
** **
** Each User is solely responsible for determining the appropriateness of **
** using the Product(s) and assumes all risks associated with its exercise **
** of rights under this Agreement, including, but not limited to the risks **
** and costs of program errors, compliance with applicable laws, damage to **
** or loss of data, programs or equipment, and unavailability or **
** interruption of operations. **
** **
** Limitation of Liability **
** **
** In no event shall Renesas be liable to the User for any incidental, **
** consequential, indirect, or punitive damage (including but not limited **
** to lost profits) regardless of whether such liability is based on breach **
** of contract, tort, strict liability, breach of warranties, failure of **
** essential purpose or otherwise and even if advised of the possibility of **
** such damages. Renesas shall not be liable for any services or products **
** provided by third party vendors, developers or consultants identified or **
** referred to the User by Renesas in connection with the Product(s) and/or **
** the Application. **
** **
********************************************************************************
** Environment: **
** Devices: R-CarGen4 **
********************************************************************************
** Revision Control History **
********************************************************************************
** 1.0.1: 11/05/2022: Add DEM stub **
** 05/05/2022: Add STUBS tag **
** 1.0.0: 19/01/2017: Initial Version **
********************************************************************************
-->
<!--
None of the tag from this XML should be renamed or deleted.
-->
<XML>
<!-- Supported Command Line options -->
<OPTION>
<!-- Only ON or OFF should be provided. -->
<HELP>OFF</HELP>
<!-- Only ON or OFF should be provided. -->
<LOG>OFF</LOG>
<!-- Only ON or OFF should be provided. -->
<DRYRUN>OFF</DRYRUN>
<!-- Only ON or OFF should be provided. -->
<OUTPUT>OFF</OUTPUT>
<!-- Name of output directory -->
<OUTPUT-PATH></OUTPUT-PATH>
<!-- Name of required stub module
each module should be separated with "," -->
<STUBS>Dem</STUBS>
</OPTION>
<!-- To provide input files. If multiple input files need to be provided then
each file should be separated with ",". -->
<INPUT-FILE></INPUT-FILE>
</XML>

View File

@@ -0,0 +1,93 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
********************************************************************************
** Project = AUTOSAR Renesas MCAL Components **
** Module = ETH Driver **
** SW-VERSION = 1.4.5 **
** Date = 11/09/2021 **
********************************************************************************
** COPYRIGHT **
********************************************************************************
** Copyright(c) 2017-2021 Renesas Electronics Corporation. **
********************************************************************************
** Purpose: **
** Provides configuration setting for ETH Driver Generation Tool. **
** **
********************************************************************************
** **
** Unless otherwise agreed upon in writing between your company and **
** Renesas Electronics Corporation the following shall apply! **
** **
** Warranty Disclaimer **
** **
** There is no warranty of any kind whatsoever granted by Renesas. Any **
** warranty is expressly disclaimed and excluded by Renesas, either expressed **
** or implied, including but not limited to those for non-infringement of **
** intellectual property, merchantability and/or fitness for the particular **
** purpose. **
** **
** Renesas shall not have any obligation to maintain, service or provide bug **
** fixes for the supplied Product(s) and/or the Application. **
** **
** Each User is solely responsible for determining the appropriateness of **
** using the Product(s) and assumes all risks associated with its exercise **
** of rights under this Agreement, including, but not limited to the risks **
** and costs of program errors, compliance with applicable laws, damage to **
** or loss of data, programs or equipment, and unavailability or **
** interruption of operations. **
** **
** Limitation of Liability **
** **
** In no event shall Renesas be liable to the User for any incidental, **
** consequential, indirect, or punitive damage (including but not limited **
** to lost profits) regardless of whether such liability is based on breach **
** of contract, tort, strict liability, breach of warranties, failure of **
** essential purpose or otherwise and even if advised of the possibility of **
** such damages. Renesas shall not be liable for any services or products **
** provided by third party vendors, developers or consultants identified or **
** referred to the User by Renesas in connection with the Product(s) and/or **
** the Application. **
** **
********************************************************************************
** Environment: **
/* Devices: R-CarGen4, X2X */
********************************************************************************
** Revision Control History **
********************************************************************************
** 1.2.1: 11/09/2021, Update copyright information **
** 1.2.0: 13/07/2020, Final Release **
** 1.1.0: 19/06/2020, Beta Release **
** 1.0.1: 30/11/2018, 1. Fix module name and copyright in comment. **
** 2. Change target from E2xFCC1 to X2x. **
** 1.0.0: 19/01/2017, Initial Version **
********************************************************************************
-->
<!--
None of the tag from this XML should be renamed or deleted.
-->
<XML>
<!-- Supported Command Line options -->
<OPTION>
<!-- Only ON or OFF should be provided. -->
<HELP>OFF</HELP>
<!-- Only ON or OFF should be provided. -->
<LOG>OFF</LOG>
<!-- Only ON or OFF should be provided. -->
<DRYRUN>OFF</DRYRUN>
<!-- Only ON or OFF should be provided. -->
<OUTPUT>OFF</OUTPUT>
<!-- Name of output directory -->
<OUTPUT-PATH></OUTPUT-PATH>
<!-- Name of output directory -->
<STUBS>Mcu,Dem,Os</STUBS>
</OPTION>
<!-- To provide input files. If multiple input files need to be provided then
each file should be separated with ",". -->
<INPUT-FILE></INPUT-FILE>
</XML>

View File

@@ -0,0 +1,95 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
********************************************************************************
** Project = R-Car Gen4 AR19-11 MCAL Project **
** Module = Fls.cfgxml **
********************************************************************************
** COPYRIGHT **
********************************************************************************
** Copyright(c) 2022,2024 Renesas Electronics Corporation **
********************************************************************************
** Purpose: **
** Provides configuration setting for Fls Driver Generation Tool. **
** **
********************************************************************************
** **
** Unless otherwise agreed upon in writing between your company and **
** Renesas Electronics Corporation the following shall apply! **
** **
** Warranty Disclaimer **
** **
** There is no warranty of any kind whatsoever granted by Renesas. Any **
** warranty is expressly disclaimed and excluded by Renesas, either expressed **
** or implied, including but not limited to those for non-infringement of **
** intellectual property, merchantability and/or fitness for the particular **
** purpose. **
** **
** Renesas shall not have any obligation to maintain, service or provide bug **
** fixes for the supplied Product(s) and/or the Application. **
** **
** Each User is solely responsible for determining the appropriateness of **
** using the Product(s) and assumes all risks associated with its exercise **
** of rights under this Agreement, including, but not limited to the risks **
** and costs of program errors, compliance with applicable laws, damage to **
** or loss of data, programs or equipment, and unavailability or **
** interruption of operations. **
** **
** Limitation of Liability **
** **
** In no event shall Renesas be liable to the User for any incidental, **
** consequential, indirect, or punitive damage (including but not limited **
** to lost profits) regardless of whether such liability is based on breach **
** of contract, tort, strict liability, breach of warranties, failure of **
** essential purpose or otherwise and even if advised of the possibility of **
** such damages. Renesas shall not be liable for any services or products **
** provided by third party vendors, developers or consultants identified or **
** referred to the User by Renesas in connection with the Product(s) and/or **
** the Application. **
** **
********************************************************************************
** Environment: **
** Devices: R-Car Series, 4th Generation **
********************************************************************************
** Revision Control History **
********************************************************************************
** 1.0.1: 27/12/2024 Add stub module Mcu **
** 1.0.0: 03/03/2022 Initial Version **
********************************************************************************
-->
<!--
None of the tag from this XML should be renamed or deleted.
-->
<XML>
<!-- Supported Command Line options -->
<OPTION>
<!-- Only ON or OFF should be provided. -->
<HELP>OFF</HELP>
<!-- Only ON or OFF should be provided. -->
<LOG>OFF</LOG>
<!-- Only ON or OFF should be provided. -->
<DRYRUN>OFF</DRYRUN>
<!-- Only ON or OFF should be provided. -->
<OUTPUT>OFF</OUTPUT>
<!-- The default value of filter is "OFF". If modules from multiple vendors
are used then this filter shall be turned on. The identifier of the module
which is to be parsed is given as the FILTER-NAME. All other modules will
be rejected. -->
<FILTER-RENESAS>OFF</FILTER-RENESAS>
<FILTER-NAME>Renesas</FILTER-NAME>
<FILTER-NAME>AUTOSAR</FILTER-NAME>
<!-- Name of output directory -->
<OUTPUT-PATH></OUTPUT-PATH>
<STUBS>Dem,Os,Mcu</STUBS>
</OPTION>
<!-- To provide input files. If multiple input files need to be provided then
each file should be separated with ",". -->
<INPUT-FILE></INPUT-FILE>
</XML>

View File

@@ -0,0 +1,88 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
********************************************************************************
** Project = AUTOSAR Renesas CPF MCAL Components **
** Module = GPT Driver **
** SW-VERSION = 1.0.1 **
********************************************************************************
** COPYRIGHT **
********************************************************************************
** (c) 2016-2018 Renesas Electronics Corporation. All rights reserved. **
********************************************************************************
** Purpose: **
** Provides the definition of the containers, sub-containers and parameters **
** specific to AUTOSAR Renesas GPT Driver Component for 4.2.2 **
** **
********************************************************************************
** **
** Unless otherwise agreed upon in writing between your company and **
** Renesas Electronics Corporation the following shall apply! **
** **
** Warranty Disclaimer **
** **
** There is no warranty of any kind whatsoever granted by Renesas. Any **
** warranty is expressly disclaimed and excluded by Renesas, either expressed **
** or implied, including but not limited to those for non-infringement of **
** intellectual property, merchantability and/or fitness for the particular **
** purpose. **
** **
** Renesas shall not have any obligation to maintain, service or provide bug **
** fixes for the supplied Product(s) and/or the Application. **
** **
** Each User is solely responsible for determining the appropriateness of **
** using the Product(s) and assumes all risks associated with its exercise **
** of rights under this Agreement, including, but not limited to the risks **
** and costs of program errors, compliance with applicable laws, damage to **
** or loss of data, programs or equipment, and unavailability or **
** interruption of operations. **
** **
** Limitation of Liability **
** **
** In no event shall Renesas be liable to the User for any incidental, **
** consequential, indirect, or punitive damage (including but not limited **
** to lost profits) regardless of whether such liability is based on breach **
** of contract, tort, strict liability, breach of warranties, failure of **
** essential purpose or otherwise and even if advised of the possibility of **
** such damages. Renesas shall not be liable for any services or products **
** provided by third party vendors, developers or consultants identified or **
** referred to the User by Renesas in connection with the Product(s) and/or **
** the Application. **
** **
********************************************************************************
** Environment: **
** Devices: CPF **
********************************************************************************
** Revision Control History **
********************************************************************************
** 1.0.1: 27/11/2018 Updated target device name **
** 1.0.0: 18/01/2017 Initial Version **
********************************************************************************
!-->
<!--
None of the tag from this XML should be renamed or deleted.
-->
<XML>
<!-- Supported Command Line options -->
<OPTION>
<!-- Only ON or OFF should be provided. -->
<HELP>OFF</HELP>
<!-- Only ON or OFF should be provided. -->
<LOG>OFF</LOG>
<!-- Only ON or OFF should be provided. -->
<DRYRUN>OFF</DRYRUN>
<!-- Only ON or OFF should be provided. -->
<OUTPUT>OFF</OUTPUT>
<!-- Name of output directory -->
<OUTPUT-PATH></OUTPUT-PATH>
<STUBS>Dem,Mcu,Ecum</STUBS>
</OPTION>
<!-- To provide input files. If multiple input files need to be provided then
each file should be separated with ",". -->
<INPUT-FILE></INPUT-FILE>
</XML>

View File

@@ -0,0 +1,90 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
********************************************************************************
** Project = RH850/X2x AR4 MCAL Development **
** Module = Mcu_X2x.cfgxml **
** SW-VERSION = 1.3.1 **
********************************************************************************
** COPYRIGHT **
********************************************************************************
** (c) 2020,2021 Renesas Electronics Corporation. All rights reserved. **
********************************************************************************
** Purpose: **
** Configuration XML File is in XML format which contains command line **
** options and input/output path **
********************************************************************************
** **
** Unless otherwise agreed upon in writing between your company and **
** Renesas Electronics Corporation the following shall apply! **
** **
** Warranty Disclaimer **
** **
** There is no warranty of any kind whatsoever granted by Renesas. Any **
** warranty is expressly disclaimed and excluded by Renesas, either expressed **
** or implied, including but not limited to those for non-infringement of **
** intellectual property, merchantability and/or fitness for the particular **
** purpose. **
** **
** Renesas shall not have any obligation to maintain, service or provide bug **
** fixes for the supplied Product(s) and/or the Application. **
** **
** Each User is solely responsible for determining the appropriateness of **
** using the Product(s) and assumes all risks associated with its exercise **
** of rights under this Agreement, including, but not limited to the risks **
** and costs of program errors, compliance with applicable laws, damage to **
** or loss of data, programs or equipment, and unavailability or **
** interruption of operations. **
** **
** Limitation of Liability **
** **
** In no event shall Renesas be liable to the User for any incidental, **
** consequential, indirect, or punitive damage (including but not limited **
** to lost profits) regardless of whether such liability is based on breach **
** of contract, tort, strict liability, breach of warranties, failure of **
** essential purpose or otherwise and even if advised of the possibility of **
** such damages. Renesas shall not be liable for any services or products **
** provided by third party vendors, developers or consultants identified or **
** referred to the User by Renesas in connection with the Product(s) and/or **
** the Application. **
** **
********************************************************************************
** Environment: **
** Devices: X2X **
********************************************************************************
** Revision Control History **
********************************************************************************
** 1.3.1: 13/05/2021 : ARDAACL-397, Add <STUB> tag for required stub module**
** 1.1.0: 19/06/2020 : Beta release. **
** 1.0.0: 18/02/2020 : Initial Version **
********************************************************************************
-->
<!--
None of the tag from this XML should be renamed or deleted.
-->
<XML>
<!-- Supported Command Line options -->
<OPTION>
<!-- Only ON or OFF should be provided. -->
<HELP>OFF</HELP>
<!-- Only ON or OFF should be provided. -->
<LOG>OFF</LOG>
<!-- Only ON or OFF should be provided. -->
<DRYRUN>OFF</DRYRUN>
<!-- Only ON or OFF should be provided. -->
<OUTPUT>OFF</OUTPUT>
<!-- Name of output directory -->
<OUTPUT-PATH></OUTPUT-PATH>
<!-- Name of required stub module
each module should be separated with "," -->
<STUBS>Dem</STUBS>
</OPTION>
<!-- To provide input files. If multiple input files need to be provided then
each file should be separated with ",". -->
<INPUT-FILE></INPUT-FILE>
</XML>

View File

@@ -0,0 +1,91 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
********************************************************************************
** Project = AUTOSAR Renesas R4.2.2 X2x MCAL Components **
** Module = PORT Driver **
** SW-VERSION = 1.1.0 **
** Date = 19/06/2020 **
********************************************************************************
** COPYRIGHT **
********************************************************************************
** (c) 2017-2020 Renesas Electronics Corporation. All rights reserved. **
********************************************************************************
** Purpose: **
** Provides the definition of the containers, sub-containers and parameters **
** specific to AUTOSAR Renesas PORT Driver Component for 4.2.2 **
** **
********************************************************************************
** **
** Unless otherwise agreed upon in writing between your company and **
** Renesas Electronics Corporation the following shall apply! **
** **
** Warranty Disclaimer **
** **
** There is no warranty of any kind whatsoever granted by Renesas. Any **
** warranty is expressly disclaimed and excluded by Renesas, either expressed **
** or implied, including but not limited to those for non-infringement of **
** intellectual property, merchantability and/or fitness for the particular **
** purpose. **
** **
** Renesas shall not have any obligation to maintain, service or provide bug **
** fixes for the supplied Product(s) and/or the Application. **
** **
** Each User is solely responsible for determining the appropriateness of **
** using the Product(s) and assumes all risks associated with its exercise **
** of rights under this Agreement, including, but not limited to the risks **
** and costs of program errors, compliance with applicable laws, damage to **
** or loss of data, programs or equipment, and unavailability or **
** interruption of operations. **
** **
** Limitation of Liability **
** **
** In no event shall Renesas be liable to the User for any incidental, **
** consequential, indirect, or punitive damage (including but not limited **
** to lost profits) regardless of whether such liability is based on breach **
** of contract, tort, strict liability, breach of warranties, failure of **
** essential purpose or otherwise and even if advised of the possibility of **
** such damages. Renesas shall not be liable for any services or products **
** provided by third party vendors, developers or consultants identified or **
** referred to the User by Renesas in connection with the Product(s) and/or **
** the Application. **
** **
********************************************************************************
** Environment: **
** Devices: X2x **
********************************************************************************
** Revision Control History **
********************************************************************************
** 1.1.0: 19/06/2020 : Beta release. **
** 1.0.0: 10/01/2017 : Initial Version **
********************************************************************************
!-->
<!--
None of the tag from this XML should be renamed or deleted.
-->
<XML>
<!-- Supported Command Line options -->
<OPTION>
<!-- Only ON or OFF should be provided. -->
<HELP>OFF</HELP>
<!-- Only ON or OFF should be provided. -->
<LOG>OFF</LOG>
<!-- Only ON or OFF should be provided. -->
<DRYRUN>OFF</DRYRUN>
<!-- Only ON or OFF should be provided. -->
<OUTPUT>OFF</OUTPUT>
<!-- Name of output directory -->
<OUTPUT-PATH></OUTPUT-PATH>
<!-- Name of required stub module
each module should be separated with "," -->
<STUBS>Dem</STUBS>
</OPTION>
<!-- To provide input files. If multiple input files need to be provided then
each file should be separated with ",". -->
<INPUT-FILE></INPUT-FILE>
</XML>

View File

@@ -0,0 +1,91 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
********************************************************************************
** Project = AUTOSAR Renesas CPF MCAL Components **
** Module = Spi Driver **
** SW-VERSION = 1.5.5 **
********************************************************************************
** COPYRIGHT **
********************************************************************************
** Copyright(c) 2017-2024 Renesas Electronics Corporation. **
********************************************************************************
** Purpose: **
** Provides configuration setting for Spi Driver Generation Tool. **
** **
********************************************************************************
** **
** Unless otherwise agreed upon in writing between your company and **
** Renesas Electronics Corporation the following shall apply! **
** **
** Warranty Disclaimer **
** **
** There is no warranty of any kind whatsoever granted by Renesas. Any **
** warranty is expressly disclaimed and excluded by Renesas, either expressed **
** or implied, including but not limited to those for non-infringement of **
** intellectual property, merchantability and/or fitness for the particular **
** purpose. **
** **
** Renesas shall not have any obligation to maintain, service or provide bug **
** fixes for the supplied Product(s) and/or the Application. **
** **
** Each User is solely responsible for determining the appropriateness of **
** using the Product(s) and assumes all risks associated with its exercise **
** of rights under this Agreement, including, but not limited to the risks **
** and costs of program errors, compliance with applicable laws, damage to **
** or loss of data, programs or equipment, and unavailability or **
** interruption of operations. **
** **
** Limitation of Liability **
** **
** In no event shall Renesas be liable to the User for any incidental, **
** consequential, indirect, or punitive damage (including but not limited **
** to lost profits) regardless of whether such liability is based on breach **
** of contract, tort, strict liability, breach of warranties, failure of **
** essential purpose or otherwise and even if advised of the possibility of **
** such damages. Renesas shall not be liable for any services or products **
** provided by third party vendors, developers or consultants identified or **
** referred to the User by Renesas in connection with the Product(s) and/or **
** the Application. **
** **
********************************************************************************
** Environment: **
** Devices: CPF **
********************************************************************************
** Revision Control History **
********************************************************************************
** 1.2.1: 27/12/2024 Add stub module Port **
** 1.2.0: 10/12/2021 Add stub module Os **
** 1.1.0: 19/06/2020 Beta release **
** 1.0.0: 16/01/2017 Initial Version **
********************************************************************************
-->
<!--
None of the tag from this XML should be renamed or deleted.
-->
<XML>
<!-- Supported Command Line options -->
<OPTION>
<!-- Only ON or OFF should be provided. -->
<HELP>OFF</HELP>
<!-- Only ON or OFF should be provided. -->
<LOG>OFF</LOG>
<!-- Only ON or OFF should be provided. -->
<DRYRUN>OFF</DRYRUN>
<!-- Only ON or OFF should be provided. -->
<OUTPUT>OFF</OUTPUT>
<!-- Name of output directory -->
<OUTPUT-PATH></OUTPUT-PATH>
<!-- Name of required stub module
each module should be separated with "," -->
<STUBS>Mcu, Dem, Os, Port</STUBS>
</OPTION>
<!-- To provide input files. If multiple input files need to be provided then
each file should be separated with ",". -->
<INPUT-FILE></INPUT-FILE>
</XML>

View File

@@ -0,0 +1,93 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
********************************************************************************
** Project = AUTOSAR Renesas R-CarGen4 MCAL Components **
** Module = WDG Driver **
** SW-VERSION = 1.3.1 **
********************************************************************************
** COPYRIGHT **
********************************************************************************
** (c) 2017-2022 Renesas Electronics Corporation. All rights reserved. **
********************************************************************************
** Purpose: **
** Provides the definition of the containers, sub-containers and parameters **
** specific to AUTOSAR Renesas WDG Driver Component for 19-11 **
** **
********************************************************************************
** **
** Unless otherwise agreed upon in writing between your company and **
** Renesas Electronics Corporation the following shall apply! **
** **
** Warranty Disclaimer **
** **
** There is no warranty of any kind whatsoever granted by Renesas. Any **
** warranty is expressly disclaimed and excluded by Renesas, either expressed **
** or implied, including but not limited to those for non-infringement of **
** intellectual property, merchantability and/or fitness for the particular **
** purpose. **
** **
** Renesas shall not have any obligation to maintain, service or provide bug **
** fixes for the supplied Product(s) and/or the Application. **
** **
** Each User is solely responsible for determining the appropriateness of **
** using the Product(s) and assumes all risks associated with its exercise **
** of rights under this Agreement, including, but not limited to the risks **
** and costs of program errors, compliance with applicable laws, damage to **
** or loss of data, programs or equipment, and unavailability or **
** interruption of operations. **
** **
** Limitation of Liability **
** **
** In no event shall Renesas be liable to the User for any incidental, **
** consequential, indirect, or punitive damage (including but not limited **
** to lost profits) regardless of whether such liability is based on breach **
** of contract, tort, strict liability, breach of warranties, failure of **
** essential purpose or otherwise and even if advised of the possibility of **
** such damages. Renesas shall not be liable for any services or products **
** provided by third party vendors, developers or consultants identified or **
** referred to the User by Renesas in connection with the Product(s) and/or **
** the Application. **
** **
********************************************************************************
** Environment: **
** Devices: RH850/E2xFCC1/S4/V4H: R7F702Z04EDBA, RTM8RC79FG **
********************************************************************************
** Revision Control History **
********************************************************************************
** 1.2.1: 04/04/2022 Added Gpt to stub module **
** 1.2.0: 20/09/2021 Updated COPYRIGHT for R-CarGen4, increased SW-VERSION **
** Add <STUB> tag for required stub module **
** 1.1.0: 19/06/2020 Beta Release **
** 1.0.0: 20/01/2017 Initial Version **
********************************************************************************
!-->
<!--
None of the tag from this XML should be renamed or deleted.
-->
<XML>
<!-- Supported Command Line options -->
<OPTION>
<!-- Only ON or OFF should be provided. -->
<HELP>OFF</HELP>
<!-- Only ON or OFF should be provided. -->
<LOG>OFF</LOG>
<!-- Only ON or OFF should be provided. -->
<DRYRUN>OFF</DRYRUN>
<!-- Only ON or OFF should be provided. -->
<OUTPUT>OFF</OUTPUT>
<!-- Name of output directory -->
<OUTPUT-PATH></OUTPUT-PATH>
<!-- Name of required stub module
each module should be separated with "," -->
<STUBS>Dem, Mcu, Gpt</STUBS>
</OPTION>
<!-- To provide input files. If multiple input files need to be provided then
each file should be separated with ",". -->
<INPUT-FILE></INPUT-FILE>
</XML>

View File

@@ -0,0 +1,160 @@
/*============================================================================*/
/* Project = AUTOSAR Renesas CPF MCAL Components */
/* Module = Platform_Types.h */
/* SW-VERSION = 1.0.0 */
/*============================================================================*/
/* COPYRIGHT */
/*============================================================================*/
/* Copyright(c) 2021 Renesas Electronics Corporation. */
/*============================================================================*/
/* Purpose: */
/* Provision for platform and compiler dependent types */
/* */
/*============================================================================*/
/* */
/* Unless otherwise agreed upon in writing between your company and */
/* Renesas Electronics Corporation the following shall apply! */
/* */
/* Warranty Disclaimer */
/* */
/* There is no warranty of any kind whatsoever granted by Renesas. Any */
/* warranty is expressly disclaimed and excluded by Renesas, either expressed */
/* or implied, including but not limited to those for non-infringement of */
/* intellectual property, merchantability and/or fitness for the particular */
/* purpose. */
/* */
/* Renesas shall not have any obligation to maintain, service or provide bug */
/* fixes for the supplied Product(s) and/or the Application. */
/* */
/* Each User is solely responsible for determining the appropriateness of */
/* using the Product(s) and assumes all risks associated with its exercise */
/* of rights under this Agreement, including, but not limited to the risks */
/* and costs of program errors, compliance with applicable laws, damage to */
/* or loss of data, programs or equipment, and unavailability or */
/* interruption of operations. */
/* */
/* Limitation of Liability */
/* */
/* In no event shall Renesas be liable to the User for any incidental, */
/* consequential, indirect, or punitive damage (including but not limited */
/* to lost profits) regardless of whether such liability is based on breach */
/* of contract, tort, strict liability, breach of warranties, failure of */
/* essential purpose or otherwise and even if advised of the possibility of */
/* such damages. Renesas shall not be liable for any services or products */
/* provided by third party vendors, developers or consultants identified or */
/* referred to the User by Renesas in connection with the Product(s) and/or */
/* the Application. */
/* */
/*============================================================================*/
/* Environment: */
/* Devices: CPF */
/*============================================================================*/
/*******************************************************************************
** Revision Control History **
*******************************************************************************/
/*
* 1.0.0 20/08/2021 Initial Version
*/
/******************************************************************************/
#ifndef PLATFORM_TYPES_H
#define PLATFORM_TYPES_H
/*******************************************************************************
** Include Section **
*******************************************************************************/
/*******************************************************************************
** Version Information **
*******************************************************************************/
/* AUTOSAR specification release version information for R19-11 */
#define PLATFORM_TYPES_AR_RELEASE_MAJOR_VERSION 4
#define PLATFORM_TYPES_AR_RELEASE_MINOR_VERSION 5
#define PLATFORM_TYPES_AR_RELEASE_REVISION_VERSION 0
/* File version information */
#define PLATFORM_TYPES_SW_MAJOR_VERSION 1
#define PLATFORM_TYPES_SW_MINOR_VERSION 0
#define PLATFORM_TYPES_SW_PATCH_VERSION 0
/*******************************************************************************
** Global Symbols **
*******************************************************************************/
/*
* CPU register type width
*/
#define CPU_TYPE_8 8
#define CPU_TYPE_16 16
#define CPU_TYPE_32 32
#define CPU_TYPE_64 64
/*
* Bit order definition
*/
#define MSB_FIRST 0 /* Big endian bit ordering */
#define LSB_FIRST 1 /* Little endian bit ordering */
/*
* Byte order definition
*/
#define HIGH_BYTE_FIRST 0 /* Big endian byte ordering */
#define LOW_BYTE_FIRST 1 /* Little endian byte ordering */
/*
* Platform type and endianess definitions
*/
#define CPU_TYPE CPU_TYPE_32
#define CPU_BIT_ORDER LSB_FIRST
#define CPU_BYTE_ORDER LOW_BYTE_FIRST
/*
* Interrupt Mode definitions
*/
#define MCAL_ISR_TYPE_TOOLCHAIN 1
#define MCAL_ISR_TYPE_OS 2
#define MCAL_ISR_TYPE_NONE 3
/*******************************************************************************
** Global Data Types **
*******************************************************************************/
/*
* AUTOSAR integer data types
*/
typedef signed char sint8; /* -128 .. +127 */
typedef unsigned char uint8; /* 0 .. 255 */
typedef signed short sint16; /* -32768 .. +32767 */
typedef unsigned short uint16; /* 0 .. 65535 */
typedef signed long sint32; /* -2147483648 .. +2147483647 */
typedef unsigned long uint32; /* 0 .. 4294967295 */
typedef signed long long sint64; /* 63 bit + 1 bit sign */
typedef unsigned long long uint64; /* 64 bit */
typedef unsigned long uint8_least; /* At least 8 bit */
typedef unsigned long uint16_least; /* At least 16 bit */
typedef unsigned long uint32_least; /* At least 32 bit */
typedef signed long sint8_least; /* At least 7 bit + 1 bit sign */
typedef signed long sint16_least; /* At least 15 bit + 1 bit sign */
typedef signed long sint32_least; /* At least 31 bit + 1 bit sign */
typedef unsigned char boolean; /* for use with TRUE/FALSE */
typedef float float32;
typedef double float64;
#ifndef TRUE /* conditional check */
#define TRUE 1
#endif
#ifndef FALSE /* conditional check */
#define FALSE 0
#endif
/*******************************************************************************
** Function Prototypes **
*******************************************************************************/
#endif /* PLATFORM_TYPES_H */
/*******************************************************************************
** End of File **
*******************************************************************************/

View File

@@ -0,0 +1,112 @@
/*============================================================================*/
/* Project = AUTOSAR Renesas CPF MCAL Components */
/* Module = Interrupt.h */
/* SW-VERSION = 1.0.1 */
/*============================================================================*/
/* COPYRIGHT */
/*============================================================================*/
/* Copyright(c) 2021-2022 Renesas Electronics Corporation. */
/*============================================================================*/
/* Purpose: */
/* R-Car interrupt controller */
/* */
/*============================================================================*/
/* */
/* Unless otherwise agreed upon in writing between your company and */
/* Renesas Electronics Corporation the following shall apply! */
/* */
/* Warranty Disclaimer */
/* */
/* There is no warranty of any kind whatsoever granted by Renesas. Any */
/* warranty is expressly disclaimed and excluded by Renesas, either expressed */
/* or implied, including but not limited to those for non-infringement of */
/* intellectual property, merchantability and/or fitness for the particular */
/* purpose. */
/* */
/* Renesas shall not have any obligation to maintain, service or provide bug */
/* fixes for the supplied Product(s) and/or the Application. */
/* */
/* Each User is solely responsible for determining the appropriateness of */
/* using the Product(s) and assumes all risks associated with its exercise */
/* of rights under this Agreement, including, but not limited to the risks */
/* and costs of program errors, compliance with applicable laws, damage to */
/* or loss of data, programs or equipment, and unavailability or */
/* interruption of operations. */
/* */
/* Limitation of Liability */
/* */
/* In no event shall Renesas be liable to the User for any incidental, */
/* consequential, indirect, or punitive damage (including but not limited */
/* to lost profits) regardless of whether such liability is based on breach */
/* of contract, tort, strict liability, breach of warranties, failure of */
/* essential purpose or otherwise and even if advised of the possibility of */
/* such damages. Renesas shall not be liable for any services or products */
/* provided by third party vendors, developers or consultants identified or */
/* referred to the User by Renesas in connection with the Product(s) and/or */
/* the Application. */
/* */
/*============================================================================*/
/* Environment: */
/* Devices: CPF */
/*============================================================================*/
/*******************************************************************************
** Revision Control History **
*******************************************************************************/
/*
* 1.0.1: 01/10/2022 : Update macro's value of Interrupt_SetPriority()
* 1.0.0: 20/08/2021 : Initial Version
*/
/******************************************************************************/
#ifndef INTERRUPT_H
#define INTERRUPT_H
/*******************************************************************************
** Include Section **
*******************************************************************************/
#include "arm_cr.h"
/*******************************************************************************
** Version Information **
*******************************************************************************/
/*******************************************************************************
** Global Symbols **
*******************************************************************************/
/*******************************************************************************
** Global Data Types **
*******************************************************************************/
/*******************************************************************************
** Function Prototypes **
*******************************************************************************/
/* Enable */
#define Interrupt_Enable(intid) \
GIC_EnableIRQ((uint32)intid)
/* Disable */
#define Interrupt_Disable(intid) \
GIC_DisableIRQ((uint32)intid)
/* Set group */
#define Interrupt_SetGroup(intid,grpid) \
GIC_SetGroup((uint32)intid,(uint32)grpid)
/* Set priority */
#define Interrupt_SetPriority(intid,pri) \
GIC_SetPriority((uint32)intid,(uint32)pri)
/* Interrupt configuration */
#define Interrupt_Config() GIC_Enable()
/* Install a handler to vector table */
void Interrupt_InstallHandler(void (*f)(), uint32 intid);
#endif /* INTERRUPT_H */
/*******************************************************************************
** End of File **
*******************************************************************************/

View File

@@ -0,0 +1,529 @@
/*============================================================================*/
/* Project = AUTOSAR Renesas CPF MCAL Components */
/* Module = arm_cr.h */
/* SW-VERSION = 1.0.3 */
/*============================================================================*/
/* COPYRIGHT */
/*============================================================================*/
/* Copyright(c) 2021-2022 Renesas Electronics Corporation. */
/*============================================================================*/
/* Purpose: */
/* Macros for ARM Cortex R */
/* */
/*============================================================================*/
/* */
/* Unless otherwise agreed upon in writing between your company and */
/* Renesas Electronics Corporation the following shall apply! */
/* */
/* Warranty Disclaimer */
/* */
/* There is no warranty of any kind whatsoever granted by Renesas. Any */
/* warranty is expressly disclaimed and excluded by Renesas, either expressed */
/* or implied, including but not limited to those for non-infringement of */
/* intellectual property, merchantability and/or fitness for the particular */
/* purpose. */
/* */
/* Renesas shall not have any obligation to maintain, service or provide bug */
/* fixes for the supplied Product(s) and/or the Application. */
/* */
/* Each User is solely responsible for determining the appropriateness of */
/* using the Product(s) and assumes all risks associated with its exercise */
/* of rights under this Agreement, including, but not limited to the risks */
/* and costs of program errors, compliance with applicable laws, damage to */
/* or loss of data, programs or equipment, and unavailability or */
/* interruption of operations. */
/* */
/* Limitation of Liability */
/* */
/* In no event shall Renesas be liable to the User for any incidental, */
/* consequential, indirect, or punitive damage (including but not limited */
/* to lost profits) regardless of whether such liability is based on breach */
/* of contract, tort, strict liability, breach of warranties, failure of */
/* essential purpose or otherwise and even if advised of the possibility of */
/* such damages. Renesas shall not be liable for any services or products */
/* provided by third party vendors, developers or consultants identified or */
/* referred to the User by Renesas in connection with the Product(s) and/or */
/* the Application. */
/* */
/*============================================================================*/
/* Environment: */
/* Devices: CPF */
/*============================================================================*/
/*******************************************************************************
** Revision Control History **
*******************************************************************************/
/*
* 1.0.3: 22/09/2022 : Remove inline asmembler wfi, wfe, dsb, isb and
* move to Compiler.h support SML structure solution
* 1.0.2: 13/04/2022 : Add inline asmembler wfi, wfe, dsb, isb
* 1.0.1: 24/12/2021 : Support multi cores CR52
* 1.0.0: 18/10/2021 : Initial Version
*/
/******************************************************************************/
#ifndef ARM_CR_H
#define ARM_CR_H
/*******************************************************************************
** Include Section **
*******************************************************************************/
#include "Compiler.h"
#include "Platform_Types.h"
/*******************************************************************************
** Version Information **
*******************************************************************************/
/*
* File version information
*/
#define ARM_CR_SW_MAJOR_VERSION 1
#define ARM_CR_SW_MINOR_VERSION 0
#define ARM_CR_SW_PATCH_VERSION 0
/*******************************************************************************
** Global Symbols **
*******************************************************************************/
/*******************************************************************************
** Global Data Types **
*******************************************************************************/
/*******************************************************************************
** Function Prototypes **
*******************************************************************************/
/*******************************************************************************
** Macro **
*******************************************************************************/
#ifndef __ASM
#define __ASM __asm
#endif
#ifndef __INLINE
#define __INLINE inline
#endif
#ifndef __STATIC_INLINE
#define __STATIC_INLINE static inline
#endif
/* No Operation */
#define __NOP() __ASM volatile ("nop")
/* Wait For Interrupt */
#define __WFI() __ASM volatile ("wfi":::"memory")
/* Wait For Event */
#define __WFE() __ASM volatile ("wfe":::"memory")
/* Send Event */
#define __SEV() __ASM volatile ("sev")
/* Instruction Synchronization Barrier */
#define __ISB() __ASM volatile ("isb":::"memory")
/* Data Synchronization Barrier */
#define __DSB() __ASM volatile ("dsb":::"memory")
/* Data Memory Barrier */
#define __DMB() __ASM volatile ("dmb":::"memory")
/* Get CPSR Register */
__STATIC_INLINE uint32 __get_CPSR(void)
{
uint32 ret = 0;
__ASM volatile("mrs %0, cpsr" : "=r" (ret) );
return ret;
}
/* Set CPSR Register */
__STATIC_INLINE void __set_CPSR(uint32 cpsr)
{
__ASM volatile ("msr cpsr, %0" : : "r" (cpsr) : "cc", "memory");
}
/* Enable IRQ Interrupts */
__STATIC_INLINE void __enable_irq()
{
__ASM volatile ("cpsie i" : : : "memory");
// __set_CPSR(__get_CPSR() & (~(1 << 7)));
}
/* Disable IRQ Interrupts */
__STATIC_INLINE void __disable_irq()
{
__ASM volatile ("cpsid i" : : : "memory");
// __set_CPSR(__get_CPSR() | (1 << 7));
}
/* Get Processor Mode */
__STATIC_INLINE uint32 __get_mode(void)
{
return (__get_CPSR() & 0x1FU);
}
/* Set Processor Mode */
#define __set_mode(mode) \
__ASM volatile("msr cpsr_c, %0" : : "r" (mode) : "memory")
/* Get Stack Pointer */
__STATIC_INLINE uint32 __get_SP(void)
{
uint32 ret = 0;
__ASM volatile("mov %0, sp" : "=r" (ret) : : "memory");
return ret;
}
/* Set Stack Pointer */
#define __set_SP(stack) \
__ASM volatile("mov sp, %0" : : "r" (stack) : "memory")
#if (defined(__ARM_ARCH_8R__ ) || defined(__ARM8))
/* Set LR Hypervisor */
#define __set_elr_hyp(addr) \
__ASM volatile("msr elr_hyp, %0" : : "r" (addr) : "memory")
/* EL2 -> EL1 */
#define __ERET() __ASM volatile ("eret")
#endif /* (defined(__ARM_ARCH_8R__ ) || defined(__ARM8)) */
/* Set SPSR Register */
#define __set_SPSR(t, spsr) \
__ASM volatile ("msr spsr" # t ", %0" : : "r" (spsr) : "cc", "memory")
/*
* Include common core functions to access Coprocessor 15 registers
*/
#define __get_CP(cp, op1, Rt, CRn, CRm, op2) \
__ASM volatile("mrc p" # cp ", " # op1 ", %0, c" # CRn ", c" # CRm ", " # op2 : "=r" (Rt) : : "memory" )
#define __set_CP(cp, op1, Rt, CRn, CRm, op2) \
__ASM volatile("mcr p" # cp ", " # op1 ", %0, c" # CRn ", c" # CRm ", " # op2 : : "r" (Rt) : "memory" )
/* Mask and shift a bit field value for use in a register bit range. */
#define _VAL2FLD(field, value) (((uint32)(value) << field ## _Pos) & field ## _Msk)
/* Mask and shift a register value to extract a bit filed value. */
#define _FLD2VAL(field, value) (((uint32)(value) & field ## _Msk) >> field ## _Pos)
/* following defines should be used for structure members */
#define __RO volatile const /* Defines 'read only' structure member permissions */
#define __WO volatile /* Defines 'write only' structure member permissions */
#define __RW volatile /* Defines 'read / write' structure member permissions */
#define RESERVED(N, T) T RESERVED##N; /* placeholder struct members used for "reserved" areas */
/* Check Interrupt mode status (CPSR.MODE) */
#define GET_INTMODE __get_IntMode
__STATIC_INLINE int __get_IntMode(void)
{
int LRet;
/* Check CPSR.MODE */
if(0x00000012 == __get_mode())
{
LRet = 1;
}
else
{
LRet = 0;
}
return LRet;
}
#include "arm_cr_cp15.h"
#include "arm_cr_reg.h"
/* Get CR CPU Core ID */
__STATIC_INLINE uint32 __get_CRCoreID(void)
{
return (__get_MPIDR() & 0x0000000FU);
}
/*******************************************************************************
** Cache **
*******************************************************************************/
/* Enable L1 I-Cache */
__STATIC_INLINE void L1C_EnableICache(void)
{
__set_SCTLR( __get_SCTLR() | SCTLR_I_Msk);
__ISB();
}
/* Disable L1 I-Cache */
__STATIC_INLINE void L1C_DisableICache(void)
{
__set_SCTLR( __get_SCTLR() & (~SCTLR_I_Msk));
__ISB();
}
/* Enable L1 D-Cache */
__STATIC_INLINE void L1C_EnableDCache(void)
{
__set_SCTLR( __get_SCTLR() | SCTLR_C_Msk);
__ISB();
}
/* Disable L1 D-Cache */
__STATIC_INLINE void L1C_DisableDCache(void)
{
__set_SCTLR( __get_SCTLR() & (~SCTLR_C_Msk));
__ISB();
}
/* Enable Branch Prediction */
__STATIC_INLINE void L1C_EnableBP(void) {
__set_SCTLR( __get_SCTLR() | SCTLR_Z_Msk);
__ISB();
}
/* Disable Branch Prediction */
__STATIC_INLINE void L1C_DisableBP(void) {
__set_SCTLR( __get_SCTLR() & (~SCTLR_Z_Msk));
__ISB();
}
/* Invalidate entire branch predictor array */
__STATIC_INLINE void L1C_InvalidateBP(void) {
__set_BPIALL(0);
__DSB(); //ensure completion of the invalidation
__ISB(); //ensure instruction fetch path sees new state
}
/* Invalidate the whole instruction cache */
__STATIC_INLINE void L1C_InvalidateICacheAll(void) {
__set_ICIALLU(0);
__DSB(); //ensure completion of the invalidation
__ISB(); //ensure instruction fetch path sees new I cache state
}
/* Calculate logarit 2 and round up */
__STATIC_INLINE uint32 __log_2_n_roundup(uint32 val)
{
uint32 ret = 0, additional = 0;
if (val & (val - 1))
{
additional = 1;
}
while (val > 1)
{
ret += 1;
val = val >> 1;
}
return (ret + additional);
}
/* Maintain data cache by set/way */
__STATIC_INLINE void __L1C_MaintainDCacheSetWay(uint32 level, uint32 maint)
{
uint32 Dummy;
uint32 ccsidr;
uint32 num_sets;
uint32 num_ways;
uint32 shift_way;
uint32 log2_linesize;
uint32 log2_num_ways;
uint32 way, set;
Dummy = level << 1U;
/* set csselr, select ccsidr register */
__set_CSSELR(Dummy);
/* get current ccsidr register */
ccsidr = __get_CCSIDR();
num_sets = ((ccsidr & 0x0FFFE000U) >> 13U) + 1U;
num_ways = ((ccsidr & 0x00001FF8U) >> 3U) + 1U;
/* Calculate L (based on line length) */
/* From B6.1.7 CCSIDR, Cache Size ID Registers, PMSA and
B6.2.1 Cache and branch predictor maintenance operations, PMSA
- L = log2(LINELEN) with LINELEN is bytes
- LINELEN = line_size x 4 with line_size is got from CCSIDR
- line_size is calculated as below :
+ CSSIDR_LineSize = (log2(line_size))-2
with CSSIDR_LineSize : value from CCSIDR
=> line_size = 2^(CSSIDR_LineSize + 2)
=> LINELEN = (2^(CSSIDR_LineSize + 2)) x 4 = 16 x 2^(CSSIDR_LineSize)
=> L = log2(16 x 2^(CSSIDR_LineSize)) = 4 + CSSIDR_LineSize
*/
log2_linesize = (ccsidr & 0x00000007U) + 2U + 2U;
/* Calculate A (based on num_ways) */
log2_num_ways = __log_2_n_roundup(num_ways);
shift_way = 32U - (uint32)log2_num_ways;
for(way = 0; way < num_ways; way++)
{
for(set = 0; set < num_sets; set++)
{
Dummy = (level << 1U) | (((uint32)set) << log2_linesize) | (((uint32)way) << shift_way);
switch (maint)
{
case 0U: __set_DCISW(Dummy); break;
case 1U: __set_DCCSW(Dummy); break;
default: __set_DCCISW(Dummy); break;
}
}
}
__DMB();
}
/* Clean and Invalidate the entire data or unified cache */
__STATIC_INLINE void L1C_MaintainDCacheSetWay(uint32 op) {
uint32 clidr;
uint32 cache_type;
uint32 i = 0U;
clidr = __get_CLIDR();
for(i = 0U; i < 7U; i++)
{
cache_type = (clidr >> i*3U) & 0x7UL;
if ((cache_type >= 2U) && (cache_type <= 4U))
{
__L1C_MaintainDCacheSetWay(i, op);
}
}
}
/* Maintain data cache by address */
__STATIC_INLINE void __L1C_MaintainDCacheAddress(uint32 level, uint32 maint, \
uint32 addr, uint32 size)
{
uint32 Dummy, ccsidr;
uint32 line_size = 0, pow = 1, num_lines = 0;
Dummy = level << 1U;
/* set csselr, select ccsidr register */
__set_CSSELR(Dummy);
/* get current ccsidr register */
ccsidr = __get_CCSIDR();
line_size = (ccsidr & 0x00000007U);
/* Convert to number of bytes */
while (line_size--)
{
pow *= 2;
}
line_size = 16 * pow;
/* Calculate num lines which need to be maintained */
if (size % line_size)
{
num_lines = (size / line_size) + 1;
}
else
{
num_lines = (size / line_size);
}
while (num_lines--)
{
switch (maint)
{
case 0U: __set_DCIMVAC(addr); break;
case 1U: __set_DCCMVAC(addr); break;
default: __set_DCCIMVAC(addr); break;
}
addr += line_size;
}
__DMB();
}
/* Clean data cache line by address */
__STATIC_INLINE void L1C_CleanDCacheAddress(uint32 addr, uint32 size) {
__L1C_MaintainDCacheAddress(1, 1, addr, size);
__DMB(); //ensure the ordering of data cache maintenance operations and their effects
}
/* Invalidate data cache line by address */
__STATIC_INLINE void L1C_InvalidateDCacheAddress(uint32 addr, uint32 size) {
__L1C_MaintainDCacheAddress(1, 0, addr, size);
__DMB(); //ensure the ordering of data cache maintenance operations and their effects
}
/* Clean and Invalidate data cache by address */
__STATIC_INLINE void L1C_CleanInvalidateDCacheAddress(uint32 addr, uint32 size) {
__L1C_MaintainDCacheAddress(1, 2, addr, size);
__DMB(); //ensure the ordering of data cache maintenance operations and their effects
}
/* Invalidate the whole data cache */
__STATIC_INLINE void L1C_InvalidateDCacheAll(void) {
L1C_MaintainDCacheSetWay(0);
}
/* Clean the whole data cache */
__STATIC_INLINE void L1C_CleanDCacheAll(void) {
L1C_MaintainDCacheSetWay(1);
}
/* Clean and invalidate the whole data cache */
__STATIC_INLINE void L1C_CleanInvalidateDCacheAll(void) {
L1C_MaintainDCacheSetWay(2);
}
/*******************************************************************************
** MPU **
*******************************************************************************/
#if (defined(__ARM_ARCH_8R__ ) || defined(__ARM8))
typedef uint32 MPU_Attr;
extern MPU_Attr mpu_attr_tbl[]; /* maximum 8 elements */
#define mpu_attr_tbl2 mpu_attr_tbl /* same MPU settings for EL1 and EL2 */
#endif /* (defined(__ARM_ARCH_8R__ ) || defined(__ARM8)) */
/* MPU setting structure */
typedef struct
{
uint32 region_id; /* Region ID */
uint32 region_start_addr; /* Region start address */
#if (defined(__ARM_ARCH_8R__ ) || defined(__ARM8))
uint32 region_end_addr; /* Region end address */
uint32 region_attr_idx; /* Region attribute index */
#else
uint32 region_size; /* Region size */
#endif /* (defined(__ARM_ARCH_8R__ ) || defined(__ARM8)) */
uint32 region_attribute; /* Region attribute */
} MPU_Region;
/* MPU setting table */
typedef struct
{
MPU_Region *table; /* MPU table for RCar */
uint32 num_region; /* Number of region */
} MPU_Setting;
extern MPU_Setting mpu_setting_tbl;
#if (defined(__ARM_ARCH_8R__ ) || defined(__ARM8))
#define mpu_setting_tbl2 mpu_setting_tbl/* same MPU settings for EL1 and EL2 */
#endif /* (defined(__ARM_ARCH_8R__ ) || defined(__ARM8)) */
#include "arm_cr_mpu.h"
/*******************************************************************************
** VFP **
*******************************************************************************/
/* Enable VFP */
__STATIC_INLINE void VFP_Enable(void)
{
__set_CPACR( __get_CPACR() | CPACR_CP_Msk);
__ASM volatile ("vmsr fpexc, %0" : : "r" (0x40000000) : "memory");
__ISB();
}
/* Enable VFP */
__STATIC_INLINE void VFP_Disable(void)
{
__ASM volatile ("vmsr fpexc, %0" : : "r" (0x00000000) : "memory");
__set_CPACR( __get_CPACR() & (~CPACR_CP_Msk));
__ISB();
}
/*******************************************************************************
** GIC **
*******************************************************************************/
#include "device_cfg.h"
#include "arm_gic.h"
#endif /* ARM_CR_H */
/*******************************************************************************
** End of File **
*******************************************************************************/

View File

@@ -0,0 +1,640 @@
/*============================================================================*/
/* Project = AUTOSAR Renesas CPF MCAL Components */
/* Module = arm_cr_cp15.h */
/* SW-VERSION = 1.0.0 */
/*============================================================================*/
/* COPYRIGHT */
/*============================================================================*/
/* Copyright(c) 2021 Renesas Electronics Corporation. */
/*============================================================================*/
/* Purpose: */
/* Macros for ARM Cortex-R CP15 */
/* */
/*============================================================================*/
/* */
/* Unless otherwise agreed upon in writing between your company and */
/* Renesas Electronics Corporation the following shall apply! */
/* */
/* Warranty Disclaimer */
/* */
/* There is no warranty of any kind whatsoever granted by Renesas. Any */
/* warranty is expressly disclaimed and excluded by Renesas, either expressed */
/* or implied, including but not limited to those for non-infringement of */
/* intellectual property, merchantability and/or fitness for the particular */
/* purpose. */
/* */
/* Renesas shall not have any obligation to maintain, service or provide bug */
/* fixes for the supplied Product(s) and/or the Application. */
/* */
/* Each User is solely responsible for determining the appropriateness of */
/* using the Product(s) and assumes all risks associated with its exercise */
/* of rights under this Agreement, including, but not limited to the risks */
/* and costs of program errors, compliance with applicable laws, damage to */
/* or loss of data, programs or equipment, and unavailability or */
/* interruption of operations. */
/* */
/* Limitation of Liability */
/* */
/* In no event shall Renesas be liable to the User for any incidental, */
/* consequential, indirect, or punitive damage (including but not limited */
/* to lost profits) regardless of whether such liability is based on breach */
/* of contract, tort, strict liability, breach of warranties, failure of */
/* essential purpose or otherwise and even if advised of the possibility of */
/* such damages. Renesas shall not be liable for any services or products */
/* provided by third party vendors, developers or consultants identified or */
/* referred to the User by Renesas in connection with the Product(s) and/or */
/* the Application. */
/* */
/*============================================================================*/
/* Environment: */
/* Devices: CPF */
/*============================================================================*/
/*******************************************************************************
** Revision Control History **
*******************************************************************************/
/*
* 1.0.0: 20/08/2021 : Initial Version
*/
/******************************************************************************/
#ifndef ARM_CR_CP15_H
#define ARM_CR_CP15_H
/*******************************************************************************
** Include Section **
*******************************************************************************/
/*******************************************************************************
** Version Information **
*******************************************************************************/
/*******************************************************************************
** Global Symbols **
*******************************************************************************/
/*******************************************************************************
** Global Data Types **
*******************************************************************************/
/*******************************************************************************
** Function Prototypes **
*******************************************************************************/
/*******************************************************************************
** Macro **
*******************************************************************************/
/* Get ACTLR */
__STATIC_INLINE uint32 __get_ACTLR(void)
{
uint32 ret = 0;
__get_CP(15, 0, ret, 1, 0, 1);
return(ret);
}
/* Set ACTLR */
__STATIC_INLINE void __set_ACTLR(uint32 actlr)
{
__set_CP(15, 0, actlr, 1, 0, 1);
}
/* Get CPACR */
__STATIC_INLINE uint32 __get_CPACR(void)
{
uint32 ret = 0;
__get_CP(15, 0, ret, 1, 0, 2);
return ret;
}
/* Set CPACR */
__STATIC_INLINE void __set_CPACR(uint32 cpacr)
{
__set_CP(15, 0, cpacr, 1, 0, 2);
}
/* Get DFSR */
__STATIC_INLINE uint32 __get_DFSR(void)
{
uint32 ret = 0;
__get_CP(15, 0, ret, 5, 0, 0);
return ret;
}
/* Set DFSR */
__STATIC_INLINE void __set_DFSR(uint32 dfsr)
{
__set_CP(15, 0, dfsr, 5, 0, 0);
}
/* Get IFSR */
__STATIC_INLINE uint32 __get_IFSR(void)
{
uint32 ret = 0;
__get_CP(15, 0, ret, 5, 0, 1);
return ret;
}
/* Set IFSR */
__STATIC_INLINE void __set_IFSR(uint32 ifsr)
{
__set_CP(15, 0, ifsr, 5, 0, 1);
}
#if (defined(__ARM_ARCH_8R__ ) || defined(__ARM8))
/* Get ISR */
__STATIC_INLINE uint32 __get_ISR(void)
{
uint32 ret = 0;
__get_CP(15, 0, ret, 12, 1, 0);
return ret;
}
/* Set HSCTLR */
__STATIC_INLINE void __set_HSCTLR(uint32 hsctlr)
{
__set_CP(15, 4, hsctlr, 1, 0, 0);
}
/* Get HSCTLR */
__STATIC_INLINE uint32 __get_HSCTLR(void)
{
uint32 ret = 0;
__get_CP(15, 4, ret, 1, 0, 0);
return ret;
}
#endif /* (defined(__ARM_ARCH_8R__ ) || defined(__ARM8)) */
/* Set SCTLR */
__STATIC_INLINE void __set_SCTLR(uint32 sctlr)
{
__set_CP(15, 0, sctlr, 1, 0, 0);
}
/* Get SCTLR */
__STATIC_INLINE uint32 __get_SCTLR(void)
{
uint32 ret = 0;
__get_CP(15, 0, ret, 1, 0, 0);
return ret;
}
/* Get MPIDR */
__STATIC_INLINE uint32 __get_MPIDR(void)
{
uint32 ret = 0;
__get_CP(15, 0, ret, 0, 0, 5);
return ret;
}
#if (defined(__ARM_ARCH_7R__ ) || defined(__CORE_CORTEXR7__ ))
/* Set RGNR */
__STATIC_INLINE void __set_RGNR(uint32 val)
{
__set_CP(15, 0, val, 6, 2, 0);
}
/* Set DRBAR */
__STATIC_INLINE void __set_DRBAR(uint32 val)
{
__set_CP(15, 0, val, 6, 1, 0);
}
/* Set DRSR */
__STATIC_INLINE void __set_DRSR(uint32 val)
{
__set_CP(15, 0, val, 6, 1, 2);
}
/* Set DRACR */
__STATIC_INLINE void __set_DRACR(uint32 val)
{
__set_CP(15, 0, val, 6, 1, 4);
}
#endif /* ((defined(__ARM_ARCH_7R__ ) || defined(__CORE_CORTEXR7__ )) */
#if (defined(__ARM_ARCH_8R__ ) || defined(__ARM8))
/* Get VBAR */
__STATIC_INLINE uint32 __get_VBAR(void)
{
uint32 ret = 0;
__get_CP(15, 0, ret, 12, 0, 0);
return ret;
}
/* Set VBAR */
__STATIC_INLINE void __set_VBAR(uint32 vbar)
{
__set_CP(15, 0, vbar, 12, 0, 0);
}
/* Get HVBAR */
__STATIC_INLINE uint32 __get_HVBAR(void)
{
uint32 ret = 0;
__get_CP(15, 4, ret, 12, 0, 0);
return ret;
}
/* Set HVBAR */
__STATIC_INLINE void __set_HVBAR(uint32 hvbar)
{
__set_CP(15, 4, hvbar, 12, 0, 0);
}
/* Set CNTFRQ */
__STATIC_INLINE void __set_CNTFRQ(uint32 value)
{
__set_CP(15, 0, value, 14, 0, 0);
}
/* Get CNTFRQ */
__STATIC_INLINE uint32 __get_CNTFRQ(void)
{
uint32 ret = 0;
__get_CP(15, 0, ret, 14, 0 , 0);
return ret;
}
/* Set CNTP_TVAL */
__STATIC_INLINE void __set_CNTP_TVAL(uint32 value)
{
__set_CP(15, 0, value, 14, 2, 0);
}
/* Get CNTP_TVAL */
__STATIC_INLINE uint32 __get_CNTP_TVAL(void)
{
uint32 ret = 0;
__get_CP(15, 0, ret, 14, 2, 0);
return ret;
}
/* Set CNTP_CTL */
__STATIC_INLINE void __set_CNTP_CTL(uint32 value)
{
__set_CP(15, 0, value, 14, 2, 1);
}
/* Get CNTP_CTL register */
__STATIC_INLINE uint32 __get_CNTP_CTL(void)
{
uint32 ret = 0;
__get_CP(15, 0, ret, 14, 2, 1);
return ret;
}
#endif /* ((defined(__ARM_ARCH_8R__ ) || defined(__ARM8)) */
/* Set BPIALL */
__STATIC_INLINE void __set_BPIALL(uint32 value)
{
__set_CP(15, 0, value, 7, 5, 6);
}
/* Set ICIALLU */
__STATIC_INLINE void __set_ICIALLU(uint32 value)
{
__set_CP(15, 0, value, 7, 5, 0);
}
/* Set DCCMVAC */
__STATIC_INLINE void __set_DCCMVAC(uint32 value)
{
__set_CP(15, 0, value, 7, 10, 1);
}
/* Set DCIMVAC */
__STATIC_INLINE void __set_DCIMVAC(uint32 value)
{
__set_CP(15, 0, value, 7, 6, 1);
}
/* Set DCCIMVAC */
__STATIC_INLINE void __set_DCCIMVAC(uint32 value)
{
__set_CP(15, 0, value, 7, 14, 1);
}
/* Set CSSELR */
__STATIC_INLINE void __set_CSSELR(uint32 value)
{
__set_CP(15, 2, value, 0, 0, 0);
}
/* Get CSSELR */
__STATIC_INLINE uint32 __get_CSSELR(void)
{
uint32 ret = 0;
__get_CP(15, 2, ret, 0, 0, 0);
return ret;
}
/* Get CCSIDR */
__STATIC_INLINE uint32 __get_CCSIDR(void)
{
uint32 ret = 0;
__get_CP(15, 1, ret, 0, 0, 0);
return ret;
}
/* Get CLIDR */
__STATIC_INLINE uint32 __get_CLIDR(void)
{
uint32 ret = 0;
__get_CP(15, 1, ret, 0, 0, 1);
return ret;
}
/* Set DCISW */
__STATIC_INLINE void __set_DCISW(uint32 value)
{
__set_CP(15, 0, value, 7, 6, 2);
}
/* Set DCCSW */
__STATIC_INLINE void __set_DCCSW(uint32 value)
{
__set_CP(15, 0, value, 7, 10, 2);
}
/* Set DCCISW */
__STATIC_INLINE void __set_DCCISW(uint32 value)
{
__set_CP(15, 0, value, 7, 14, 2);
}
#if (defined(__ARM_ARCH_8R__ ) || defined(__ARM8))
/* Set PRSELR */
__STATIC_INLINE void __set_PRSELR(uint32 value)
{
__set_CP(15, 0, value, 6, 2, 1);
}
/* Get PRSELR */
__STATIC_INLINE uint32 __get_PRSELR(void)
{
uint32 ret = 0;
__get_CP(15, 0, ret, 6, 2, 1);
return ret;
}
/* Set PRBAR */
__STATIC_INLINE void __set_PRBAR(uint32 value)
{
__set_CP(15, 0, value, 6, 3, 0);
}
/* Get PRBAR */
__STATIC_INLINE uint32 __get_PRBAR(void)
{
uint32 ret = 0;
__get_CP(15, 0, ret, 6, 3, 0);
return ret;
}
/* Set PRLAR */
__STATIC_INLINE void __set_PRLAR(uint32 value)
{
__set_CP(15, 0, value, 6, 3, 1);
}
/* Get PRLAR */
__STATIC_INLINE uint32 __get_PRLAR(void)
{
uint32 ret = 0;
__get_CP(15, 0, ret, 6, 3, 1);
return ret;
}
/* Set MAIR0 */
__STATIC_INLINE void __set_MAIR0(uint32 value)
{
__set_CP(15, 0, value, 10, 2, 0);
}
/* Get MAIR0 */
__STATIC_INLINE uint32 __get_MAIR0(void)
{
uint32 ret = 0;
__get_CP(15, 0, ret, 10, 2, 0);
return ret;
}
/* Set MAIR1 */
__STATIC_INLINE void __set_MAIR1(uint32 value)
{
__set_CP(15, 0, value, 10, 2, 1);
}
/* Get MAIR1 */
__STATIC_INLINE uint32 __get_MAIR1(void)
{
uint32 ret = 0;
__get_CP(15, 0, ret, 10, 2, 1);
return ret;
}
/* Set HPRSELR */
__STATIC_INLINE void __set_HPRSELR(uint32 value)
{
__set_CP(15, 4, value, 6, 2, 1);
}
/* Get HPRSELR */
__STATIC_INLINE uint32 __get_HPRSELR(void)
{
uint32 ret = 0;
__get_CP(15, 4, ret, 6, 2, 1);
return ret;
}
/* Set HPRBAR */
__STATIC_INLINE void __set_HPRBAR(uint32 value)
{
__set_CP(15, 4, value, 6, 3, 0);
}
/* Get HPRBAR */
__STATIC_INLINE uint32 __get_HPRBAR(void)
{
uint32 ret = 0;
__get_CP(15, 4, ret, 6, 3, 0);
return ret;
}
/* Set HPRLAR */
__STATIC_INLINE void __set_HPRLAR(uint32 value)
{
__set_CP(15, 4, value, 6, 3, 1);
}
/* Get HPRLAR */
__STATIC_INLINE uint32 __get_HPRLAR(void)
{
uint32 ret = 0;
__get_CP(15, 4, ret, 6, 3, 1);
return ret;
}
/* Set HMAIR0 */
__STATIC_INLINE void __set_HMAIR0(uint32 value)
{
__set_CP(15, 4, value, 10, 2, 0);
}
/* Get HMAIR0 */
__STATIC_INLINE uint32 __get_HMAIR0(void)
{
uint32 ret = 0;
__get_CP(15, 4, ret, 10, 2, 0);
return ret;
}
/* Set HMAIR1 */
__STATIC_INLINE void __set_HMAIR1(uint32 value)
{
__set_CP(15, 4, value, 10, 2, 1);
}
/* Get HMAIR1 */
__STATIC_INLINE uint32 __get_HMAIR1(void)
{
uint32 ret = 0;
__get_CP(15, 4, ret, 10, 2, 1);
return ret;
}
/* Get ICC_IAR0 */
__STATIC_INLINE uint32 __get_ICC_IAR0(void)
{
uint32 ret = 0;
__get_CP(15, 0, ret, 12, 8, 0);
return ret;
}
/* Get ICC_IAR1 */
__STATIC_INLINE uint32 __get_ICC_IAR1(void)
{
uint32 ret = 0;
__get_CP(15, 0, ret, 12, 12, 0);
return ret;
}
/* Set ICC_EOIR0 */
__STATIC_INLINE void __set_ICC_EOIR0(uint32 value)
{
__set_CP(15, 0, value, 12, 8, 1);
}
/* Set ICC_EOIR1 */
__STATIC_INLINE void __set_ICC_EOIR1(uint32 value)
{
__set_CP(15, 0, value, 12, 12, 1);
}
/* Get ICC_HPPIR0 */
__STATIC_INLINE uint32 __get_ICC_HPPIR0(void)
{
uint32 ret = 0;
__get_CP(15, 0, ret, 12, 8, 2);
return ret;
}
/* Get ICC_HPPIR1 */
__STATIC_INLINE uint32 __get_ICC_HPPIR1(void)
{
uint32 ret = 0;
__get_CP(15, 0, ret, 12, 12, 2);
return ret;
}
/* Get ICC_BPR0 */
__STATIC_INLINE uint32 __get_ICC_BPR0(void)
{
uint32 ret = 0;
__get_CP(15, 0, ret, 12, 8, 3);
return ret;
}
/* Set ICC_BPR0 */
__STATIC_INLINE void __set_ICC_BPR0(uint32 value)
{
__set_CP(15, 0, value, 12, 8, 3);
}
/* Get ICC_BPR1 */
__STATIC_INLINE uint32 __get_ICC_BPR1(void)
{
uint32 ret = 0;
__get_CP(15, 0, ret, 12, 12, 3);
return ret;
}
/* Set ICC_BPR1 */
__STATIC_INLINE void __set_ICC_BPR1(uint32 value)
{
__set_CP(15, 0, value, 12, 12, 3);
}
/* Get ICC_PMR */
__STATIC_INLINE uint32 __get_ICC_PMR(void)
{
uint32 ret = 0;
__get_CP(15, 0, ret, 4, 6, 0);
return ret;
}
/* Set ICC_PMR */
__STATIC_INLINE void __set_ICC_PMR(uint32 value)
{
__set_CP(15, 0, value, 4, 6, 0);
}
/* Get ICC_CTLR */
__STATIC_INLINE uint32 __get_ICC_CTLR(void)
{
uint32 ret = 0;
__get_CP(15, 0, ret, 12, 12, 4);
return ret;
}
/* Set ICC_CTLR */
__STATIC_INLINE void __set_ICC_CTLR(uint32 value)
{
__set_CP(15, 0, value, 12, 12, 4);
}
/* Get ICC_IGRPEN0 */
__STATIC_INLINE uint32 __get_ICC_IGRPEN0(void)
{
uint32 ret = 0;
__get_CP(15, 0, ret, 12, 12, 6);
return ret;
}
/* Set ICC_IGRPEN0 */
__STATIC_INLINE void __set_ICC_IGRPEN0(uint32 value)
{
__set_CP(15, 0, value, 12, 12, 6);
}
/* Get ICC_IGRPEN1 */
__STATIC_INLINE uint32 __get_ICC_IGRPEN1(void)
{
uint32 ret = 0;
__get_CP(15, 0, ret, 12, 12, 7);
return ret;
}
/* Set ICC_IGRPEN1 */
__STATIC_INLINE void __set_ICC_IGRPEN1(uint32 value)
{
__set_CP(15, 0, value, 12, 12, 7);
}
#endif /* (defined(__ARM_ARCH_8R__ ) || defined(__ARM8)) */
#endif /* ARM_CR_CP15_H */
/*******************************************************************************
** End of File **
*******************************************************************************/

View File

@@ -0,0 +1,422 @@
/*============================================================================*/
/* Project = AUTOSAR Renesas CPF MCAL Components */
/* Module = arm_cr_mpu.h */
/* SW-VERSION = 1.0.0 */
/*============================================================================*/
/* COPYRIGHT */
/*============================================================================*/
/* Copyright(c) 2021 Renesas Electronics Corporation. */
/*============================================================================*/
/* Purpose: */
/* Macros for ARMv8 Cortex-R MPU */
/* */
/*============================================================================*/
/* */
/* Unless otherwise agreed upon in writing between your company and */
/* Renesas Electronics Corporation the following shall apply! */
/* */
/* Warranty Disclaimer */
/* */
/* There is no warranty of any kind whatsoever granted by Renesas. Any */
/* warranty is expressly disclaimed and excluded by Renesas, either expressed */
/* or implied, including but not limited to those for non-infringement of */
/* intellectual property, merchantability and/or fitness for the particular */
/* purpose. */
/* */
/* Renesas shall not have any obligation to maintain, service or provide bug */
/* fixes for the supplied Product(s) and/or the Application. */
/* */
/* Each User is solely responsible for determining the appropriateness of */
/* using the Product(s) and assumes all risks associated with its exercise */
/* of rights under this Agreement, including, but not limited to the risks */
/* and costs of program errors, compliance with applicable laws, damage to */
/* or loss of data, programs or equipment, and unavailability or */
/* interruption of operations. */
/* */
/* Limitation of Liability */
/* */
/* In no event shall Renesas be liable to the User for any incidental, */
/* consequential, indirect, or punitive damage (including but not limited */
/* to lost profits) regardless of whether such liability is based on breach */
/* of contract, tort, strict liability, breach of warranties, failure of */
/* essential purpose or otherwise and even if advised of the possibility of */
/* such damages. Renesas shall not be liable for any services or products */
/* provided by third party vendors, developers or consultants identified or */
/* referred to the User by Renesas in connection with the Product(s) and/or */
/* the Application. */
/* */
/*============================================================================*/
/* Environment: */
/* Devices: CPF */
/*============================================================================*/
/*******************************************************************************
** Revision Control History **
*******************************************************************************/
/*
* 1.0.0: 20/08/2021 : Initial Version
*/
/******************************************************************************/
#ifndef ARM_CR_MPU_V8_H
#define ARM_CR_MPU_V8_H
/*******************************************************************************
** Include Section **
*******************************************************************************/
/*******************************************************************************
** Version Information **
*******************************************************************************/
/*******************************************************************************
** Global Symbols **
*******************************************************************************/
/*******************************************************************************
** Global Data Types **
*******************************************************************************/
/*******************************************************************************
** Function Prototypes **
*******************************************************************************/
/*******************************************************************************
** Macro **
*******************************************************************************/
/* Enable EL1 MPU */
__STATIC_INLINE void EL1_MPU_Enable(void)
{
__set_SCTLR( __get_SCTLR() | SCTLR_M_Msk);
__ISB();
}
/* Disable EL1 MPU */
__STATIC_INLINE void EL1_MPU_Disable(void)
{
__set_SCTLR( __get_SCTLR() & (~SCTLR_M_Msk));
__ISB();
}
#define MPU_Enable EL1_MPU_Enable
#define MPU_Disable EL1_MPU_Disable
#if (defined(__ARM_ARCH_8R__ ) || defined(__ARM8))
/* MPU region enable control */
#define MPU_REG_EN 1U
/* XN: Execution control */
#define MPU_XN_ALWAYS 0U
#define MPU_XN_NEVER 1U
/* AP: Acess permission EL1-EL0 or EL2-EL1 */
#define MPU_AP_RW_NONE 0U
#define MPU_AP_RW_RW 1U
#define MPU_AP_RO_NONE 2U
#define MPU_AP_RO_RO 3U
/* SH: Sharability */
#define MPU_SH_NON_SHARE 0U
#define MPU_SH_OUT_SHARE 2U
#define MPU_SH_IN_SHARE 3U
/* XN + AP + SH */
#define MPU_XN_AP_SH(XN,AP,SH) \
((XN<<PRBAR_XN_Pos)|(AP<<PRBAR_AP_Pos)|(SH<<PRBAR_SH_Pos))
/* Region Attribute */
/* Device memory type non Gathering, non Re-ordering,
non Early Write Acknowledgement */
#define MPU_ATTR_DEVICE_nGnRnE 0U
/* Device memory type non Gathering, non Re-ordering,
Early Write Acknowledgement */
#define MPU_ATTR_DEVICE_nGnRE 4U
/* Device memory type non Gathering, Re-ordering,
Early Write Acknowledgement */
#define MPU_ATTR_DEVICE_nGRE 8U
/* Device memory type Gathering, Re-ordering,
Early Write Acknowledgement */
#define MPU_ATTR_DEVICE_GRE 12U
/* Outer - Inner */
#define MPU_ATTR_MEMORY(O,I) ((O<<4U)|I)
/* Non Transient - Write Back - Read Allocation - Write Allocation */
#define MPU_ATTR(NT,WB,RA,WA) ((NT<<3U)|(WB<<2U)|(RA<<1U)|WA)
/* Non-cacheable*/
#define MPU_ATTR_NON_CACHEABLE 4U
/* Enable EL1 MPU background region */
__STATIC_INLINE void EL1_MPU_BR_Enable(void)
{
__set_SCTLR( __get_SCTLR() | SCTLR_BR_Msk);
__ISB();
}
/* Disable EL1 MPU background region */
__STATIC_INLINE void EL1_MPU_BR_Disable(void)
{
__set_SCTLR( __get_SCTLR() & (~SCTLR_BR_Msk));
__ISB();
}
/* Enable EL2 MPU */
__STATIC_INLINE void EL2_MPU_Enable(void)
{
__set_HSCTLR( __get_HSCTLR() | SCTLR_M_Msk);
__ISB();
}
/* Disable EL2 MPU */
__STATIC_INLINE void EL2_MPU_Disable(void)
{
__set_HSCTLR( __get_HSCTLR() & (~SCTLR_M_Msk));
__ISB();
}
/* Enable EL2 MPU background region */
__STATIC_INLINE void EL2_MPU_BR_Enable(void)
{
__set_HSCTLR( __get_HSCTLR() | SCTLR_BR_Msk);
__ISB();
}
/* Disable EL2 MPU background region */
__STATIC_INLINE void EL2_MPU_BR_Disable(void)
{
__set_HSCTLR( __get_HSCTLR() & (~SCTLR_BR_Msk));
__ISB();
}
/* Set region attribute */
__STATIC_INLINE void __EL_MPU_CalculateAttrs(uint32 *v0, uint32 *v1, MPU_Attr *attrs)
{
uint8 i = 0;
while(i < 4)
{
*v0 |= attrs[i] << MAIR_ATTR_Pos(i);
*v1 |= attrs[i+4] << MAIR_ATTR_Pos(i);
i++;
}
}
/* Set region attribute */
__STATIC_INLINE void __EL1_MPU_SetAttrs(void)
{
uint32 v0 = 0, v1 = 0;
__EL_MPU_CalculateAttrs(&v0, &v1, mpu_attr_tbl);
__set_MAIR0(v0);
__set_MAIR1(v1);
__ISB();
}
/* Set region attribute */
__STATIC_INLINE void __EL2_MPU_SetAttrs(void)
{
uint32 v0 = 0, v1 = 0;
__EL_MPU_CalculateAttrs(&v0, &v1, mpu_attr_tbl2);
__set_HMAIR0(v0);
__set_HMAIR1(v1);
__ISB();
}
/* Setup EL1 MPU region */
__STATIC_INLINE void EL1_MPU_SetRegion(MPU_Region prop)
{
uint32 val = 0;
/* Select region */
__set_PRSELR(prop.region_id);
__ISB();
/* Set XN, AP, SH, BASE */
val = ((prop.region_start_addr & PRBAR_BASE_Msk) | prop.region_attribute);
__set_PRBAR(val);
__ISB();
/* Set LIMIT, attribute index, enable */
val = ((prop.region_end_addr & PRLAR_LIMIT_Msk) | \
(prop.region_attr_idx << PRLAR_ATTR_IDX_Pos) | 1U);
__set_PRLAR(val);
__ISB();
}
/* Setup EL2 MPU region */
__STATIC_INLINE void EL2_MPU_SetRegion(MPU_Region prop)
{
uint32 val = 0;
/* Select region */
__set_HPRSELR(prop.region_id);
__ISB();
/* Set XN, AP, SH, BASE */
val = ((prop.region_start_addr & PRBAR_BASE_Msk) | prop.region_attribute);
__set_HPRBAR(val);
__ISB();
/* Set LIMIT, attribute index, enable */
val = ((prop.region_end_addr & PRLAR_LIMIT_Msk) | \
(prop.region_attr_idx << PRLAR_ATTR_IDX_Pos) | 1U);
__set_HPRLAR(val);
__ISB();
}
/* Disable stub region */
__STATIC_INLINE void EL1_MPU_DisableStubRegion()
{
/* Select region */
__set_PRSELR(23);
__ISB();
/* Disable */
__set_PRLAR(0);
__ISB();
}
/* Disable stub region */
__STATIC_INLINE void EL2_MPU_DisableStubRegion()
{
/* Select region */
__set_HPRSELR(23);
__ISB();
/* Disable */
__set_HPRLAR(0);
__ISB();
}
/* Setup full EL1 MPU */
__STATIC_INLINE void EL1_MPU_Setup()
{
uint8 i = 0;
__DSB();
__ISB();
__EL1_MPU_SetAttrs();
for (i = 0; i < mpu_setting_tbl.num_region; i++)
{
EL1_MPU_SetRegion(mpu_setting_tbl.table[i]);
}
EL1_MPU_DisableStubRegion();
}
/* Setup full EL2 MPU */
__STATIC_INLINE void EL2_MPU_Setup()
{
uint8 i = 0;
__DSB();
__ISB();
__EL2_MPU_SetAttrs();
for (i = 0; i < mpu_setting_tbl2.num_region; i++)
{
EL2_MPU_SetRegion(mpu_setting_tbl2.table[i]);
}
EL2_MPU_DisableStubRegion();
}
/* Setup full MPU */
#define MPU_Setup EL1_MPU_Setup
#else
/* MPU Size */
#define MPU_SIZE_4G (0x1F << 1)
#define MPU_SIZE_2G (0x1E << 1)
#define MPU_SIZE_1G (0x1D << 1)
#define MPU_SIZE_512M (0x1C << 1)
#define MPU_SIZE_32M (0x18 << 1)
#define MPU_SIZE_64M (0x19 << 1)
#define MPU_SIZE_2M (0x14 << 1)
#define MPU_SIZE_16M (0x17 << 1)
#define MPU_SIZE_1M (0x13 << 1)
#define MPU_SIZE_512K (0x12 << 1)
#define MPU_SIZE_256K (0x11 << 1)
#define MPU_SIZE_128K (0x10 << 1)
#define MPU_SIZE_64K (0x0F << 1)
#define MPU_SIZE_32K (0x0E << 1)
/* MPU region enable control */
#define MPU_REG_EN 1
#define MPU_REG_DIS 0
/* MPU_ACCESS_CNTRL */
/* XN: Execution control */
#define MPU_XN_ALWAYS 0
#define MPU_XN_NEVER (0x1 << 12)
/* AP: Privileged/User Read/Write control */
#define MPU_NO_ACCESS (0x0 << 8)
#define MPU_RP_WP (0x1 << 8)
#define MPU_RPU_WP (0x2 << 8)
#define MPU_RPU_WPU (0x3 << 8)
#define MPU_RP (0x5 << 8)
#define MPU_RPU (0x6 << 8)
/* S: Sharability */
#define MPU_NON_SHAREABLE 0
#define MPU_SHAREABLE (0x1 << 2)
/* C: Cacheability */
#define MPU_C_0 0
#define MPU_C_1 (0x1 << 1)
/* B: Bufferability */
#define MPU_B_0 0
#define MPU_B_1 1
/* TEX: Type Extension Attribute */
#define MPU_TEX_000 0
#define MPU_TEX_001 (0x1 << 3)
#define MPU_TEX_010 (0x2 << 3)
#define MPU_TEX_011 (0x3 << 3)
#define MPU_TEX_100 (0x4 << 3)
#define MPU_TEX_101 (0x5 << 3)
#define MPU_TEX_110 (0x6 << 3)
/* Region Access Control (Table 8-2 TEX[2:0], C, and B encodings) */
#define MPU_STRONGLY_ORDERED \
(MPU_TEX_000 | MPU_C_0 | MPU_B_0)
#define MPU_SHAREABLE_DEVICE \
(MPU_TEX_000 | MPU_C_0 | MPU_B_1)
#define MPU_NORMAL_OUT_IN_NON_CACHEABLE \
(MPU_TEX_001 | MPU_C_0 | MPU_B_0)
#define MPU_NORMAL_OUT_IN_WRITE_BACK_ALLOCATE \
(MPU_TEX_001 | MPU_C_1 | MPU_B_1)
#define MPU_NON_SHAREABLE_DEVICE \
(MPU_TEX_010 | MPU_C_0 | MPU_B_0)
/* Setup MPU region */
__STATIC_INLINE void MPU_SetRegion(uint32 num, uint32 addr, uint32 size, uint32 attr)
{
__set_RGNR(num);
__set_DRBAR(addr);
__set_DRACR(attr);
__set_DRSR(size|MPU_REG_EN);
__ISB();
}
/* Disable stub region */
__STATIC_INLINE void MPU_DisableStubRegion()
{
__set_RGNR(15);
__set_DRSR(0);
__ISB();
}
/* Setup MPU */
__STATIC_INLINE void MPU_Setup(void)
{
uint8 i = 0;
__DSB();
__ISB();
for (i = 0; i < mpu_setting_tbl.num_region; i++)
{
MPU_SetRegion(mpu_setting_tbl.table[i].region_id, \
mpu_setting_tbl.table[i].region_start_addr, \
mpu_setting_tbl.table[i].region_size, \
mpu_setting_tbl.table[i].region_attribute);
}
MPU_DisableStubRegion();
}
#endif /* (defined(__ARM_ARCH_8R__ ) || defined(__ARM8)) */
#endif /* ARM_CR_MPU_V8_H */
/*******************************************************************************
** End of File **
*******************************************************************************/

View File

@@ -0,0 +1,424 @@
/*============================================================================*/
/* Project = AUTOSAR Renesas CPF MCAL Components */
/* Module = arm_cr_reg.h */
/* SW-VERSION = 1.0.0 */
/*============================================================================*/
/* COPYRIGHT */
/*============================================================================*/
/* Copyright(c) 2021 Renesas Electronics Corporation. */
/*============================================================================*/
/* Purpose: */
/* Registers definition for ARM Cortex R */
/* */
/*============================================================================*/
/* */
/* Unless otherwise agreed upon in writing between your company and */
/* Renesas Electronics Corporation the following shall apply! */
/* */
/* Warranty Disclaimer */
/* */
/* There is no warranty of any kind whatsoever granted by Renesas. Any */
/* warranty is expressly disclaimed and excluded by Renesas, either expressed */
/* or implied, including but not limited to those for non-infringement of */
/* intellectual property, merchantability and/or fitness for the particular */
/* purpose. */
/* */
/* Renesas shall not have any obligation to maintain, service or provide bug */
/* fixes for the supplied Product(s) and/or the Application. */
/* */
/* Each User is solely responsible for determining the appropriateness of */
/* using the Product(s) and assumes all risks associated with its exercise */
/* of rights under this Agreement, including, but not limited to the risks */
/* and costs of program errors, compliance with applicable laws, damage to */
/* or loss of data, programs or equipment, and unavailability or */
/* interruption of operations. */
/* */
/* Limitation of Liability */
/* */
/* In no event shall Renesas be liable to the User for any incidental, */
/* consequential, indirect, or punitive damage (including but not limited */
/* to lost profits) regardless of whether such liability is based on breach */
/* of contract, tort, strict liability, breach of warranties, failure of */
/* essential purpose or otherwise and even if advised of the possibility of */
/* such damages. Renesas shall not be liable for any services or products */
/* provided by third party vendors, developers or consultants identified or */
/* referred to the User by Renesas in connection with the Product(s) and/or */
/* the Application. */
/* */
/*============================================================================*/
/* Environment: */
/* Devices: CPF */
/*============================================================================*/
/*******************************************************************************
** Revision Control History **
*******************************************************************************/
/*
* 1.0.0: 20/08/2021 : Initial Version
*/
/******************************************************************************/
#ifndef ARM_CR_REG_H
#define ARM_CR_REG_H
/*******************************************************************************
** Include Section **
*******************************************************************************/
/*******************************************************************************
** Version Information **
*******************************************************************************/
/*******************************************************************************
** Global Symbols **
*******************************************************************************/
/*******************************************************************************
** Global Data Types **
*******************************************************************************/
/*******************************************************************************
** Function Prototypes **
*******************************************************************************/
/*******************************************************************************
** Macro **
*******************************************************************************/
/* CPSR Register Definitions */
#define CPSR_N_Pos 31U /* CPSR: N Position */
#define CPSR_N_Msk (1UL << CPSR_N_Pos) /* CPSR: N Mask */
#define CPSR_Z_Pos 30U /* CPSR: Z Position */
#define CPSR_Z_Msk (1UL << CPSR_Z_Pos) /* CPSR: Z Mask */
#define CPSR_C_Pos 29U /* CPSR: C Position */
#define CPSR_C_Msk (1UL << CPSR_C_Pos) /* CPSR: C Mask */
#define CPSR_V_Pos 28U /* CPSR: V Position */
#define CPSR_V_Msk (1UL << CPSR_V_Pos) /* CPSR: V Mask */
#define CPSR_Q_Pos 27U /* CPSR: Q Position */
#define CPSR_Q_Msk (1UL << CPSR_Q_Pos) /* CPSR: Q Mask */
#define CPSR_IT0_Pos 25U /* CPSR: IT0 Position */
#define CPSR_IT0_Msk (3UL << CPSR_IT0_Pos) /* CPSR: IT0 Mask */
#define CPSR_J_Pos 24U /* CPSR: J Position */
#define CPSR_J_Msk (1UL << CPSR_J_Pos) /* CPSR: J Mask */
#define CPSR_GE_Pos 16U /* CPSR: GE Position */
#define CPSR_GE_Msk (0xFUL << CPSR_GE_Pos) /* CPSR: GE Mask */
#define CPSR_IT1_Pos 10U /* CPSR: IT1 Position */
#define CPSR_IT1_Msk (0x3FUL << CPSR_IT1_Pos) /* CPSR: IT1 Mask */
#define CPSR_E_Pos 9U /* CPSR: E Position */
#define CPSR_E_Msk (1UL << CPSR_E_Pos) /* CPSR: E Mask */
#define CPSR_A_Pos 8U /* CPSR: A Position */
#define CPSR_A_Msk (1UL << CPSR_A_Pos) /* CPSR: A Mask */
#define CPSR_I_Pos 7U /* CPSR: I Position */
#define CPSR_I_Msk (1UL << CPSR_I_Pos) /* CPSR: I Mask */
#define CPSR_F_Pos 6U /* CPSR: F Position */
#define CPSR_F_Msk (1UL << CPSR_F_Pos) /* CPSR: F Mask */
#define CPSR_T_Pos 5U /* CPSR: T Position */
#define CPSR_T_Msk (1UL << CPSR_T_Pos) /* CPSR: T Mask */
#define CPSR_M_Pos 0U /* CPSR: M Position */
#define CPSR_M_Msk (0x1FUL << CPSR_M_Pos) /* CPSR: M Mask */
#define CPSR_M_USR 0x10U /* CPSR: M User mode (PL0) */
#define CPSR_M_FIQ 0x11U /* CPSR: M Fast Interrupt mode (PL1) */
#define CPSR_M_IRQ 0x12U /* CPSR: M Interrupt mode (PL1) */
#define CPSR_M_SVC 0x13U /* CPSR: M Supervisor mode (PL1) */
#define CPSR_M_MON 0x16U /* CPSR: M Monitor mode (PL1) */
#define CPSR_M_ABT 0x17U /* CPSR: M Abort mode (PL1) */
#define CPSR_M_HYP 0x1AU /* CPSR: M Hypervisor mode (PL2) */
#define CPSR_M_UND 0x1BU /* CPSR: M Undefined mode (PL1) */
#define CPSR_M_SYS 0x1FU /* CPSR: M System mode (PL1) */
/* SCTLR Register Definitions */
#define SCTLR_IE_Pos 31U /* SCTLR: IE Position */
#define SCTLR_IE_Msk (1UL << SCTLR_IE_Pos) /* SCTLR: IE Mask */
#define SCTLR_TE_Pos 30U /* SCTLR: TE Position */
#define SCTLR_TE_Msk (1UL << SCTLR_TE_Pos) /* SCTLR: TE Mask */
#define SCTLR_AFE_Pos 29U /* SCTLR: AFE Position */
#define SCTLR_AFE_Msk (1UL << SCTLR_AFE_Pos) /* SCTLR: AFE Mask */
#define SCTLR_TRE_Pos 28U /* SCTLR: TRE Position */
#define SCTLR_TRE_Msk (1UL << SCTLR_TRE_Pos) /* SCTLR: TRE Mask */
#define SCTLR_NMFI_Pos 27U /* SCTLR: NMFI Position */
#define SCTLR_NMFI_Msk (1UL << SCTLR_NMFI_Pos) /* SCTLR: NMFI Mask */
#define SCTLR_EE_Pos 25U /* SCTLR: EE Position */
#define SCTLR_EE_Msk (1UL << SCTLR_EE_Pos) /* SCTLR: EE Mask */
#define SCTLR_VE_Pos 24U /* SCTLR: VE Position */
#define SCTLR_VE_Msk (1UL << SCTLR_VE_Pos) /* SCTLR: VE Mask */
#define SCTLR_FI_Pos 21U /* SCTLR: FI Position */
#define SCTLR_FI_Msk (1UL << SCTLR_FI_Pos) /* SCTLR: FI Mask */
#define SCTLR_UWXN_Pos 20U /* SCTLR: UWXN Position */
#define SCTLR_UWXN_Msk (1UL << SCTLR_UWXN_Pos) /* SCTLR: UWXN Mask */
#define SCTLR_DZ_Pos 19U /* SCTLR: DZ Position */
#define SCTLR_DZ_Msk (1UL << SCTLR_DZ_Pos) /* SCTLR: DZ Mask */
#define SCTLR_WXN_Pos 19U /* SCTLR: WXN Position */
#define SCTLR_WXN_Msk (1UL << SCTLR_WXN_Pos) /* SCTLR: WXN Mask */
#define SCTLR_NTWE_Pos 18U /* SCTLR: NTWE Position */
#define SCTLR_NTWE_Msk (1UL << SCTLR_NTWE_Pos) /* SCTLR: NTWE Mask */
#define SCTLR_BR_Pos 17U /* SCTLR: BR Position */
#define SCTLR_BR_Msk (1UL << SCTLR_BR_Pos) /* SCTLR: BR Mask */
#define SCTLR_NTWI_Pos 16U /* SCTLR: NTWI Position */
#define SCTLR_NTWI_Msk (1UL << SCTLR_NTWI_Pos) /* SCTLR: NTWI Mask */
#define SCTLR_RR_Pos 14U /* SCTLR: RR Position */
#define SCTLR_RR_Msk (1UL << SCTLR_RR_Pos) /* SCTLR: RR Mask */
#define SCTLR_V_Pos 13U /* SCTLR: V Position */
#define SCTLR_V_Msk (1UL << SCTLR_V_Pos) /* SCTLR: V Mask */
#define SCTLR_I_Pos 12U /* SCTLR: I Position */
#define SCTLR_I_Msk (1UL << SCTLR_I_Pos) /* SCTLR: I Mask */
#define SCTLR_Z_Pos 11U /* SCTLR: Z Position */
#define SCTLR_Z_Msk (1UL << SCTLR_Z_Pos) /* SCTLR: Z Mask */
#define SCTLR_SW_Pos 10U /* SCTLR: SW Position */
#define SCTLR_SW_Msk (1UL << SCTLR_SW_Pos) /* SCTLR: SW Mask */
#define SCTLR_SED_Pos 8U /* SCTLR: SED Position */
#define SCTLR_SED_Msk (1UL << SCTLR_SED_Pos) /* SCTLR: SED Mask */
#define SCTLR_ITD_Pos 7U /* SCTLR: ITD Position */
#define SCTLR_ITD_Msk (1UL << SCTLR_ITD_Pos) /* SCTLR: ITD Mask */
#define SCTLR_CP15BEN_Pos 5U /* SCTLR: CP15BEN Position */
#define SCTLR_CP15BEN_Msk (1UL << SCTLR_CP15BEN_Pos) /* SCTLR: CP15BEN Mask */
#define SCTLR_C_Pos 2U /* SCTLR: C Position */
#define SCTLR_C_Msk (1UL << SCTLR_C_Pos) /* SCTLR: C Mask */
#define SCTLR_A_Pos 1U /* SCTLR: A Position */
#define SCTLR_A_Msk (1UL << SCTLR_A_Pos) /* SCTLR: A Mask */
#define SCTLR_M_Pos 0U /* SCTLR: M Position */
#define SCTLR_M_Msk (1UL << SCTLR_M_Pos) /* SCTLR: M Mask */
/* ACTLR Register Definition */
#define ACTLR_DICDI_Pos 31U /* ACTLR: DICDI Position */
#define ACTLR_DICDI_Msk (1UL << ACTLR_DICDI_Pos) /* ACTLR: DICDI Mask */
#define ACTLR_DIB2DI_Pos 30U /* ACTLR: DIB2DI Position */
#define ACTLR_DIB2DI_Msk (1UL << ACTLR_DIB2DI_Pos) /* ACTLR: DIB2DI Mask */
#define ACTLR_DIB1DI_Pos 29U /* ACTLR: DIB1DI Position */
#define ACTLR_DIB1DI_Msk (1UL << ACTLR_DIB1DI_Pos) /* ACTLR: DIB1DI Mask */
#define ACTLR_DIADI_Pos 28U /* ACTLR: DIADI Position */
#define ACTLR_DIADI_Msk (1UL << ACTLR_DIADI_Pos) /* ACTLR: DIADI Mask */
#define ACTLR_B1TCMPCEN_Pos 27U /* ACTLR: B1TCMPCEN Position */
#define ACTLR_B1TCMPCEN_Msk (1UL << ACTLR_B1TCMPCEN_Pos) /* ACTLR: B1TCMPCEN Mask */
#define ACTLR_B0TCMPCEN_Pos 26U /* ACTLR: B0TCMPCEN Position */
#define ACTLR_B0TCMPCEN_Msk (1UL << ACTLR_B0TCMPCEN_Pos) /* ACTLR: B0TCMPCEN Mask */
#define ACTLR_ATCMPCEN_Pos 25U /* ACTLR: ATCMPCEN Position */
#define ACTLR_ATCMPCEN_Msk (1UL << ACTLR_ATCMPCEN_Pos) /* ACTLR: ATCMPCEN Mask */
#define ACTLR_AXISCEN_Pos 24U /* ACTLR: AXISCEN Position */
#define ACTLR_AXISCEN_Msk (1UL << ACTLR_AXISCEN_Pos) /* ACTLR: AXISCEN Mask */
#define ACTLR_AXISCUEN_Pos 23U /* ACTLR: AXISCUEN Position */
#define ACTLR_AXISCUEN_Msk (1UL << ACTLR_AXISCUEN_Pos) /* ACTLR: AXISCUEN Mask */
#define ACTLR_DILSM_Pos 22U /* ACTLR: DILSM Position */
#define ACTLR_DILSM_Msk (1UL << ACTLR_DILSM_Pos) /* ACTLR: DILSM Mask */
#define ACTLR_DEOLP_Pos 21U /* ACTLR: DEOLP Position */
#define ACTLR_DEOLP_Msk (1UL << ACTLR_DEOLP_Pos) /* ACTLR: DEOLP Mask */
#define ACTLR_DBHE_Pos 20U /* ACTLR: DBHE Position */
#define ACTLR_DBHE_Msk (1UL << ACTLR_DBHE_Pos) /* ACTLR: DBHE Mask */
#define ACTLR_FRCDIS_Pos 19U /* ACTLR: FRCDIS Position */
#define ACTLR_FRCDIS_Msk (1UL << ACTLR_FRCDIS_Pos) /* ACTLR: FRCDIS Mask */
#define ACTLR_RSDIS_Pos 17U /* ACTLR: RSDIS Position */
#define ACTLR_RSDIS_Msk (1UL << ACTLR_RSDIS_Pos) /* ACTLR: RSDIS Mask */
#define ACTLR_BP_Pos 15U /* ACTLR: BP Position */
#define ACTLR_BP_Msk (3UL << ACTLR_BP_Pos) /* ACTLR: BP Mask */
#define ACTLR_DBWR_Pos 14U /* ACTLR: DBWR Position */
#define ACTLR_DBWR_Msk (1UL << ACTLR_DBWR_Pos) /* ACTLR: DBWR Mask */
#define ACTLR_DLFO_Pos 13U /* ACTLR: DLFO Position */
#define ACTLR_DLFO_Msk (1UL << ACTLR_DLFO_Pos) /* ACTLR: DLFO Mask */
#define ACTLR_ERPEG_Pos 12U /* ACTLR: ERPEG Position */
#define ACTLR_ERPEG_Msk (1UL << ACTLR_ERPEG_Pos) /* ACTLR: ERPEG Mask */
#define ACTLR_DNCH_Pos 11U /* ACTLR: DNCH Position */
#define ACTLR_DNCH_Msk (1UL << ACTLR_DNCH_Pos) /* ACTLR: DNCH Mask */
#define ACTLR_QOSEN_Pos 11U /* ACTLR: QOSEN Position */
#define ACTLR_QOSEN_Msk (1UL << ACTLR_QOSEN_Pos) /* ACTLR: QOSEN Mask */
#define ACTLR_FORA_Pos 10U /* ACTLR: FORA Position */
#define ACTLR_FORA_Msk (1UL << ACTLR_FORA_Pos) /* ACTLR: FORA Mask */
#define ACTLR_ITCMECEN_Pos 10U /* ACTLR: ITCMECEN Position */
#define ACTLR_ITCMECEN_Msk (1UL << ACTLR_ITCMECEN_Pos) /* ACTLR: ITCMECEN Mask */
#define ACTLR_FWT_Pos 9U /* ACTLR: FWT Position */
#define ACTLR_FWT_Msk (1UL << ACTLR_FWT_Pos) /* ACTLR: FWT Mask */
#define ACTLR_DTCMECEN_Pos 9U /* ACTLR: DTCMECEN Position */
#define ACTLR_DTCMECEN_Msk (1UL << ACTLR_DTCMECEN_Pos) /* ACTLR: DTCMECEN Mask */
#define ACTLR_FDSNS_Pos 8U /* ACTLR: FDSNS Position */
#define ACTLR_FDSNS_Msk (1UL << ACTLR_FDSNS_Pos) /* ACTLR: FDSNS Mask */
#define ACTLR_AOW_Pos 8U /* ACTLR: AOW Position */
#define ACTLR_AOW_Msk (1UL << ACTLR_AOW_Pos) /* ACTLR: AOW Mask */
#define ACTLR_SMOV_Pos 7U /* ACTLR: SMOV Position */
#define ACTLR_SMOV_Msk (1UL << ACTLR_SMOV_Pos) /* ACTLR: SMOV Mask */
#define ACTLR_DILS_Pos 6U /* ACTLR: DILS Position */
#define ACTLR_DILS_Msk (1UL << ACTLR_DILS_Pos) /* ACTLR: DILS Mask */
#define ACTLR_SMP_Pos 6U /* ACTLR: SMP Position */
#define ACTLR_SMP_Msk (1UL << ACTLR_SMP_Pos) /* ACTLR: SMP Mask */
#define ACTLR_CEC_Pos 3U /* ACTLR: CEC Position */
#define ACTLR_CEC_Msk (7UL << ACTLR_CEC_Pos) /* ACTLR: CEC Mask */
#define ACTLR_MRPEN_Pos 3U /* ACTLR: MRPEN Position */
#define ACTLR_MRPEN_Msk (1UL << ACTLR_MRPEN_Pos) /* ACTLR: MRPEN Mask */
#define ACTLR_B1TCMECEN_Pos 2U /* ACTLR: B1TCMECEN Position */
#define ACTLR_B1TCMECEN_Msk (1UL << ACTLR_B1TCMECEN_Pos) /* ACTLR: B1TCMECEN Mask */
#define ACTLR_B0TCMECEN_Pos 1U /* ACTLR: B0TCMECEN Position */
#define ACTLR_B0TCMECEN_Msk (1UL << ACTLR_B0TCMECEN_Pos) /* ACTLR: B0TCMECEN Mask */
#define ACTLR_ATCMECEN_Pos 0U /* ACTLR: ATCMECEN Position */
#define ACTLR_ATCMECEN_Msk (1UL << ACTLR_ATCMECEN_Pos) /* ACTLR: ATCMECEN Mask */
#define ACTLR_FW_Pos 0U /* ACTLR: FW Position */
#define ACTLR_FW_Msk (1UL << ACTLR_FW_Pos) /* ACTLR: FW Mask */
/* DFSR Register Definition */
#define DFSR_FnV_Pos 16U /* DFSR: FnV Position */
#define DFSR_FnV_Msk (1UL << DFSR_FnV_Pos) /* DFSR: FnV Mask */
#define DFSR_CM_Pos 13U /* DFSR: CM Position */
#define DFSR_CM_Msk (1UL << DFSR_CM_Pos) /* DFSR: CM Mask */
#define DFSR_Ext_Pos 12U /* DFSR: Ext Position */
#define DFSR_Ext_Msk (1UL << DFSR_Ext_Pos) /* DFSR: Ext Mask */
#define DFSR_WnR_Pos 11U /* DFSR: WnR Position */
#define DFSR_WnR_Msk (1UL << DFSR_WnR_Pos) /* DFSR: WnR Mask */
#define DFSR_FS1_Pos 10U /* DFSR: FS1 Position */
#define DFSR_FS1_Msk (1UL << DFSR_FS1_Pos) /* DFSR: FS1 Mask */
#define DFSR_LPAE_Pos 9U /* DFSR: LPAE Position */
#define DFSR_LPAE_Msk (1UL << DFSR_LPAE_Pos) /* DFSR: LPAE Mask */
#define DFSR_Domain_Pos 4U /* DFSR: Domain Position */
#define DFSR_Domain_Msk (0xFUL << DFSR_Domain_Pos) /* DFSR: Domain Mask */
#define DFSR_FS0_Pos 0U /* DFSR: FS0 Position */
#define DFSR_FS0_Msk (0xFUL << DFSR_FS0_Pos) /* DFSR: FS0 Mask */
#define DFSR_STATUS_Pos 0U /* DFSR: STATUS Position */
#define DFSR_STATUS_Msk (0x3FUL << DFSR_STATUS_Pos) /* DFSR: STATUS Mask */
/* IFSR Register Definition */
#define IFSR_FnV_Pos 16U /* IFSR: FnV Position */
#define IFSR_FnV_Msk (1UL << IFSR_FnV_Pos) /* IFSR: FnV Mask */
#define IFSR_ExT_Pos 12U /* IFSR: ExT Position */
#define IFSR_ExT_Msk (1UL << IFSR_ExT_Pos) /* IFSR: ExT Mask */
#define IFSR_FS1_Pos 10U /* IFSR: FS1 Position */
#define IFSR_FS1_Msk (1UL << IFSR_FS1_Pos) /* IFSR: FS1 Mask */
#define IFSR_LPAE_Pos 9U /* IFSR: LPAE Position */
#define IFSR_LPAE_Msk (0x1UL << IFSR_LPAE_Pos) /* IFSR: LPAE Mask */
#define IFSR_FS0_Pos 0U /* IFSR: FS0 Position */
#define IFSR_FS0_Msk (0xFUL << IFSR_FS0_Pos) /* IFSR: FS0 Mask */
#define IFSR_STATUS_Pos 0U /* IFSR: STATUS Position */
#define IFSR_STATUS_Msk (0x3FUL << IFSR_STATUS_Pos) /* IFSR: STATUS Mask */
/* ISR Register Definition */
#define ISR_A_Pos 13U /* ISR: A Position */
#define ISR_A_Msk (1UL << ISR_A_Pos) /* ISR: A Mask */
#define ISR_I_Pos 12U /* ISR: I Position */
#define ISR_I_Msk (1UL << ISR_I_Pos) /* ISR: I Mask */
#define ISR_F_Pos 11U /* ISR: F Position */
#define ISR_F_Msk (1UL << ISR_F_Pos) /* ISR: F Mask */
/* DACR Register Defnition */
#define DACR_D_Pos_(n) (2U*n) /* DACR: Dn Position */
#define DACR_D_Msk_(n) (3UL << DACR_D_Pos_(n)) /* DACR: Dn Mask */
#define DACR_Dn_NOACCESS 0U /* DACR Dn field: No access */
#define DACR_Dn_CLIENT 1U /* DACR Dn field: Client */
#define DACR_Dn_MANAGER 3U /* DACR Dn field: Manager */
/* CPACR Register Defnition */
#define CPACR_CP_Pos (20U) /* CPACR: CP Position */
#define CPACR_CP_Msk (15UL << CPACR_CP_Pos) /* CPACR: CP Mask */
/* PRSELR Register Defnition */
#define PRSELR_REGION_Pos (0U) /* PRSELR: REGION Position */
#define PRSELR_REGION_16_Msk (15UL << PRSELR_REGION_Pos) /* PRSELR: REGION Mask (16 regions) */
#define PRSELR_REGION_24_Msk (31UL << PRSELR_REGION_Pos) /* PRSELR: REGION Mask (24 regions) */
/* PRBAR Register Defnition */
#define PRBAR_XN_Pos (0U) /* PRBAR: XN Position */
#define PRBAR_XN_Msk (1UL << PRBAR_XN_Pos) /* PRBAR: XN Mask */
#define PRBAR_AP_Pos (1U) /* PRBAR: AP Position */
#define PRBAR_AP_Msk (3UL << PRBAR_AP_Pos) /* PRBAR: AP Mask */
#define PRBAR_SH_Pos (3U) /* PRBAR: SH Position */
#define PRBAR_SH_Msk (3UL << PRBAR_SH_Pos) /* PRBAR: SH Mask */
#define PRBAR_BASE_Pos (6U) /* PRBAR: BASE Position */
#define PRBAR_BASE_Msk (0x3FFFFFFUL << PRBAR_BASE_Pos) /* PRBAR: BASE Mask */
/* PRLAR Register Defnition */
#define PRLAR_EN_Pos (0U) /* PRLAR: EN Position */
#define PRLAR_EN_Msk (1UL << PRLAR_EN_Pos) /* PRLAR: EN Mask */
#define PRLAR_ATTR_IDX_Pos (1U) /* PRLAR: AttrIndx Position */
#define PRLAR_ATTR_IDX_Msk (7UL << PRLAR_ATTR_IDX_Pos) /* PRLAR: AttrIndx Mask */
#define PRLAR_LIMIT_Pos (6U) /* PRLAR: LIMIT Position */
#define PRLAR_LIMIT_Msk (0x3FFFFFFUL << PRLAR_LIMIT_Pos) /* PRLAR: LIMIT Mask */
/* MAIR Register Defnition */
#define MAIR_ATTR_Pos(n) (8U*n) /* MAIR: Attr Position */
#define MAIR_ATTR_Msk(n) (255UL << MAIR_ATTR_Pos(n)) /* MAIR: Attr Mask */
#endif /* ARM_CR_REG_H */
/*******************************************************************************
** End of File **
*******************************************************************************/

View File

@@ -0,0 +1,537 @@
/*============================================================================*/
/* Project = AUTOSAR Renesas CPF MCAL Components */
/* Module = arm_gic.h */
/* SW-VERSION = 1.0.0 */
/*============================================================================*/
/* COPYRIGHT */
/*============================================================================*/
/* Copyright(c) 2021 Renesas Electronics Corporation. */
/*============================================================================*/
/* Purpose: */
/* Macros for ARM GIC (v2-v3-v4) */
/* */
/*============================================================================*/
/* */
/* Unless otherwise agreed upon in writing between your company and */
/* Renesas Electronics Corporation the following shall apply! */
/* */
/* Warranty Disclaimer */
/* */
/* There is no warranty of any kind whatsoever granted by Renesas. Any */
/* warranty is expressly disclaimed and excluded by Renesas, either expressed */
/* or implied, including but not limited to those for non-infringement of */
/* intellectual property, merchantability and/or fitness for the particular */
/* purpose. */
/* */
/* Renesas shall not have any obligation to maintain, service or provide bug */
/* fixes for the supplied Product(s) and/or the Application. */
/* */
/* Each User is solely responsible for determining the appropriateness of */
/* using the Product(s) and assumes all risks associated with its exercise */
/* of rights under this Agreement, including, but not limited to the risks */
/* and costs of program errors, compliance with applicable laws, damage to */
/* or loss of data, programs or equipment, and unavailability or */
/* interruption of operations. */
/* */
/* Limitation of Liability */
/* */
/* In no event shall Renesas be liable to the User for any incidental, */
/* consequential, indirect, or punitive damage (including but not limited */
/* to lost profits) regardless of whether such liability is based on breach */
/* of contract, tort, strict liability, breach of warranties, failure of */
/* essential purpose or otherwise and even if advised of the possibility of */
/* such damages. Renesas shall not be liable for any services or products */
/* provided by third party vendors, developers or consultants identified or */
/* referred to the User by Renesas in connection with the Product(s) and/or */
/* the Application. */
/* */
/*============================================================================*/
/* Environment: */
/* Devices: CPF */
/*============================================================================*/
/*******************************************************************************
** Revision Control History **
*******************************************************************************/
/*
* 1.0.0: 20/08/2021 : Initial Version
*/
/******************************************************************************/
#ifndef ARM_GIC_H
#define ARM_GIC_H
/*******************************************************************************
** Include Section **
*******************************************************************************/
/*******************************************************************************
** Version Information **
*******************************************************************************/
/*******************************************************************************
** Global Symbols **
*******************************************************************************/
/* Generic Interrupt Controller Distributor (GICD) */
#define GICD_CTLR *((volatile uint32 *)(GICD_BASE + 0x000))
#define GICD_TYPER *((volatile const uint32 *)(GICD_BASE + 0x004))
#define GICD_IIDR *((volatile const uint32 *)(GICD_BASE + 0x008))
#define GICD_STATUSR *((volatile uint32 *)(GICD_BASE + 0x010))
#define GICD_SETSPI_NSR *((volatile uint32 *)(GICD_BASE + 0x040))
#define GICD_CLRSPI_NSR *((volatile uint32 *)(GICD_BASE + 0x048))
#define GICD_SETSPI_SR *((volatile uint32 *)(GICD_BASE + 0x050))
#define GICD_CLRSPI_SR *((volatile uint32 *)(GICD_BASE + 0x058))
#define GICD_IGROUPR(n) *((volatile uint32 *)(GICD_BASE + 0x080 + 4*(n)))
#define GICD_ISENABLER(n) *((volatile uint32 *)(GICD_BASE + 0x100 + 4*(n)))
#define GICD_ICENABLER(n) *((volatile uint32 *)(GICD_BASE + 0x180 + 4*(n)))
#define GICD_ISPENDR(n) *((volatile uint32 *)(GICD_BASE + 0x200 + 4*(n)))
#define GICD_ICPENDR(n) *((volatile uint32 *)(GICD_BASE + 0x280 + 4*(n)))
#define GICD_ISACTIVER(n) *((volatile uint32 *)(GICD_BASE + 0x300 + 4*(n)))
#define GICD_ICACTIVER(n) *((volatile uint32 *)(GICD_BASE + 0x380 + 4*(n)))
#define GICD_IPRIORITYR(n) *((volatile uint32 *)(GICD_BASE + 0x400 + 4*(n)))
#define GICD_ITARGETSR(n) *((volatile uint32 *)(GICD_BASE + 0x800 + 4*(n)))
#define GICD_ICFGR(n) *((volatile uint32 *)(GICD_BASE + 0xC00 + 4*(n)))
#define GICD_IGRPMODR(n) *((volatile uint32 *)(GICD_BASE + 0xD00 + 4*(n)))
#define GICD_NSACR(n) *((volatile uint32 *)(GICD_BASE + 0xE00 + 4*(n)))
#define GICD_SGIR *((volatile uint32 *)(GICD_BASE + 0xF00))
#define GICD_CPENDSGIR(n) *((volatile uint32 *)(GICD_BASE + 0xF10 + 4*(n)))
#define GICD_SPENDSGIR(n) *((volatile uint32 *)(GICD_BASE + 0xF20 + 4*(n)))
/* Generic Interrupt Controller Redistributor (GICR) */
#define GICR_CTLR *((volatile uint32 *)(GICR_BASE + 0x100000 + 0x0000))
#define GICR_IIDR *((volatile uint32 *)(GICR_BASE + 0x100000 + 0x0004))
#define GICR_WAKER *((volatile uint32 *)(GICR_BASE + 0x100000 + 0x0014))
/* Generic Interrupt Controller Interface (GICC) */
#define GICC_CTLR *((volatile uint32 *)(GICC_BASE + 0x000))
#define GICC_PMR *((volatile uint32 *)(GICC_BASE + 0x004))
#define GICC_BPR *((volatile uint32 *)(GICC_BASE + 0x008))
#define GICC_IAR *((volatile const uint32 *)(GICC_BASE + 0x00C))
#define GICC_EOIR *((volatile uint32 *)(GICC_BASE + 0x010))
#define GICC_RPR *((volatile const uint32 *)(GICC_BASE + 0x014))
#define GICC_HPPIR *((volatile const uint32 *)(GICC_BASE + 0x018))
#define GICC_ABPR *((volatile uint32 *)(GICC_BASE + 0x01C))
#define GICC_AIAR *((volatile const uint32 *)(GICC_BASE + 0x020))
#define GICC_AEOIR *((volatile uint32 *)(GICC_BASE + 0x024))
#define GICC_AHPPIR *((volatile const uint32 *)(GICC_BASE + 0x028))
#define GICC_STATUSR *((volatile uint32 *)(GICC_BASE + 0x02C))
#define GICC_APR(n) *((volatile uint32 *)(GICC_BASE + 0x0D0 + 4*(n)))
#define GICC_NSAPR(n) *((volatile uint32 *)(GICC_BASE + 0x0E0 + 4*(n)))
#define GICC_IIDR *((volatile const uint32 *)(GICC_BASE + 0x0FC))
#define GICC_DIR *((volatile uint32 *)(GICC_BASE + 0x1000))
/*******************************************************************************
** Global Data Types **
*******************************************************************************/
/*******************************************************************************
** Function Prototypes **
*******************************************************************************/
/*******************************************************************************
** Macro **
*******************************************************************************/
/* Read the GIC's TYPER register */
__STATIC_INLINE uint32 GIC_DistributorInfo()
{
return (GICD_TYPER);
}
/* Enable the interrupt distributor using the GIC's CTLR register */
__STATIC_INLINE void GIC_EnableDistributor()
{
GICD_CTLR |= 3U;
}
/* Disable the interrupt distributor using the GIC's CTLR register */
__STATIC_INLINE void GIC_DisableDistributor()
{
GICD_CTLR &= 0xFFFFFFFCU;
}
/* Reads the GIC's IIDR register */
__STATIC_INLINE uint32 GIC_DistributorImplementer()
{
return (GICD_IIDR);
}
/* Sets the GIC's ITARGETSR register for the given interrupt */
__STATIC_INLINE void GIC_SetTarget(uint32 IRQn, uint32 cpu_target)
{
uint32 mask = GICD_ITARGETSR(IRQn / 4U) & ~(0xFFUL << ((IRQn % 4U) * 8U));
GICD_ITARGETSR(IRQn / 4U) = mask | ((cpu_target & 0xFFUL) << ((IRQn % 4U) * 8U));
}
/* Read the GIC's ITARGETSR register */
__STATIC_INLINE uint32 GIC_GetTarget(uint32 IRQn)
{
return (GICD_ITARGETSR(IRQn / 4U) >> ((IRQn % 4U) * 8U)) & 0xFFUL;
}
/* Enables the given interrupt using GIC's ISENABLER register */
__STATIC_INLINE void GIC_EnableIRQ(uint32 IRQn)
{
GICD_ISENABLER(IRQn / 32U) = 1U << (IRQn % 32U);
}
/* Get interrupt enable status using GIC's ISENABLER register */
__STATIC_INLINE uint32 GIC_GetEnableIRQ(uint32 IRQn)
{
return (GICD_ISENABLER(IRQn / 32U) >> (IRQn % 32U)) & 1UL;
}
/* Disables the given interrupt using GIC's ICENABLER register */
__STATIC_INLINE void GIC_DisableIRQ(uint32 IRQn)
{
GICD_ICENABLER(IRQn / 32U) = 1U << (IRQn % 32U);
}
/* Get interrupt pending status from GIC's ISPENDR register */
__STATIC_INLINE uint32 GIC_GetPendingIRQ(uint32 IRQn)
{
uint32 pend;
if (IRQn >= 16U) {
pend = (GICD_ISPENDR(IRQn / 32U) >> (IRQn % 32U)) & 1UL;
} else {
/* INTID 0-15 Software Generated Interrupt */
pend = (GICD_SPENDSGIR(IRQn / 4U) >> ((IRQn % 4U) * 8U)) & 0xFFUL;
/* No CPU identification offered */
if (pend != 0U) {
pend = 1U;
} else {
pend = 0U;
}
}
return (pend);
}
/* Sets the given interrupt as pending using GIC's ISPENDR register */
__STATIC_INLINE void GIC_SetPendingIRQ(uint32 IRQn)
{
if (IRQn >= 16U) {
GICD_ISPENDR(IRQn / 32U) = 1U << (IRQn % 32U);
} else {
/* INTID 0-15 Software Generated Interrupt */
GICD_SPENDSGIR(IRQn / 4U) = 1U << ((IRQn % 4U) * 8U);
}
}
/* Clears the given interrupt from being pending using GIC's ICPENDR register */
__STATIC_INLINE void GIC_ClearPendingIRQ(uint32 IRQn)
{
if (IRQn >= 16U) {
GICD_ICPENDR(IRQn / 32U) = 1U << (IRQn % 32U);
} else {
/* INTID 0-15 Software Generated Interrupt */
GICD_CPENDSGIR(IRQn / 4U) = 1U << ((IRQn % 4U) * 8U);
}
}
/* Sets the interrupt configuration using GIC's ICFGR register */
__STATIC_INLINE void GIC_SetConfiguration(uint32 IRQn, uint32 int_config)
{
uint32 icfgr = GICD_ICFGR(IRQn / 16U);
uint32 shift = (IRQn % 16U) << 1U;
icfgr &= (~(3U << shift));
icfgr |= ( int_config << shift);
GICD_ICFGR(IRQn / 16U) = icfgr;
}
/* Get the interrupt configuration from the GIC's ICFGR register */
__STATIC_INLINE uint32 GIC_GetConfiguration(uint32 IRQn)
{
return (GICD_ICFGR(IRQn / 16U) >> ((IRQn % 16U) >> 1U));
}
/* Set the priority for the given interrupt in the GIC's IPRIORITYR register */
__STATIC_INLINE void GIC_SetPriority(uint32 IRQn, uint32 priority)
{
uint32 mask = GICD_IPRIORITYR(IRQn / 4U) & ~(0xFFUL << ((IRQn % 4U) * 8U));
GICD_IPRIORITYR(IRQn / 4U) = mask | ((priority & 0xFFUL) << ((IRQn % 4U) * 8U));
}
/* Read the current interrupt priority from GIC's IPRIORITYR register */
__STATIC_INLINE uint32 GIC_GetPriority(uint32 IRQn)
{
return (GICD_IPRIORITYR(IRQn / 4U) >> ((IRQn % 4U) * 8U)) & 0xFFUL;
}
/* Get the status for a given interrupt */
__STATIC_INLINE uint32 GIC_GetIRQStatus(uint32 IRQn)
{
uint32 pending, active;
active = ((GICD_ISACTIVER(IRQn / 32U)) >> (IRQn % 32U)) & 1UL;
pending = ((GICD_ISPENDR(IRQn / 32U)) >> (IRQn % 32U)) & 1UL;
return ((active<<1U) | pending);
}
/* Generate a software interrupt using GIC's SGIR register */
__STATIC_INLINE void GIC_SendSGI(uint32 IRQn, uint32 target_list, uint32 filter_list)
{
GICD_SGIR = ((filter_list & 3U) << 24U) | ((target_list & 0xFFUL) << 16U) | (IRQn & 0x0FUL);
}
/* Set the interrupt group from the GIC's IGROUPR register */
__STATIC_INLINE void GIC_SetGroup(uint32 IRQn, uint32 group)
{
uint32 igroupr = GICD_IGROUPR(IRQn / 32U);
uint32 shift = (IRQn % 32U);
igroupr &= (~(1U << shift));
igroupr |= ( (group & 1U) << shift);
GICD_IGROUPR(IRQn / 32U) = igroupr;
}
#define GIC_SetSecurity GIC_SetGroup
/* Get the interrupt group from the GIC's IGROUPR register */
__STATIC_INLINE uint32 GIC_GetGroup(uint32 IRQn)
{
return (GICD_IGROUPR(IRQn / 32U) >> (IRQn % 32U)) & 1UL;
}
#define GIC_GetSecurity GIC_GetGroup
#if (defined(__ARM_ARCH_8R__ ) || defined(__ARM8))
/* Enable the interrupt redistributor wakeup */
__STATIC_INLINE void GIC_WakeupRedistributor()
{
GICR_WAKER = 0U;
}
/* Enable the CPU's interrupt interface */
__STATIC_INLINE void GIC_EnableInterface()
{
// __set_ICC_IGRPEN0(1U); //enable interface grp0
__set_ICC_IGRPEN1(1U); //enable interface grp1
}
/* Disable the CPU's interrupt interface */
__STATIC_INLINE void GIC_DisableInterface()
{
// __set_ICC_IGRPEN0(0U); //disable interface grp0
__set_ICC_IGRPEN1(0U); //disable interface grp1
}
/* Read the CPU's IAR register */
/* Group 1 only */
__STATIC_INLINE uint32 GIC_AcknowledgePending()
{
return (uint32)(__get_ICC_IAR1());
}
/* Writes the given interrupt number to the CPU's EOIR register */
/* Group 1 only */
__STATIC_INLINE void GIC_EndInterrupt(uint32 IRQn)
{
__set_ICC_EOIR1(IRQn);
}
/* Set the interrupt priority mask using CPU's PMR register */
/* Group 1 only */
__STATIC_INLINE void GIC_SetInterfacePriorityMask(uint32 priority)
{
__set_ICC_PMR(priority << 3); //set priority mask
}
/* Read the current interrupt priority mask from CPU's PMR register */
/* Group 1 only */
__STATIC_INLINE uint32 GIC_GetInterfacePriorityMask()
{
return (__get_ICC_PMR() >> 3);
}
/* Configures the group priority and subpriority split point using CPU's BPR register */
/* Group 1 only */
__STATIC_INLINE void GIC_SetBinaryPoint(uint32 binary_point)
{
__set_ICC_BPR1(binary_point & 7U); //set binary point
}
/* Read the current group priority and subpriority split point from CPU's BPR register */
/* Group 1 only */
__STATIC_INLINE uint32 GIC_GetBinaryPoint()
{
return __get_ICC_BPR1();
}
/* Get the interrupt number of the highest interrupt pending from CPU's HPPIR register */
/* Group 1 only */
__STATIC_INLINE uint32 GIC_GetHighPendingIRQ()
{
return __get_ICC_HPPIR1();
}
/* Initialize the CPU's interrupt interface (using group 1 only) */
__STATIC_INLINE void GIC_CPUInterfaceInit()
{
/* Enable interface */
GIC_EnableInterface();
/* Set binary point to 3 */
GIC_SetBinaryPoint(3U);
/* Set priority mask */
GIC_SetInterfacePriorityMask(0xFFU);
}
#else
/* Enable the CPU's interrupt interface */
__STATIC_INLINE void GIC_EnableInterface()
{
GICC_CTLR |= 1U; //enable interface
}
/* Disable the CPU's interrupt interface */
__STATIC_INLINE void GIC_DisableInterface()
{
GICC_CTLR &=~1U; //disable interface
}
/* Read the CPU's IAR register */
__STATIC_INLINE uint32 GIC_AcknowledgePending()
{
return (uint32)(GICC_IAR);
}
/* Writes the given interrupt number to the CPU's EOIR register */
__STATIC_INLINE void GIC_EndInterrupt(uint32 IRQn)
{
GICC_EOIR = IRQn;
}
/* Set the interrupt priority mask using CPU's PMR register */
__STATIC_INLINE void GIC_SetInterfacePriorityMask(uint32 priority)
{
GICC_PMR = priority & 0xFFUL; //set priority mask
}
/* Read the current interrupt priority mask from CPU's PMR register */
__STATIC_INLINE uint32 GIC_GetInterfacePriorityMask()
{
return GICC_PMR;
}
/* Configures the group priority and subpriority split point using CPU's BPR register */
__STATIC_INLINE void GIC_SetBinaryPoint(uint32 binary_point)
{
GICC_BPR = binary_point & 7U; //set binary point
}
/* Read the current group priority and subpriority split point from CPU's BPR register */
__STATIC_INLINE uint32 GIC_GetBinaryPoint()
{
return GICC_BPR;
}
/* Get the interrupt number of the highest interrupt pending from CPU's HPPIR register */
__STATIC_INLINE uint32 GIC_GetHighPendingIRQ()
{
return GICC_HPPIR;
}
/* Provides information about the implementer and revision of the CPU interface */
__STATIC_INLINE uint32 GIC_GetInterfaceId()
{
return GICC_IIDR;
}
/* Initialize the CPU's interrupt interface */
__STATIC_INLINE void GIC_CPUInterfaceInit()
{
uint32 i;
uint32 priority_field;
/* A reset sets all bits in the IGROUPRs corresponding to the SPIs to 0,
configuring all of the interrupts as Secure. */
/* Disable interrupt forwarding */
GIC_DisableInterface();
/* Priority level is implementation defined.
To determine the number of priority bits implemented write 0xFF to an IPRIORITYR
priority field and read back the value stored.*/
GIC_SetPriority((uint32)0U, 0xFFU);
priority_field = GIC_GetPriority((uint32)0U);
/* SGI and PPI */
for (i = 0U; i < 32U; i++)
{
if(i > 15U) {
/* Set level-sensitive (and N-N model) for PPI */
GIC_SetConfiguration((uint32)i, 0U);
}
/* Disable SGI and PPI interrupts */
GIC_DisableIRQ((uint32)i);
/* Set priority */
GIC_SetPriority((uint32)i, priority_field/2U);
}
/* Enable interface */
GIC_EnableInterface();
/* Set binary point to 3 */
GIC_SetBinaryPoint(3U);
/* Set priority mask */
GIC_SetInterfacePriorityMask(0xFFU);
}
#endif /* (defined(__ARM_ARCH_8R__ ) || defined(__ARM8)) */
/* Initialize the interrupt distributor */
__STATIC_INLINE void GIC_DistInit()
{
uint32 i;
uint32 num_irq = 0U;
uint32 priority_field;
/* A reset sets all bits in the IGROUPRs corresponding to the SPIs to 0,
configuring all of the interrupts as Secure. */
/* Disable interrupt forwarding */
GIC_DisableDistributor();
/* Get the maximum number of interrupts that the GIC supports */
num_irq = 32U * ((GIC_DistributorInfo() & 0x1FU) + 1U);
/* Priority level is implementation defined.
To determine the number of priority bits implemented write 0xFF to an IPRIORITYR
priority field and read back the value stored.*/
GIC_SetPriority((uint32)32U, 0xFFU);
priority_field = GIC_GetPriority((uint32)32U);
for (i = 32U; i < num_irq; i++)
{
/* Disable the SPI interrupt */
GIC_DisableIRQ((uint32)i);
/* Clear pending interrupt */
GIC_ClearPendingIRQ((uint32)i);
/* Set level-sensitive (and N-N model) */
GIC_SetConfiguration((uint32)i, 0U);
/* Set priority */
GIC_SetPriority((uint32)i, priority_field/2U);
#if (defined(__ARM_ARCH_7R__) || defined(__CORE_CORTEXR7__))
/* Set target list to CPU0 */
GIC_SetTarget((uint32)i, 1U);
#endif /* (defined(__ARM_ARCH_7R__) || defined(__CORE_CORTEXR7__)) */
/* Set group 1 (since RT domain is non-secure) */
GIC_SetGroup((uint32)i, 1U);
}
/* Enable distributor */
GIC_EnableDistributor();
}
/* Initialize and enable the GIC */
__STATIC_INLINE void GIC_Enable()
{
GIC_DistInit();
GIC_CPUInterfaceInit();
#if (defined(__ARM_ARCH_8R__) || defined(__ARM8))
GIC_WakeupRedistributor();
#endif /* (defined(__ARM_ARCH_8R__) || defined(__ARM8)) */
}
#endif /* ARM_GIC_H */
/*******************************************************************************
** End of File **
*******************************************************************************/

View File

@@ -0,0 +1,122 @@
/*============================================================================*/
/* Project = AUTOSAR Renesas CPF MCAL Components */
/* Module = utils.h */
/* SW-VERSION = 1.0.0 */
/*============================================================================*/
/* COPYRIGHT */
/*============================================================================*/
/* Copyright(c) 2021 Renesas Electronics Corporation. */
/*============================================================================*/
/* Purpose: */
/* Utilities support */
/* */
/*============================================================================*/
/* */
/* Unless otherwise agreed upon in writing between your company and */
/* Renesas Electronics Corporation the following shall apply! */
/* */
/* Warranty Disclaimer */
/* */
/* There is no warranty of any kind whatsoever granted by Renesas. Any */
/* warranty is expressly disclaimed and excluded by Renesas, either expressed */
/* or implied, including but not limited to those for non-infringement of */
/* intellectual property, merchantability and/or fitness for the particular */
/* purpose. */
/* */
/* Renesas shall not have any obligation to maintain, service or provide bug */
/* fixes for the supplied Product(s) and/or the Application. */
/* */
/* Each User is solely responsible for determining the appropriateness of */
/* using the Product(s) and assumes all risks associated with its exercise */
/* of rights under this Agreement, including, but not limited to the risks */
/* and costs of program errors, compliance with applicable laws, damage to */
/* or loss of data, programs or equipment, and unavailability or */
/* interruption of operations. */
/* */
/* Limitation of Liability */
/* */
/* In no event shall Renesas be liable to the User for any incidental, */
/* consequential, indirect, or punitive damage (including but not limited */
/* to lost profits) regardless of whether such liability is based on breach */
/* of contract, tort, strict liability, breach of warranties, failure of */
/* essential purpose or otherwise and even if advised of the possibility of */
/* such damages. Renesas shall not be liable for any services or products */
/* provided by third party vendors, developers or consultants identified or */
/* referred to the User by Renesas in connection with the Product(s) and/or */
/* the Application. */
/* */
/*============================================================================*/
/* Environment: */
/* Devices: CPF */
/*============================================================================*/
/*******************************************************************************
** Revision Control History **
*******************************************************************************/
/*
* 1.0.0: 20/08/2021 : Initial Version
*/
/******************************************************************************/
#ifndef UTILS_H
#define UTILS_H
/*******************************************************************************
** Include Section **
*******************************************************************************/
#include "Compiler.h"
#include "Platform_Types.h"
/*******************************************************************************
** Global Symbols **
*******************************************************************************/
/*******************************************************************************
** Global Data Types **
*******************************************************************************/
/*******************************************************************************
** Function Prototypes **
*******************************************************************************/
/*******************************************************************************
** Macro **
*******************************************************************************/
#define UTILS_BITS_BYTE 8
#define UTILS_BYTES_WORD 4
#define UTILS_BYTES_HWORD 2
#define UTILS_BYTES_BYTE 1
/* Set an memory area with input value */
__STATIC_INLINE void utils_mem_set(uint32 addr, uint32 length, uint32 val)
{
while (length)
{
if (length >= UTILS_BYTES_WORD)
{
*((volatile uint32*)addr) = val;
addr += UTILS_BYTES_WORD;
length -= UTILS_BYTES_WORD;
}
else if ((length >= UTILS_BYTES_HWORD) && (length < UTILS_BYTES_WORD))
{
*((volatile uint16*)addr) = (uint16)(val & 0x0000FFFF);
addr += UTILS_BYTES_HWORD;
length -= UTILS_BYTES_HWORD;
}
else
{
*((volatile uint8*)addr) = (uint8)(val & 0x000000FF);
addr += UTILS_BYTES_BYTE;
length -= UTILS_BYTES_BYTE;
}
}
}
/* Clear a memory area */
#define utils_mem_clr(addr, length) utils_mem_set(addr, length, 0)
#endif /* UTILS_H */
/*******************************************************************************
** End of File **
*******************************************************************************/

View File

@@ -0,0 +1,106 @@
/*============================================================================*/
/* Project = AUTOSAR Renesas CPF MCAL Components */
/* Module = log.h */
/* SW-VERSION = 1.0.0 */
/*============================================================================*/
/* COPYRIGHT */
/*============================================================================*/
/* Copyright(c) 2021 Renesas Electronics Corporation. */
/*============================================================================*/
/* Purpose: */
/* Provision of external declaration of APIs and Service IDs. */
/* */
/*============================================================================*/
/* */
/* Unless otherwise agreed upon in writing between your company and */
/* Renesas Electronics Corporation the following shall apply! */
/* */
/* Warranty Disclaimer */
/* */
/* There is no warranty of any kind whatsoever granted by Renesas. Any */
/* warranty is expressly disclaimed and excluded by Renesas, either expressed */
/* or implied, including but not limited to those for non-infringement of */
/* intellectual property, merchantability and/or fitness for the particular */
/* purpose. */
/* */
/* Renesas shall not have any obligation to maintain, service or provide bug */
/* fixes for the supplied Product(s) and/or the Application. */
/* */
/* Each User is solely responsible for determining the appropriateness of */
/* using the Product(s) and assumes all risks associated with its exercise */
/* of rights under this Agreement, including, but not limited to the risks */
/* and costs of program errors, compliance with applicable laws, damage to */
/* or loss of data, programs or equipment, and unavailability or */
/* interruption of operations. */
/* */
/* Limitation of Liability */
/* */
/* In no event shall Renesas be liable to the User for any incidental, */
/* consequential, indirect, or punitive damage (including but not limited */
/* to lost profits) regardless of whether such liability is based on breach */
/* of contract, tort, strict liability, breach of warranties, failure of */
/* essential purpose or otherwise and even if advised of the possibility of */
/* such damages. Renesas shall not be liable for any services or products */
/* provided by third party vendors, developers or consultants identified or */
/* referred to the User by Renesas in connection with the Product(s) and/or */
/* the Application. */
/* */
/*============================================================================*/
/* Environment: */
/* Devices: CPF */
/*============================================================================*/
/*******************************************************************************
** Revision Control History **
*******************************************************************************/
/*
* 1.0.0: 20/08/2021 : Initial Version
*/
/******************************************************************************/
#ifndef LOG_H
#define LOG_H
/*******************************************************************************
** To support different AUTOSAR releases in a single package **
*******************************************************************************/
/*******************************************************************************
** Include Section **
*******************************************************************************/
#include "Platform_Types.h"
/*******************************************************************************
** Version Information **
*******************************************************************************/
/*******************************************************************************
** MISRA C Rule Violations **
*******************************************************************************/
/*******************************************************************************
** Global Symbols **
*******************************************************************************/
/*******************************************************************************
** Service IDs **
*******************************************************************************/
/*******************************************************************************
** Global Data Types **
*******************************************************************************/
/*******************************************************************************
** Extern declarations for Global Data **
*******************************************************************************/
/*******************************************************************************
** Function Prototypes **
*******************************************************************************/
void Console_Print(const char *pStrFormat, ...);
#endif /* LOG_H */
/*******************************************************************************
** End of File **
*******************************************************************************/

Some files were not shown because too many files have changed in this diff Show More