当前位置:网站首页>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:
边栏推荐
- yoloV5 使用——训练速度慢,加速训练
- 基于BiGRU和GAN的数据生成方法
- DeblurGAN-v2: Deblurring (Orders-of-Magnitude) Faster and Better 图像去模糊
- 学习资料re-id
- TensorFlow2 study notes: 5. Common activation functions
- 计算某像素点法线
- postgres recursive query
- 【CV-Learning】Convolutional Neural Network
- yolov3 data reading (2)
- Jupyter Notebook installed library;ModuleNotFoundError: No module named 'plotly' solution.
猜你喜欢
【论文阅读】Exploring Spatial Significance via Hybrid Pyramidal Graph Network for Vehicle Re-identificatio
Halcon缺陷检测
Usage of RecyclerView
TensorRT 5 初步认识
深度学习,“粮草”先行--浅谈数据集获取之道
【论文阅读】SPANET: SPATIAL PYRAMID ATTENTION NETWORK FOR ENHANCED IMAGE RECOGNITION
Deep Adversarial Decomposition: A Unified Framework for Separating Superimposed Images
tensorRT教程——tensor RT OP理解(实现自定义层,搭建网络)
剪映专业版字幕导出随笔
MNIST手写数字识别 —— ResNet-经典卷积神经网络
随机推荐
Jupyter Notebook installed library;ModuleNotFoundError: No module named 'plotly' solution.
MNIST Handwritten Digit Recognition - Lenet-5's First Commercial Grade Convolutional Neural Network
MNIST Handwritten Digit Recognition - From Perceptrons to Convolutional Neural Networks
AWS uses EC2 to reduce the training cost of DeepRacer: DeepRacer-for-cloud practical operation
No matching function for call to 'RCTBridgeModuleNameForClass'
MNIST手写数字识别 —— Lenet-5首个商用级别卷积神经网络
AWS使用EC2降低DeepRacer的训练成本:DeepRacer-for-cloud的实践操作
[Deep Learning 21 Days Learning Challenge] 2. Complex sample classification and recognition - convolutional neural network (CNN) clothing image classification
Thunderbolt turns off automatic updates
Brief description of database and common operation guide
fill_between in Matplotlib; np.argsort() function
No matching function for call to ‘RCTBridgeModuleNameForClass‘
PP-LiteSeg
Copy Siege Lions "sticky" to AI couplets
光条中心提取方法总结(二)
Deep Adversarial Decomposition: A Unified Framework for Separating Superimposed Images
(Navigation page) OpenStack-M version - manual construction of two nodes - with video from station B
MOOSE平台使用入门攻略——如何运行官方教程的例子
基于PyTorch的FCN-8s语义分割模型搭建
Introduction to Convolutional Neural Networks