PxFBS (SATA_AHCI_PORTCNTRL) Register Description
Register Name | PxFBS |
---|---|
Offset Address | 0x0000000040 |
Absolute Address |
0x00FD0C0140 (SATA_AHCI_PORT0_CNTRL) 0x00FD0C01C0 (SATA_AHCI_PORT1_CNTRL) |
Width | 32 |
Type | mixedMixed types. See bit-field details. |
Reset Value | 0x00004000 |
Description | Port x FIS-based Switching Control |
This register is used to control and obtain status for Port Multiplier FIS-based switching.
PxFBS (SATA_AHCI_PORTCNTRL) Register Bit-Field Summary
Field Name | Bits | Type | Reset Value | Description |
---|---|---|---|---|
Reserved | 31:20 | roRead-only | 0x0 | Reserved |
DWE | 19:16 | roRead-only | 0x0 | Device With Error (DWE): Set by hardware to the value of the Port Multiplier port number of the device that experienced a fatal error condition. This field is only valid when PxFBS.SDE = 1. |
ADO | 15:12 | roRead-only | 0x4 | Active Device Optimization (ADO): This register exposes the number of active devices that the FIS-based switching implementation has been optimized for. When there are more devices active than indicated in this field, throughput of concurrent traffic may degrade. For optimal performance, software should limit the number of active devices based on this value. The minimum value for this field shall be 2h, indicating that at least two devices may be active with high performance maintained. |
DEV | 11:8 | rwNormal read/write | 0x0 | Device To Issue (DEV): Set by software to the Port Multiplier port value of the next command to issue. This field enables hardware to know the port the command is to be issued to without fetching the command header. Software shall not issue commands to multiple Port Multiplier ports on the same write of the PxCI register. |
Reserved | 7:3 | roRead-only | 0x0 | Reserved |
SDE | 2 | roRead-only | 0x0 | Single Device Error (SDE): When set to 1 and a fatal error condition has occurred, hardware believes the error is localized to one device such that softwares first error recovery step should be to utilize the PxFBS.DEC functionality. When cleared to 0 and a fatal error condition has occurred, the error applies to the entire port and to clear the error PxCMD.ST shall be cleared to 0 by software. This bit is cleared on PxFBS.DEC being set to 1 or on PxCMD.ST being cleared to 0. |
DEC | 1 | rwNormal read/write | 0x0 | Device Error Clear (DEC): When set to 1 by software, the HBA shall clear the device specific error condition and the HBA shall flush any commands outstanding for the device that experienced the error, including clearing the PxCI and PxSACT bits for that device to 0. When hardware has completed error recovery actions, hardware shall clear the bit to 0. A write of 0 to this bit by software shall have no effect. Software shall only set this bit to 1 if PxFBS.EN is set to 1 and PxFBS.SDE is set to 1. |
EN | 0 | rwNormal read/write | 0x0 | Enable (EN): When set to 1, a Port Multiplier is attached and the HBA shall use FIS-based switching to communicate with it. When cleared to 0, FIS-based switching is not being used. Software shall only change the value of the EN bit when PxCMD.ST is cleared to 0. |