📄 dm8606.h
字号:
u16 dm8606_read(board_info_t *, int);void dm8606_write(board_info_t *, int, u16);u16 dm8606_read(board_info_t *db, int offset){ int bval, i=0; bval = ( offset >> 5 ) | 0x80; iow(db, 0x33, bval); bval = offset; iow(db, 0x0c, bval); iow(db, 0xb, 0x8); /* Clear phyxcer read command */ iow(db, 0xb, 0xc); /* Issue phyxcer read command */ iow(db, 0xb, 0x8); /* Clear phyxcer read command */ do { if ((!(ior(db,0xb) & 0x1)) || i>1000) break; i++; }while(1); iow(db, 0x33, 0); /* The read data keeps on REG_0D & REG_0E */ return ( ior(db, DM9KS_EPDRH) << 8 ) | ior(db, DM9KS_EPDRL); }void dm8606_write(board_info_t *db, int offset, u16 value){ int bval,i=0; bval = ( offset >> 5 ) | 0x80; iow(db, 0x33, bval); bval = offset; iow(db, 0x0c, bval); /* Fill the written data into REG_0D & REG_0E */ iow(db, 0xd, (value & 0xff)); iow(db, 0xe, ( (value >> 8) & 0xff)); iow(db, 0xb, 0x8); /* Clear phyxcer write command */ iow(db, 0xb, 0xa); /* Issue phyxcer write command */ iow(db, 0xb, 0x8); /* Clear phyxcer write command */ do { if ((!(ior(db,0xb) & 0x1)) || i >1000) break; i++; }while(1); iow(db, 0x33, 0);}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -