读取arm mpu的MIDR寄存器

 使用如下命令可以读取arm cpu的midr寄存器:

MRC p15, 0, , c0, c0, 0; Read MIDR into Rt

在c语言中可以使用如下语句把midr寄存器的值读取到变量i中:

asm ("mrc p15, 0, %0, c0, c0, 0" : "=r" (i));

然后返回i即可,根据该寄存器的值可以识别mpu的版本。

 

midr寄存器的定义如下:

 

读取arm mpu的MIDR寄存器_第1张图片

 

For an ARMv7 implementation by ARM, the MIDR is interpreted as:
Bits[31:24]  Implementer code, must be 0x41.
Bits[23:20]  Major revision number, rX.
Bits[19:16]  Architecture code, must be 0xF .
Bits[15:4]  ARM part number.
Bits[3:0]  Minor revision number, pY

arm核的版本为rXpY。

 

 

你可能感兴趣的:(嵌入式驱动开发,uboot,linux基础)