AMD SB600 Specifications Page 66

  • Download
  • Add to my manuals
  • Print
  • Page
    / 98
  • Table of contents
  • BOOKMARKS
  • Rated. / 5. Based on customer reviews
Page view 65
©
2008 Advanced Micro Devices Inc.
Sample Programs
AMD SB600 BIOS Developer’s Guide (Public Version) Proprietary
Page 66
Sample Program
The sample program below sets the primary slave to UDMA mode 5:
push eax
push dx
; For primary slave, set register 56h, bits [6:4] to 5 for UDMA mode 5
mov dx,0CF8h ; To access PCI configuration space of IDE controller
mov eax,8000A154h ; Device 14h, function 1, register space 54h – 57h
out dx,eax ;
mov dx,0CFEh ; To access register 56h
in al,dx ; Current value of register 56h
and al,8Fh ; Clear bits 6:4.
or al,50h ; Set UDMA 5 mode for primary slave.
out dx,al
; Enable primary slave UDMA mode in register 54h, bit 1,
mov dx,CFCh ; To access register 54h
in al,dx ; Current value of register 54h
or al,02h ; Set bit 1
out dx,al
pop dx
pop eax
ret
14.3.4 IDE Channel Disable
To disable an IDE channel, the BIOS must:
1. Set IDE channel programmable logic enable bit in Reg09h.
2. Set IDE channel disable bit in Reg48h to disable IDE channel.
Note: No IDE I/O port access is allowed between step (1) and step (2). It is recommended that the
BIOS execute step (2) immediately after step (1). There should be no ‘in’ instruction between two
‘out’ instructions to register 09h and 48h.
After the IDE disable sequence, the IDE channel programmable logic enable bit will be cleared
automatically.
Sample program: Disable secondary channel
; Read current register 48h-49h on IDE controller
push eax
push bx
Page view 65
1 2 ... 61 62 63 64 65 66 67 68 69 70 71 ... 97 98

Comments to this Manuals

No comments