Specifications
©
2008 Advanced Micro Devices Inc.
Sample Programs
AMD SB600 BIOS Developer’s Guide (Public Version) Proprietary
Page 69
mov eax,8000A108h ; To write to PCI register 08h on IDE controller
mov dx,0CF8h ; PCI index register
out dx,eax ; Set index for registers 08h – 0Bh
mov dx,0CFDh ; To read register 09h
in al,dx ; Read register 09h
and al,0FBh ; Clear bit 1 to enable primary channel program
out dx,al ; Write back to register
pop dx
pop bx
pop eax
; End of primary channel enable
14.4 USB Controller Reset at Hard Reset
This USB controller reset sequence is not required for SB600
14.5 Clock Throttling
The SB600 has a register for setting clock duty cycle (throttling). The CLKVALUE register is
located in the ACPI region. Bit 4 of this register, when set to 1, enables clock throttling, while
bits [3:1] select the duty cycle from 12.5% to 87.5%, in seven steps of 12.5% each.
The address of ACPI CLKVALUE register is at PM IO location (Index/Data through
0CD6h/0CD7h) index 26h and 27h.
CLKVALUE register
Bit 4 Bits[3:1] Duty Cycle
0 x x x 100%
1 0 0 0 Invalid
1 0 0 1 12.5%
1 0 1 0 25%
1 0 1 1 37.5%
1 1 0 0 50%
1 1 0 1 62.5%
1 1 1 0 75%
1 1 1 1 87.5%
Sample program: Clock throttling
ClockThrottleExample proc near
push ax ; Save registers used by this routine
push dx










