EasyManua.ls Logo

Intel EMB-H61A - Page 72

Intel EMB-H61A
91 pages
Print Icon
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
Industrial Motherboard
EMB-H61A
Appendix A Programming the Watchdog Timer A-6
************************************************************************************
VOID SIOEnterMBPnPMode(){
IOWriteByte(SIOIndex, 0x87);
IOWriteByte(SIOIndex, 0x87);
}
VOID SIOExitMBPnPMode(){
IOWriteByte(SIOIndex, 0xAA);
}
VOID SIOSelectLDN(byte LDN){
IOWriteByte(SIOIndex, 0x07); // SIO LDN Register Offset = 0x07
IOWriteByte(SIOData, LDN);
}
VOID SIOBitSet(byte LDN, byte Register, byte BitNum, byte Value){
Byte TmpValue;
SIOEnterMBPnPMode();
SIOSelectLDN(byte LDN);
IOWriteByte(SIOIndex, Register);
TmpValue = IOReadByte(SIOData);
TmpValue &= ~(1 << BitNum);
TmpValue |= (Value << BitNum);
IOWriteByte(SIOData, TmpValue);
SIOExitMBPnPMode();
}
VOID SIOByteSet(byte LDN, byte Register, byte Value){
SIOEnterMBPnPMode();
SIOSelectLDN(LDN);
IOWriteByte(SIOIndex, Register);
IOWriteByte(SIOData, Value);
SIOExitMBPnPMode();
}
************************************************************************************

Related product manuals