1*83d290c5STom Rini // SPDX-License-Identifier: GPL-2.0+ 268145d4cSAndreas Bießmann /* 309c2b8f3SAndreas Bießmann * Copyright (c) 2015 Andreas Bießmann <andreas@biessmann.org> 468145d4cSAndreas Bießmann * 568145d4cSAndreas Bießmann * Copyright (c) 2011 The Chromium OS Authors. 668145d4cSAndreas Bießmann * (C) Copyright 2002-2006 768145d4cSAndreas Bießmann * Wolfgang Denk, DENX Software Engineering, wd@denx.de. 868145d4cSAndreas Bießmann * 968145d4cSAndreas Bießmann * (C) Copyright 2002 1068145d4cSAndreas Bießmann * Sysgo Real-Time Solutions, GmbH <www.elinos.com> 1168145d4cSAndreas Bießmann * Marius Groeger <mgroeger@sysgo.de> 1268145d4cSAndreas Bießmann */ 1368145d4cSAndreas Bießmann #include <common.h> 1468145d4cSAndreas Bießmann 1568145d4cSAndreas Bießmann DECLARE_GLOBAL_DATA_PTR; 1668145d4cSAndreas Bießmann arch_reserve_stacks(void)1768145d4cSAndreas Bießmannint arch_reserve_stacks(void) 1868145d4cSAndreas Bießmann { 1968145d4cSAndreas Bießmann ulong *s; 2068145d4cSAndreas Bießmann 2168145d4cSAndreas Bießmann /* setup stack pointer for exceptions */ 2268145d4cSAndreas Bießmann gd->irq_sp = gd->start_addr_sp; 2368145d4cSAndreas Bießmann 2468145d4cSAndreas Bießmann /* Clear initial stack frame */ 2568145d4cSAndreas Bießmann s = (ulong *)gd->start_addr_sp; 2668145d4cSAndreas Bießmann *s = 0; /* Terminate back chain */ 2768145d4cSAndreas Bießmann *++s = 0; /* NULL return address */ 2868145d4cSAndreas Bießmann 2968145d4cSAndreas Bießmann return 0; 3068145d4cSAndreas Bießmann } 31