News:

Attention: For security reasons,please choose a user name *different* from your login name.
Also make sure to choose a secure password and change it regularly.

Main Menu

FSBL for SDK 2018.3 doesn't configure the Si5338, does it?

Started by johnabel, September 05, 2019, 12:57:08 PM

Previous topic - Next topic

johnabel

If I got it right, the Si5338 is configured by si5338_init
that is called by   TE_XFsbl_TPSU_MODIFIED
Called by  TE_XFsbl_HookPsuInit_Custom
called by  TE_XFsbl_HookPsuInit
that is not called anywhere!!!

I added a call in   XFsbl_BoardInit:

   TE_XFsbl_HookPsuInit(); // JCA mod//
   Status = XFSBL_SUCCESS;
   goto END;


I also had to comment out all lines using   psu_status     in  TE_XFsbl_TPSU_MODIFIED  as they raised problems.

That seems to work

JH

Hi,
which download did you use? Can you send me the ZIP name.
When you boot with prebuilt Boot.bin, you see some outputs from FSBL ,also that he programs SI5338.


in te_xfsbl_hooks_te0803.c
SI programming is included in:
TE_XFsbl_TPSU_MODIFIED ()

this is used in TE_XFsbl_HookPsuInit_Custom() as long as USE_TE_PSU_FOR_SI_INIT is defined(it's done in  te_xfsbl_hooks_te0803.c )
--> this is the TE0803 specific fsbl part

te_xfsbl_hooks.c (general wrapper for Xilinx hooks and board c files)
TE_XFsbl_HookPsuInit use TE_XFsbl_HookPsuInit_Custom() init when ENABLE_TE_HOOKS_PSU is defined (it's done in  te_xfsbl_hooks.h)

And TE_XFsbl_HookPsuInit is used in Xilinx xfsbl_hooks.c
here I replaced Xilinx default PSU init with our modified one --> wich runs either xilinx default again or our modification.
this was necessary to write SI initialisation after I2C controller is activated  and before GTR will be initialised. Both are done  the xilinx psu init.

If GTR REF CLK is not available during GTR initialisation, it can happens that GTR works not properly. If you run xilinx psu init 2 time, it can happens that it boot stops (I didn't find out why), so I have split PSU init.

So te_xfsbl_hooks_te0803.c/h and are changes for TE0803 Starterkit only. All the  other code is resused on all ZynqMP design and the defines from te_xfsbl_hooks.h defines if default or custom changes are use (Wrapper for all functions xilinx had planned to add user code modifications for different board --> except split psu init).

So it should work on: TE0803-StarterKit-vivado_2018.3-build_05_20190507093424.zip


br

br
John





johnabel

I'm using FSBL from TE0803-StarterKit-vivado_2018.3-build_05_20190507093424.zip
I just made an image with the original (compiled) FSBL and could see the message it's configuring the Si5338...
I may have screwed up something on the way.... I'll keep an eye on that.
Thanks