当前位置:网站首页>sbl_init.asm-适合在编辑模式下看
sbl_init.asm-适合在编辑模式下看
2022-08-04 05:30:00 【Btobk】
;******************************************************************************
;* *
;* Copyright 2018-2019 Texas Instruments Incorporated *
;* http://www.ti.com/ *
;* *
;* Redistribution and use in source and binary forms, with or without *
;* modification, are permitted provided that the following conditions *
;* are met: *
;* *
;* Redistributions of source code must retain the above copyright *
;* notice, this list of conditions and the following disclaimer. *
;* *
;* Redistributions in binary form must reproduce the above copyright *
;* notice, this list of conditions and the following disclaimer in *
;* the documentation and/or other materials provided with the *
;* distribution. *
;* *
;* Neither the name of Texas Instruments Incorporated nor the names *
;* of its contributors may be used to endorse or promote products *
;* derived from this software without specific prior written *
;* permission. *
;* *
;* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS *
;* “AS IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT *
;* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR *
;* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT *
;* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, *
;* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT *
;* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, *
;* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY *
;* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT *
;* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE *
;* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. *
;* *
;******************************************************************************
;****************************************************************************
; Setup Reset Vectors
;****************************************************************************
下面的代码为arm模式
.arm
下面的代码属于ResetVectors段
.sect “.rstvectors”
.global _sblResetVectors
sbl程序入口,临时异象向量表
_sblResetVectors:
reset跳转到sblEntry
LDR pc, sblEntry ; Reset
临时异象向量表
B _sblLoopForever ; Undefined Instruction
B _sblLoopForever ; SVC call
B _sblLoopForever ; Prefetch abort
B _sblLoopForever ; Data abort
B _sblLoopForever ; Hypervisor
B _sblLoopForever ; IRQ
B _sblLoopForever ; FIQ
sblEntry表
sblEntry .long _sblEntry
;****************************************************************************
; SBL Entry
;****************************************************************************
.def _sblEntry
.ref _c_int00
.ref SBL_init_profile
.ref _sblTcmEn
_c_int00_addr .long _c_int00
SBL_init_profile_addr .long SBL_init_profile
_sblTcmEnAddr .long _sblTcmEn
_sblEntry:
读取cupid,不为ti的就跳到_sblLoopForever进入死循环
MRC p15, #0, r1, c0, c0, #5
BFC r1, #8, #24
CMP r1, #0
BNE _sblLoopForever
设置临时对战地址_sblTestStackBase-#0xf
ADR r1, _sblTestStackBase
BIC r1, r1, #0xf
MOV sp, r1
获取sbl启动的时间点信息,看sbl快不快
LDR r1, SBL_init_profile_addr
BLX r1
开开当前核的atcm和btcm,告诉内存让他们可以被使用
LDR r1, _sblTcmEnAddr
BLX r1
LDR r1, _c_int00_addr
BLX r1
开始进行fpu,各模式stack初始化
_sblLoopForever:
WFI
B _sblLoopForever
_sblTestStackTop:
.space 64
_sblTestStackBase:
边栏推荐
猜你喜欢
【论文阅读】TransReID: Transformer-based Object Re-Identification
图像形变(插值方法)
【论文阅读】SPANET: SPATIAL PYRAMID ATTENTION NETWORK FOR ENHANCED IMAGE RECOGNITION
Thoroughly understand box plot analysis
动手学深度学习_多层感知机
PCL1.12 解决memory.h中EIGEN处中断问题
【论文阅读】Multi-View Spectral Clustering with Optimal Neighborhood Laplacian Matrix
MAE 论文《Masked Autoencoders Are Scalable Vision Learners》
MOOSE平台使用入门攻略——如何运行官方教程的例子
双向LSTM
随机推荐
Data reading in yolov3 (1)
JPEG2jpg
度量学习(Metric learning、损失函数、triplet、三元组损失、fastreid)
如何用Pygame制作简单的贪吃蛇游戏
(导航页)OpenStack-M版-双节点手工搭建-附B站视频
审稿意见回复
TensorFlow2 study notes: 8. tf.keras implements linear regression, Income dataset: years of education and income dataset
Introduction to Convolutional Neural Networks
TensorFlow2 study notes: 5. Common activation functions
yolov3 data reading (2)
【CV-Learning】线性分类器(SVM基础)
腾讯、网易纷纷出手,火到出圈的元宇宙到底是个啥?
MNIST Handwritten Digit Recognition - From Perceptrons to Convolutional Neural Networks
Linear Regression 02---Boston Housing Price Prediction
YOLOV4流程图(方便理解)
DeblurGAN-v2: Deblurring (Orders-of-Magnitude) Faster and Better 图像去模糊
MNIST手写数字识别 —— 从感知机到卷积神经网络
[CV-Learning] Linear Classifier (SVM Basics)
MNIST Handwritten Digit Recognition - Lenet-5's First Commercial Grade Convolutional Neural Network
ConnectionRefusedError: [Errno 111] Connection refused问题解决