随笔分类 - arm
摘要:DMB/DSB/ISB instructions DMB 数据存储器隔离。DMB 指令保证: 仅当所有在它前面的存储器访问操作都执行完毕后,才提交(commit)在它后面的存储器访问操作。 DSB数据同步隔离。比 DMB 严格: 仅当所有在它前面的存储器访问操作都执行完毕后,才执行在它后面的指令(亦
阅读全文
摘要:ARM GIC V3 gic_raise_softirq MPIDR_LEVEL_SHIFT(level) MPIDR_LEVEL_SHIFT(0) = (((1 << 0) >> 1) << 3) = 0 MPIDR_LEVEL_SHIFT(1) = (((1 << 1) >> 1) << 3)
阅读全文
摘要:struct arch_hw_breakpoint结构体 watchpoint or breakpoint(type)、watchpoint监测的数据长度、监测的地址,这些信息都保存在arch_hw_breakpoint结构体里 struct arch_hw_breakpoint { u64 add
阅读全文
摘要:arm-linux-gnueabihf、aarch64-linux-gnu等ARM交叉编译GCC的区别 link: https://blog.csdn.net/Namcodream521/article/details/88379307
阅读全文
摘要:ARM C函数调用堆栈入栈顺序 堆栈指针是在函数一开头就确认了的,比如如下的xxx_func.cfi函数,它在函数的开头就将sp自减了0x170,这个0x170是xxx_fun.cfi函数局部变量total size + 需要入栈的reg total size 然后会设置x29(fp,栈底指针),这
阅读全文
摘要:ARM64 hw watchpoint、breakpoint注册与注销 write_wb_reg()里的switch macro展开 4.19\arch\arm64\kernel\Hw_breakpoint.c static void write_wb_reg(int reg, int n, u64
阅读全文
摘要:ARM registers arm register alias 4.19\arch\arm64\kernel\Asm-offsets.c DEFINE(S_X0, offsetof(struct pt_regs, regs[0])); DEFINE(S_X1, offsetof(struct pt
阅读全文
摘要:arm archtecture ARMv8 架构与指令集.学习笔记 https://www.cnblogs.com/lvdongjie/p/6644821.html arm registers https://developer.arm.com/documentation/ddi0500/e/deb
阅读全文
摘要:kernel exception vector table kernel里异常vector table define在如下位置,(1)/(2)/(3)/(4)部分分别对应上面table中的第1、2、3、4行。 一个vector占128字节,在该vector里,会有branch指令跳转到对应的exce
阅读全文
摘要:ARM instruction misc daifset/daifclr msr daifset, #0xf //对DAIF寄存器的值的bit0-3位置1 msr daifset, #2 //对DAIF的bit1置1,即对DAIF的I bit置1(disable irq) DAIF bit,F bi
阅读全文
摘要:from: https://www.cnblogs.com/smartjourneys/p/6845180.html 1. 前言 2. 指令运行与异常处理寄存器 ARM体系结构的寄存器分为两类: (1)系统控制和状态报告寄存器 (2)指令处理寄存器,如累加、异常处理 本部分将主要介绍如上第(2)部分
阅读全文