Default "reset" from U-Boot to L3 reset. "reset" command with argument will trigger L1 reset.
Signed-off-by: Rajesh Ravi <rajesh.r...@broadcom.com> Signed-off-by: Bharat Kumar Reddy Gooty <bharat.go...@broadcom.com> Signed-off-by: Rayagonda Kokatanur <rayagonda.kokata...@broadcom.com> --- Changes from v3: -Address review comments from Simon, Update commit message ie change u-boot to U-Boot board/broadcom/bcmns3/ns3.c | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/board/broadcom/bcmns3/ns3.c b/board/broadcom/bcmns3/ns3.c index 5e644bd466..1221f26ddc 100644 --- a/board/broadcom/bcmns3/ns3.c +++ b/board/broadcom/bcmns3/ns3.c @@ -68,7 +68,23 @@ int dram_init_banksize(void) return 0; } -void reset_cpu(ulong addr) +void reset_cpu(ulong level) { - psci_system_reset(); +#define L3_RESET 30 + u32 reset_level, strap_val; + + /* Default reset type is L3 reset */ + if (!level) { + /* + * Encoding: u-boot reset command expects decimal argument + * strap val = 1st decimal digit;reset level = 2nd decimal digit + */ + 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(); + } } -- 2.17.1