在 ARMv8 TRM 中: 对任何类型的设备内存的未对齐访问都会导致对齐错误。
什么是设备内存。 我们可以将端点卡上的 PCIe BAR 内存称为设备内存吗?
那么当EP条映射到主机内存时,我们是否可以将这组内存称为设备内存?
最佳答案
某个内存区域是否被定义为设备内存取决于几个因素。首先,您需要至少将 MAIR_ELx 寄存器中的一个字段定义为设备内存(请参阅 ARM ARM 了解具体配置)。其次,在您的转换表中,映射为设备内存的区域应指向其较低属性( AttrIdx[4:2] 位)中的特定 MAIR_ELx 索引。
关于linux - ARMv8 中设备内存的定义是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42152519/