This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

RTOS/TMS320C6678: I2C Busy Bit

Part Number: TMS320C6678

Tool/software: TI-RTOS

Dear,

I have two I2C devices connected to C6678, Observed that I2C busy bit is set before starting the transaction itself.

Observed that after removing I2C from out of reset, busy bit is set.

We are configuring the I2C controller in the  following way,

/* Set I2C in reset */
I2CR->ICMDR &= (~CSL_I2C_ICMDR_IRS_MASK);
RCI_delaycycles(100);

/* Set Own Address */
I2CR->ICOAR = I2C_OWN_ADDR;

/*
* Set Default I2C High and Low Clock Hold
*/
I2CR->ICPSC = I2C_PRESCALER;
I2CR->ICCLKL = I2C_CLK_LOW;
I2CR->ICCLKH = I2C_CLK_HIGH;

/*
* Enable the Xmt, Master Mode
*/
I2CR->ICMDR = ( CSL_I2C_ICMDR_MST_MASK |
CSL_I2C_ICMDR_TRX_MASK |
CSL_I2C_ICMDR_FREE_MASK );

/*
* Take I2C Out of Reset
*/
I2CR->ICMDR |= CSL_I2C_ICMDR_IRS_MASK;
RCI_delaycycles(100);

Could you please share me the reasons for the busy bit to be set.

NOTE: We removed both devices from the I2C chain, 

Thanks you,

Mounika