/* ======================================================================
 *   Copyright (C) 2022 Texas Instruments Incorporated
 *
 *   All rights reserved. Property of Texas Instruments Incorporated.
 *   Restricted rights to use, duplicate or disclose this code are
 *   granted through contract.
 *
 *   The program may not be used without the written permission
 *   of Texas Instruments Incorporated or against the terms and conditions
 *   stipulated in the agreement under which this program has been
 *   supplied.
 * ==================================================================== */

/**
 *  \file     Cdd_I2c_Cfg.c
 *
 *  \brief    This file contains generated pre compile configurations
 *            for CDD I2C MCAL driver
 *
 */

/******************************************************************************
    Project         : Cdd_AM263x
    Date            : 2022-08-26 20:53:14
    SW Ver          : 0.9.0
    Module Rele Ver : AUTOSAR 4.3.1 0

    This file is generated by EB Tresos
    Do not modify this file,otherwise the software may behave in unexpected way.
******************************************************************************/

/*******************************************************************************
 *  INCLUDES
 ******************************************************************************/
#include "Cdd_I2c.h"

/** \brief Version checking  */
#if ((CDDI2C_VERSION_SW_MAJOR_VERSION != (0U))||(CDDI2C_VERSION_SW_MINOR_VERSION != (9U)))
    #error "Version numbers of Cdd_I2c_Cfg.c and Cdd_I2c.h are inconsistent!"
#endif

/*******************************************************************************
 *  Local Data
 ******************************************************************************/

/*******************************************************************************
 *  Global Data
 ******************************************************************************/

#define I2C_START_SEC_CONFIG_DATA_UNSPECIFIED
#include "I2c_MemMap.h"

/**
 *  \brief Notification
 *
 */
/**
 *  \brief I2C Configurations
 *
 */

static VAR(I2c_ChannelVarDescType, I2C_VAR) I2c_VarChannelDescrList_I2cConfigSet0[] =
{
		{
	        80,/*Slave Address*/
	        NULL_PTR,
	        10,/*Data Length*/
	        I2C_IDLE,/*Channel Status*/
	        I2C_CH_RESULT_OK,/*Channel Result*/
	        I2C_WRITE/*Channel Direction*/
	    },
		{
	        80,/*Slave Address*/
	        NULL_PTR,
	        10,/*Data Length*/
	        I2C_IDLE,/*Channel Status*/
	        I2C_CH_RESULT_OK,/*Channel Result*/
	        I2C_WRITE/*Channel Direction*/
	    },
		{
	        80,/*Slave Address*/
	        NULL_PTR,
	        10,/*Data Length*/
	        I2C_IDLE,/*Channel Status*/
	        I2C_CH_RESULT_OK,/*Channel Result*/
	        I2C_READ/*Channel Direction*/
	    },
		{
	        80,/*Slave Address*/
	        NULL_PTR,
	        10,/*Data Length*/
	        I2C_IDLE,/*Channel Status*/
	        I2C_CH_RESULT_OK,/*Channel Result*/
	        I2C_READ/*Channel Direction*/
	    },
	
};
static VAR(I2c_ChannelVarDescType, I2C_VAR) I2c_VarChannelDescrList_I2cConfigSet1[] =
{
		{
	        80,/*Slave Address*/
	        NULL_PTR,
	        5,/*Data Length*/
	        I2C_IDLE,/*Channel Status*/
	        I2C_CH_RESULT_OK,/*Channel Result*/
	        I2C_WRITE/*Channel Direction*/
	    },
		{
	        80,/*Slave Address*/
	        NULL_PTR,
	        5,/*Data Length*/
	        I2C_IDLE,/*Channel Status*/
	        I2C_CH_RESULT_OK,/*Channel Result*/
	        I2C_WRITE/*Channel Direction*/
	    },
		{
	        80,/*Slave Address*/
	        NULL_PTR,
	        5,/*Data Length*/
	        I2C_IDLE,/*Channel Status*/
	        I2C_CH_RESULT_OK,/*Channel Result*/
	        I2C_READ/*Channel Direction*/
	    },
		{
	        80,/*Slave Address*/
	        NULL_PTR,
	        5,/*Data Length*/
	        I2C_IDLE,/*Channel Status*/
	        I2C_CH_RESULT_OK,/*Channel Result*/
	        I2C_READ/*Channel Direction*/
	    },
	
};


CONST(I2C_ChannelConfigType, I2C_CONFIG_DATA) I2c_ChannelConfigs0[] =
{
		
		{
	
	        0,    /*Channel ID*/
	        255,    /*Default Data*/
	        false,    /*Chained Attribute*/
	        &I2c_VarChannelDescrList_I2cConfigSet0[0]
		},
		{
	
	        1,    /*Channel ID*/
	        255,    /*Default Data*/
	        false,    /*Chained Attribute*/
	        &I2c_VarChannelDescrList_I2cConfigSet0[1]
		},
		{
	
	        2,    /*Channel ID*/
	        255,    /*Default Data*/
	        false,    /*Chained Attribute*/
	        &I2c_VarChannelDescrList_I2cConfigSet0[2]
		},
		{
	
	        3,    /*Channel ID*/
	        255,    /*Default Data*/
	        false,    /*Chained Attribute*/
	        &I2c_VarChannelDescrList_I2cConfigSet0[3]
		},
	
};
CONST(I2C_ChannelConfigType, I2C_CONFIG_DATA) I2c_ChannelConfigs1[] =
{
		
		{
	
	        0,    /*Channel ID*/
	        255,    /*Default Data*/
	        false,    /*Chained Attribute*/
	        &I2c_VarChannelDescrList_I2cConfigSet1[0]
		},
		{
	
	        1,    /*Channel ID*/
	        255,    /*Default Data*/
	        false,    /*Chained Attribute*/
	        &I2c_VarChannelDescrList_I2cConfigSet1[1]
		},
		{
	
	        2,    /*Channel ID*/
	        255,    /*Default Data*/
	        false,    /*Chained Attribute*/
	        &I2c_VarChannelDescrList_I2cConfigSet1[2]
		},
		{
	
	        3,    /*Channel ID*/
	        255,    /*Default Data*/
	        false,    /*Chained Attribute*/
	        &I2c_VarChannelDescrList_I2cConfigSet1[3]
		},
	
};



P2CONST(I2C_ChannelConfigType, AUTOMATIC, I2C_CONFIG_DATA) I2c_ChannelSeq0[] =
{
	
	        &I2c_ChannelConfigs0[0],
	
	        &I2c_ChannelConfigs0[1],
	    
		
};
P2CONST(I2C_ChannelConfigType, AUTOMATIC, I2C_CONFIG_DATA) I2c_ChannelSeq1[] =
{
	
	        &I2c_ChannelConfigs0[2],
	
	        &I2c_ChannelConfigs0[3],
	    
		
};
P2CONST(I2C_ChannelConfigType, AUTOMATIC, I2C_CONFIG_DATA) I2c_ChannelSeq2[] =
{
	
	        &I2c_ChannelConfigs0[0],
	
	        &I2c_ChannelConfigs0[2],
	    
		
};

P2CONST(I2C_ChannelConfigType, AUTOMATIC, I2C_CONFIG_DATA) I2c_ChannelSeq3[] =
{
	
	        &I2c_ChannelConfigs1[0],
	
	        &I2c_ChannelConfigs1[1],
	
	        &I2c_ChannelConfigs1[2],
	    
		
};
P2CONST(I2C_ChannelConfigType, AUTOMATIC, I2C_CONFIG_DATA) I2c_ChannelSeq4[] =
{
	
	        &I2c_ChannelConfigs1[1],
	
	        &I2c_ChannelConfigs1[2],
	
	        &I2c_ChannelConfigs1[3],
	    
		
};
P2CONST(I2C_ChannelConfigType, AUTOMATIC, I2C_CONFIG_DATA) I2c_ChannelSeq5[] =
{
	
	        &I2c_ChannelConfigs1[0],
	
	        &I2c_ChannelConfigs1[2],
	    
		
};



CONST(I2C_SequenceConfigType, I2C_CONFIG_DATA) I2cSequence_Config0[] =
{
		{
	        1,/*Sequence ID*/
	        NULL_PTR,/*Job End Notification*/
	        NULL_PTR,/*Job Error Notification*/
	        (2),/*No of Channels*/
	        false,/*NACK*/
	        (uint8)0U,/*Priority*/
	        I2c_ChannelSeq0 
	    },
			{
	        2,/*Sequence ID*/
	        NULL_PTR,/*Job End Notification*/
	        NULL_PTR,/*Job Error Notification*/
	        (2),/*No of Channels*/
	        false,/*NACK*/
	        (uint8)0U,/*Priority*/
	        I2c_ChannelSeq1 
	    },
			{
	        3,/*Sequence ID*/
	        NULL_PTR,/*Job End Notification*/
	        NULL_PTR,/*Job Error Notification*/
	        (2),/*No of Channels*/
	        false,/*NACK*/
	        (uint8)0U,/*Priority*/
	        I2c_ChannelSeq2 
	    },
		
};
CONST(I2C_SequenceConfigType, I2C_CONFIG_DATA) I2cSequence_Config1[] =
{
		{
	        1,/*Sequence ID*/
	        NULL_PTR,/*Job End Notification*/
	        NULL_PTR,/*Job Error Notification*/
	        (3),/*No of Channels*/
	        false,/*NACK*/
	        (uint8)0U,/*Priority*/
	        I2c_ChannelSeq3 
	    },
			{
	        2,/*Sequence ID*/
	        NULL_PTR,/*Job End Notification*/
	        NULL_PTR,/*Job Error Notification*/
	        (3),/*No of Channels*/
	        false,/*NACK*/
	        (uint8)0U,/*Priority*/
	        I2c_ChannelSeq4 
	    },
			{
	        3,/*Sequence ID*/
	        NULL_PTR,/*Job End Notification*/
	        NULL_PTR,/*Job Error Notification*/
	        (2),/*No of Channels*/
	        false,/*NACK*/
	        (uint8)0U,/*Priority*/
	        I2c_ChannelSeq5 
	    },
		
};



CONST(I2C_HwConfigType, I2C_CONFIG_DATA) I2cHwConfig0[] =
{
		{
	        I2C0_CFG,/*I2C Instances*/
	        1,/*HW Channel ID*/
	        I2C_400kHz,/*Channel Bit Rate*/
	        false/*7 Bit Address or 10 Bit Address*/
	    },
	
};
CONST(I2C_HwConfigType, I2C_CONFIG_DATA) I2cHwConfig1[] =
{
		{
	        I2C0_CFG,/*I2C Instances*/
	        1,/*HW Channel ID*/
	        I2C_400kHz,/*Channel Bit Rate*/
	        false/*7 Bit Address or 10 Bit Address*/
	    },
	
};




CONST(I2C_ConfigType, I2C_CONFIG_DATA) I2cConfigSets[2] =
{
		{
            &I2cSequence_Config0[0], /* pointer to Sequence Config structure */

	        &I2c_ChannelConfigs0[0], /* pointer to Channel Config structure */

	        &I2cHwConfig0[0], /* pointer to Hardware Config structure */

	        (3U),/* No. of Sequence */
	        (4U),/* No. of Channels */
	        (1U),/* No. of HW */
	    },
		{
            &I2cSequence_Config1[0], /* pointer to Sequence Config structure */

	        &I2c_ChannelConfigs1[0], /* pointer to Channel Config structure */

	        &I2cHwConfig1[0], /* pointer to Hardware Config structure */

	        (3U),/* No. of Sequence */
	        (4U),/* No. of Channels */
	        (1U),/* No. of HW */
	    },
	
};

#define I2C_STOP_SEC_CONFIG_DATA_UNSPECIFIED
#include "I2c_MemMap.h"
/* @} */

/*******************************************************************************
 *  END OF FILE: Cdd_I2cCfg.c
 ******************************************************************************/
