【发布时间】:2011-07-06 06:25:59
【问题描述】:
我正在使用运行 Linux 内核的 ARM Cortex A-8 设备进行一些实验。
我可以毫无问题地访问和读取二级缓存锁定寄存器的值:
asm volatile ("mrc p15, 1, %0, c9, c0, 0" : "=r" (i));
当我尝试将值写回时,设备立即崩溃:
asm volatile ("mcr p15, 1, %0, c9, c0, 0" : : "r" (i));
代码作为内核模块运行,因此没有权限问题。
我想知道在写入该寄存器值之前我是否遗漏了什么特别的东西?
【问题讨论】:
标签: linux-kernel arm android-ndk cortex-a8 lockdown