board: ns3: default reset type to L3

Default "reset" from U-Boot to L3 reset.
"reset" command with argument will trigger L1 reset.

Signed-off-by: Rajesh Ravi <rajesh.ravi@broadcom.com>
Signed-off-by: Bharat Kumar Reddy Gooty <bharat.gooty@broadcom.com>
Signed-off-by: Rayagonda Kokatanur <rayagonda.kokatanur@broadcom.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Rayagonda Kokatanur 2020-07-15 22:49:00 +05:30 committed by Tom Rini
parent ef7192e404
commit b5a152e7ca

View file

@ -10,6 +10,9 @@
#include <asm/armv8/mmu.h>
#include <asm/arch-bcmns3/bl33_info.h>
/* Default reset-level = 3 and strap-val = 0 */
#define L3_RESET 30
static struct mm_region ns3_mem_map[] = {
{
.virt = 0x0UL,
@ -68,7 +71,23 @@ int dram_init_banksize(void)
return 0;
}
void reset_cpu(ulong addr)
void reset_cpu(ulong level)
{
u32 reset_level, strap_val;
/* Default reset type is L3 reset */
if (!level) {
/*
* Encoding: U-Boot reset command expects decimal argument,
* Boot strap val: Bits[3:0]
* reset level: Bits[7:4]
*/
strap_val = L3_RESET % 10;
level = L3_RESET / 10;
reset_level = level % 10;
psci_system_reset2(reset_level, strap_val);
} else {
/* U-Boot cmd "reset" with any arg will trigger L1 reset */
psci_system_reset();
}
}