TrustZone 寄存器相关配置
来源:互联网 发布:天津幼儿园报名软件 编辑:程序博客网 时间:2024/05/29 07:05
在imx6的板子上做了一些试验,以前也写了一些测试代码,https://github.com/shc5840/mx6q-collage-trustzone
好像记得最后是我在uboot以前以安全的状态写了一个while循环,然后切换到非安全模式加载了uboot,启动kernel,
发现非安装状态下当时只能起一个核,多核启动就有问题了,还有就是关于gic中断这边的配置貌似也有点影响。
这里分享一下个人理解的哪些寄存器需要设置:
这里记录一下看的armv7-a的架构文档和cortex-a9的manual文档中提到关于secure和non-secure的知识点
实现安全扩展的cp15寄存器:
cp15的banked寄存器for secure and non-secure:
安全扩展实现cp15访问受限制的寄存器:
.
cpu在non-secure时要进入monitor模式可以通过interrput 、abort、smc命令
cpu在secure时进入monitor模式可以直接设置cpsr寄存器
目前理解的设置有
①设置cpu模式,强制进入monitor模式
②设置SCR寄存器,0b110000 AW-1 FW-1 EA-0 FIQ-0 IRQ-0 NS-0
③设置MVBAR
④设置NSACR,0b1110011111111111111 Bit[18]NS_SMP-1,Bit[17]TL-1,Bit[16]PLE-1, Bit[15]NSASEDIS-0,Bit[14]NSD32DIS-0, Bit[0-13] coprocessor - 1( enable 0-13协处理器能够在non-secure状态下访问,如果设置enable,就必须设置CPACR寄存器来决定访问的level), Bit19-20这里我没有设置,Bit14和 Bit15必须是相同的值
⑤设置CPACR,0x05555555,bit[31]ASEDIS-0,bit[30]D32DIS-0,cp0-13-b01
现在发现gic的配置问题,如何在non-secure状态启动kernel
https://gitorious.org/freedreno/kernel-msm/commit/26e44869e1e730ec7434e899dfd5857530b63415
http://blog.csdn.net/crosskernel/article/details/21225591
- TrustZone 寄存器相关配置
- TrustZone 寄存器相关配置
- TrustZone——相关厂商
- trustzone
- OV Camera AE相关的寄存器学习配置记录
- stm32学习笔记 F1系列GPIO相关寄存器的配置
- OV Camera AE相关的寄存器学习配置记录
- 配置寄存器
- 配置寄存器
- STM32 GPIO 相关寄存器
- STM32 GPIO 相关寄存器
- STM32 GPIO 相关寄存器
- 标志寄存器相关
- 串口相关设置寄存器
- 单片机相关寄存器
- STM32 GPIO 相关寄存器
- ARM7的相关寄存器
- GIC相关寄存器
- 淘宝动态配置diamond准备工作
- Cas Server 与Cas Client 的配置与部署
- iOS_ UIScrollview_无限循环
- Linux下FTP用户权限的更改
- Linux搭建SVN服务器
- TrustZone 寄存器相关配置
- windows 查看端口和杀掉端口上的进程
- 转帖:Windows和类Unix。谁是谁的躯壳,谁又是谁的灵魂
- 最老程序员创业开发实训4---IOS平台下MVC架构
- python如何定义不定参数函数
- IOException while loading persisted sessions: java.io.EOFException java.io.EOFException
- httpclient使用详解(爬虫)
- Invalidate和UpdateWindow,UpdateData区别联系
- MFC中隐藏菜单栏,工具栏,最大/小化按钮等