1*dafa84d2SPatrick Delaunay /* 2*dafa84d2SPatrick Delaunay * (C) Copyright 2000-2009 3*dafa84d2SPatrick Delaunay * Wolfgang Denk, DENX Software Engineering, wd@denx.de. 4*dafa84d2SPatrick Delaunay * 5*dafa84d2SPatrick Delaunay * Copy the startup prototype, previously defined in common.h 6*dafa84d2SPatrick Delaunay * Copyright (C) 2018, STMicroelectronics - All Rights Reserved 7*dafa84d2SPatrick Delaunay * 8*dafa84d2SPatrick Delaunay * SPDX-License-Identifier: GPL-2.0+ 9*dafa84d2SPatrick Delaunay */ 10*dafa84d2SPatrick Delaunay 11*dafa84d2SPatrick Delaunay #ifndef __INIT_H_ 12*dafa84d2SPatrick Delaunay #define __INIT_H_ 1 13*dafa84d2SPatrick Delaunay 14*dafa84d2SPatrick Delaunay #ifndef __ASSEMBLY__ /* put C only stuff in this section */ 15*dafa84d2SPatrick Delaunay 16*dafa84d2SPatrick Delaunay /* 17*dafa84d2SPatrick Delaunay * Function Prototypes 18*dafa84d2SPatrick Delaunay */ 19*dafa84d2SPatrick Delaunay 20*dafa84d2SPatrick Delaunay /* common/board_f.c */ 21*dafa84d2SPatrick Delaunay 22*dafa84d2SPatrick Delaunay /** 23*dafa84d2SPatrick Delaunay * arch_cpu_init() - basic cpu-dependent setup for an architecture 24*dafa84d2SPatrick Delaunay * 25*dafa84d2SPatrick Delaunay * This is called after early malloc is available. It should handle any 26*dafa84d2SPatrick Delaunay * CPU- or SoC- specific init needed to continue the init sequence. See 27*dafa84d2SPatrick Delaunay * board_f.c for where it is called. If this is not provided, a default 28*dafa84d2SPatrick Delaunay * version (which does nothing) will be used. 29*dafa84d2SPatrick Delaunay * 30*dafa84d2SPatrick Delaunay * @return: 0 on success, otherwise error 31*dafa84d2SPatrick Delaunay */ 32*dafa84d2SPatrick Delaunay int arch_cpu_init(void); 33*dafa84d2SPatrick Delaunay 34*dafa84d2SPatrick Delaunay /** 35*dafa84d2SPatrick Delaunay * mach_cpu_init() - SoC/machine dependent CPU setup 36*dafa84d2SPatrick Delaunay * 37*dafa84d2SPatrick Delaunay * This is called after arch_cpu_init(). It should handle any 38*dafa84d2SPatrick Delaunay * SoC or machine specific init needed to continue the init sequence. See 39*dafa84d2SPatrick Delaunay * board_f.c for where it is called. If this is not provided, a default 40*dafa84d2SPatrick Delaunay * version (which does nothing) will be used. 41*dafa84d2SPatrick Delaunay * 42*dafa84d2SPatrick Delaunay * @return: 0 on success, otherwise error 43*dafa84d2SPatrick Delaunay */ 44*dafa84d2SPatrick Delaunay int mach_cpu_init(void); 45*dafa84d2SPatrick Delaunay 46*dafa84d2SPatrick Delaunay /* common/board_r.c */ 47*dafa84d2SPatrick Delaunay 48*dafa84d2SPatrick Delaunay #endif /* __ASSEMBLY__ */ 49*dafa84d2SPatrick Delaunay /* Put only stuff here that the assembler can digest */ 50*dafa84d2SPatrick Delaunay 51*dafa84d2SPatrick Delaunay #endif /* __INIT_H_ */ 52