BF592 baud rate setting for boot program

Hello,

I need an advice to increase the SPI baud rate at the boot process from an SPI flash.

I have made a custom board with BF592 which boots from a SPI flash connected to SPI0 (BMODE:100). BF592 is fed with a 12.288MHz clock to its CLKIN port but it takes as long as 4.8 sec to read a 37KB program from the SPI flash, so I want to increase the SPI baud rate to accelerate the boot process (speed of x8 or x16 is quite enough).

Reading the hardware reference, I understand SCK frequency of SPI is equal to SCLK divided by 133, resulting from the default SPI_BAUD register value.

On page 16-70 of hardware reference, it says "The BFLAG_FASTREAD flag controls whether standard SPI read (0x3 command) or fast read (0xB) is performed. The three lower bits of the dFlags word are translated by the boot kernel into specific values to the SPI1_BAUD registers."

But there is no mention how to change SPI0_BAUD registers and "The three lower bits" seem to refer to BFLAG_TYPE and BFLAG_HDRINDIRECT which look quite unrelated to baud rate... I think bfrom_SpiBoot() function can be used to change the baud rate for booting but I cannot find any example code how to use it. Please tell me where to look for helpful info or I will be more than happy if you could give me an example code.

Best regards,

hide310



Corrected a few typos.
[edited by: hide310 at 12:36 PM (GMT 0) on 7 Feb 2019]
Parents
  • 0
    •  Analog Employees 
    on Feb 14, 2019 10:08 AM

    Hi,

    I understand that you want to increase the booting speed. One solution to accelerate the booting process is to add initialization code which changes the processor’s settings to make it run the boot process at the maximum speed. Initcode routines are subroutines that the boot kernel calls during the booting process. The user can customize and speed up the booting mechanisms using this feature. It is used to set up system PLL, bit rates, and other system settings.

    For more details regarding this, please refer the Application Note EE-308(Estimating and Optimizing Booting Time for Blackfin® Processors) and its associated example. Though this is for ADSP-BF533, you can modify it for BF592 as well.

    www.analog.com/.../EE_308.Rev1.12.06.pdf

    Regards,
    Lalitha S

Reply
  • 0
    •  Analog Employees 
    on Feb 14, 2019 10:08 AM

    Hi,

    I understand that you want to increase the booting speed. One solution to accelerate the booting process is to add initialization code which changes the processor’s settings to make it run the boot process at the maximum speed. Initcode routines are subroutines that the boot kernel calls during the booting process. The user can customize and speed up the booting mechanisms using this feature. It is used to set up system PLL, bit rates, and other system settings.

    For more details regarding this, please refer the Application Note EE-308(Estimating and Optimizing Booting Time for Blackfin® Processors) and its associated example. Though this is for ADSP-BF533, you can modify it for BF592 as well.

    www.analog.com/.../EE_308.Rev1.12.06.pdf

    Regards,
    Lalitha S

Children