FlexSPI port B1 configuration

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

FlexSPI port B1 configuration

1,786 Views
l_volkmann
Contributor III

Hello,

our device consist of iMX 1050 RT connected SPI NOR Flash via FlexSPI port A1 and connected via FlexSPI port B1.
Data strobe is configured as internal loopback for both.
If I try to execute FlexSPI commands on port B1, I see no signal activity on port B1 but on port A1.
The FlexSPI init sequence is as follows:

flexspi_device_config_t deviceconfigNor = {
    .flexspiRootClk = 120000000,
    .flashSize = NOR_FLASH_SIZE,
    .CSIntervalUnit = kFLEXSPI_CsIntervalUnit1SckCycle,
    .CSInterval = 2,
    .CSHoldTime = 3,
    .CSSetupTime = 3,
    .dataValidTime = 0,
    .columnspace = 0,
    .enableWordAddress = 0,
    .AWRSeqIndex = 0,
    .AWRSeqNumber = 0,
    .ARDSeqIndex = NOR_CMD_LUT_SEQ_IDX_READ_FAST_QUAD,
    .ARDSeqNumber = 1,
    .AHBWriteWaitUnit = kFLEXSPI_AhbWriteWaitUnit2AhbCycle,
    .AHBWriteWaitInterval = 0,
};


flexspi_device_config_t deviceconfigNand = {
    .flexspiRootClk = 120000000,
    .flashSize = NAND_FLASH_SIZE,
    .CSIntervalUnit = kFLEXSPI_CsIntervalUnit1SckCycle,
    .CSInterval = 2,
    .CSHoldTime = 3,
    .CSSetupTime = 3,
    .dataValidTime = 0,
    .columnspace = 0,
    .enableWordAddress = 0,
    .AWRSeqIndex = 0,
    .AWRSeqNumber = 0,
    .ARDSeqIndex = 0,
    .ARDSeqNumber = 0,
    .AHBWriteWaitUnit = kFLEXSPI_AhbWriteWaitUnit2AhbCycle,
    .AHBWriteWaitInterval = 0,
};


    flexspi_config_t config;
    FLEXSPI_GetDefaultConfig(&config);

    FLEXSPI_Init(EXAMPLE_FLEXSPI, &config);

    FLEXSPI_SetFlashConfig(EXAMPLE_FLEXSPI, &deviceconfigNor, kFLEXSPI_PortA1);
    FLEXSPI_SetFlashConfig(EXAMPLE_FLEXSPI, &deviceconfigNand, kFLEXSPI_PortB1);

What shall I do to get port B1 working ?

Thanks in advance.
Lutz

Labels (1)
0 Kudos
7 Replies

1,621 Views
kerryzhou
NXP TechSupport
NXP TechSupport

HiLutz Volkmann

  Do you download the code the RAM,

   Before you do the FlexSPI port B1 operation, do you have configure the related pins as the flexSPI function?

  Please check the pin_mux.c.

Any updated information, please kindly let me know.

Have a great day,
Kerry

 

-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!

 

- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------

0 Kudos

1,621 Views
l_volkmann
Contributor III

Hi Kerry,

now it works my mistake was that I took the wrong device address.

Best Regards

Lutz

0 Kudos

1,621 Views
dylan_yu
Contributor I

Hi,Lutz

   which device address have you modified? I think I have the same problem , but I don't know where to modify. Could you show me?

Best Regards

Dylan

0 Kudos

1,621 Views
kerryzhou
NXP TechSupport
NXP TechSupport

Hi Dylan Yu,

  If you have any question, you can create your own question post, then we will help you in your post directly.

Wish it helps you!

Kerry

 

-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!

 

- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------

0 Kudos

1,621 Views
kerryzhou
NXP TechSupport
NXP TechSupport

Hi Lutz Volkmann,

  Thanks let me know that it works and the root problem on your side.

   If you still have questions about it, please kindly let me know.

   If your question is solved, please help me to mark the correct answer, just to close this question, thank you!

Have a great day,
Kerry

 

-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!

 

- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------

0 Kudos

1,621 Views
l_volkmann
Contributor III

Hi Kerry,
to do some trials on our custom board I use the flexspi_nor_polling transfer example.
The code is executed from RAM and port B pins are configured as you can see below.
I'm now wondering if in the flexspi driver code function FLEXSPI_TransferBlocking the IPAREN bit should be set ?


    /* Configure sequence ID. */
    configValue |= FLEXSPI_IPCR1_ISEQID(xfer->seqIndex) | FLEXSPI_IPCR1_ISEQNUM(xfer->SeqNumber - 1);
    base->IPCR1 = configValue;

Regards
Lutz

Screenshot from 2020-01-15 10-55-39.png

0 Kudos

1,621 Views
l_volkmann
Contributor III

Hi,

I also added :
    FLEXSPI_EnableIPParallelMode(EXAMPLE_FLEXSPI,true);
    FLEXSPI_EnableAHBParallelMode(EXAMPLE_FLEXSPI,true);
but nothing changes.
No one any idea ?

Lutz

0 Kudos