Part Number: TMS570LS3137
Hello,
I need the NOR flash driver for connecting EMIF Parallel interface S29GL256S10DHV020 (32MB) NOR Flash to TMS570LS3137 connected to the chip select S_EMIF_nCS2 .
https://img.ozdisan.com/ETicaret_Dosya/499553_8547283.pdf
From the data sheet how do we derive values for the following
/** @fn void emif_ASYNC1Init(void)
* @brief Initializes the emif Driver for ASYNC memories
*
* This function initializes the emif driver for Asynchronous memories like Nor and Nand Flashes,Asynchronous RAM.
*/
/* SourceId : EMIF_SourceId_002 */
/* DesignId : EMIF_DesignId_002 */
/* Requirements: HL_SR335 */
void emif_ASYNC1Init(void)
{
/* USER CODE BEGIN (4) */
/* USER CODE END */
emifREG->CE2CFG = 0x00000000U;
emifREG->CE2CFG = (uint32)((uint32)0U << 31U)|
(uint32)((uint32)1U << 30U)|
(uint32)((uint32)15U << 26U)|
(uint32)((uint32)63U << 20U)|
(uint32)((uint32)7U << 17U)|
(uint32)((uint32)15U << 13U)|
(uint32)((uint32)63U << 7U)|
(uint32)((uint32)7U << 4U)|
(uint32)((uint32)0U << 2U)|
(uint32)((uint32)emif_8_bit_port);
emifREG->AWCC = (emifREG->AWCC & 0xC0FF0000U)|
(uint32)((uint32)emif_pin_high << 29U)|
(uint32)((uint32)emif_pin_low << 28U)|
(uint32)((uint32)emif_wait_pin0 << 16U)|
(uint32)((uint32)0U);
emifREG->PMCR = (emifREG->PMCR & 0xFFFFFF00U)|
(uint32)((uint32)0U << 2U)|
(uint32)((uint32)emif_4_words << 1U)|
(uint32)((uint32)0U);
/* USER CODE BEGIN (5) */
/* USER CODE END */
}
/** @fn void emif_ASYNC2Init(void)
* @brief Initializes the emif Driver for ASYNC memories
*
* This function initializes the emif driver for Asynchronous memories like Nor and Nand Flashes,Asynchronous RAM.
*/
/* SourceId : EMIF_SourceId_003 */
/* DesignId : EMIF_DesignId_002 */
/* Requirements: HL_SR335 */
void emif_ASYNC2Init(void)
{
/* USER CODE BEGIN (6) */
/* USER CODE END */
emifREG->CE3CFG = 0x00000000U;
emifREG->CE3CFG = (uint32)((uint32)0U << 31U)|
(uint32)((uint32)1U << 30U)|
(uint32)((uint32)15U << 26U)|
(uint32)((uint32)63U << 20U)|
(uint32)((uint32)7U << 17U)|
(uint32)((uint32)15U << 13U)|
(uint32)((uint32)63U << 7U)|
(uint32)((uint32)7U << 4U)|
(uint32)((uint32)0U << 2U)|
(uint32)((uint32)emif_8_bit_port);
emifREG->AWCC = (emifREG->AWCC & 0xC0FF0000U)|
(uint32)((uint32)emif_pin_high << 29U)|
(uint32)((uint32)emif_pin_low << 28U)|
(uint32)((uint32)emif_wait_pin0 << 18U)|
(uint32)((uint32)0U);
emifREG->PMCR = (emifREG->PMCR & 0xFFFF00FFU)|
(uint32)((uint32)0U << 10U)|
(uint32)((uint32)emif_4_words << 9U)|
(uint32)((uint32)1U << 8U);
/* USER CODE BEGIN (7) */
/* USER CODE END */
}
/** @fn void emif_ASYNC3Init(void)
* @brief Initializes the emif Driver for ASYNC memories
*
* This function initializes the emif driver for Asynchronous memories like Nor and Nand Flashes,Asynchronous RAM.
*/
/* SourceId : EMIF_SourceId_004 */
/* DesignId : EMIF_DesignId_002 */
/* Requirements: HL_SR335 */
void emif_ASYNC3Init(void)
{
/* USER CODE BEGIN (8) */
/* USER CODE END */
emifREG->CE4CFG = 0x00000000U;
emifREG->CE4CFG = (uint32)((uint32)0U << 31U)|
(uint32)((uint32)0U << 30U)|
(uint32)((uint32)15U << 26U)|
(uint32)((uint32)63U << 20U)|
(uint32)((uint32)7U << 17U)|
(uint32)((uint32)15U << 13U)|
(uint32)((uint32)63U << 7U)|
(uint32)((uint32)7U << 4U)|
(uint32)((uint32)0U << 2U)|
(uint32)((uint32)emif_8_bit_port);
emifREG->AWCC = (emifREG->AWCC & 0xC0FF0000U)|
(uint32)((uint32)emif_pin_high << 29U)|
(uint32)((uint32)emif_pin_low << 28U)|
(uint32)((uint32)emif_wait_pin0 << 20U)|
(uint32)((uint32)0U);
emifREG->PMCR = (emifREG->PMCR & 0xFF00FFFFU) |
(uint32)((uint32)0U << 18U)|
(uint32)((uint32)emif_4_words << 17U)|
(uint32)((uint32)0U << 16U);
/* USER CODE BEGIN (9) */
/* USER CODE END */
}
/* USER CODE BEGIN (10) */
/* USER CODE END */
Thanks,

