Theory of Operation
R
SATA Programmer’s Reference Manual
43
A.5
ACPI Control Method (GSPS)
//
// Define where the SATA MAP and Status/Control registers reside in PCI Config
// space
//
OperationRegion(IDEC,PCI_Config,0x90,3)
Field(IDEC,ByteAcc,NoLock,Preserve)
{
MAP, 8, // SATA Map register - Offset 90h
, 8, // skip 8 bits
PCS, 8 // SATA Port status and control register - Offset 92h
}
Device( IDE1) {
// SATA controller
Name(_ADR, 0x01f0002) // Device 31, Function 2
Device( PRID) { // Primary channel
Name( _ADR, 0) // Logical primary channel (Port 0 or 1, BIOS selectable).
// Assumes BIOS populated the SATA timing registers appropriately
// depending on which port is configured as primary and secondary
//
// This control method determines if device(s) are present on the logical
// primary channel. Because this control method is shared with P-ATA
// devices and because P-ATA does not
// have equivalent registers, this control will indicate a status of
// unknown (P-ATA only)
//
// Entry:
// Nothing
// Exit:
// DWORD value representing the channel status:
// 0 ==> no devices present
// 1 ==> master device present
// 2 ==> slave device present
// -1 ==> Not supported or unknown (P-ATA)
//
Method( GSPS, 0) // Get the port status for the device(s)
{
// need to figure out which port(s) to look at (e.g. are we in a
// master-master configuration or master-slave)
//
Store( Zero, Local0)
Summary of Contents for 82801EB
Page 6: ...R 6 SATA Programmer s Reference Manual This page is intentionally left blank...
Page 8: ...Introduction R 8 SATA Programmer s Reference Manual This page is intentionally left blank...
Page 10: ...Conventions R 10 SATA Programmer s Reference Manual This page is intentionally left blank...
Page 59: ...Theory of Operation R SATA Programmer s Reference Manual 59...