cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
classic037
Observer
Observer
11,672 Views
Registered: ‎03-09-2016

How to software reset or reboot? (bare metal)

hi.

I bare metal state wants in a way to reboot.

 

software reset or reboot api What is it?

 

Thank you,

0 Kudos
Reply
10 Replies
austin
Scholar
Scholar
11,667 Views
Registered: ‎02-27-2008

c,

 

If you need to reload everything, that is a restart (boot, reconfigure).

 

If you need to just restart the processor system, that is a reset (goes to the default execution start address of your program without touching anything else.

 

If you need to reconfigure the processor peripherals, that is a boot from the first stage boot loader (boot), too.

 

The safest way to restart is to restart everything.  That is usually by the PROG_b pushbutton, or automatically on power ON.

 

 

Austin Lesea
Principal Engineer
Xilinx San Jose
0 Kudos
Reply
classic037
Observer
Observer
11,657 Views
Registered: ‎03-09-2016

Austin Lesea

 

Thank you Your advice.

 

I use to Microzed. and I want Save any network information and want to reboot.

So. Not a physical button, want to re-start the SW manner.

 

Thank you,

 

 

0 Kudos
Reply
austin
Scholar
Scholar
11,635 Views
Registered: ‎02-27-2008

c,

 

Do you have some non-volatile memory where you can store the information you need?

 

Upon a self generated PROG_b everything is reloaded.

 

 

Austin Lesea
Principal Engineer
Xilinx San Jose
0 Kudos
Reply
classic037
Observer
Observer
11,621 Views
Registered: ‎03-09-2016

Moderator

 

Do you have some non-volatile memory where you can store the information you need?

- Yes.  I use Serial Flash memory.

 

Upon a self generated PROG_b everything is reloaded.

- How to work PROG_b? (SW in the way)

 

Thank you.

 

0 Kudos
Reply
austin
Scholar
Scholar
11,597 Views
Registered: ‎02-27-2008

c,

 

I see my problem.  In ug585, section 26, the reset sources are detailed.  It seems I really meant PS_POR_B is used to reset and reconfigure (clears PS, loads FSBL which includes the PL bitstream.

 

Where you can use the [PCFG_PROG_B] bit in software to trigger a re-load of the PL, I am not seeing a way from software to execute the PS_POR_B pin from a software instruction like you can for the PROG_b pin.

 

Sorry to confuse you.  I suggest you go back through section 26, and see if some combination of resets (pins or instructions) accomplishes your task.

Austin Lesea
Principal Engineer
Xilinx San Jose
0 Kudos
Reply
classic037
Observer
Observer
11,500 Views
Registered: ‎03-09-2016

dear Moderator

 

Thank you. M

 

I solved the problem thanks to your advice.

 

 

0 Kudos
Reply
mkrll
Visitor
Visitor
8,487 Views
Registered: ‎04-05-2017

I know, this is an old thread, but how did you solve the problem?

I have the same problem...

0 Kudos
Reply
bradleygamble
Newbie
Newbie
8,472 Views
Registered: ‎05-08-2017

Hi mkrll,

 

In my situation, I found the best solution to perform a software reset was to unlock the SLCR register by writing the value 0xDF0D to SLCR_UNLOCK (0XF8000008) and performing a PSS reset by writing a 0x1 to PSS_RST_CTRL (0xF8000200).

 

For further information, please refer to UG585 - Zynq 7000 All Programmable SoC Technical Reference Manual.

mkrll
Visitor
Visitor
7,844 Views
Registered: ‎04-05-2017

Thanks @bradleygamble! It works for me :)

0 Kudos
Reply
jqsam1
Participant
Participant
3,498 Views
Registered: ‎02-16-2015

Hi. Does this work when zynq booted in linux instead of bare metal? Thanks.

0 Kudos
Reply