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.

AM2434: How does the RBL configure the OPSI-module in OSPI-Boot-mode?

Part Number: AM2434

Hello, 

we are using the OSPI-Boot mode and our own written Ospi- and ospi norflash-driver. The Ospi-driver encapsulated the ospi-functions of the sdk-driver and uses the 1s1s1s-init as well. 
to reduce startup-times, we use the OSPI-boot-mode but we noticed the OSPI-module doesn't seem to be configured correctly for OSPI.
Our driver checks three registers, if one of them is not set correctly, it will assume the OSPI is configured to 1s-1s-1s and start an ospi-configuration afterwards. If all are set it will configure the software-driver to octal spi, without reconfiguring the ospi-module on the am243x.
Reconfiguring to ospi from 1s-1s-1s takes a long time, about ~500 ms. We need to erase this time. I guess that's because the init has a 500 ms wait inside. 
The registers we check are:

  • OSPI_FLASH_CFG_CONFIG_REG_ENABLE_DTR_PROTOCOL_FLD (check for "1")
  • OSPI_FLASH_CFG_CONFIG_REG_DUAL_BYTE_OPCODE_EN_FLD (check for "1")
  • OSPI_FLASH_CFG_DEV_SIZE_CONFIG_REG_NUM_ADDR_BYTES_FLD (must be "3" - 4 Byte address)

This works fine, when our application is booted from SBL, so it won't initialize the ospi again and continues to work.

We are still investigating what the RBL really does with the OSPI-module, but unfortunately not much is written in the TRM on how the RBL behaves here. But at least it's written that it works in 1s-1s-8s and 3-byte-addressing-mode. 

Is there a documentation on what the RBL does in case of ospi-boot-mode? So how the registers will be set of the OSPI-module?

Our next try would be to simply keep initializing everything straight forward to 8d-8d-8d, without reconfiguring anything to 1s-1s-1s. 

Best regards

Felix

  • Ok, I have an update already:
    we managed to solve it simply by not resetting to 1s-1s-1s but directly start configuring the flash after startup from 1s-1s-8s to 8d-8d-8d. it's 500 ms faster now. 

    Best regards

    Felix