DRV_ETHPHY_NegotiationResultGet Function
C
C
DRV_ETHPHY_RESULT DRV_ETHPHY_NegotiationResultGet(DRV_HANDLE handle, DRV_ETHPHY_INTERFACE_INDEX portIndex, DRV_ETHPHY_NEGOTIATION_RESULT* pNegResult);
Returns
DRV_ETHPHY_RES_PENDING operation is ongoing
an DRV_ETHPHY_RESULT error code if the procedure failed.
Description
This function returns the PHY negotiation data gathered after a completed negotiation.
Remarks
Use DRV_ETHPHY_ClientStatus() and DRV_ETHPHY_ClientOperationResult() to check when the operation was completed and its outcome. When operation is completed but negotiation has failed, DRV_ETHPHY_ClientOperationResult will return:
DRV_ETHPHY_RES_NEGOTIATION_INACTIVE if no negotiation in progress
DRV_ETHPHY_RES_NEGOTIATION_NOT_STARTED if negotiation not yet started yet (means time out if waitComplete was requested)
DRV_ETHPHY_RES_NEGOTIATION_ACTIVE if negotiation ongoing The returned value for the negotiation flags is valid only if the negotiation was completed successfully.
Preconditions
The DRV_ETHPHY_Initialize routine must have been called.
DRV_ETHPHY_Open must have been called to obtain a valid device handle.
DR_ETHPHY_Setup must have been called to properly configure the PHY
DRV_ETHPHY_RestartNegotiation, and DRV_ETHPHY_NegotiationIsComplete should have been called.