89
Appendix B
B
APPENDIX B : GPIO and WDT Functions
B.1 Function Description
The WDT are using internal Super IO function. However, you must entry super
I/O configuration mode to set it.
Super I/O special address port = 0x2E
Super I/O special data port = 0x2F
GPIO Logical device is 0x07
B.2 Entry Functions
WDT_TimeOut_MSB,SPECIAL WDT_TimeOut_LSB,SPECIAL
1. Entry MB PnP Mode.
//write twice 0x87 value.
outportb(Super I/O special address port, 0x87);
outportb(Super I/O special address port, 0x01);
outportb(Super I/O special address port, 0x55);
outportb(Super I/O special address port, 0x55);
2. Located on Logical Device 7(LOGIC_DEVICE_WDT)
//write 0x07 on Reg [0x07] , this setup must follow Step A. that can be workable.
outportb(Super I/O special address port, 0x07);
outportb(Super I/O special data port, 0x07);
3. Config the WDT Register
outb(WDT_Config,SPECIAL_ADDRESS_PORT);
outb(WDT_As_Second|WDT_Pin_PWRGD,SPECIAL_DATA_PORT);
4. Start WDT TimeOut Value
Here have 2 Byte for WDT timing count, MSB and LSB should be write the
value separate.
outb(WDT_TimeOut_LSB,SPECIAL_ADDRESS_PORT);
outb(WDT_TimeOutValue,SPECIAL_DATA_PORT);