如何禁用Nvidia AGX Xavier CPU缓存?

时间:2019-07-25 00:03:16

标签: nvidia inline-assembly ubuntu-18.04 arm64 cpu-cache

我想禁用Nvidia AGX Xavier的CPU缓存。

我尝试使用menuconfig来控制高速缓存,但是在此系统上似乎不起作用。然后我尝试使用ASM,但出现错误“非法指令(核心转储)”。

#include <stdio.h>
#include <string.h>
#include <linux/kernel.h>
#include <sys/syscall.h>
#include <unistd.h>

void L1_off(void){

    __asm__(
            "mrs x1, sctlr_el1;"        // read SCTLR_EL1
            "ldr x1, = 0xefff;"
            "and x11, x11, x1;"     // turn off bit 12 and store into R1 0xefff
            "msr sctlr_el1, x11;");     // restore R1 into SCTLR_EL1
                 }

 void L1_on(void){
     __asm__("mrs x11, sctlr_el1;"
             "ldr x2, = 0x1000;"
             "orr x11, x11, x2;"        // turn on bit 12 
             "msr sctlr_el1, x11;");
                 }

   int main(void){

        L1_off();
       //L1_on();   
       return 0;
                 }

错误消息:非法指令(核心已转储)

0 个答案:

没有答案