在U-boot的start.S文件中,调用了一个初始化函数(关于时钟的),它是用C语言写的,而且比较复杂。Start.S的代码需要是位置无关的,但是这是时钟初始化函数怎么保证也是位置无关的???
目前,这个函数内部还有三层函数调用。当上电后,感觉运行到这个函数就回不来了(串口没有打印)。当我把这个时钟初始化函数内部的函数调用注释掉而没有内部的函数调用,则可以继续往下走。
各位有没有遇到类似的问题,请帮忙给点意见,非常感谢
------解决方案--------------------
------解决方案--------------------
这个问题的关键在于你这个函数调用时,是否需要使用到堆栈,如果不需要,那么没什么关系。
如果需要应该考虑在堆栈建立后再调用这个函数。