/*================================================================================================== * Project : RTD AUTOSAR 4.4 * Platform : CORTEXM * Peripheral : FTFC_FLS_IP IPV_QSPI * Dependencies : none * * Autosar Version : 4.4.0 * Autosar Revision : ASR_REL_4_4_REV_0000 * Autosar Conf.Variant : * SW Version : 1.0.0 * Build Version : S32K1_RTD_1_0_0_HF01_D2109_ASR_REL_4_4_REV_0000_20210907 * * (c) Copyright 2020-2021 NXP Semiconductors * All Rights Reserved. * * NXP Confidential. This software is owned or controlled by NXP and may only be * used strictly in accordance with the applicable license terms. By expressly * accepting such terms or by downloading, installing, activating and/or otherwise * using the software, you are agreeing that you have read, and that you agree to * comply with and are bound by, such license terms. If you do not agree to be * bound by the applicable license terms, then you may not retain, install, * activate or otherwise use the software. ==================================================================================================*/ #ifndef FLS_CFG_H #define FLS_CFG_H /** * @file Fls_Cfg.h * * @addtogroup FLS * @{ */ /* implements Fls_Cfg.h_Artifact */ #ifdef __cplusplus extern "C"{ #endif /*================================================================================================== * INCLUDE FILES * 1) system and project includes * 2) needed interfaces from external units * 3) internal and external interfaces from this unit ==================================================================================================*/ #include "Fls_Types.h" #include "Mcal.h" #include "MemIf_Types.h" #include "Ftfc_Fls_Ip_Cfg.h" #include "Qspi_Ip_Cfg.h" #include "Fls_VS_0_PBcfg.h" /*================================================================================================== * SOURCE FILE VERSION INFORMATION ==================================================================================================*/ #define FLS_VENDOR_ID_CFG 43 #define FLS_AR_RELEASE_MAJOR_VERSION_CFG 4 #define FLS_AR_RELEASE_MINOR_VERSION_CFG 4 #define FLS_AR_RELEASE_REVISION_VERSION_CFG 0 #define FLS_SW_MAJOR_VERSION_CFG 1 #define FLS_SW_MINOR_VERSION_CFG 0 #define FLS_SW_PATCH_VERSION_CFG 0 /*================================================================================================== * FILE VERSION CHECKS ==================================================================================================*/ /* Check if current file and Fls configuration header file are of the same vendor */ #if (FLS_TYPES_VENDOR_ID != FLS_VENDOR_ID_CFG) #error "Fls_Types.h and Fls_Cfg.h have different vendor ids" #endif /* Check if current file and Fls configuration header file are of the same Autosar version */ #if ((FLS_TYPES_AR_RELEASE_MAJOR_VERSION != FLS_AR_RELEASE_MAJOR_VERSION_CFG) || \ (FLS_TYPES_AR_RELEASE_MINOR_VERSION != FLS_AR_RELEASE_MINOR_VERSION_CFG) || \ (FLS_TYPES_AR_RELEASE_REVISION_VERSION != FLS_AR_RELEASE_REVISION_VERSION_CFG) \ ) #error "AutoSar Version Numbers of Fls_Types.h and Fls_Cfg.h are different" #endif /* Check if current file and Fls configuration header file are of the same software version */ #if ((FLS_TYPES_SW_MAJOR_VERSION != FLS_SW_MAJOR_VERSION_CFG) || \ (FLS_TYPES_SW_MINOR_VERSION != FLS_SW_MINOR_VERSION_CFG) || \ (FLS_TYPES_SW_PATCH_VERSION != FLS_SW_PATCH_VERSION_CFG) \ ) #error "Software Version Numbers of Fls_Types.h and Fls_Cfg.h are different" #endif #ifndef DISABLE_MCAL_INTERMODULE_ASR_CHECK /* Check if current file and Std_Types header file are of the same version */ #if ((FLS_AR_RELEASE_MAJOR_VERSION_CFG != MCAL_AR_RELEASE_MAJOR_VERSION) || \ (FLS_AR_RELEASE_MINOR_VERSION_CFG != MCAL_AR_RELEASE_MINOR_VERSION) \ ) #error "AutoSar Version Numbers of Fls_Types.h and Mcal.h are different" #endif #endif #ifndef DISABLE_MCAL_INTERMODULE_ASR_CHECK /* Check if current file and MemIf_Types.h file are of the same Autosar version */ #if ((FLS_AR_RELEASE_MAJOR_VERSION_CFG != MEMIF_AR_RELEASE_MAJOR_VERSION) || \ (FLS_AR_RELEASE_MINOR_VERSION_CFG != MEMIF_AR_RELEASE_MINOR_VERSION) \ ) #error "AutoSar Version Numbers of Fls_Cfg.h and MemIf_Types.h are different" #endif #endif /* Check if current file and Ftfc_Fls_Ip_Cfg header file are of the same vendor */ #if (FLS_VENDOR_ID_CFG != FTFC_FLS_IP_VENDOR_ID_CFG) #error "Fls_Cfg.h and Ftfc_Fls_Ip_Cfg.h have different vendor ids" #endif /* Check if current file and Ftfc_Fls_Ip_Cfg header file are of the same Autosar version */ #if ((FLS_AR_RELEASE_MAJOR_VERSION_CFG != FTFC_FLS_IP_AR_RELEASE_MAJOR_VERSION_CFG) || \ (FLS_AR_RELEASE_MINOR_VERSION_CFG != FTFC_FLS_IP_AR_RELEASE_MINOR_VERSION_CFG) || \ (FLS_AR_RELEASE_REVISION_VERSION_CFG != FTFC_FLS_IP_AR_RELEASE_REVISION_VERSION_CFG) \ ) #error "AutoSar Version Numbers of Fls_Cfg.h and Ftfc_Fls_Ip_Cfg.h are different" #endif /* Check if current file and Ftfc_Fls_Ip_Cfg header file are of the same Software version */ #if ((FLS_SW_MAJOR_VERSION_CFG != FTFC_FLS_IP_SW_MAJOR_VERSION_CFG) || \ (FLS_SW_MINOR_VERSION_CFG != FTFC_FLS_IP_SW_MINOR_VERSION_CFG) || \ (FLS_SW_PATCH_VERSION_CFG != FTFC_FLS_IP_SW_PATCH_VERSION_CFG) \ ) #error "Software Version Numbers of Fls_Cfg.h and Ftfc_Fls_Ip_Cfg.h are different" #endif /* Check if current file and Qspi_Ip_Cfg header file are of the same vendor */ #if (FLS_VENDOR_ID_CFG != QSPI_IP_VENDOR_ID_CFG) #error "Fls_Cfg.h and Qspi_Ip_Cfg.h have different vendor ids" #endif /* Check if current file and Qspi_Ip_Cfg header file are of the same Autosar version */ #if ((FLS_AR_RELEASE_MAJOR_VERSION_CFG != QSPI_IP_AR_RELEASE_MAJOR_VERSION_CFG) || \ (FLS_AR_RELEASE_MINOR_VERSION_CFG != QSPI_IP_AR_RELEASE_MINOR_VERSION_CFG) || \ (FLS_AR_RELEASE_REVISION_VERSION_CFG != QSPI_IP_AR_RELEASE_REVISION_VERSION_CFG) \ ) #error "AutoSar Version Numbers of Fls_Cfg.h and Qspi_Ip_Cfg.h are different" #endif /* Check if current file and Qspi_Ip_Cfg header file are of the same software version */ #if ((FLS_SW_MAJOR_VERSION_CFG != QSPI_IP_SW_MAJOR_VERSION_CFG) || \ (FLS_SW_MINOR_VERSION_CFG != QSPI_IP_SW_MINOR_VERSION_CFG) || \ (FLS_SW_PATCH_VERSION_CFG != QSPI_IP_SW_PATCH_VERSION_CFG) \ ) #error "Software Version Numbers of Fls_Cfg.h and Qspi_Ip_Cfg.h are different" #endif /* Check if current file and Fls_VS_0_PBcfg header file are of the same vendor */ #if (FLS_VENDOR_ID_CFG != FLS_VS_0_PBCFG_VENDOR_ID) #error "Fls_Cfg.h and Fls_VS_0_PBcfg.h have different vendor ids" #endif /* Check if current file and Fls_VS_0_PBcfg header file are of the same Autosar version */ #if ((FLS_AR_RELEASE_MAJOR_VERSION_CFG != FLS_VS_0_PBCFG_AR_RELEASE_MAJOR_VERSION) || \ (FLS_AR_RELEASE_MINOR_VERSION_CFG != FLS_VS_0_PBCFG_AR_RELEASE_MINOR_VERSION) || \ (FLS_AR_RELEASE_REVISION_VERSION_CFG != FLS_VS_0_PBCFG_AR_RELEASE_REVISION_VERSION) \ ) #error "AutoSar Version Numbers of Fls_Cfg.h and Fls_VS_0_PBcfg.h are different" #endif /* Check if current file and Fls_VS_0_PBcfg header file are of the same software version */ #if ((FLS_SW_MAJOR_VERSION_CFG != FLS_VS_0_PBCFG_SW_MAJOR_VERSION) || \ (FLS_SW_MINOR_VERSION_CFG != FLS_VS_0_PBCFG_SW_MINOR_VERSION) || \ (FLS_SW_PATCH_VERSION_CFG != FLS_VS_0_PBCFG_SW_PATCH_VERSION) \ ) #error "Software Version Numbers of Fls_Cfg.h and Fls_VS_0_PBcfg.h are different" #endif /*================================================================================================== DEFINES AND MACROS ==================================================================================================*/ #define FLS_CONFIG_EXT \ FLS_CONFIG_VS_0_PB \ /* STD_ON: Flash access code loaded on job start / unloaded on job end or error */ #define FLS_AC_LOAD_ON_JOB_START (STD_ON) #if (FLS_AC_LOAD_ON_JOB_START == STD_ON) /* Cleaning cache after loading access code to RAM */ #define FLS_CLEAN_CACHE_AFTER_LOAD_AC (STD_OFF) #endif /* Compile switch to enable and disable the Fls_Cancel function */ #define FLS_CANCEL_API (STD_ON) /* Compile switch to enable and disable the Fls_Compare function */ #define FLS_COMPARE_API (STD_ON) /* Compile switch to enable and disable the Fls_BlankCheck function */ #define FLS_BLANK_CHECK_API (STD_OFF) /* Pre-processor switch to enable and disable development error detection */ #define FLS_DEV_ERROR_DETECT (STD_ON) /* Compile switch to enable and disable the Fls_GetJobResult function */ #define FLS_GET_JOB_RESULT_API (STD_ON) /* Compile switch to enable and disable the Fls_GetStatus function */ #define FLS_GET_STATUS_API (STD_ON) /* Compile switch to enable and disable the Fls_SetMode function */ #define FLS_SET_MODE_API (STD_ON) /* Pre-processor switch to enable / disable the API to read out the modules version information */ #define FLS_VERSION_INFO_API (STD_ON) /* Pre-processor switch to enable / disable the API to report data storage (ECC) errors to the flash driver */ #define FLS_ECC_CHECK (STD_OFF) #define FLS_ECC_CHECK_BY_AUTOSAR_OS (STD_OFF) /* Pre-processor switch to enable / disable the erase blank check */ #define FLS_ERASE_VERIFICATION_ENABLED (STD_OFF) /* Pre-processor switch to enable / disable the write verify check */ #define FLS_WRITE_VERIFICATION_ENABLED (STD_OFF) #if (FLS_ERASE_VERIFICATION_ENABLED == STD_ON) /* The maximum number of bytes to blank check in one cycle of the flash driver job processing function */ #define FLS_MAX_ERASE_BLANK_CHECK (256U) #endif /* Timeout handling enabled */ #define FLS_TIMEOUT_SUPERVISION_ENABLED (STD_OFF) /* Internal sectors are present or not in the current configuration. */ #define FLS_INTERNAL_SECTORS_CONFIGURED (STD_ON) /* Base address of code flash */ #define FLS_PROGRAM_FLASH_BASE_ADDR (0x00000000UL) /* Base address of data flash */ #define FLS_DATA_FLASH_BASE_ADDR (0x10000000UL) /* Internal flash write register size */ #define FLS_INTERNAL_WRITE_SIZE (8UL) /* External QSPI sectors are present or not in the current configuration. */ #define FLS_QSPI_SECTORS_CONFIGURED (STD_OFF) /*================================================================================================== STRUCTURES AND OTHER TYPEDEFS ==================================================================================================*/ /*================================================================================================== GLOBAL CONSTANT DECLARATIONS ==================================================================================================*/ #define FLS_PRECOMPILE_SUPPORT #define FLS_START_SEC_CONFIG_DATA_UNSPECIFIED #include "Fls_MemMap.h" /* Declaration of pre-compile configuration set structure */ #define Fls_Config Fls_Config_VS_0 extern const Fls_ConfigType Fls_Config; #define FLS_STOP_SEC_CONFIG_DATA_UNSPECIFIED #include "Fls_MemMap.h" /*================================================================================================== FUNCTION PROTOTYPES ==================================================================================================*/ #ifdef __cplusplus } #endif /** @} */ #endif /* FLS_CFG_H */