printf(" addr:0x%x val:0x%x \r\n", addr,val);
outb_p(val,addr);
printf(" addr:0x%x val:0x%x \r\n", addr,val);
outw_p(val,addr);
int val = inw(reg);
printf(" addr:0x%x val:0x%x \r\n", reg,val);
return val;
这样操作64位的IO端口有问题?
自己填写代码CSDN审核太多规则了,太麻烦了
static void WriteIoPortByte(int addr,int val){
printf(" addr:0x%x val:0x%x \r\n", addr,val);
outb_p(val,addr);
}
static void WriteIoPortDword(int addr,int val){
printf(" addr:0x%x val:0x%x \r\n", addr,val);
outw_p(val,addr);
}
static int ReadIoPortDword(int reg){
int val = inw(reg);
printf(" addr:0x%x val:0x%x \r\n", reg,val);
return val;
}