Ethernet Interface (EthIf)
Abstracts Ethernet controller and transceiver hardware for upper protocol layers.
Funktionen — Übersicht
void EthIf_Init (const EthIf_ConfigType* CfgPtr);Initializes the Ethernet InterfaceStd_ReturnType EthIf_SetControllerMode (uint8 CtrlIdx, Eth_ModeType CtrlMode);Enables / disables the indexed controller thernet InterfaceStd_ReturnType EthIf_GetControllerMode (uint8 CtrlIdx, Eth_ModeType* CtrlModePtr);Obtains the state of the ind exed controllerStd_ReturnType EthIf_SetTransceiverWakeupMode (uint8 TrcvIdx, EthTrcv_WakeupModeType TrcvWakeupMode);Enables / disables the wake up mode or clear the wake - up reason of the indexed transceiver Tags: atp.Std_ReturnType EthIf_GetTransceiver EthIf_GetTransceiverWakeupModethernetInterface (uint8 TrcvIdx, EthTrcv_WakeupModeType* TrcvWakeupModePtr); ⚠️Returns the wake up mode of the indexed tran sceiver Tags: atp.Std_ReturnType EthIf_CheckWakeup (EcuM_WakeupSourceType WakeupSource);This API request the affected Ethernet hardware to c heck for a signaled wake - up.Std_ReturnType EthIf_GetPhyWakeupReason (uint8 TrcvIdx, EthTrcv_WakeupReasonType* WakeupReasonPtr);Tags: atp.Status=draftStd_ReturnType EthIf_GetSwitchPortWakeupReason (uint8 SwitchIdx, uint8 SwitchPortIdx, EthTrcv_WakeupReasonType* WakeupReasonPtr);This function obtains the wake up reasons of the indexed Ethernet switch port byvoid EthIf_GetPhysAddr (uint8 CtrlIdx, uint8* PhysAddrPtr);Obtains the physical source address used by the indexed controllervoid EthIf_SetPhysAddr (uint8 CtrlIdx, const uint8* PhysAddrPtr);Sets the physical source address used by the indexed controller.Std_ReturnType EthIf_UpdatePhysAddrFilter (uint8 CtrlIdx, const uint8* PhysAddrPtr, Eth_FilterActionType Action);Update the physical source address to/ from the indexed controller filter.Std_ReturnType EthIf_GetPortMacAddr (const uint8* MacAddrPtr, uint8* SwitchIdxPtr, uint8* PortIdxPtr);Obtains the port over which this MAC - address can be reachedStd_ReturnType EthIf_GetArlTable (uint8 switchIdx, uint16* numberOfElements, Eth_MacVlanType* arlTableListPointer);Obtains the address resolution ta ble of a switch and copies the list into a user provided buffer.Std_ReturnType EthIf_GetCtrlIdxList (uint8* NumberOfCtrlIdx, uint8* CtrlIdxListPtr);Returns the number and index of all active Ethernet controllers.Std_ReturnType EthIf_GetVlan (uint8 CtrlIdx, uint16* VlanIdPtr);Returns the VLAN identifier of the requested Ethernet controller.Std_ReturnType EthIf_GetAndResetMeasurementData (EthIf_MeasurementIdxType MeasurementIdx, boolean MeasurementResetNeeded, uint32* MeasurementDataPtr);Allows to read and reset detailed measurement data for diagnostic purposes.Std_ReturnType EthIf_StoreConfiguration (uint8 SwitchIdx);The function shall request to store the configuration of the learned MAC/ Port tables of a Ethernet switch in a persistent manner.Std_ReturnType EthIf_ResetConfiguration (uint8 SwitchIdx);The function shall request to reset the configuration of the learned MAC/ Port tables of a Eth ernet switch in a persistent...Std_ReturnType EthIf_GetCurrentTime (uint8 CtrlIdx, Eth_TimeStampQualType* timeQualPtr, Eth_TimeStampType* timeStampPtr);Returns a time value out of the HW registers according to the capability of the HW.void EthIf_EnableEgressTimeStamp (uint8 CtrlIdx, Eth_BufIdxType BufIdx thernetInterface); ⚠️Activates egress time stamping on a dedicated message object.Std_ReturnType EthIf_GetEgressTimeStamp (uint8 CtrlIdx, Eth_BufIdxType BufIdx, Eth_TimeStampQualType* timeQualPtr, thernetInterface* timeStampPtr); ⚠️Reads back the egress time stamp on a dedicated message object.Std_ReturnType EthIf_GetIngressTimeStamp (uint8 CtrlIdx, const Eth_DataType* DataPtr, Eth_TimeStampQualType* timeQualPtr, Eth_TimeStampType* timeStampPtr);Reads back the ingress time stamp on a dedicated message object.Std_ReturnType EthIf_SwitchPortGroupRequestMode (EthIf_SwitchPortGroupIdxType PortGroupIdx, Eth_ModeType PortMode);Request a mode for the Eth If Swt Port Group.Std_ReturnType EthIf_StartAllPorts (void);Request to set all configured and affected Eth Swt Ports to ETH_ MODE_ ACTIVEStd_ReturnType EthIf_SetSwitchMgmtInfo (uint8 CtrlIdx, Eth_BufIdxType BufIdx, EthSwt_MgmtInfoType* MgmtInfoPtr);Provides additional management information along to an Ethernet frame that requires special treatment within the Switch.Std_ReturnType EthIf_GetRxMgmtObject (uint8 CtrlIdx, Eth_DataType* DataPtr, EthSwt_MgmtObjectType* * MgmtObjectPtr);Request the Mgmt Object of the (in this context) unique Data Ptr.Std_ReturnType EthIf_GetTxMgmtObject (uint8 CtrlIdx, Eth_BufIdxType BufIdx, EthSwt_MgmtObjectType* * MgmtObjectPtr);Request the Mgmt Object of the (in this context) unique Buf Idx.Std_ReturnType EthIf_SwitchEnableTimeStamping (uint8 CtrlIdx, Eth_BufIdxType BufIdx, EthSwt_MgmtInfoType* MgmtInfo);Activates egress time stamping on a dedicated message object, addressed by Ctrl Idx and Buf Idx.Std_ReturnType EthIf_VerifyConfig (uint8 SwitchIdx, boolean* Result);Forwarded t o Eth Swt_ Verify Config.Std_ReturnType EthIf_SetForwardingMode (uint8 SwitchIdx, boolean mode);Verifies the Switch Configuration.Std_ReturnType EthIf_GetTrcvSignalQuality (uint8 TrcvIdx, EthIf_SignalQualityResultType* ResultPtr);Retrieves the signal quality of the link of the given Ethernet transceiverStd_ReturnType EthIf_GetSwitchPortSignalQuality (uint8 SwitchIdx, uint8 SwitchPortIdx, EthIf_SignalQualityResultType* ResultPtr);Retrieves the signal quality of the link of the given Ethernet switch portStd_ReturnType EthIf_ClearTrcvSignalQuality (uint8 TrcvIdx);Clear the stored signal quality of the link of the given Ethernet transceiverStd_ReturnType EthIf_ClearSwitchPortSignalQuality (uint8 SwitchIdx, uint8 SwitchPortIdx);Clear the stored signal quality of the link of the given Et hernet switch portStd_ReturnType EthIf_SetPhyTestMode (uint8 TrcvIdx, EthTrcv_PhyTestModeType Mode);Activates a given test mode.Std_ReturnType EthIf_SetPhyLoopbackMode (uint8 TrcvIdx, EthTrcv_PhyLoopbackModeType Mode);Activates a given loopback mode.Std_ReturnType EthIf_SetPhyTxMode (uint8 TrcvIdx, EthTrcv_PhyTxModeType Mode);Activates a given transmission mode.Std_ReturnType EthIf_GetCableDiagnosticsResult (uint8 TrcvIdx, EthTrcv_CableDiagResultType* ResultPtr);Retrieves the cable diagnostics result of a given transceiver.Std_ReturnType EthIf_GetPhyIdentifier (uint8 TrcvIdx, uint32* OrgUniqueIdPtr, uint8* ModelNrPtr, uint8* RevisionNrPtr);Obtains the PHY identifier of the Ethernet Interface according to IEEE 802.Std_ReturnType EthIf_GetBufWRxParams (uint8 CtrlIdx, const WEth_BufWRxParamIdType* RxParamIds, uint32* ParamValues, uint8 NumParams);Read out values related to the receive direction of the transceiver for a received packet.Std_ReturnType EthIf_GetBufWTxParams (uint8 CtrlIdx, const WEth_BufWTxParamIdType* TxParamIds, uint32* ParamValues, uint8 NumParams);Read out values related to the transmit direction of the transceiver for a transmitted packet.Std_ReturnType EthIf_SetBufWTxParams (uint8 CtrlIdx, Eth_BufIdxType BufIdx, const WEth_BufWTxParamIdType* TxParamIds, const uint32* ParamValues, uint8 NumParams);Set values related to the transmit direction of the transceiver for a specific buffer (packet to be sent).Std_ReturnType EthIf_SetRadioParams (uint8 TrcvId, const WEthTrcv_SetRadioParamIdType* ParamIds, const uint32* ParamValue, uint8 NumParams);Set values related to a transceiver's wireless radio.Std_ReturnType EthIf_SetChanRxParams (uint8 TrcvId, uint8 RadioId, const WEthTrcv_SetChanRxParamIdType* ParamIds, const uint32* ParamValues, uint8 NumParams);Set values related to the receive direction of a transceiver's wireless channel.Std_ReturnType EthIf_SetChanTxParams (uint8 TrcvId, uint8 RadioId, const WEthTrcv_SetChanTxParamIdType* TxParamIds, const uint32* ParamValues, uint8 NumParams);Set values related to the transmit direction of a transceiver's wireless channel.Std_ReturnType EthIf_GetChanRxParams (uint8 TrcvId, uint8 RadioId, const WEthTrcv_GetChanRxParamIdType* ParamIds, thernetInterface uint32* ParamValues, uint8 NumParams); ⚠️Read values related to the receive direction of the transceiver.BufReq_ReturnType EthIf_ProvideTxBuffer (uint8 CtrlIdx, Eth_FrameType FrameType, uint8 Priority, Eth_BufIdxType* BufIdxPtr, uint8* * BufPtr, uint16* LenBytePtr);Provides access to a transmit buffer of the specified Ethernet controller.Std_ReturnType EthIf_Transmit (uint8 CtrlIdx, Eth_BufIdxType BufIdx, Eth_FrameType FrameType, boolean TxConfirmation, uint16 LenByte, const uint8* PhysAddrPtr);Triggers transmission of a previously filled transmit buffervoid EthIf_GetVersionInfo (Std_VersionInfoType* VersionInfoPtr);Returns the version information of this moduleStd_ReturnType EthIf_GetSwitchPortMode (uint8 SwitchIdx, uint8 SwitchPortIdx, Eth_ModeType* PortModePtr);Obtains the mode of the indexed switch portStd_ReturnType EthIf_GetTransceiverMode (uint8 TrcvIdx, Eth_ModeType* TrcvModePtr);Obtains the state of the indexed transceiverStd_ReturnType EthIf_SwitchPortGetLinkState (uint8 SwitchIdx, uint8 SwitchPortIdx, EthTrcv_LinkStateType* LinkStatePtr);Obtains the link state of the indexed switch portStd_ReturnType EthIf_TransceiverGetLinkState (uint8 TrcvIdx, EthTrcv_LinkStateType* LinkStatePtr);Obta ins the link state of the indexed transceiverStd_ReturnType EthIf_SwitchPortGetBaudRate (thernetInterface uint8 SwitchIdx, uint8 SwitchPortIdx, EthTrcv_BaudRateType* BaudRatePtr); ⚠️Obtains the baud rate of the indexed switch portStd_ReturnType EthIf_TransceiverGetBaudRate (uint8 TrcvIdx, EthTrcv_BaudRateType* BaudRatePtr);Obtains the baud rate of the indexed transceiverStd_ReturnType EthIf_SwitchPortGetDuplexMode (uint8 SwitchIdx, uint8 SwitchPortIdx, EthTrcv_DuplexModeType* DuplexModePtr);Obtains the duplex mode of the indexed switch portStd_ReturnType EthIf_TransceiverGetDuplexMode (uint8 TrcvIdx, EthTrcv_DuplexModeType* DuplexModePtr);Obtains the duplex mode of the indexed tra nsceiverStd_ReturnType EthIf_SwitchPortGetCounterValues (uint8 SwitchIdx, thernetInterface uint8 SwitchPortIdx, Eth_CounterType* CounterPtr); ⚠️Reads a list with drop counter values of the corresponding port of the switch.Std_ReturnType EthIf_SwitchPortGetRxStats (uint8 SwitchIdx, uint8 SwitchPortIdx, Eth_RxStatsType* RxStatsPtr);Returns a list of statistic counters defined with E th_ Rx Tats Type.Std_ReturnType EthIf_SwitchPortGetTxStats (uint8 SwitchIdx, uint8 SwitchPortIdx, Eth_TxStatsType* TxStatsPtr);Returns the list of Transmission Statistics out of IETF RFC1213 defined with Eth_ Tx Stats Type, where the maximal possible...Std_ReturnType EthIf_SwitchPortGetTxErrorCounterValues (uint8 SwitchIdx, uint8 SwitchPortIdx, Eth_TxErrorCounterValuesType* TxStatsPtr);Returns the list of Transmission Error Counters out of IETF RFC1213 and RFC16 defined with Eth_ Tx Error Counter Values Type,...Std_ReturnType EthIf_SwitchPortGetMacLearningMode (thernetInterface uint8 SwitchIdx, uint8 SwitchPortIdx, EthSwt_MacLearningType* MacLearningModePtr); ⚠️Returns the MAC learning mode, i.Std_ReturnType EthIf_GetSwitchPortIdentifier (uint8 SwitchIdx, uint8 SwitchPortIdx, uint32* OrgUniqueIdPtr, uint8* ModelNrPtr, uint8* RevisionNrPtr);This function retrieves the OUI (24 bit) of the indexed Ethernet switch port.Std_ReturnType EthIf_GetSwitchIdentifier (uint8 SwitchIdx, uint32* OrgUniqueIdPtr);Obtain the Organizationally Unique Identifier that is given by the IEEE of the indexed Ethernet switch.Std_ReturnType EthIf_WritePortMirrorConfiguration (uint8 MirroredSwitchIdx, const EthSwt_PortMirrorCfgType* PortMirrorConfigurationPtr);Service EthIf_WritePortMirrorConfiguration.Std_ReturnType EthIf_ReadPortMirrorConfiguration (uint8 MirroredSwitchIdx, EthSwt_PortMirrorCfgType* PortMirrorConfigurationPtr);Obtain the port mirror configuration of the given Ethernet switch.Std_ReturnType EthIf_DeletePortMirrorConfiguration (uint8 MirroredSwitchIdx);Delete the stored port mirror configuration of the given Mirrored Switch Idx.Std_ReturnType EthIf_GetPortMirrorState (uint8 SwitchIdx, uint8 PortIdx, EthSwt_PortMirrorStateType* PortMirrorStatePtr);Obtain the current status of the port mirroring for the indexed Ethernet switch portStd_ReturnType EthIf_SetPortMirrorState (uint8 MirroredSwitchIdx, uint8 PortIdx, EthSwt_PortMirrorStateType PortMirrorState);Request to set the given port mirroring state of the port mirror configuration for the given Ethernet switch.Std_ReturnType EthIf_SetPortTestMode (uint8 SwitchIdx, uint8 PortIdx, EthTrcv_PhyTestModeType Mode);Activates a given test mode of the indexed Ethernet switch port.Std_ReturnType EthIf_SetPortLoopbackMode (uint8 SwitchIdx, uint8 PortIdx, EthTrcv_PhyLoopbackModeType Mode);Activates a given test loop - back mode of the indexed Ethernet switch port.Std_ReturnType EthIf_SetPortTxMode (thernetInterface uint8 SwitchIdx, uint8 PortIdx, EthTrcv_PhyTxModeType Mode); ⚠️Activates a given transmission mode of the indexed Ethernet switch port.Std_ReturnType EthIf_GetPortCableDiagnosticsResult (uint8 SwitchIdx, uint8 PortIdx, EthTrcv_CableDiagResultType* ResultPtr);Retrieves the cable diagnostics result of the indexed Ethernet switch port respectively the referenced Ethernet Transceiver...Std_ReturnType EthIf_RunPortCableDiagnostic (uint8 SwitchIdx, uint8 PortIdx);Trigger the cable diagnostics of the given Ethernet Switch port (Port Idx) by calling Eth Trcv_ Run Cable Diagnostic of the...Std_ReturnType EthIf_RunCableDiagnostic (uint8 TrcvIdx);Trigger the cable diagnostics for the given Ethernet transceiver.Std_ReturnType EthIf_SwitchGetCfgDataRaw (uint8 SwitchIdx, uint32 Offset, uint16 Length, uint8* BufferPtr);Retrieves the data in memory of the indexed Ethernet switch in variable lengthStd_ReturnType EthIf_SwitchGetCfgDataInfo (uint8 SwitchIdx, uint32* DataSizePtr, uint32* DataAdressPtr);Retrieves the total size of data and the memory start address of the indexed Ethernet Switch.Std_ReturnType EthIf_SwitchPortGetMaxFIFOBufferFill EthIf_SwitchPortGetMaxFIFOBufferFillLevel (uint8 SwitchPortIdx, uint8 PortIdx, uint8 SwitchPortEgressFifoIdx, uint32* SwitchPortEgressFifoBufferLevelPtr); ⚠️Service EthIf_SwitchPortGetMaxFIFOBufferFillLevel.Std_ReturnType EthIf_TransceiverGetMacMethod (uint8* TrcvIdx, EthTrcv_MacMethodType* MacModePtr);Obtains the media access mode of the transceiver.void EthIf_RxIndication (uint8 CtrlIdx, Eth_FrameType FrameType, boolean IsBroadcast, const uint8* PhysAddrPtr, const Eth_DataType* DataPtr, uint16 LenByte);Handles a received frame received by the indexed controllervoid EthIf_TxConfirmation (uint8 CtrlIdx, Eth_BufIdxType BufIdx, Std_ReturnType Result);Confirms frame transmission by the indexed controllervoid EthIf_CtrlModeIndication (uint8 CtrlIdx, thernetInterface Eth_ModeType CtrlMode); ⚠️Called asynchronously when mode has been read out.void EthIf_TrcvModeIndication (uint8 TrcvIdx, Eth_ModeType TrcvMode);Called asynchronously when a mode change has been read out.void EthIf_SwitchPortModeIndication (uint8 SwitchIdx, uint8 SwitchPortIdx, Eth_ModeType PortMode);The Eth If shall determine the expected notifications based on the Eth Swt Port configuration.void EthIf_SleepIndication (uint8 TrcvIdx);This API is called by the corresponding Eth Trcv, if a sleep indication was detected on the network.void EthIf_MainFunctionRx (void);The function checks for new received frames and issues reception indications in polling mode.void EthIf_MainFunctionTx (void);The function issues transmission confirmations in polling mode.void EthIf_MainFunctionState (void);The function is polling different communication hardware (Ethernet transceiver, Ethernet switch ports) related information, e.
Typen — Übersicht
struct EthIf_ConfigTypeImplementation specific structure of the post build configurationEthIf_SwitchPortGroupIdxTypeData Type that represents the Ethernet interface switch port group index.EthIf_MeasurementIdxTypeIndex to select specific measurement dataenum EthIf_SignalQualityResultType-
Funktionen & Typen — Detailansicht
함수 EthIf_Init [SWS_EthIf_00024] 📄 PDF
void EthIf_Init (const EthIf_ConfigType* CfgPtr);
Initializes the Ethernet Interface
사용법 및 의미론
함수 EthIf_Init은 이더넷 인터페이스 모듈([SWS_EthIf_00024])을 초기화합니다. 동기식으로 실행되고 재진입이 불가능하며(Non Reentrant), 헤더 파일 EthIf.h을 통해 서비스 ID 0x01로 제공됩니다. 유일한 전달 매개변수로 함수는 EthIf_ConfigType 타입의 구현별 구성 구조체를 가리키는 포인터 CfgPtr를 받습니다. inout 또는 out 매개변수는 존재하지 않으며, 함수는 반환값을 갖지 않습니다([SWS_EthIf_00024]).
동시성 및 호출 컨텍스트
EthIf_Init은 재진입이 불가능하므로 동시 호출이나 중첩 호출이 발생해서는 안 됩니다([SWS_EthIf_00024]). 페이로드에 특정 호출 컨텍스트가 구체적으로 설명되어 있지 않으므로, 호출은 일반적으로 다른 이더넷 서비스를 이용하기 전 ECU 초기화 시퀀스 동안 한 번만 발생할 것으로 추정됩니다. 질문 Q-07e92f9f3c15ea5b (열림)
순서 조건 및 상호작용
EthIf_Init의 호출은 모듈의 모든 추가 기능을 사용하기 위한 필수 전제 조건입니다. 개발 오류 감지(Development Error Detection)가 활성화된 경우, 이더넷 인터페이스의 수많은 서비스는 실행 전에 EthIf_Init이 미리 호출되었는지 확인합니다:
- 초기화가 수행되지 않은 경우, 종속 함수들은 개발 오류
ETHIF_E_UNINIT을 보고합니다(예: [SWS_EthIf_00155], [SWS_EthIf_00161], [SWS_EthIf_00167], [SWS_EthIf_00173], [SWS_EthIf_00193], [SWS_EthIf_00199], [SWS_EthIf_00217], [SWS_EthIf_00222], [SWS_EthIf_00299], [SWS_EthIf_00302] 및 [SWS_EthIf_00304]). - 초기화되지 않은 경우 여러 인터페이스가 실행을 중단하고 추가로 오류 값
E_NOT_OK을 반환합니다(예: [SWS_EthIf_00246], [SWS_EthIf_00273] 및 [SWS_EthIf_00277]).
이 사용 지침은 자동으로 생성되었으며 AUTOSAR Classic R20-11 명세를 기반으로 합니다.
구현자 가이드 준비 중 (복잡도 I2)
함수 EthIf_SetControllerMode [SWS_EthIf_00034] 📄 PDF
Std_ReturnType EthIf_SetControllerMode (uint8 CtrlIdx, Eth_ModeType CtrlMode);
Enables / disables the indexed controller thernet Interface AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_EthernetInterface
사용
함수 EthIf_SetControllerMode은 이더넷 인터페이스 [SWS_EthIf_00034]의 컨텍스트에서 CtrlIdx로 지정된 이더넷 컨트롤러를 활성화하거나 비활성화합니다. 매개변수 CtrlMode을 통해 다음 상태들이 요청됩니다([SWS_EthIf_00034]):
ETH_MODE_DOWN: 컨트롤러를 비활성화합니다.ETH_MODE_ACTIVE: 컨트롤러를 활성화합니다.ETH_MODE_ACTIVE_WITH_WAKEUP_REQUEST: 컨트롤러를 활성화하고 네트워크상의 웨이크업을 요청합니다.
이 함수는 비동기식으로 작동합니다([SWS_EthIf_00034]). 성공적으로 실행되면 E_OK을 반환하고, 컨트롤러 모드를 변경할 수 없는 경우 E_NOT_OK를 반환합니다([SWS_EthIf_00034]).
상호 작용 및 전달
"control" 타입의 EthIfSwitchPortGroup를 참조하는 컨트롤러에 대해 ETH_MODE_ACTIVE과 함께 EthIf_SetControllerMode이 호출되면, 해당 모드가 포트에 대해 처음으로 요청되고 해당 상태가 ETH_MODE_DOWN인 경우 EthIf은 그룹의 모든 포트로 호출을 전달합니다. 이때 ETH_MODE_ACTIVE과 함께 EthSwt_SetSwitchPortMode가 실행된 후 ETHTRCV_LINK_STATE_ACTIVE과 함께 EthSwt_PortLinkStateRequest이 순차적으로 실행됩니다([SWS_EthIf_00264]).
ETH_MODE_ACTIVE_WITH_WAKEUP_REQUEST 요청 시 EthIf은 현재 모드와 관계없이 다음과 같이 호출을 전달합니다:
EthIfTransceiver을 참조하는 경우: 현재 상태가ETHTRCV_LINK_STATE_DOWN이면ETH_MODE_ACTIVE_WITH_WAKEUP_REQUEST와 함께EthTrcv_SetTransceiverMode을 호출한 후ETHTRCV_LINK_STATE_ACTIVE와 함께EthTrcv_TransceiverLinkStateRequest을 호출합니다([SWS_EthIf_00479]).EthIfSwitch또는 "control" 타입의EthIfSwitchPortGroup을 참조하는 경우: 현재 상태가ETHTRCV_LINK_STATE_DOWN이면ETH_MODE_ACTIVE_WITH_WAKEUP_REQUEST과 함께EthSwt_SetSwitchPortMode를 호출한 후ETHTRCV_LINK_STATE_ACTIVE와 함께EthSwt_PortLinkStateRequest를 호출합니다([SWS_EthIf_00480], [SWS_EthIf_00481]).
제한
이 함수는 재진입이 불가능하며(Non Reentrant), EthIf.h을 통해 제공됩니다([SWS_EthIf_00034]).
이 사용 지침은 AUTOSAR CP R20-11 사양을 기반으로 자동으로 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I2)
함수 EthIf_GetControllerMode [SWS_EthIf_00039] 📄 PDF
Std_ReturnType EthIf_GetControllerMode (uint8 CtrlIdx, Eth_ModeType* CtrlModePtr);
Obtains the state of the ind exed controller
함수 EthIf_SetTransceiverWakeupMode [SWS_EthIf_00233] 📄 PDF
Std_ReturnType EthIf_SetTransceiverWakeupMode (uint8 TrcvIdx, EthTrcv_WakeupModeType TrcvWakeupMode);
Enables / disables the wake up mode or clear the wake - up reason of the indexed transceiver Tags: atp.Status=obsolete
동기 및 재진입 불가 함수인 EthIf_SetTransceiverWakeupMode(서비스 ID 0x2e)은 Ethernet Interface에서 TrcvIdx을(를) 통해 주소 지정된 트랜시버의 웨이크업 모드를 설정하거나 해당 웨이크업 원인을 리셋하는 역할을 합니다 [SWS_EthIf_00233]. 이 함수는 헤더 파일 EthIf.h에 선언되어 있으며, AUTOSAR CP R20-11 릴리스에서 폐기 예정(obsolete)으로 표시되어 있습니다 [SWS_EthIf_00233].
제어는 전달 매개변수 TrcvWakeupMode을(를) 통해 수행됩니다 [SWS_EthIf_00233]:
ETHTRCV_WUM_ENABLE: 트랜시버의 웨이크업을 활성화합니다 [SWS_EthIf_00233]. 할당된 드라이버EthIfTransceiverIdx이(가) 현재ETHTRCV_WUM_DISABLE상태에 있는 경우, 호출은EthTrcv_SetTransceiverWakeupMode(으)로 전달됩니다 [SWS_EthIf_00234].ETHTRCV_WUM_DISABLE: 트랜시버의 웨이크업을 비활성화합니다 [SWS_EthIf_00233]. 드라이버의 현재 상태가ETHTRCV_WUM_ENABLE인 경우, 함수는 호출을EthTrcv_SetTransceiverWakeupMode(으)로 전달합니다 [SWS_EthIf_00268].ETHTRCV_WUM_CLEAR: 인덱싱된 트랜시버의 웨이크업 원인을 삭제합니다 [SWS_EthIf_00233].
반환값으로 호출 시 성공적으로 실행되면 E_OK을(를) 반환하고, 웨이크업 모드를 변경할 수 없거나 웨이크업 원인을 삭제할 수 없는 경우 E_NOT_OK을(를) 반환합니다 [SWS_EthIf_00233]. 인터페이스가 재진입 불가능으로 정의되어 있으므로 동시 호출은 허용되지 않습니다 [SWS_EthIf_00233].
이 사용 지침은 AUTOSAR CP R20-11 사양을 기반으로 자동 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_GetTransceiverWakeupModethernetInterface [SWS_EthIf_00238] 📄 PDF
Std_ReturnType EthIf_GetTransceiverWakeupMode (uint8 TrcvIdx, EthTrcv_WakeupModeType* TrcvWakeupModePtr);
Returns the wake up mode of the indexed tran sceiver Tags: atp.Status=obsolete
함수 EthIf_CheckWakeup [SWS_EthIf_00244] 📄 PDF
Std_ReturnType EthIf_CheckWakeup (EcuM_WakeupSourceType WakeupSource);
This API request the affected Ethernet hardware to c heck for a signaled wake - up. The used Ethernet hardware could be an Ethernet switch or Ethernet transceiver (PHY). This is used e.g. for Ethernet hardware which is compliant to the specification of Open Alliance TC10. This API is called by the integration code. The function could be called in context of the interrupt or on task level.
함수 EthIf_CheckWakeup은 해당 이더넷 하드웨어에 신호된 웨이크업을 확인하도록 요청합니다([SWS_EthIf_00244]). 이는 예를 들어 OPEN Alliance TC10 사양을 준수하는 이더넷 하드웨어에 사용됩니다([SWS_EthIf_00244]). 호출은 인터럽트 컨텍스트 또는 태스크 레벨에서 통합 코드에 의해 비동기식 및 재진입 가능 방식으로 수행됩니다([SWS_EthIf_00244]).
입력 매개변수로는 트리거 소스 장치(이더넷 트랜시버 또는 이더넷 스위치)를 지정하는 EcuM_WakeupSourceType 타입의 WakeupSource이 사용됩니다([SWS_EthIf_00244]). 하드웨어에 대한 확인 요청이 수락된 경우 반환값은 E_OK이고, 요청이 거부된 경우에는 E_NOT_OK입니다([SWS_EthIf_00244]). 모듈은 내부적으로 호출을 하위 드라이버로 전달합니다:
- 영향을 받는 모든 이더넷 트랜시버(
EthIfTransceiver또는EthIfSwitchPortGroups을 통해 참조됨)에 대해 각 트랜시버 드라이버의EthTrcv_CheckWakeup가 호출됩니다([SWS_EthIf_00245]). - 영향을 받는 모든 이더넷 스위치(
EthIfSwitch을 통해 참조됨)에 대해 해당 스위치 드라이버의EthSwt_SwitchCheckWakeup이 호출됩니다([SWS_EthIf_00500]).
EthIf_CheckWakeup의 사용 가능 여부는 사전 컴파일 시점에 구성 매개변수 EthIfWakeUpSupport을 통해 활성화 및 비활성화할 수 있습니다([SWS_EthIf_00248]). API는 헤더 EthIf.h을 통해 제공됩니다([SWS_EthIf_00244]).
이 사용 지침은 AUTOSAR 사양 R20-11을 바탕으로 자동 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_GetPhyWakeupReason [SWS_EthIf_91004] 📄 PDF
Std_ReturnType EthIf_GetPhyWakeupReason (uint8 TrcvIdx, EthTrcv_WakeupReasonType* WakeupReasonPtr);
Tags: atp.Status=draft
함수 EthIf_GetSwitchPortWakeupReason [SWS_EthIf_00488] 📄 PDF
Std_ReturnType EthIf_GetSwitchPortWakeupReason (uint8 SwitchIdx, uint8 SwitchPortIdx, EthTrcv_WakeupReasonType* WakeupReasonPtr);
This function obtains the wake up reasons of the indexed Ethernet switch port by
함수 EthIf_GetPhysAddr [SWS_EthIf_00061] 📄 PDF
void EthIf_GetPhysAddr (uint8 CtrlIdx, uint8* PhysAddrPtr);
Obtains the physical source address used by the indexed controller
함수 EthIf_SetPhysAddr [SWS_EthIf_00132] 📄 PDF
void EthIf_SetPhysAddr (uint8 CtrlIdx, const uint8* PhysAddrPtr);
Sets the physical source address used by the indexed controller.
함수 EthIf_UpdatePhysAddrFilter [SWS_EthIf_00139] 📄 PDF
Std_ReturnType EthIf_UpdatePhysAddrFilter (uint8 CtrlIdx, const uint8* PhysAddrPtr, Eth_FilterActionType Action);
Update the physical source address to/ from the indexed controller filter. If the Ethernet Controller is not capable to do the filtering, the software has to do this.
동기식 함수 EthIf_UpdatePhysAddrFilter([SWS_EthIf_00139])은(는) CtrlIdx을(를) 통해 지정된 Ethernet 컨트롤러의 주소 필터를 업데이트하는 역할을 합니다. Eth_FilterActionType 타입의 매개변수 Action을(를) 통해 물리적 주소가 필터에 추가되거나 필터에서 제거됩니다.
구성을 위해 PhysAddrPtr은(는) Layer 2 Ethernet 패킷의 멀티캐스트 대상 주소를 나타내는 네트워크 바이트 순서의 물리적 MAC 주소에 대한 포인터를 기대합니다 [SWS_EthIf_00139]. 텍스트 형태의 함수 설명에는 소스 주소로 언급되어 있으나, 매개변수 명세에서 멀티캐스트 대상 주소를 구속력 있게 규정하고 있으므로 이는 편집상의 실수일 것으로 보입니다. 질문 Q-312e20e5eadda94a (열림)
동작 순서 및 제약 사항과 관련하여 다음 사양이 적용됩니다 [SWS_EthIf_00139]:
- 반환값: 함수는 필터 구성이 성공적으로 변경된 경우
E_OK을(를) 반환하고, 변경에 실패한 경우E_NOT_OK을(를) 반환합니다. 특정 DET 또는 DEM 오류 코드는 출처에 정의되어 있지 않습니다. - 하드웨어 지원: 기반이 되는 Ethernet 컨트롤러가 하드웨어적으로 필터링을 수행할 수 없는 경우 소프트웨어가 이 필터링 작업을 대신 수행해야 합니다.
- 동시성: 동일한 컨트롤러 인덱스(
CtrlIdx)에 대한 호출은 재진입이 불가능하지만, 서로 다른 컨트롤러에 대해서는 동시 실행될 수 있습니다.
이 사용 지침은 R20-11 명세를 기반으로 AI에 의해 생성되었습니다.
함수 EthIf_GetPortMacAddr [SWS_EthIf_00190] 📄 PDF
Std_ReturnType EthIf_GetPortMacAddr (const uint8* MacAddrPtr, uint8* SwitchIdxPtr, uint8* PortIdxPtr);
Obtains the port over which this MAC - address can be reached
함수 EthIf_GetArlTable [SWS_EthIf_00196] 📄 PDF
Std_ReturnType EthIf_GetArlTable (uint8 switchIdx, uint16* numberOfElements, Eth_MacVlanType* arlTableListPointer);
Obtains the address resolution ta ble of a switch and copies the list into a user provided buffer. The function will copy all or number Of
함수 EthIf_GetCtrlIdxList [SWS_EthIf_91053] 📄 PDF
Std_ReturnType EthIf_GetCtrlIdxList (uint8* NumberOfCtrlIdx, uint8* CtrlIdxListPtr);
Returns the number and index of all active Ethernet controllers.
함수 EthIf_GetVlan [SWS_EthIf_91052] 📄 PDF
Std_ReturnType EthIf_GetVlanId (uint8 CtrlIdx, uint16* VlanIdPtr);
Returns the VLAN identifier of the requested Ethernet controller.
함수 EthIf_GetAndResetMeasurementData [SWS_EthIf_91011] 📄 PDF
Std_ReturnType EthIf_GetAndResetMeasurementData (EthIf_MeasurementIdxType MeasurementIdx, boolean MeasurementResetNeeded, uint32* MeasurementDataPtr);
Allows to read and reset detailed measurement data for diagnostic purposes. Get all Measurement Idx's at once is not supported. ETHIF_ MEAS_ ALL shall only be used to reset all Measurement Idx's at once. A NULL_ PTR shall be provided for Measurement Data Ptr in this case.
함수 EthIf_StoreConfiguration [SWS_EthIf_00214] 📄 PDF
Std_ReturnType EthIf_StoreConfiguration (uint8 SwitchIdx);
The function shall request to store the configuration of the learned MAC/ Port tables of a Ethernet switch in a persistent manner. This could be used by e.g. a CDD.
사용법 및 호출 컨텍스트
함수 EthIf_StoreConfiguration은(는) Ethernet 스위치의 학습된 MAC/포트 테이블의 영구 저장을 요청하는 역할을 합니다 [SWS_EthIf_00214]. 일반적인 호출자로는 예를 들어 Complex Device Driver(CDD)가 언급됩니다 [SWS_EthIf_00214]. 인터페이스는 헤더 파일 EthIf.h을(를) 통해 액세스할 수 있으며 서비스 ID 0x2c을(를) 갖습니다 [SWS_EthIf_00214].
입력 매개변수 SwitchIdx을(를) 통해 Ethernet 스위치 드라이버 컨텍스트 내 대상 스위치의 인덱스가 전달됩니다 [SWS_EthIf_00214]. 반환값으로 함수는 상태 Std_ReturnType을(를) 반환합니다. E_OK 값은 저장 요청이 수락되었음을 나타내고, E_NOT_OK은(는) 수락되지 않았음을 알립니다 [SWS_EthIf_00214]. 명세에서 실행을 동기/비동기로 표시하고 있으므로 요청 접수는 동기식으로 이루어지고 실제 영구 저장은 하위 모듈에서 비동기적으로 처리될 것으로 보입니다. 질문 Q-4f10e936c7d30258 (열림)
제약 사항 및 오류 처리
동시성과 관련하여 EthIf_StoreConfiguration은(는) 비재진입(Non Reentrant)으로 명시되어 있습니다 [SWS_EthIf_00214]. 따라서 병렬 호출은 호출자 측에서 방지되거나 동기화되어야 합니다. 이 인터페이스에 대해 특정 DET 또는 DEM 오류 메시지는 정의되어 있지 않으며, 요청 수락 오류는 반환값 E_NOT_OK을(를) 통해서만 보고됩니다 [SWS_EthIf_00214].
이 사용 지침은 자동으로 생성되었습니다. 소스 문서가 변경되면 다시 생성됩니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_ResetConfiguration [SWS_EthIf_00219] 📄 PDF
Std_ReturnType EthIf_ResetConfiguration (uint8 SwitchIdx);
The function shall request to reset the configuration of the learned MAC/ Port tables of a Eth ernet switch in a persistent manner. This could be used by e.g. a CDD. The statically configured entries shall still remain.
사용법 및 호출 컨텍스트
함수 EthIf_ResetConfiguration은(는) Ethernet 스위치의 동적으로 학습된 MAC 및 포트 테이블의 영구 재설정을 요청하는 역할을 합니다 [SWS_EthIf_00219]. 정적으로 구성된 항목은 구성에 변경되지 않은 상태로 유지됩니다 [SWS_EthIf_00219]. 이 인터페이스의 호출자로는 예를 들어 Complex Device Driver(CDD)가 작동할 수 있습니다 [SWS_EthIf_00219].
전달 매개변수 SwitchIdx을(를) 통해 Ethernet 스위치 드라이버 컨텍스트 내 해당 스위치의 인덱스가 지정됩니다 [SWS_EthIf_00219]. 실행 시맨틱과 관련하여 이 작업은 동기/비동기로 표시되어 있습니다 [SWS_EthIf_00219]. 이는 요청 수락이 동기식으로 승인되는 반면 하드웨어 테이블 재설정은 비동기식으로 실행됨을 의미할 수 있습니다. 질문 Q-9e7f89ec9e809fd0 (열림)
반환값 및 오류 처리
함수는 반환값으로 Std_ReturnType 타입의 상태를 반환합니다 [SWS_EthIf_00219]:
E_OK: MAC/포트 테이블 영구 재설정 요청이 성공적으로 수락되었습니다 [SWS_EthIf_00219].E_NOT_OK: 요청이 거부되었습니다 [SWS_EthIf_00219].
특정 DET 또는 DEM 오류 메시지는 본 명세 범위에서 이 함수에 대해 문서화되어 있지 않습니다.
동시성 및 제약사항
해당 인터페이스는 비재진입(Non Reentrant)으로 명시되어 있습니다 [SWS_EthIf_00219]. 따라서 호출자는 동시 호출이나 인터럽트 호출이 발생하지 않도록 해야 합니다. 이 함수는 헤더 파일 EthIf.h을(를) 통해 포함됩니다 [SWS_EthIf_00219].
이 사용 지침은 AUTOSAR Release R20-11의 사양을 기반으로 자동 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_GetCurrentTime [SWS_EthIf_00154] 📄 PDF
Std_ReturnType EthIf_GetCurrentTime (uint8 CtrlIdx, Eth_TimeStampQualType* timeQualPtr, Eth_TimeStampType* timeStampPtr);
Returns a time value out of the HW registers according to the capability of the HW. Is the HW resolution is lower than the Eth_ Time Stamp Type resolution resp. range, the remaining bits will be filled with 0. Important Note: Eth If_ Get Curren t Time may be called within an exclusive area.
함수 EthIf_EnableEgressTimeStamp [SWS_EthIf_00160] 📄 PDF
void EthIf_EnableEgressTimeStamp (uint8 CtrlIdx, Eth_BufIdxType BufIdx thernetInterface); ⚠️
Activates egress time stamping on a dedicated message object. Some HW does store once the egress time stamp marker and some HW needs it always before transmission. There will be no "disable" functionality, due to the fact, that the message type is always " time stamped" by network design.
동기 함수 EthIf_EnableEgressTimeStamp은 전용 메시지 객체 또는 전송 버퍼에 대한 송신 타임스탬프 캡처(Egress Time Stamping)를 활성화하는 데 사용됩니다 [SWS_EthIf_00160]. 이 인터페이스는 헤더 파일 EthIf.h를 통해 제공됩니다 [SWS_EthIf_00160].
매개변수 및 호출
호출 시 이 함수는 두 개의 입력 매개변수 전달을 기대합니다 [SWS_EthIf_00160].
CtrlIdx: 주소 지정된 이더넷 컨트롤러의 인덱스 [SWS_EthIf_00160].BufIdx: 애플리케이션이 전송 타임스탬프 캡처를 기대하는 메시지 버퍼의 인덱스 [SWS_EthIf_00160].
이 함수는 반환값(void)과 입력 또는 출력 매개변수를 가지지 않습니다 [SWS_EthIf_00160].
하드웨어 동작 및 동시성
하드웨어의 동작은 컨트롤러에 따라 다릅니다. 일부 하드웨어 유형은 1회 설정 후 전송 타임스탬프용 마킹을 영구적으로 저장하는 반면, 다른 컨트롤러는 개별 전송마다 이를 반드시 요구합니다 [SWS_EthIf_00160]. 해석: 따라서 영구 저장이 지원되지 않는 컨트롤러에서는 애플리케이션이 각 전송 과정 전에 이 함수를 매번 다시 호출해야 할 것으로 보입니다. 네트워크 설계에 따라 해당 메시지 유형에 영구적으로 타임스탬프가 지정되므로, 사양상 비활성화 옵션은 존재하지 않습니다 [SWS_EthIf_00160]. 질문 Q-e87b424598f8a684 (열림)
동시성과 관련하여 이 함수는 재진입 불가능(Non Reentrant)으로 정의됩니다 [SWS_EthIf_00160].
이 사용 지침은 AUTOSAR R20-11 사양을 바탕으로 자동 생성되었습니다.
함수 EthIf_GetEgressTimeStamp [SWS_EthIf_00166] 📄 PDF
Std_ReturnType EthIf_GetEgressTimeStamp (uint8 CtrlIdx, Eth_BufIdxType BufIdx, Eth_TimeStampQualType* timeQualPtr, thernetInterface* timeStampPtr); ⚠️
Reads back the egress time stamp on a dedicated message object. It must be called within the Tx Confirmation() function.
함수 EthIf_GetIngressTimeStamp [SWS_EthIf_00172] 📄 PDF
Std_ReturnType EthIf_GetIngressTimeStamp (uint8 CtrlIdx, const Eth_DataType* DataPtr, Eth_TimeStampQualType* timeQualPtr, Eth_TimeStampType* timeStampPtr);
Reads back the ingress time stamp on a dedicated message object. It must be called within the Rx Indication() function.
함수 EthIf_SwitchPortGroupRequestMode [SWS_EthIf_91102] 📄 PDF
Std_ReturnType EthIf_SwitchPortGroupRequestMode (EthIf_SwitchPortGroupIdxType PortGroupIdx, Eth_ModeType PortMode);
Request a mode for the Eth If Swt Port Group. The call shall be forwarded to Eth Swt by calling Eth Swt_ Set Switch P ort Mode for all Eth Swt Ports referenced by the port group.
비동기 함수 EthIf_SwitchPortGroupRequestMode은 스위치 포트 그룹에 대한 작동 모드를 요청합니다([SWS_EthIf_91102]). 이 호출은 재진입 불가능으로 지정되어 있으며 포트 그룹의 인덱스(PortGroupIdx) 및 원하는 대상 모드(PortMode)를 전달합니다. 모드로는 비활성화를 위한 ETH_MODE_DOWN, 활성화를 위한 ETH_MODE_ACTIVE, 네트워크 웨이크업을 동반한 활성화를 위한 ETH_MODE_ACTIVE_WITH_WAKEUP_REQUEST을 사용할 수 있습니다([SWS_EthIf_91102]). 성공적으로 시작되면 함수는 E_OK을 반환하고, 그렇지 않으면 E_NOT_OK를 반환합니다([SWS_EthIf_91102]).
기본적으로 EthIf은 참조된 모든 포트에 대해 EthSwt_SetSwitchPortMode을 호출하여 하위 스위치로 요청을 전달합니다([SWS_EthIf_91102]). 이때 다양한 모드에 대해 특정 동작 규칙이 적용됩니다:
- 비활성화(
ETH_MODE_DOWN): 포트가 현재ETH_MODE_ACTIVE상태에 있고 해당 포트를 참조하는 모든 그룹에 대해ETH_MODE_DOWN이 요청된 경우,EthIf는 지연 시간EthIfSwitchOffPortTimedelay을 갖는 타이머를 시작합니다([SWS_EthIf_00270]). - 활성화(
ETH_MODE_ACTIVE또는ETH_MODE_ACTIVE_WITH_WAKEUP_REQUEST): 해당 포트 그룹의 포트에 대해 실행 중인 셧다운 지연 타이머가 즉시 취소됩니다([SWS_EthIf_00483]). - 웨이크업 요청(
ETH_MODE_ACTIVE_WITH_WAKEUP_REQUEST): 현재 포트 모드와 관계없이 그룹의 모든 포트에 대해 호출이 반드시 고정된 순서로 전달됩니다. 먼저ETH_MODE_ACTIVE_WITH_WAKEUP_REQUEST과 함께EthSwt_SetSwitchPortMode이 호출되고, 현재 링크 상태가ETHTRCV_LINK_STATE_DOWN인 경우ETHTRCV_LINK_STATE_ACTIVE과 함께EthSwt_PortLinkStateRequest가 호출됩니다([SWS_EthIf_00482]).
이 서비스에 대한 특정 DET 또는 DEM 오류 메시지는 나열되어 있지 않으며, 모드 변경 실패는 반환값 E_NOT_OK을 통해 직접 표시됩니다([SWS_EthIf_91102]).
이 사용 지침은 AUTOSAR 사양 R20-11을 바탕으로 자동 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I2)
함수 EthIf_StartAllPorts [SWS_EthIf_91103] 📄 PDF
Std_ReturnType EthIf_StartAllPorts (void);
Request to set all configured and affected Eth Swt Ports to ETH_ MODE_ ACTIVE
함수 EthIf_StartAllPorts은 구성되고 영향을 받는 모든 이더넷 스위치 포트를 ETH_MODE_ACTIVE 상태로 전환하도록 요청하는 데 사용됩니다([SWS_EthIf_91103]). 호출은 매개변수 없이 수행되며, 비동기 시맨틱을 갖고 재진입 가능으로 지정되어 있습니다([SWS_EthIf_91103]). 반환값으로 E_OK는 요청의 수락을 나타내며, E_NOT_OK는 거부를 나타냅니다([SWS_EthIf_91103]).
EthIf_StartAllPorts 호출 후 EthIf은 고정된 정의 순서에 따라 이더넷 스위치의 영향을 받는 모든 포트(EthSwtPorts)로 제어 명령을 전달합니다([SWS_EthIf_00275]):
- 먼저, 현재 모드가
ETH_MODE_DOWN인 경우ETH_MODE_ACTIVE과 함께EthSwt_SetSwitchPortMode이 호출됩니다([SWS_EthIf_00275]). - 그 후 현재 링크 상태가
ETHTRCV_LINK_STATE_DOWN인 경우ETHTRCV_LINK_STATE_ACTIVE과 함께EthSwt_PortLinkStateRequest호출이 수행되고, 이러한 모든 포트에 대해 시간 범위EthIfPortStartupActiveTime을 갖는 타이머가 시작됩니다([SWS_EthIf_00275]).
이러한 방식으로 활성화된 포트가 시간 범위 EthIfPortStartupActiveTime 내에 ETH_MODE_ACTIVE로 정규 요청되지 않으면, EthIf는 해당 포트를 자동으로 다시 비활성화합니다([SWS_EthIf_00276]). 비활성화는 반드시 역순으로 수행됩니다:
- 먼저
ETHTRCV_LINK_STATE_DOWN과 함께EthSwt_PortLinkStateRequest이 호출됩니다([SWS_EthIf_00276]). - 그 후
ETH_MODE_DOWN과 함께EthSwt_SetSwitchPortMode이 호출됩니다([SWS_EthIf_00276]).
이 사용 지침은 AUTOSAR Classic Platform R20-11 사양을 기반으로 합니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_SetSwitchMgmtInfo [SWS_EthIf_91003] 📄 PDF
Std_ReturnType EthIf_SetSwitchMgmtInfo (uint8 CtrlIdx, Eth_BufIdxType BufIdx, EthSwt_MgmtInfoType* MgmtInfoPtr);
Provides additional management information along to an Ethernet frame that requires special treatment within the Switch. It has to be called between Eth If_ Provide Tx Buffer() and Eth If_ Transmit() of the related frame.
함수 EthIf_GetRxMgmtObject [SWS_EthIf_91105] 📄 PDF
Std_ReturnType EthIf_GetRxMgmtObject (uint8 CtrlIdx, Eth_DataType* DataPtr, EthSwt_MgmtObjectType* * MgmtObjectPtr);
Request the Mgmt Object of the (in this context) unique Data Ptr.
함수 EthIf_GetTxMgmtObject [SWS_EthIf_91106] 📄 PDF
Std_ReturnType EthIf_GetTxMgmtObject (uint8 CtrlIdx, Eth_BufIdxType BufIdx, EthSwt_MgmtObjectType* * MgmtObjectPtr);
Request the Mgmt Object of the (in this context) unique Buf Idx.
함수 EthIf_SwitchEnableTimeStamping [SWS_EthIf_91007] 📄 PDF
Std_ReturnType EthIf_SwitchEnableTimeStamping (uint8 CtrlIdx, Eth_BufIdxType BufIdx, EthSwt_MgmtInfoType* MgmtInfo);
Activates egress time stamping on a dedicated message object, addressed by Ctrl Idx and Buf Idx.
함수 EthIf_SwitchEnableTimeStamping([SWS_EthIf_91007])은 스위치 레벨에서 특정 메시지 객체에 대한 이그레스 타임스탬프 캡처를 활성화합니다. 연관된 전송 객체는 컨트롤러 인덱스 CtrlIdx 및 버퍼 인덱스 BufIdx을(를) 통해 주소 지정됩니다.
호출 및 매개변수
호출은 동기식([SWS_EthIf_91007])으로 수행됩니다. 함수는 입력 매개변수로 EthIf 컨텍스트 내의 컨트롤러 인덱스 CtrlIdx 및 애플리케이션이 타임스탬프 지정을 기대하는 메시지 버퍼에 대한 BufIdx을(를) 요구합니다. EthSwt_MgmtInfoType* 타입의 출력 매개변수 MgmtInfo을(를) 통해 관련 관리 정보가 제공됩니다([SWS_EthIf_91007]).
반환값 및 동작
함수는 Std_ReturnType 타입의 반환값을 통해 결과를 알립니다([SWS_EthIf_91007]):
E_OK: 이그레스 타임스탬프 지정이 성공적으로 활성화되었습니다([SWS_EthIf_91007]).E_NOT_OK: 타임스탬프 지정 활성화에 실패했습니다([SWS_EthIf_91007]).
제약 사항 및 동시성
인터페이스는 재진입 불가능(Non Reentrant)으로 명시되어 있습니다([SWS_EthIf_91007]). 따라서 호출자는 병렬 호출이 방지되도록 보장해야 합니다. 선언은 헤더 EthIf.h을(를) 통해 제공됩니다([SWS_EthIf_91007]).
본 사용 지침은 AUTOSAR R20-11을 기반으로 자동 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_VerifyConfig [SWS_EthIf_91012] 📄 PDF
Std_ReturnType EthIf_VerifyConfig (uint8 SwitchIdx, boolean* Result);
Forwarded t o Eth Swt_ Verify Config. Eth Swt_ Verify Config verifies the Switch thernet Interface AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_EthernetInterface Configuration depending on the HW - Architecture, HW - capability and the intended accuracy of this verification.
동기식 인터페이스 함수 EthIf_VerifyConfig은(는) 스위치 구성을 확인하는 역할을 하며 호출을 EthSwt_VerifyConfig(으)로 직접 전달합니다 [SWS_EthIf_91012]. 실제 검증은 각 하드웨어 아키텍처, 하드웨어 기능 및 의도된 검사 정확도에 따라 Ethernet 스위치 드라이버에 의해 수행됩니다 [SWS_EthIf_91012].
사용법 및 매개변수
이 함수는 서비스 ID 0x40과(와) 함께 헤더 EthIf.h을(를) 통해 사용할 수 있으며 두 개의 매개변수를 필요로 합니다 [SWS_EthIf_91012]:
SwitchIdx(in): Ethernet 스위치 드라이버 컨텍스트 내 스위치의 인덱스.Result(out): 검증 결과를 수신하는 부울 값에 대한 포인터입니다.TRUE은(는) 성공적으로 검증된 구성을 나타내고FALSE은(는) 감지된 손상을 나타냅니다.
반환값으로 Std_ReturnType은(는) 실행 상태를 보고합니다. E_OK은(는) 검증이 성공적으로 완료되었음을 알리고 E_NOT_OK은(는) 구성 검사 실패를 나타냅니다 [SWS_EthIf_91012].
동시성 및 오류 처리
이 함수는 비재진입(Non Reentrant)으로 명시되어 있습니다 [SWS_EthIf_91012]. 따라서 호출자는 경합 호출이 발생하지 않도록 해야 합니다. 페이로드에 DET 또는 DEM에 대한 특정 오류 코드가 나열되어 있지 않으므로 상세한 매개변수 검사(예: 인덱스 또는 포인터 유효성 검사)는 드라이버 측에서 또는 구현에 따라 처리될 것으로 추정됩니다. 질문 Q-03b5f343e97bec7f (열림)
본 사용 지침은 자동으로 생성되었으며 AUTOSAR R20-11의 사양 데이터만을 기반으로 합니다.
함수 EthIf_SetForwardingMode [SWS_EthIf_91013] 📄 PDF
Std_ReturnType EthIf_SetForwardingMode (uint8 SwitchIdx, boolean mode);
Verifies the Switch Configuration. If Configuration is not valid, Switch is reconfigured.
동기식 함수 EthIf_SetForwardingMode은(는) 헤더 EthIf.h을(를) 통해 제공되며 Ethernet 스위치에서 프레임 포워딩을 제어하는 역할을 합니다 [SWS_EthIf_91013]. 이 함수는 현재 스위치 구성을 확인하고 유효하지 않은 것으로 감지되면 스위치 재구성을 수행합니다 [SWS_EthIf_91013].
매개변수 및 반환값
호출 시(서비스 ID 0x41) 다음 입력 매개변수가 전달됩니다 [SWS_EthIf_91013]:
SwitchIdx: Ethernet 스위치 드라이버 컨텍스트 내 해당 스위치의 인덱스 [SWS_EthIf_91013].mode: 프레임 포워딩 활성화(TRUE) 또는 비활성화(FALSE)를 위한 부울 스위치 [SWS_EthIf_91013].
반환값으로 함수 Std_ReturnType은(는) 다음을 전달합니다 [SWS_EthIf_91013]:
E_OK: 명세에 따르면 포워딩이 성공적으로 중지되었음을 알렸습니다. 해석: 이는 더 일반적으로 요청된 포워딩 모드가 성공적으로 적용되었음을 확인하는 것일 수 있습니다 [SWS_EthIf_91013]. 질문 Q-f245de852fe854c0 (열림)E_NOT_OK: 프레임 포워딩 전환 또는 중지에 실패했습니다 [SWS_EthIf_91013].
동시성 및 제약사항
이 함수는 비재진입(Non Reentrant)으로 명시되어 있습니다 [SWS_EthIf_91013]. 따라서 호출자는 동일하거나 병렬인 스위치 컨텍스트에 대한 호출이 직렬화되어 실행되도록 하고 경합 호출이 발생하지 않도록 해야 합니다. DET 또는 DEM에 대한 특정 오류 코드는 표준에서 이 서비스에 대해 정의되어 있지 않습니다.
이 사용 지침은 자동으로 생성되었으며 AUTOSAR 명세를 기반으로 합니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_GetTrcvSignalQuality [SWS_EthIf_91056] 📄 PDF
Std_ReturnType EthIf_GetTrcvSignalQuality (uint8 TrcvIdx, EthIf_SignalQualityResultType* ResultPtr);
Retrieves the signal quality of the link of the given Ethernet transceiver
함수 EthIf_GetSwitchPortSignalQuality [SWS_EthIf_91058] 📄 PDF
Std_ReturnType EthIf_GetSwitchPortSignalQuality (uint8 SwitchIdx, uint8 SwitchPortIdx, EthIf_SignalQualityResultType* ResultPtr);
Retrieves the signal quality of the link of the given Ethernet switch port
함수 EthIf_ClearTrcvSignalQuality [SWS_EthIf_91059] 📄 PDF
Std_ReturnType EthIf_ClearTrcvSignalQuality (uint8 TrcvIdx);
Clear the stored signal quality of the link of the given Ethernet transceiver
함수 EthIf_ClearTrcvSignalQuality은 특정 트랜시버에 대한 Ethernet 연결의 저장된 신호 품질 값을 동기식으로 삭제하는 데 사용됩니다[SWS_EthIf_91059]. 이를 위해 호출자는 매개변수 TrcvIdx로 Ethernet Interface 컨텍스트 내 트랜시버 인덱스를 전달하며, 이에 따라 해당 측정값이 삭제됩니다[SWS_EthIf_00400].
인터페이스는 반환값으로 Std_ReturnType 타입을 반환합니다: 신호 품질 재설정에 성공하면 E_OK이 보고되고, 그렇지 않으면 E_NOT_OK로 작업이 실패합니다[SWS_EthIf_91059]. 해석: 페이로드에 특정 오류 코드나 DET 항목이 언급되어 있지 않으므로, 오류 값 E_NOT_OK는 유효하지 않은 인덱스 매개변수나 하위 드라이버로의 전달 실패로 인한 것으로 추정됩니다. 질문 Q-40d8f0c1fc7ba11e (열림)
동시성과 관련하여 이 서비스는 서로 다른 트랜시버 인덱스에 대해 재진입 가능하도록 구현되어 있으나, 동일한 TrcvIdx에 대해서는 명시적으로 재진입이 불가능합니다[SWS_EthIf_91059]. 따라서 동일한 트랜시버에 대한 다중 호출은 동시 컨텍스트에서 동시에 발생해서는 안 되며 적절히 보호되어야 합니다.
모듈 간 상호작용에서 이 호출은 TrcvIdx을 통해 주소 지정된 EthIfTransceiver에 대해 저장된 EthIf_SignalQualityResultType 타입의 신호 품질 값을 선별적으로 삭제합니다[SWS_EthIf_00400]. 서비스 ID 0x19를 갖는 동기식 인터페이스의 선언은 헤더 EthIf.h를 통해 제공됩니다[SWS_EthIf_91059].
이 텍스트는 AUTOSAR 사양 R20-11을 기반으로 AI에 의해 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_ClearSwitchPortSignalQuality [SWS_EthIf_91060] 📄 PDF
Std_ReturnType EthIf_ClearSwitchPortSignalQuality (uint8 SwitchIdx, uint8 SwitchPortIdx);
Clear the stored signal quality of the link of the given Et hernet switch port
사용
동기 함수 EthIf_ClearSwitchPortSignalQuality은 특정 Ethernet 스위치 포트의 연결에 대해 저장된 신호 품질 값을 재설정하는 데 사용됩니다[SWS_EthIf_91060]. 대상 포트의 주소 지정은 두 개의 입력 매개변수인 SwitchIdx(Ethernet 스위치 인덱스) 및 SwitchPortIdx(인터페이스 컨텍스트 내 포트 인덱스)을 통해 이루어집니다[SWS_EthIf_91060]. 이 함수는 헤더 파일 EthIf.h를 통해 제공됩니다[SWS_EthIf_91060].
상호작용 및 데이터 구조
[SWS_EthIf_00404]에 따르면, 이 호출은 주소 지정된 스위치 포트의 내부적으로 유지되는 EthIf_SignalQualityResultType 타입의 신호 품질 값을 삭제합니다. 이를 통해 상위 모듈은 이전 측정값을 선별적으로 폐기하고 연결 품질의 재평가를 시작할 수 있습니다.
오류 처리
작업의 성공 여부는 Std_ReturnType 타입의 반환값을 통해 표시됩니다: 성공적으로 삭제되면 함수는 E_OK을 반환하고, 그렇지 않으면 E_NOT_OK를 반환합니다[SWS_EthIf_91060]. 페이로드에는 특정 DET 또는 DEM 오류 코드가 정의되어 있지 않습니다. 해석: 반환값 E_NOT_OK는 특히 잘못된 인덱스가 전달되거나 기본 스위치 드라이버가 재설정을 수행할 수 없을 때 발생할 것으로 추정됩니다. 질문 Q-fc42f5b3e5414f6a (열림)
동시성 및 제약사항
재진입성과 관련하여 EthIf_ClearSwitchPortSignalQuality은 서로 다른 스위치 및 스위치 포트 인덱스에 대해 재진입 가능합니다[SWS_EthIf_91060]. 그러나 동일한 스위치 포트(SwitchPortIdx)에 대해서는 함수가 재진입 불가능한 것으로 명시되어 있습니다[SWS_EthIf_91060]. 따라서 호출자는 동일한 포트에 대한 동시 호출을 방지하거나 적절한 동기화 메커니즘을 통해 보호해야 합니다.
이 텍스트는 AI에 의해 생성되었으며 안내 문서 역할을 합니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_SetPhyTestMode [SWS_EthIf_91016] 📄 PDF
Std_ReturnType EthIf_SetPhyTestMode (uint8 TrcvIdx, EthTrcv_PhyTestModeType Mode);
Activates a given test mode.
동기식 인터페이스 함수 EthIf_SetPhyTestMode은(는) Ethernet 트랜시버에서 지정된 테스트 모드를 활성화하는 역할을 합니다 [SWS_EthIf_91016]. 서비스는 헤더 파일 EthIf.h에 선언되어 있으며 16진수 서비스 ID 0x17을(를) 통해 식별할 수 있습니다 [SWS_EthIf_91016].
호출을 위해 함수는 두 개의 입력 매개변수 전달을 기대합니다 [SWS_EthIf_91016]:
TrcvIdx: Ethernet Interface 컨텍스트 내 대상 트랜시버의 숫자 인덱스를 결정합니다 [SWS_EthIf_91016].Mode:EthTrcv_PhyTestModeType타입의 활성화할 구체적인 테스트 모드를 정의합니다 [SWS_EthIf_91016].
입력 및 출력 매개변수는 존재하지 않습니다[SWS_EthIf_91016]. 반환값으로 서비스는 Std_ReturnType 타입의 상태를 제공합니다[SWS_EthIf_91016]. 반환값 E_OK은 테스트 모드 활성화 요청이 성공적으로 수락되었음을 확인합니다[SWS_EthIf_91016]. 반면 값 E_NOT_OK는 요청이 거부되어 테스트 모드를 활성화할 수 없었음을 나타냅니다[SWS_EthIf_91016].
동시성과 관련하여 EthIf_SetPhyTestMode은 서로 다른 트랜시버 인덱스(TrcvIdx)에 대해 재진입 가능(reentrant)하도록 명시되어 있습니다[SWS_EthIf_91016]. 동일한 트랜시버 인덱스에 대해서는 명시적으로 재진입이 불가능합니다[SWS_EthIf_91016]. 따라서 호출자는 동일한 트랜시버 인스턴스에 대한 경합 호출을 피하고 대신 순차적으로 조정되도록 해야 합니다.
이 텍스트는 사양을 기반으로 AI에 의해 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_SetPhyLoopbackMode [SWS_EthIf_91018] 📄 PDF
Std_ReturnType EthIf_SetPhyLoopbackMode (uint8 TrcvIdx, EthTrcv_PhyLoopbackModeType Mode);
Activates a given loopback mode.
사용
동기 함수 EthIf_SetPhyLoopbackMode은 Ethernet 트랜시버에서 지정된 루프백 모드를 활성화하는 데 사용됩니다[SWS_EthIf_91018]. 선언은 헤더 파일 EthIf.h를 통해 제공됩니다[SWS_EthIf_91018].
호출 시 함수는 두 개의 입력 매개변수를 기대합니다:
TrcvIdx: Ethernet Interface 컨텍스트 내의 트랜시버 인덱스[SWS_EthIf_91018].Mode:EthTrcv_PhyLoopbackModeType타입의 활성화할 루프백 모드[SWS_EthIf_91018].
반환값으로 함수는 Std_ReturnType 타입의 상태를 반환합니다: E_OK은 요청이 수락되었음을 알리고, E_NOT_OK는 요청을 수락할 수 없었음을 나타냅니다[SWS_EthIf_91018]. 해석: 이 함수는 호출을 TrcvIdx을 담당하는 Ethernet 트랜시버 드라이버로 동기식으로 전달할 것으로 보입니다. 질문 Q-c4736bbfd250cca0 (열림)
오류 처리
DET 메시지나 DEM 이벤트와 같은 구체적인 오류 코드는 명세서 발췌본에 정의되어 있지 않습니다. 요청 수락에 실패하면 이는 반환값 E_NOT_OK을 통해 호출자에게 즉시 전달됩니다[SWS_EthIf_91018]. 호출자는 후속 테스트 또는 진단 절차를 계속 진행하기 전에 이 반환값을 확인해야 합니다.
동시성 및 제약사항
이 함수는 서로 다른 트랜시버 인덱스(TrcvIdx)에 대해 재진입 가능하지만, 동일한 트랜시버 인덱스에 대해서는 명시적으로 재진입이 불가능합니다[SWS_EthIf_91018]. 따라서 호출자는 동일한 트랜시버 인스턴스에 대한 동시 호출을 피하거나 적절한 동기화 메커니즘을 통해 보호해야 합니다[SWS_EthIf_91018].
이 텍스트는 AI에 의해 작성되었으며 AUTOSAR 사양을 기반으로 합니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_SetPhyTxMode [SWS_EthIf_91005] 📄 PDF
Std_ReturnType EthIf_SetPhyTxMode (uint8 TrcvIdx, EthTrcv_PhyTxModeType Mode);
Activates a given transmission mode. Tags: atp.Status=draft
동기 인터페이스 함수 EthIf_SetPhyTxMode은 Ethernet 트랜시버의 지정된 전송 모드를 활성화하는 역할을 합니다 [SWS_EthIf_91005]. 함수의 선언은 서비스 ID 0x13 아래 헤더 파일 EthIf.h에서 이루어집니다 [SWS_EthIf_91005].
호출을 위해 함수는 두 개의 입력 매개변수를 요구합니다 [SWS_EthIf_91005]:
TrcvIdx: Ethernet 인터페이스 컨텍스트 내 해당 트랜시버의 숫자 인덱스.Mode: 구체적으로 활성화할EthTrcv_PhyTxModeType타입의 전송 모드.
실행은 동기식으로 이루어집니다. 함수는 반환값으로 Std_ReturnType 타입의 상태를 반환합니다 [SWS_EthIf_91005]. 값 E_OK은(는) 요청이 성공적으로 수락되었음을 확인하는 반면, E_NOT_OK은(는) 요청을 수락할 수 없음을 나타냅니다 [SWS_EthIf_91005]. 사양 데이터에는 개발 오류 관리(DET) 또는 진단 이벤트 관리(DEM)에 대한 특정 오류 코드나 알림이 명시되어 있지 않습니다.
동시성 동작과 관련하여 EthIf_SetPhyTxMode은(는) 서로 다른 트랜시버 인덱스(TrcvIdx)에 대해 재진입 가능합니다 [SWS_EthIf_91005]. 그러나 동일한 트랜시버 인덱스에 대해 호출이 실행되는 경우, 함수는 재진입 불가능으로 정의되므로 동기화되거나 순차적인 호출이 필요합니다 [SWS_EthIf_91005].
공식적인 제약 사항으로서, 이 인터페이스 요소는 AUTOSAR CP R20-11 사양에서 draft 상태로 표시되어 있음에 유의해야 합니다 [SWS_EthIf_91005].
이 사용 지침은 AUTOSAR CP R20-11 사양을 기반으로 AI에 의해 작성되었습니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_GetCableDiagnosticsResult [SWS_EthIf_91014] 📄 PDF
Std_ReturnType EthIf_GetCableDiagnosticsResult (uint8 TrcvIdx, EthTrcv_CableDiagResultType* ResultPtr);
Retrieves the cable diagnostics result of a given transceiver.
함수 EthIf_GetPhyIdentifier [SWS_EthIf_91020] 📄 PDF
Std_ReturnType EthIf_GetPhyIdentifier (uint8 TrcvIdx, uint32* OrgUniqueIdPtr, uint8* ModelNrPtr, uint8* RevisionNrPtr);
Obtains the PHY identifier of the Ethernet Interface according to IEEE 802.3 - chapter 22.2.4.3.1 PHY Identifer.
함수 EthIf_GetBufWRxParams [SWS_EthIf_91002] 📄 PDF
Std_ReturnType EthIf_GetBufWRxParams (uint8 CtrlIdx, const WEth_BufWRxParamIdType* RxParamIds, uint32* ParamValues, uint8 NumParams);
Read out values related to the receive direction of the transceiver for a received packet. For example, this could be RSSI or Channel belonging to one single packet.
함수 EthIf_GetBufWTxParams [SWS_EthIf_91054] 📄 PDF
Std_ReturnType EthIf_GetBufWTxParams (uint8 CtrlIdx, const WEth_BufWTxParamIdType* TxParamIds, uint32* ParamValues, uint8 NumParams);
Read out values related to the transmit direction of the transceiver for a transmitted packet. For example, this could be transaction ID belonging to one single packet.
함수 EthIf_SetBufWTxParams [SWS_EthIf_91017] 📄 PDF
Std_ReturnType EthIf_SetBufWTxParams (uint8 CtrlIdx, Eth_BufIdxType BufIdx, const WEth_BufWTxParamIdType* TxParamIds, const uint32* ParamValues, uint8 NumParams);
Set values related to the transmit direction of the transceiver for a specific buffer (packet to be sent). For example, this can be the desired transmit power or the channel belonging to one single packet.
함수 EthIf_SetRadioParams [SWS_EthIf_91026] 📄 PDF
Std_ReturnType EthIf_SetRadioParams (uint8 TrcvId, const WEthTrcv_SetRadioParamIdType* ParamIds, const uint32* ParamValue, uint8 NumParams);
Set values related to a transceiver's wireless radio. For example, this could be the selection of the radio settings (channel, ...).
함수 EthIf_SetChanRxParams [SWS_EthIf_91034] 📄 PDF
Std_ReturnType EthIf_SetChanRxParams (uint8 TrcvId, uint8 RadioId, const WEthTrcv_SetChanRxParamIdType* ParamIds, const uint32* ParamValues, uint8 NumParams);
Set values related to the receive direction of a transceiver's wireless channel. For example, this could be a channel parameter like the frequency.
함수 EthIf_SetChanTxParams [SWS_EthIf_91042] 📄 PDF
Std_ReturnType EthIf_SetChanTxParams (uint8 TrcvId, uint8 RadioId, const WEthTrcv_SetChanTxParamIdType* TxParamIds, const uint32* ParamValues, uint8 NumParams);
Set values related to the transmit direction of a transceiver's wireless channel. For example, this could be the bitrate of a channel.
함수 EthIf_GetChanRxParams [SWS_EthIf_91050] 📄 PDF
Std_ReturnType EthIf_GetChanRxParams (uint8 TrcvId, uint8 RadioId, const WEthTrcv_GetChanRxParamIdType* ParamIds, thernetInterface uint32* ParamValues, uint8 NumParams); ⚠️
Read values related to the receive direction of the transceiver. For example, this could be a Channel Busy Ratio (CBR) or the average Channel Idle Time (CIT).
함수 EthIf_ProvideTxBuffer [SWS_EthIf_00067] 📄 PDF
BufReq_ReturnType EthIf_ProvideTxBuffer (uint8 CtrlIdx, Eth_FrameType FrameType, uint8 Priority, Eth_BufIdxType* BufIdxPtr, uint8* * BufPtr, uint16* LenBytePtr);
Provides access to a transmit buffer of the specified Ethernet controller.
동기식 및 재진입 가능한 함수 EthIf_ProvideTxBuffer(서비스 ID 0x09)은 CtrlIdx를 통해 지정된 이더넷 컨트롤러의 전송 버퍼에 대한 접근을 부여하며 헤더 EthIf.h을 통해 사용할 수 있습니다 [SWS_EthIf_00067].
버퍼 요청을 위해 호출자는 컨트롤러 인덱스(CtrlIdx), 이더넷 프레임 유형(FrameType) 및 VLAN 태그의 3비트 PCP 필드에 대한 우선순위(Priority)를 전달합니다 [SWS_EthIf_00067]. 호출자는 입출력 매개변수 LenBytePtr를 통해 원하는 버퍼 크기를 바이트 단위로 지정하고 실제로 제공된 길이를 반환받습니다 [SWS_EthIf_00067]. 성공적으로 할당되면 함수는 BufPtr을 통해 버퍼에 대한 포인터를 제공하고 후속 요청을 위해 BufIdxPtr을 통해 버퍼 리소스 인덱스를 제공합니다 [SWS_EthIf_00067].
버퍼 요청 결과는 반환 타입 BufReq_ReturnType을 통해 보고됩니다 [SWS_EthIf_00067].
BUFREQ_OK: 버퍼가 성공적으로 제공되었습니다 [SWS_EthIf_00067].BUFREQ_E_BUSY: 모든 버퍼 리소스가 현재 사용 중입니다 [SWS_EthIf_00067].BUFREQ_E_OVFL: 요청된 버퍼 길이가 사용 가능한 크기를 초과합니다 [SWS_EthIf_00067].BUFREQ_E_NOT_OK: 개발 오류가 감지되었습니다 [SWS_EthIf_00067].
본 사용 지침은 AUTOSAR CP R20-11 사양을 바탕으로 AI에 의해 생성되었습니다.
함수 EthIf_Transmit [SWS_EthIf_00075] 📄 PDF
Std_ReturnType EthIf_Transmit (uint8 CtrlIdx, Eth_BufIdxType BufIdx, Eth_FrameType FrameType, boolean TxConfirmation, uint16 LenByte, const uint8* PhysAddrPtr);
Triggers transmission of a previously filled transmit buffer
동기식 함수 EthIf_Transmit은 이전에 제공 및 채워진 전송 버퍼의 전송을 이더넷 인터페이스를 통해 트리거합니다([SWS_EthIf_00075]).
사용법 및 매개변수
호출은 다음 전달 매개변수와 함께 EthIf.h에 선언된 인터페이스를 통해 수행됩니다([SWS_EthIf_00075]):
CtrlIdx: 모듈EthIf의 컨텍스트에서의 이더넷 컨트롤러 인덱스.BufIdx: 전송할 버퍼 리소스의 인덱스.FrameType: Ethernet 프레임 유형.TxConfirmation: 전송 확인(confirmation) 활성화를 제어합니다.LenByte: 바이트 단위의 데이터 길이.PhysAddrPtr: 네트워크 바이트 순서의 물리적 대상 주소(MAC 주소).
반환값 및 동시성
반환값으로 함수는 전송이 성공적으로 트리거된 경우 E_OK을 반환하고, 전송이 실패한 경우 E_NOT_OK을 반환합니다([SWS_EthIf_00075]). 이 함수는 서로 다른 버퍼 및 컨트롤러 인덱스(BufIdx 및 CtrlIdx)를 사용한 호출에 대해 재진입이 가능합니다([SWS_EthIf_00075]).
이 사용 지침은 AUTOSAR 명세 R20-11을 기반으로 자동 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_GetVersionInfo [SWS_EthIf_00082] 📄 PDF
void EthIf_GetVersionInfo (Std_VersionInfoType* VersionInfoPtr);
Returns the version information of this module
함수 EthIf_GetSwitchPortMode [SWS_EthIf_91107] 📄 PDF
Std_ReturnType EthIf_GetSwitchPortMode (uint8 SwitchIdx, uint8 SwitchPortIdx, Eth_ModeType* PortModePtr);
Obtains the mode of the indexed switch port
함수 EthIf_GetTransceiverMode [SWS_EthIf_91108] 📄 PDF
Std_ReturnType EthIf_GetTransceiverMode (uint8 TrcvIdx, Eth_ModeType* TrcvModePtr);
Obtains the state of the indexed transceiver
함수 EthIf_SwitchPortGetLinkState [SWS_EthIf_91109] 📄 PDF
Std_ReturnType EthIf_SwitchPortGetLinkState (uint8 SwitchIdx, uint8 SwitchPortIdx, EthTrcv_LinkStateType* LinkStatePtr);
Obtains the link state of the indexed switch port
함수 EthIf_SwitchPortGetLinkState은 [SWS_EthIf_91109]에 따라 특정 스위치 포트의 현재 링크 상태를 쿼리하는 데 사용됩니다. Ethernet Switch Driver 컨텍스트 내의 스위치 인덱스 SwitchIdx와 대상 스위치의 포트 인덱스 SwitchPortIdx이 전달됩니다. 쿼리 결과는 LinkStatePtr 포인터를 통해 제공되며, 이는 ETHTRCV_LINK_STATE_DOWN(포트 분리됨) 또는 ETHTRCV_LINK_STATE_ACTIVE(포트 연결됨) 중 하나를 가집니다. 명세서에는 실행 동작이 동기식 또는 비동기식으로 표시되어 있으며, 이는 기본 스위치 드라이버 또는 하드웨어 연결에 따라 달라질 것으로 추정됩니다. 질문 Q-dde6f9e8f1b8ba52 (열림)
함수는 반환값으로 Std_ReturnType([SWS_EthIf_91109])을 반환합니다. 조회가 성공하면 E_OK가 반환됩니다. 링크 상태 확인에 실패하거나 스위치가 ETHSWT_STATE_UNINIT 또는 ETHSWT_STATE_INIT 상태에 있는 동안 함수가 호출되면 E_NOT_OK가 반환됩니다.
동시성과 관련하여 이 함수는 재진입 불가(Non Reentrant)로 명시되어 있으므로([SWS_EthIf_91109]), 동일한 컨텍스트에서의 동시 호출은 배제되어야 합니다. 선언은 서비스 ID 0x4b과 함께 헤더 EthIf.h를 통해 제공됩니다.
이 텍스트는 AI에 의해 생성되었으며, 참조된 AUTOSAR 명세서가 기준이 됩니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_TransceiverGetLinkState [SWS_EthIf_91110] 📄 PDF
Std_ReturnType EthIf_TransceiverGetLinkState (uint8 TrcvIdx, EthTrcv_LinkStateType* LinkStatePtr);
Obta ins the link state of the indexed transceiver
사용
동기 함수 EthIf_TransceiverGetLinkState은 [SWS_EthIf_91110]에 따라 TrcvIdx을 통해 주소 지정된 Ethernet 트랜시버의 현재 링크 상태(Link State)를 조회하는 데 사용됩니다. 인터페이스 선언은 헤더 EthIf.h을 통해 제공됩니다[SWS_EthIf_91110].
호출 시 다음 매개변수들이 전달됩니다 [SWS_EthIf_91110]:
TrcvIdx(입력): Ethernet Transceiver Driver 컨텍스트 내의 트랜시버 인덱스.LinkStatePtr(출력):EthTrcv_LinkStateType타입의 확인된 상태가 저장될 메모리 위치를 가리키는 포인터. 가능한 결과 값은 연결된 트랜시버의 경우ETHTRCV_LINK_STATE_ACTIVE, 연결이 끊긴 트랜시버의 경우ETHTRCV_LINK_STATE_DOWN입니다.
함수는 반환값으로 Std_ReturnType 타입의 상태 코드를 반환합니다: E_OK은 성공적인 실행을 알리는 반면, E_NOT_OK는 트랜시버를 초기화할 수 없었음을 나타냅니다[SWS_EthIf_91110].
오류 처리 및 제약 조건
조회가 실패하면 서비스 ID 0x4c을 갖는 서비스는 반환값 E_NOT_OK을 반환합니다[SWS_EthIf_91110]. 기능 명세에는 특정 DET 또는 DEM 오류 메시지가 나열되어 있지 않습니다.
동시성
이 함수는 재진입 불가(Non Reentrant)로 명시되어 있습니다[SWS_EthIf_91110]. 해석: 재진입성이 결여되어 있으므로 여러 스레드나 태스크 컨텍스트에서의 동시 호출은 허용되지 않을 것으로 보이며, 필요한 경우 호출자 측의 동기화가 필요합니다. 질문 Q-0459aa9b4c187439 (열림)
이 사용 참고사항은 SWS_EthIf_91110 명세를 기반으로 자동 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_SwitchPortGetBaudRate [SWS_EthIf_91111] 📄 PDF
Std_ReturnType EthIf_SwitchPortGetBaudRate (thernetInterface uint8 SwitchIdx, uint8 SwitchPortIdx, EthTrcv_BaudRateType* BaudRatePtr); ⚠️
Obtains the baud rate of the indexed switch port
함수 EthIf_SwitchPortGetBaudRate은 [SWS_EthIf_91111]에 따라 특정 Ethernet 스위치 포트의 현재 전송 속도를 조회하는 데 사용됩니다. 호출 시 스위치 인덱스(SwitchIdx)와 대상 스위치의 포트 인덱스(SwitchPortIdx)가 전달됩니다. 조회 결과는 EthTrcv_BaudRateType* 타입의 포인터 BaudRatePtr를 통해 제공되며, ETHTRCV_BAUD_RATE_10MBIT, ETHTRCV_BAUD_RATE_100MBIT, ETHTRCV_BAUD_RATE_1000MBIT 또는 ETHTRCV_BAUD_RATE_2500MBIT와 같은 속도를 나타낼 수 있습니다[SWS_EthIf_91111].
오류 동작과 관련하여 함수는 보드레이트 확인에 성공하면 E_OK을 반환합니다. 반환값 E_NOT_OK은 지정된 스위치 포트의 보드레이트를 읽을 수 없었거나 스위치 드라이버가 ETHSWT_STATE_UNINIT 또는 ETHSWT_STATE_INIT 상태에 있음을 나타냅니다[SWS_EthIf_91111].
명세서에는 이 함수가 재진입 불가(Non Reentrant) 및 동기/비동기로 표시되어 있습니다[SWS_EthIf_91111]. 동기식 또는 비동기식 동작 여부는 기본 Ethernet 스위치 드라이버의 연결 및 구현에 따라 달라질 것으로 추정됩니다. 질문 Q-1f4d760ff944df9d (열림) 재진입성이 없으므로 호출자는 인터페이스의 병렬 호출이 발생하지 않도록 해야 합니다.
이 사용 지침은 자동으로 생성되었으며 AUTOSAR 명세서 R20-11을 기반으로 합니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_TransceiverGetBaudRate [SWS_EthIf_91112] 📄 PDF
Std_ReturnType EthIf_TransceiverGetBaudRate (uint8 TrcvIdx, EthTrcv_BaudRateType* BaudRatePtr);
Obtains the baud rate of the indexed transceiver
서비스 ID 0x4e을 갖는 동기 함수 EthIf_TransceiverGetBaudRate은 색인화된 Ethernet 트랜시버의 현재 전송 속도를 읽는 데 사용됩니다[SWS_EthIf_91112]. 모듈 EthIf의 일부이며 헤더 파일 EthIf.h를 통해 제공됩니다[SWS_EthIf_91112].
uint8 타입의 입력 매개변수 TrcvIdx은 Ethernet 트랜시버 드라이버 컨텍스트 내의 트랜시버를 식별합니다[SWS_EthIf_91112]. 입출력(inout) 매개변수는 존재하지 않습니다[SWS_EthIf_91112]. 조회 결과는 출력 매개변수 BaudRatePtr를 통해 반환됩니다[SWS_EthIf_91112]. Eth_Trcv_BaudRateType 타입의 유효한 값은 ETHTRCV_BAUD_RATE_10MBIT (10 MBit/s), ETHTRCV_BAUD_RATE_100MBIT (100 MBit/s), ETHTRCV_BAUD_RATE_1000MBIT (1000 MBit/s) 및 ETHTRCV_BAUD_RATE_2500MBIT (2500 MBit/s)입니다[SWS_EthIf_91112].
이 함수는 Std_ReturnType 타입의 상태를 반환합니다: 호출이 성공하면 E_OK이 전달됩니다[SWS_EthIf_91112]. 트랜시버를 초기화할 수 없었던 경우 서비스가 실패하고 E_NOT_OK을 보고합니다[SWS_EthIf_91112].
호출 컨텍스트 및 동시성과 관련하여 EthIf_TransceiverGetBaudRate은 동기식 및 재진입 불가(Non Reentrant) 인터페이스로 정의되어 있습니다[SWS_EthIf_91112]. 호출 계층은 이 서비스에 대한 경합 호출을 피하거나 호출자 수준에서 직렬화해야 합니다[SWS_EthIf_91112].
이 텍스트는 AUTOSAR CP R20-11 명세를 기반으로 AI에 의해 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_SwitchPortGetDuplexMode [SWS_EthIf_91113] 📄 PDF
Std_ReturnType EthIf_SwitchPortGetDuplexMode (uint8 SwitchIdx, uint8 SwitchPortIdx, EthTrcv_DuplexModeType* DuplexModePtr);
Obtains the duplex mode of the indexed switch port
함수 EthIf_SwitchPortGetDuplexMode은 Ethernet 스위치의 색인화된 포트의 현재 듀플렉스 모드를 쿼리하는 데 사용됩니다[SWS_EthIf_91113]. 이 함수는 SwitchIdx을 통해 할당된 Ethernet 스위치 드라이버의 함수 EthSwt_GetDuplexMode로 호출을 전달합니다[SWS_EthIf_00428].
매개변수 및 인터페이스
SwitchIdx: 드라이버 컨텍스트 내 Ethernet 스위치의 인덱스[SWS_EthIf_91113].SwitchPortIdx: 대상 스위치의 해당 포트 인덱스[SWS_EthIf_91113].DuplexModePtr: 확인된 모드에 대한EthTrcv_DuplexModeType*타입의 출력 포인터이며,ETHTRCV_DUPLEX_MODE_HALF(반이중) 또는ETHTRCV_DUPLEXMODE_FULL(전이중) 중 하나입니다[SWS_EthIf_91113].
실행 및 오류 처리
반환값 E_OK은 성공적인 조회를 나타냅니다[SWS_EthIf_91113]. 포트의 듀플렉스 모드를 확인할 수 없거나 드라이버가 ETHSWT_STATE_UNINIT 또는 ETHSWT_STATE_INIT 상태에 있는 경우, 함수는 E_NOT_OK를 반환합니다[SWS_EthIf_91113].
인터페이스는 non-reentrant(Non Reentrant)이며 명세서에 동기식/비동기식으로 선언되어 있습니다 [SWS_EthIf_91113]. 해석: 실제 동기식 또는 비동기식 동작 방식은 연결된 스위치 드라이버의 특성에 따라 달라질 것으로 보입니다. 질문 Q-339413722431978f (열림)
이 사용 지침은 명세를 기반으로 자동 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_TransceiverGetDuplexMode [SWS_EthIf_91114] 📄 PDF
Std_ReturnType EthIf_TransceiverGetDuplexMode (uint8 TrcvIdx, EthTrcv_DuplexModeType* DuplexModePtr);
Obtains the duplex mode of the indexed tra nsceiver
동기 함수 EthIf_TransceiverGetDuplexMode은 [SWS_EthIf_91114]에 따라 인덱싱된 Ethernet 트랜시버의 현재 듀플렉스 모드를 확인합니다.
사용법 및 매개변수
호출은 동기식으로 수행되며 재진입 불가(Non Reentrant)로 명세되어 있습니다 [SWS_EthIf_91114]:
TrcvIdx: Ethernet 트랜시버 드라이버의 컨텍스트 내 트랜시버 인덱스를 입력 매개변수로 전달합니다 [SWS_EthIf_91114].DuplexModePtr: 결과를 수신하기 위한EthTrcv_DuplexModeType타입에 대한 출력 포인터 역할을 합니다. 가능한 값은ETHTRCV_DUPLEX_MODE_HALF(반이중) 또는ETHTRCV_DUPLEX_MODE_FULL(전이중)입니다 [SWS_EthIf_91114].
반환값 및 오류 처리
이 함수는 반환값으로 Std_ReturnType을 반환합니다 [SWS_EthIf_91114]:
E_OK: 듀플렉스 모드가 성공적으로 조회되어DuplexModePtr을 통해 제공되었습니다 [SWS_EthIf_91114].E_NOT_OK: 확인에 실패했으며, 명세서에 따르면 예를 들어 트랜시버를 초기화할 수 없는 경우가 이에 해당합니다 [SWS_EthIf_91114].
제약 사항 및 동시성
인터페이스가 non-reentrant이므로 외부 동기화 없이 동일하거나 서로 다른 트랜시버 인스턴스에 대해 병렬 호출을 수행해서는 안 됩니다. 선언은 헤더 EthIf.h을 통해 제공됩니다 [SWS_EthIf_91114].
이 사용 지침은 AUTOSAR R20-11 사양 데이터를 기반으로 자동 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_SwitchPortGetCounterValues [SWS_EthIf_91115] 📄 PDF
Std_ReturnType EthIf_SwitchPortGetCounterValues (uint8 SwitchIdx, thernetInterface uint8 SwitchPortIdx, Eth_CounterType* CounterPtr); ⚠️
Reads a list with drop counter values of the corresponding port of the switch. The meaning of these values is described at Eth_ Counter Type.
동기 함수 EthIf_SwitchPortGetCounterValues은 [SWS_EthIf_91115]에 따라 특정 Ethernet 스위치 포트의 카운터 값(Drop Counter)을 판독하는 데 사용됩니다. 헤더 EthIf.h을(를) 통해 제공되는 이 함수는 스위치 인덱스 SwitchIdx 및 포트 인덱스 SwitchPortIdx을(를) 수신하고 포인터 CounterPtr을(를) 통해 카운터 값을 다시 작성합니다([SWS_EthIf_91115]).
작동 방식 및 전달
[SWS_EthIf_00432]에 따라 EthIf_SwitchPortGetCounterValues은(는) 요청을 각 Ethernet 스위치 드라이버의 함수 EthSwt_GetCounterValues(으)로 즉시 전달합니다. 반환된 카운터 값은 IETF RFC 1757, RFC 1643 및 RFC 2233 표준을 따르며, 정확한 의미론적 의미는 구조체 Eth_CounterType에 매핑됩니다([SWS_EthIf_91115]).
반환값 및 오류 처리
반환값으로 함수는 Std_ReturnType을 제공합니다([SWS_EthIf_91115]):
E_OK: 카운터 값 판독에 성공했습니다([SWS_EthIf_91115]).E_NOT_OK: 카운터 값을 읽는 중 오류가 발생했습니다([SWS_EthIf_91115]).
동시성 및 제약사항
이 함수는 재진입 불가능(Non Reentrant)으로 명시되어 있습니다([SWS_EthIf_91115]). 따라서 동시 호출은 호출자 수준에서 동기화되어야 합니다. 해석: 사양에 내부 버퍼 할당이 언급되어 있지 않으므로, 호출자는 CounterPtr에 대해 유효하고 충분한 크기의 메모리 영역을 제공할 책임도 있을 것으로 보입니다. 질문 Q-140661eaa9693cce (열림)
이 사용 지침은 AUTOSAR 사양 R20-11을 기반으로 자동 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_SwitchPortGetRxStats [SWS_EthIf_91116] 📄 PDF
Std_ReturnType EthIf_SwitchPortGetRxStats (uint8 SwitchIdx, uint8 SwitchPortIdx, Eth_RxStatsType* RxStatsPtr);
Returns a list of statistic counters defined with E th_ Rx Tats Type. The majority of these Counters are derived from the IETF RFC2819.
사용법 및 의미론
함수 EthIf_SwitchPortGetRxStats([SWS_EthIf_91116])은 Ethernet 스위치 포트의 수신 통계 카운터를 조회하는 데 사용됩니다. 이 함수는 헤더 EthIf.h를 통해 제공되며 서비스 ID 0x52으로 관리됩니다([SWS_EthIf_91116]).
호출 시 다음 매개변수가 필요합니다([SWS_EthIf_91116]):
SwitchIdx: Ethernet 스위치 드라이버 컨텍스트 내의 Ethernet 스위치 인덱스입니다.SwitchPortIdx: 주소 지정된 스위치의 포트 인덱스.RxStatsPtr: 카운터 값이 기록되는Eth_RxStatsType타입 구조체에 대한 포인터입니다. 이러한 값의 대부분은 IETF RFC 2819(Remote Network Monitoring Management Information Base)에서 파생됩니다.
반환값 및 오류 처리
함수는 결과로 Std_ReturnType을 반환합니다([SWS_EthIf_91116]):
E_OK: 통계 데이터를 성공적으로 읽어왔습니다.E_NOT_OK: 카운터 값을 확인할 수 없습니다([SWS_EthIf_91116]). 이 호출에 대해 특정 DET 또는 DEM 오류 메시지는 명세되어 있지 않습니다.
동시성 및 제약사항
이 함수는 non-reentrant(Non Reentrant)로 분류됩니다([SWS_EthIf_91116]). 동기성이 "Synchronous /Asynchronous"로 지정되어 있으므로, 실제 블로킹 동작은 기반이 되는 Ethernet 스위치 드라이버의 구현에 따라 달라질 것으로 보입니다([SWS_EthIf_91116]). 질문 Q-d1e839075bf42e7f (열림) 호출자는 동일한 인터페이스에 대한 병렬 액세스를 피해야 합니다.
이 텍스트는 AUTOSAR R20-11을 기반으로 AI에 의해 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_SwitchPortGetTxStats [SWS_EthIf_91117] 📄 PDF
Std_ReturnType EthIf_SwitchPortGetTxStats (uint8 SwitchIdx, uint8 SwitchPortIdx, Eth_TxStatsType* TxStatsPtr);
Returns the list of Transmission Statistics out of IETF RFC1213 defined with Eth_ Tx Stats Type, where the maximal possible value shall denote an invalid value, e.g. this counter is not available.
함수 EthIf_SwitchPortGetTxStats은 Ethernet 스위치의 특정 포트에 대해 IETF RFC1213에 따른 전송 통계를 읽어오는 데 사용됩니다 [SWS_EthIf_91117]. 헤더 파일 EthIf.h를 통해 서비스 ID 0x53으로 사용할 수 있습니다 [SWS_EthIf_91117].
사용법 및 매개변수
호출 시 스위치 인덱스(SwitchIdx) 및 대상 스위치의 포트 인덱스(SwitchPortIdx)가 입력 매개변수로 전달됩니다 [SWS_EthIf_91117]. 확인된 카운터 값은 Eth_TxStatsType* 타입의 포인터 TxStatsPtr을 통해 제공됩니다 [SWS_EthIf_91117]. 카운터를 사용할 수 없거나 지원되지 않는 경우 카운터의 최대 가능 값이 유효하지 않은 값을 나타냅니다 [SWS_EthIf_91117].
반환값 및 오류 처리
이 함수는 Std_ReturnType 타입의 상태를 반환합니다[SWS_EthIf_91117]:
E_OK: 전송 통계가 성공적으로 확인되었습니다 [SWS_EthIf_91117].E_NOT_OK: 전송 통계를 가져올 수 없습니다 [SWS_EthIf_91117].
DET 또는 DEM에 대한 특정 오류 코드나 메시지는 소스에 명시되어 있지 않으므로, 오류 케이스는 기본적으로 반환값 E_NOT_OK을 통해 처리되어야 합니다 [SWS_EthIf_91117].
동시성 및 제약사항
명세에 따르면 EthIf_SwitchPortGetTxStats은 비동기식(Asynchronous) 및 재진입 불가(Non Reentrant)로 정의됩니다 [SWS_EthIf_91117]. 재진입성이 결여되어 있으므로 상위 동기화 없이 동시 호출을 수행해서는 안 됩니다 [SWS_EthIf_91117]. 서비스가 비동기식으로 선언되어 있으므로 전달된 버퍼 TxStatsPtr은 작업이 완전히 완료될 때까지 유효하게 유지되어야 할 것으로 보입니다(해석: 비동기 조회 시 버퍼 안정성) [SWS_EthIf_91117]. 질문 Q-8a14618d6990206b (열림)
이 사용 지침은 SWS_EthIf_91117 명세를 기반으로 자동 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_SwitchPortGetTxErrorCounterValues [SWS_EthIf_91118] 📄 PDF
Std_ReturnType EthIf_SwitchPortGetTxErrorCounterValues (uint8 SwitchIdx, uint8 SwitchPortIdx, Eth_TxErrorCounterValuesType* TxStatsPtr);
Returns the list of Transmission Error Counters out of IETF RFC1213 and RFC16 defined with Eth_ Tx Error Counter Values Type, where the maximal possible value shall denote an invalid value, e.g. this counter is not available.
EthIf.h을(를) 통해 제공되는 동기 함수 EthIf_SwitchPortGetTxErrorCounterValues(서비스 ID 0x54)은 Ethernet 스위치 포트에 대한 전송 오류 카운터 목록을 판독합니다 [SWS_EthIf_91118]. 카운터는 IETF RFC1213 및 RFC1643의 정의에 따르며, 출력 매개변수 TxStatsPtr에서 Eth_TxErrorCounterValuesType 타입을 통해 제공됩니다 [SWS_EthIf_91118].
호출 시 SwitchIdx은(는) 드라이버 컨텍스트 내의 스위치를 주소 지정하고, SwitchPortIdx은(는) 스위치의 구체적인 포트를 주소 지정합니다 [SWS_EthIf_91118]. 함수는 값을 성공적으로 확인한 경우 E_OK을(를) 반환하고, 전송 통계를 획득할 수 없는 경우 E_NOTOK을(를) 반환합니다 [SWS_EthIf_91118]. 이때 가능한 최댓값을 갖는 카운터 값은 유효하지 않거나 사용할 수 없는 카운터를 명시적으로 나타냅니다 [SWS_EthIf_91118].
실행에 대한 제약 사항으로 이 함수는 재진입 불가능(Non Reentrant)으로 지정되어 있습니다 [SWS_EthIf_91118]. 아키텍처 연계 구조에서 EthIf_SwitchPortGetTxErrorCounterValues은(는) 호출을 해당 Ethernet 스위치 드라이버의 함수 EthSwt_GetTxErrorCounterValues(으)로 직접 전달합니다 [SWS_EthIf_00438].
본 텍스트는 규격 요구사항을 바탕으로 AI에 의해 생성되었습니다.
함수 EthIf_SwitchPortGetMacLearningMode [SWS_EthIf_91119] 📄 PDF
Std_ReturnType EthIf_SwitchPortGetMacLearningMode (thernetInterface uint8 SwitchIdx, uint8 SwitchPortIdx, EthSwt_MacLearningType* MacLearningModePtr); ⚠️
Returns the MAC learning mode, i.e. 1.) HW learning enabled, 2.) Hardware l earning disabled, 3.) Software learning enabled. Note: This feature is hardware dependent, i.e. the switch hardware needs to support the different learning modes
함수 EthIf_SwitchPortGetMacLearningMode은 특정 스위치 포트의 현재 MAC 학습 모드를 조회합니다([SWS_EthIf_91119]). 확인할 수 있는 모드에는 하드웨어 학습 활성화됨, 하드웨어 학습 비활성화됨, 소프트웨어 학습 활성화됨이 포함됩니다([SWS_EthIf_91119]). 해당 스위치 하드웨어가 다양한 학습 모드를 지원해야 하므로 이 기능의 사용 가능 여부는 하드웨어에 따라 다릅니다([SWS_EthIf_91119]).
호출 컨텍스트 및 매개변수
인터페이스는 헤더 EthIf.h을 통해 제공되며 서비스 ID 0x55을 갖습니다([SWS_EthIf_91119]). 호출 시 다음 매개변수를 전달해야 합니다:
SwitchIdx(in): Ethernet 스위치 드라이버 컨텍스트 내 스위치 인덱스([SWS_EthIf_91119]).SwitchPortIdx(in): 대상 스위치의 포트 인덱스([SWS_EthIf_91119]).MacLearningModePtr(out): 확인된 모드가 저장되는EthSwt_MacLearningType타입 메모리 위치에 대한 포인터([SWS_EthIf_91119]).
동기화, 동시성 및 반환값
실행은 동기식/비동기식으로 명세되어 있으며 재진입 불가(Non Reentrant)입니다([SWS_EthIf_91119]). 반환값으로는 다음 상태를 갖는 Std_ReturnType이 사용됩니다:
E_OK: 조회가 성공적으로 수행됨([SWS_EthIf_91119]).E_NOT_OK: 실행 중 오류 발생([SWS_EthIf_91119]).E_NOT_OK에 대한 명세 설명에 문자 그대로 "configuration could be persistently reset"이라고 언급되어 있으나, 해석: 이는 명세서의 편집상 복사 오류일 것으로 보이며 일반적인 컨텍스트에서는 단순히 조회의 실패를 나타내는 것으로 보입니다. 질문 Q-7565d2fbd70e355d (열림)
이 텍스트는 AUTOSAR 사양 R20-11을 기반으로 AI에 의해 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_GetSwitchPortIdentifier [SWS_EthIf_91120] 📄 PDF
Std_ReturnType EthIf_GetSwitchPortIdentifier (uint8 SwitchIdx, uint8 SwitchPortIdx, uint32* OrgUniqueIdPtr, uint8* ModelNrPtr, uint8* RevisionNrPtr);
This function retrieves the OUI (24 bit) of the indexed Ethernet switch port.
함수 EthIf_GetSwitchIdentifier [SWS_EthIf_91121] 📄 PDF
Std_ReturnType EthIf_GetSwitchIdentifier (uint8 SwitchIdx, uint32* OrgUniqueIdPtr);
Obtain the Organizationally Unique Identifier that is given by the IEEE of the indexed Ethernet switch. This function shall provide the OUI of Ethernet switch. The OUI has a size of 24 bit. If a ethernet switch can provide the OUI the 8 most significant bits of the OUI shall be set to 0x00xxxxxx. If a Ethernet switch can not provide the OUI the 8 most significant bits of the OUI shall be set to 0x FFxxxxxx. Availa ble via Eth If.h
함수 EthIf_WritePortMirrorConfiguration [SWS_EthIf_91122] 📄 PDF
Std_ReturnType EthIf_WritePortMirrorConfiguration (uint8 MirroredSwitchIdx, const EthSwt_PortMirrorCfgType* PortMirrorConfigurationPtr);
Service EthIf_WritePortMirrorConfiguration.
동기 인터페이스 EthIf_WritePortMirrorConfiguration은 Ethernet 스위치 드라이버 내의 섀도 버퍼에 포트 미러링 구성을 저장하는 데 사용됩니다 [SWS_EthIf_91122].
호출 시 다음 입력 매개변수가 전달됩니다 [SWS_EthIf_91122]:
MirroredSwitchIdx: 미러링할 스위치 포트가 위치한 Ethernet 스위치 드라이버 컨텍스트 내 해당 스위치의 인덱스 [SWS_EthIf_91122].PortMirrorConfigurationPtr:EthSwt_PortMirrorCfgType구조체의 구성 데이터에 대한 포인터 [SWS_EthIf_91122].
Std_ReturnType 타입의 반환값은 실행 상태를 나타냅니다 [SWS_EthIf_91122]:
E_OK: 인덱싱된 포트에 대해 포트 미러링 구성이 성공적으로 작성되었습니다 [SWS_EthIf_91122].E_NOT_OK: 인덱싱된 스위치를 사용할 수 없는 등의 이유로 구성을 작성할 수 없습니다 [SWS_EthIf_91122].ETHSWT_PORT_MIRRORING_CONFIGURATION_NOT_SUPPORTED: 스위치 하드웨어 또는 Ethernet 스위치 드라이버에서 포트 미러링을 지원하지 않습니다 [SWS_EthIf_91122].
이 함수는 non-reentrant(Non Reentrant)로 명세되어 있으며 헤더 EthIf.h을 통해 사용할 수 있습니다 [SWS_EthIf_91122]. 해석: 내부 동기화 보호가 명세되어 있지 않으므로 호출자는 상위 메커니즘을 통해 동시 액세스를 조정해야 할 것으로 보입니다. 질문 Q-c731aedd871251a4 (열림)
이 텍스트는 AI에 의해 생성되었으며 SWS_EthIf_91122의 명세 요구사항만을 기반으로 합니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_ReadPortMirrorConfiguration [SWS_EthIf_91123] 📄 PDF
Std_ReturnType EthIf_ReadPortMirrorConfiguration (uint8 MirroredSwitchIdx, EthSwt_PortMirrorCfgType* PortMirrorConfigurationPtr);
Obtain the port mirror configuration of the given Ethernet switch.
사용법 및 의미론
함수 EthIf_ReadPortMirrorConfiguration은 특정 Ethernet 스위치의 포트 미러링 구성을 조회하는 데 사용됩니다 [SWS_EthIf_91123]. 헤더 파일 EthIf.h에 선언되어 있으며 서비스 ID 0x59을 갖습니다. 실행 동작은 비동기식(Asynchronous)으로 명세되어 있으며, 즉각적인 호출은 Std_ReturnType 타입의 상태 값을 반환합니다 [SWS_EthIf_91123].
매개변수 및 반환값
MirroredSwitchIdx(in): 미러링할 스위치 포트가 위치한 Ethernet 스위치 드라이버 컨텍스트 내 Ethernet 스위치의 인덱스 [SWS_EthIf_91123].PortMirrorConfigurationPtr(out): 읽어온 구성을 저장할 메모리 영역에 대한 포인터 [SWS_EthIf_91123].- 반환값:
E_OK은 구성 읽어오기 성공을 나타냅니다. 오류가 발생한 경우, 예를 들어 인덱싱된 Ethernet 스위치를 사용할 수 없을 때E_NOT_OK이 반환됩니다 [SWS_EthIf_91123].
상호작용 및 동시성
실행을 위해 EthIf_ReadPortMirrorConfiguration은 해당 호출을 해당 Ethernet 스위치 드라이버의 함수 EthSwt_ReadPortMirrorConfiguration로 직접 전달합니다 [SWS_EthIf_00448]. 이 함수는 재진입 불가(Non Reentrant)로 정의되어 있으므로 [SWS_EthIf_91123], 호출자는 동일한 인터페이스에 대한 병렬 호출을 피해야 합니다.
이 사용 지침은 AUTOSAR Classic Platform R20-11 사양을 기반으로 합니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_DeletePortMirrorConfiguration [SWS_EthIf_91124] 📄 PDF
Std_ReturnType EthIf_DeletePortMirrorConfiguration (uint8 MirroredSwitchIdx);
Delete the stored port mirror configuration of the given Mirrored Switch Idx. If no port mirror configuration was found for the given Mirrored Switch Idx, the return value shall be E_ OK.
동기 함수 EthIf_DeletePortMirrorConfiguration은 특정 스위치에 대해 저장된 포트 미러 구성을 삭제하는 데 사용됩니다([SWS_EthIf_91124]). 호출자는 매개변수 Mirrored Switch Idx를 통해 Ethernet Switch Driver 컨텍스트 내 스위치 인덱스를 전달합니다([SWS_EthIf_91124]). 인터페이스는 서비스 ID 0x5a를 가지며 헤더 파일 EthIf.h를 통해 제공됩니다([SWS_EthIf_91124]).
Std_ReturnType 타입의 반환값은 삭제 결과에 대한 정보를 제공합니다([SWS_EthIf_91124]):
E_OK: 포트 미러 구성이 성공적으로 삭제되었습니다([SWS_EthIf_91124]). 지정된 스위치 인덱스에 대해 저장된 구성이 발견되지 않은 경우에도 정의에 따라 함수는 마찬가지로E_OK를 반환합니다([SWS_EthIf_91124]).E_NOT_OK: 구성 삭제에 실패했습니다([SWS_EthIf_91124]). 이는 예를 들어 호출 시점에 포트 미러링이 여전히 활성화되어 있는 경우에 해당합니다([SWS_EthIf_91124]).
동시성과 관련하여 이 함수는 서로 다른 스위치 인덱스에 대해서는 reentrant이지만(Mirrored Switch Idx), 동일한 인덱스에 대한 다중 호출 시에는 non-reentrant입니다([SWS_EthIf_91124]). 활성 미러링이 E_NOT_OK의 오류 원인으로 명시적으로 언급되어 있으므로, 구성을 삭제하기 전에 포트 미러링을 비활성화해야 할 것으로 보입니다([SWS_EthIf_91124]). 질문 Q-b9e5665de687dbba (열림)
이 사용 지침은 AUTOSAR R20-11 사양을 바탕으로 자동 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_GetPortMirrorState [SWS_EthIf_91125] 📄 PDF
Std_ReturnType EthIf_GetPortMirrorState (uint8 SwitchIdx, uint8 PortIdx, EthSwt_PortMirrorStateType* PortMirrorStatePtr);
Obtain the current status of the port mirroring for the indexed Ethernet switch port
함수 EthIf_SetPortMirrorState [SWS_EthIf_91126] 📄 PDF
Std_ReturnType EthIf_SetPortMirrorState (uint8 MirroredSwitchIdx, uint8 PortIdx, EthSwt_PortMirrorStateType PortMirrorState);
Request to set the given port mirroring state of the port mirror configuration for the given Ethernet switch.
동기 함수 EthIf_SetPortMirrorState은 지정된 Ethernet 스위치에 대해 요청된 포트 미러링 구성 상태를 설정하는 데 사용됩니다([SWS_EthIf_91126]). 헤더 파일 EthIf.h를 통해 제공됩니다([SWS_EthIf_91126]).
이 함수는 호출 시 세 개의 매개변수를 필요로 합니다([SWS_EthIf_91126]):
MirroredSwitchIdx: 활성화 또는 비활성화할 포트 미러링 구성이 있는 Ethernet Switch Driver 컨텍스트 내의 Ethernet 스위치 인덱스입니다.PortIdx: 대상 Ethernet 스위치의 포트 인덱스입니다.PortMirrorState: 요청할 포트 미러링 상태로,PORT_MIRRORING_ENABLED또는PORT_MIRRORING_DISABLED입니다.
Std_ReturnType 타입의 반환값은 요청 결과를 나타냅니다([SWS_EthIf_91126]):
E_OK: 지정된 스위치 포트에 대해 요청된 상태가 성공적으로 설정되었습니다.E_NOT_OK: 설정에 실패했습니다. 예를 들어 대상 스위치를 사용할 수 없거나 포트 미러링 구성이 없는 경우입니다.
실행은 동기식으로 수행되며 재진입 불가(Non Reentrant)로 명세되어 있습니다([SWS_EthIf_91126]). 계층 구조 내에서 Ethernet Interface가 전달을 담당합니다: [SWS_EthIf_00454]에 따라 EthIf_SetPortMirrorState는 호출을 담당 Ethernet Switch Driver의 함수 EthSwt_SetPortMirrorState으로 직접 전달합니다.
이 텍스트는 AUTOSAR 사양 R20-11을 기반으로 AI에 의해 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_SetPortTestMode [SWS_EthIf_91127] 📄 PDF
Std_ReturnType EthIf_SetPortTestMode (uint8 SwitchIdx, uint8 PortIdx, EthTrcv_PhyTestModeType Mode);
Activates a given test mode of the indexed Ethernet switch port.
함수 EthIf_SetPortTestMode은 Ethernet 스위치의 인덱싱된 포트에서 사전 정의된 테스트 모드를 활성화하는 데 사용됩니다 [SWS_EthIf_91127]. 동기 서비스는 헤더 EthIf.h를 통해 서비스 ID 0x5d으로 사용할 수 있습니다 [SWS_EthIf_91127].
매개변수 및 반환값
테스트 모드 구성을 위해 인터페이스는 세 개의 입력 매개변수를 요구하며, 입출력 또는 순수 출력 매개변수는 존재하지 않습니다 [SWS_EthIf_91127]:
SwitchIdx(uint8): 해당 Ethernet 스위치 드라이버 컨텍스트 내 스위치 인덱스 [SWS_EthIf_91127].PortIdx(uint8): 대상 Ethernet 스위치의 포트 인덱스 [SWS_EthIf_91127].Mode(EthTrcv_PhyTestModeType): 스위치 포트에서 활성화할 테스트 모드 [SWS_EthIf_91127].
Std_ReturnType 타입의 반환값은 작업의 성공 여부를 나타냅니다 [SWS_EthIf_91127]:
E_OK: 인덱싱된 Ethernet 스위치 포트에 대한 포트 테스트 모드가 성공적으로 설정되었습니다 [SWS_EthIf_91127].E_NOT_OK: 대상 Ethernet 스위치 포트를 사용할 수 없는 등의 이유로 포트 테스트 모드 설정에 성공하지 못했습니다 [SWS_EthIf_91127].
동시성 및 상호 작용
이 함수는 non-reentrant(Non Reentrant)로 명세되어 있으며 동기식으로 동작합니다 [SWS_EthIf_91127]. 호출 시 EthIf_SetPortTestMode는 요청을 해당 Ethernet 스위치 드라이버의 하위 함수 EthSwt_SetPortTestMode으로 직접 전달합니다 [SWS_EthIf_00456].
이 사용 지침은 AUTOSAR R20-11 사양을 바탕으로 자동 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_SetPortLoopbackMode [SWS_EthIf_91128] 📄 PDF
Std_ReturnType EthIf_SetPortLoopbackMode (uint8 SwitchIdx, uint8 PortIdx, EthTrcv_PhyLoopbackModeType Mode);
Activates a given test loop - back mode of the indexed Ethernet switch port.
사용
함수 EthIf_SetPortLoopbackMode은 Ethernet 스위치의 인덱싱된 포트에 대해 사전 정의된 테스트 루프백 모드를 활성화하는 데 사용됩니다 [SWS_EthIf_91128]. 선언은 헤더 파일 EthIf.h를 통해 제공됩니다 [SWS_EthIf_91128]. 호출 시 다음 입력 매개변수가 전달됩니다:
SwitchIdx: Ethernet 스위치 드라이버 컨텍스트 내 Ethernet 스위치의 인덱스[SWS_EthIf_91128]입니다.PortIdx: 이전에 지정된 스위치의 대상 포트 인덱스 [SWS_EthIf_91128].Mode: 활성화할EthTrcv_PhyLoopbackModeType타입의 루프백 모드 [SWS_EthIf_91128].
상호 작용 및 전달
해당 함수는 하드웨어 수준에서 직접 구성을 수행하지 않습니다. 대신 EthIf_SetPortLoopbackMode은(는) 호출을 연관된 Ethernet 스위치 드라이버의 함수 EthSwt_SetPortLoopbackMode(으)로 직접 전달합니다 [SWS_EthIf_00458].
오류 처리 및 반환값
반환값은 Std_ReturnType 타입입니다 [SWS_EthIf_91128]:
E_OK: Ethernet 스위치의 인덱스된 포트에 대해 루프백 모드가 성공적으로 활성화되었습니다 [SWS_EthIf_91128].E_NOT_OK: 예를 들어 인덱스된 Ethernet 스위치 포트를 사용할 수 없는 경우와 같이 활성화에 실패했습니다 [SWS_EthIf_91128].
이 서비스에 대한 사양에는 DET 또는 DEM에 대한 특정 오류 코드가 나열되어 있지 않습니다.
동시성 및 제약사항
실행은 완전히 동기식으로 이루어지며, 해당 함수는 재진입 불가능(Non Reentrant)으로 명시되어 있습니다 [SWS_EthIf_91128]. 호출자는 병렬 호출을 방지해야 합니다. 해석: 테스트 모드 전환에 해당하므로, 이 호출은 일반적으로 태스크 수준의 초기화, 테스트 또는 진단 시퀀스 범위 내에서 발생할 것으로 추정됩니다. 질문 Q-cb4575c4a1d9c48b (열림)
이 텍스트는 사양을 기반으로 AI에 의해 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_SetPortTxMode [SWS_EthIf_91129] 📄 PDF
Std_ReturnType EthIf_SetPortTxMode (thernetInterface uint8 SwitchIdx, uint8 PortIdx, EthTrcv_PhyTxModeType Mode); ⚠️
Activates a given transmission mode of the indexed Ethernet switch port.
동기 함수 EthIf_SetPortTxMode은(는) 인덱스된 Ethernet 스위치 포트에 대해 지정된 전송 모드를 활성화합니다 [SWS_EthIf_91129]. 이 함수는 헤더 파일 EthIf.h을(를) 통해 제공되며 서비스 ID 0x5f을(를) 갖습니다 [SWS_EthIf_91129].
사용
호출 시 두 개의 인덱스를 통해 대상 포트를 지정하고 원하는 모드를 전달합니다 [SWS_EthIf_91129]:
SwitchIdx: Ethernet 스위치 드라이버 컨텍스트 내 스위치의 인덱스.PortIdx: 주소 지정된 스위치의 포트 인덱스.Mode: 활성화할 전송 모드(EthTrcv_PhyTxModeType타입).
반환값으로 함수 Std_ReturnType은(는) 다음을 전달합니다 [SWS_EthIf_91129]:
E_OK: 인덱스된 스위치 포트에 대한 전송 모드가 성공적으로 활성화되었습니다.E_NOT_OK: 예를 들어 인덱스된 스위치 포트를 사용할 수 없는 경우와 같이 활성화에 실패했습니다.
동시성 및 제약사항
인터페이스는 재진입 불가능(Non Reentrant)으로 명시되어 있습니다 [SWS_EthIf_91129]. 따라서 호출 인스턴스는 경합 호출이 발생하지 않도록 해야 합니다. 함수 정의에는 특정 DET 또는 DEM 오류 메시지가 나열되어 있지 않으며, 사양에 따르면 오류 동작은 E_NOT_OK 반환으로 제한됩니다 [SWS_EthIf_91129].
이 사용 참고사항은 AUTOSAR Classic Release R20-11 사양을 기반으로 AI에 의해 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_GetPortCableDiagnosticsResult [SWS_EthIf_91130] 📄 PDF
Std_ReturnType EthIf_GetPortCableDiagnosticsResult (uint8 SwitchIdx, uint8 PortIdx, EthTrcv_CableDiagResultType* ResultPtr);
Retrieves the cable diagnostics result of the indexed Ethernet switch port respectively the referenced Ethernet Transceiver Driver.
함수 EthIf_RunPortCableDiagnostic [SWS_EthIf_91131] 📄 PDF
Std_ReturnType EthIf_RunPortCableDiagnostic (uint8 SwitchIdx, uint8 PortIdx);
Trigger the cable diagnostics of the given Ethernet Switch port (Port Idx) by calling Eth Trcv_ Run Cable Diagnostic of the referenced Ethernet transceiver.
사용
비동기 인터페이스 EthIf_RunPortCableDiagnostic은(는) Ethernet 스위치의 선택된 포트에 대한 케이블 진단을 트리거합니다 [SWS_EthIf_91131]. 호출 시 파라미터 SwitchIdx(Ethernet 스위치 드라이버 컨텍스트 내 스위치 인덱스) 및 PortIdx(스위치에서 지정된 포트의 인덱스)이(가) 전달됩니다. 이 함수는 케이블 진단 트리거가 수락되는 즉시 E_OK을(를) 반환하며, 트리거가 거부되면 E_NOT_OK이(가) 반환됩니다 [SWS_EthIf_91131].
상호 작용 및 전제 조건
EthIf_RunPortCableDiagnostic 실행 시 EthIf은(는) 해당 EthIfController이(가) 동작 상태 ETH_MODE_ACTIVE에 있는지 확인할 의무가 있습니다 [SWS_EthIf_00464]. 이 조건에서 Ethernet Interface는 호출을 할당된 스위치 드라이버의 함수 EthSwt_RunPortCableDiagnostic(으)로 전달합니다 [SWS_EthIf_00464].
동시성 및 제약사항
해당 함수는 서로 다른 SwitchIdx 및 PortIdx 값에 대해 재진입 가능합니다 [SWS_EthIf_91131]. 반면 동일한 스위치 및 포트 인덱스 쌍에 대해서는 호출이 재진입 불가능으로 명시되어 있으므로, 동일한 포트에서의 병렬 실행은 피해야 합니다.
이 사용 지침은 AUTOSAR 명세 R20-11을 기반으로 자동 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_RunCableDiagnostic [SWS_EthIf_91132] 📄 PDF
Std_ReturnType EthIf_RunCableDiagnostic (uint8 TrcvIdx);
Trigger the cable diagnostics for the given Ethernet transceiver.
사용
함수 EthIf_RunCableDiagnostic은(는) 지정된 Ethernet 트랜시버에 대한 케이블 진단을 트리거합니다 [SWS_EthIf_91132]. 이 함수는 헤더 EthIf.h을(를) 통해 제공되며 서비스 ID 0x62 아래에서 관리됩니다 [SWS_EthIf_91132]. 전달 파라미터로는 Ethernet 트랜시버 드라이버 컨텍스트 내 대상 트랜시버의 인덱스를 매핑하는 TrcvIdx이(가) 사용됩니다 [SWS_EthIf_91132].
실행은 비동기식으로 이루어집니다 [SWS_EthIf_91132]. Std_ReturnType 타입의 반환값은 트리거 수락 여부를 나타냅니다:
E_OK: 케이블 진단 트리거가 성공적으로 수락되었습니다 [SWS_EthIf_91132].E_NOT_OK: 트리거가 수락되지 않았습니다 [SWS_EthIf_91132].
오류 처리
케이블 진단이 거부되면 함수는 즉시 E_NOT_OK을(를) 반환합니다 [SWS_EthIf_91132]. 본 사양에서는 이 함수에 대해 특정 개발 또는 생산 오류(DET/DEM)가 정의되어 있지 않습니다.
동시성 및 제약사항
동시성과 관련하여 EthIf_RunCableDiagnostic은(는) 서로 다른 인덱스(TrcvIdx)를 사용한 호출에 대해서는 재진입 가능하지만, 동일한 트랜시버 인덱스에 대해서는 재진입 불가능합니다 [SWS_EthIf_91132]. 동일한 트랜시버에서의 동시 진단 요청은 호출자가 방지해야 합니다. 해석: 함수가 순수하게 비동기식으로 동작하고 결과 데이터를 반환하지 않으므로, 진단 결과 제공은 별도의 메커니즘을 통해 이루어질 것으로 추정됩니다. 질문 Q-c65c009cd2e00dea (열림)
이 텍스트는 사양 SWS_EthIf_91132를 기반으로 AI에 의해 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_SwitchGetCfgDataRaw [SWS_EthIf_91133] 📄 PDF
Std_ReturnType EthIf_SwitchGetCfgDataRaw (uint8 SwitchIdx, uint32 Offset, uint16 Length, uint8* BufferPtr);
Retrieves the data in memory of the indexed Ethernet switch in variable length
인터페이스 함수 EthIf_SwitchGetCfgDataRaw은(는) 인덱스된 Ethernet 스위치의 가변 길이 구성 또는 메모리 데이터를 읽어오는 데 사용됩니다 [SWS_EthIf_91133]. 계층 모델의 틀 내에서 모듈은 호출을 독립적으로 처리하지 않고, 담당 Ethernet 스위치 드라이버의 함수 EthSwt_GetCfgDataRaw(으)로 직접 전달합니다 [SWS_EthIf_00468]. 이 함수는 헤더 EthIf.h에 선언되어 있으며 서비스 ID 0x63을(를) 갖습니다 [SWS_EthIf_91133].
호출 및 매개변수
호출은 비동기식으로 이루어지며 읽기 동작을 시작하기만 합니다 [SWS_EthIf_91133]. 파라미터로 함수는 다음을 요구합니다:
SwitchIdx: Ethernet 스위치 드라이버 컨텍스트 내 Ethernet 스위치의 인덱스 [SWS_EthIf_91133],Offset: 읽기 프로세스가 시작되는 Ethernet 스위치 메모리 내 시작 오프셋 [SWS_EthIf_91133],Length: 읽고 복사할 데이터 바이트 수 [SWS_EthIf_91133],BufferPtr: 데이터를 복사할 대상 메모리 위치에 대한 포인터 [SWS_EthIf_91133].
반환값으로 함수는 읽기 프로세스가 성공적으로 시작되었을 때 E_OK을(를) 반환합니다 [SWS_EthIf_91133]. 예를 들어 주소 지정된 스위치를 사용할 수 없는 경우와 같이 프로세스를 시작할 수 없는 경우 E_NOT_OK이(가) 보고됩니다 [SWS_EthIf_91133].
동시성
해당 함수는 재진입 불가능(Non Reentrant)으로 정의되어 있습니다 [SWS_EthIf_91133]. 따라서 호출자는 호출이 순차적으로 이루어지도록 해야 합니다. 해석: 비동기적 특성으로 인해 E_OK 반환 시 버퍼 내용이 아직 최종적으로 채워지지 않고, 드라이버에 의해 시간 지연을 두고 제공될 것으로 추정됩니다. 질문 Q-0abda93fb8830dd4 (열림)
이 사용 지침은 AUTOSAR CP R20-11 사양을 기반으로 자동으로 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_SwitchGetCfgDataInfo [SWS_EthIf_91134] 📄 PDF
Std_ReturnType EthIf_SwitchGetCfgDataInfo (uint8 SwitchIdx, uint32* DataSizePtr, uint32* DataAdressPtr);
Retrieves the total size of data and the memory start address of the indexed Ethernet Switch.
함수 EthIf_SwitchGetCfgDataInfo은(는) 인덱스된 Ethernet 스위치에 대한 구성 레지스터의 시작 주소뿐만 아니라 구성 데이터의 총 크기를 결정합니다 [SWS_EthIf_91134]. 인터페이스는 헤더 EthIf.h에 선언되어 있으며 서비스 ID 0x64 아래에서 관리됩니다 [SWS_EthIf_91134].
해당 함수는 다음 파라미터를 사용합니다 [SWS_EthIf_91134]:
SwitchIdx(in): Ethernet 스위치 드라이버 컨텍스트 내 Ethernet 스위치의 인덱스.DataSizePtr(out): 구성 데이터의 총 크기를 복사할 메모리 위치에 대한 포인터.DataAdressPtr(out): 구성 레지스터의 시작 주소를 복사할 메모리 위치에 대한 포인터.
반환값으로 함수는 데이터를 성공적으로 가져왔을 때 E_OK을(를) 반환하거나, 인덱스된 스위치를 사용할 수 없는 등의 이유로 프로세스가 실패한 경우 E_NOT_OK을(를) 반환합니다 [SWS_EthIf_91134]. 본 사양 범위에서는 이 서비스에 대해 DET 또는 DEM에 대한 특정 오류 코드가 정의되어 있지 않습니다.
호출 컨텍스트에 대해 함수는 재진입 가능하며 형식적으로 비동기로 명시되어 있습니다 [SWS_EthIf_91134]. 콜백 메커니즘이 지정되어 있지 않으므로 E_OK 반환 시 데이터가 즉시 제공될 것으로 추정됩니다(해석: 비동기 분류는 내부 드라이버 접근을 나타내는 것으로 추정됨). 질문 Q-bf49882a16548ea4 (열림)
이 텍스트는 AI에 의해 생성되었으며 AUTOSAR 표준의 사양을 기반으로 합니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_SwitchPortGetMaxFIFOBufferFillLevel [SWS_EthIf_91135] 📄 PDF
Std_ReturnType EthIf_SwitchPortGetMaxFIFOBufferFillLevel (uint8 SwitchPortIdx, uint8 PortIdx, uint8 SwitchPortEgressFifoIdx, uint32* SwitchPortEgressFifoBufferLevelPtr);
Service EthIf_SwitchPortGetMaxFIFOBufferFillLevel.
사용 및 호출
함수 EthIf_SwitchPortGetMaxFIFOBufferFillLevel은(는) Ethernet 스위치의 특정 이그레스(Egress) 포트에 대해 마지막 읽기 액세스 이후 할당된 최대 FIFO 버퍼 메모리(바이트 단위)를 결정합니다 [SWS_EthIf_91135]. 호출은 예를 들어 Complex Device Driver (CDD)에 의해 수행될 수 있습니다 [SWS_EthIf_91135]. 주소 지정을 위해 스위치 인덱스(SwitchPortIdx), 포트 인덱스(PortIdx) 및 FIFO 인덱스(SwitchPortEgressFifoIdx)가 전달됩니다. 결정된 충전 레벨은 SwitchPortEgressFifoBufferLevelPtr이(가) 가리키는 메모리 영역에 기록됩니다 [SWS_EthIf_91135].
동시성 및 실행
해당 함수는 비동기 실행 시맨틱을 가집니다 [SWS_EthIf_91135]. 서로 다른 스위치 및 포트 인덱스에 대해서는 재진입 가능하지만, SwitchPortIdx 및 PortIdx의 동일한 조합에 대해서는 동시에 호출할 수 없습니다 [SWS_EthIf_91135]. 포인터 전달과 동시에 이루어지는 비동기 시맨틱으로 인해, 결과를 위한 참조 메모리 영역은 작업이 완료될 때까지 유효하게 유지되어야 할 것으로 추정됩니다. 질문 Q-c941ffec278a86cd (열림)
오류 처리 및 드라이버 상호작용
조회가 성공하면 함수는 E_OK을(를) 반환하고, 그렇지 않으면 E_NOT_OK을(를) 반환합니다 [SWS_EthIf_91135]. 스위치 하드웨어가 포트 기반의 최대 FIFO 버퍼 충전 레벨 결정을 지원하지 않는 경우, 대상 주소 SwitchPortEgressFifoBufferLevelPtr의 값은 0xFFFFFFFF(으)로 설정됩니다 [SWS_EthIf_91135]. 모듈은 추가 실행을 위해 할당된 Ethernet 스위치 드라이버의 드라이버 함수 EthSwt_GetMaxFIFOBufferFillLevel(으)로 호출을 전달합니다 [SWS_EthIf_00472].
이 텍스트는 사양을 기반으로 AI에 의해 생성되었습니다.
함수 EthIf_TransceiverGetMacMethod [SWS_EthIf_91021] 📄 PDF
Std_ReturnType EthIf_TransceiverGetMacMethod (uint8* TrcvIdx, EthTrcv_MacMethodType* MacModePtr);
Obtains the media access mode of the transceiver. Tags: atp.Status=draft thernet Interface AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_EthernetInterface
사용법 및 의미론
함수 EthIf_TransceiverGetMacMethod(서비스 ID 0x66)은 Ethernet 트랜시버의 구성된 매체 접근 제어 방식을 동기식으로 조회하는 데 사용됩니다[SWS_EthIf_91021]. 헤더 파일 EthIf.h을 통해 제공되며 다음 인터페이스 매개변수를 사용합니다:
TrcvIdx(in): Ethernet 트랜시버 드라이버 컨텍스트 내 트랜시버의 인덱스[SWS_EthIf_91021].MacModePtr(out): 확인된 접근 제어 방식이 저장될 메모리 위치에 대한EthTrcv_MacMethodType타입의 포인터[SWS_EthIf_91021]. 유효한 결과 값은ETHTRCV_MAC_TYPE_CSMA_CD(충돌 감지 기능이 있는 반송파 감지 다중 접속, Carrier-Sense Multiple Access mit Collision Detection) 및ETHTRCV_MAC_TYPE_PLCA(물리 계층 충돌 회피, Physical Layer Collision Avoidance)입니다.
반환값 및 오류 처리
반환값으로 인터페이스는 Std_ReturnType 타입의 상태를 반환합니다 [SWS_EthIf_91021]:
E_OK: 매체 접근 제어 방식이 성공적으로 읽혀MacModePtr을 통해 제공되었습니다.E_NOT_OK: 트랜시버에 대한 요청이 수락되지 않았습니다[SWS_EthIf_91021]. 이 서비스에 대한 명세에는 특정 DET 또는 DEM 오류 코드가 나열되어 있지 않습니다.
동시성 및 제약 조건
실행은 동기식으로 수행되지만, 함수는 재진입 불가(Non Reentrant)로 명시되어 있습니다[SWS_EthIf_91021]. 따라서 호출자는 동일한 드라이버 컨텍스트 내에서 동시 또는 중단 호출이 발생하지 않도록 해야 합니다. 또한 이 서비스는 릴리스 R20-11에서 atp.Status=draft 상태로 표시되어 있다는 점에 유의해야 합니다[SWS_EthIf_91021].
이 사용 참고사항은 EthIf_TransceiverGetMacMethod에 대한 AUTOSAR 명세를 기반으로 자동 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_RxIndication [SWS_EthIf_00085] 📄 PDF
void EthIf_RxIndication (uint8 CtrlIdx, Eth_FrameType FrameType, boolean IsBroadcast, const uint8* PhysAddrPtr, const Eth_DataType* DataPtr, uint16 LenByte);
Handles a received frame received by the indexed controller
사용법 및 의미론
동기식 함수 EthIf_RxIndication은 인덱싱된 물리적 이더넷 컨트롤러를 통해 수신된 이더넷 프레임을 처리합니다([SWS_EthIf_00085]). 이 서비스는 반환값을 갖지 않으며 수신된 데이터의 이더넷 인터페이스 내 전달을 처리합니다([SWS_EthIf_00085]). 해석: 호출은 일반적으로 새로운 수신 데이터가 완전히 준비되는 즉시 하위 이더넷 드라이버(Eth)에 의해 수행될 것으로 보입니다. 질문 Q-c3d25d0b89e6cd7f (열림)
매개변수
추가 처리를 위해 함수는 다음 매개변수들을 전달받습니다([SWS_EthIf_00085]):
CtrlIdx: 이더넷 인터페이스 [SWS_EthIf_00085]의 컨텍스트에서의 물리적 이더넷 컨트롤러 인덱스.FrameType: 수신된 이더넷 프레임의 프레임 타입([SWS_EthIf_00085]).IsBroadcast: 브로드캐스트 프레임인지 여부를 나타내는 플래그 [SWS_EthIf_00085].PhysAddrPtr: 수신된 프레임의 물리적 소스 주소(네트워크 바이트 순서의 MAC 주소)를 가리키는 포인터([SWS_EthIf_00085]).DataPtr: 수신된 프레임의 페이로드(Payload)를 가리키는 포인터 [SWS_EthIf_00085].LenByte: 수신된 프레임의 페이로드 데이터 길이(바이트 단위)([SWS_EthIf_00085]).
동시성 및 제약사항
이 인터페이스는 재진입 불가능(Non Reentrant)으로 선언되어 있으며, 헤더 파일 EthIf.h를 통해 서비스 ID 0x10로 제공됩니다([SWS_EthIf_00085]). 호출자는 경쟁 호출이 발생하지 않도록 보장해야 합니다. 이 함수에 대해 사양 범위 내에서 특정 오류 코드, 반환값 또는 DET/DEM 메시지는 명시되어 있지 않습니다.
이 텍스트는 자동으로 생성되었습니다. 모든 정보는 전적으로 현재 AUTOSAR 릴리스의 사양 데이터만을 기반으로 합니다.
함수 EthIf_TxConfirmation [SWS_EthIf_00091] 📄 PDF
void EthIf_TxConfirmation (uint8 CtrlIdx, Eth_BufIdxType BufIdx, Std_ReturnType Result);
Confirms frame transmission by the indexed controller
사용법 및 호출 컨텍스트
동기식 함수 EthIf_TxConfirmation(서비스 ID 0x11)은 CtrlIdx로 참조되는 물리적 이더넷 컨트롤러에 의한 이더넷 프레임 전송을 확인합니다([SWS_EthIf_00091]). 이 함수는 반환값을 갖지 않으며 헤더 파일 EthIf.h를 통해 제공됩니다([SWS_EthIf_00091]).
입력 매개변수는 다음과 같이 정의됩니다([SWS_EthIf_00091]):
CtrlIdx(uint8): 이더넷 인터페이스 컨텍스트에서의 물리적 이더넷 컨트롤러 인덱스.BufIdx(Eth_BufIdxType): 전송된 버퍼의 인덱스.Result(Std_ReturnType): 전송 결과;E_OK는 성공적인 전송 프로세스를 나타내고,E_NOT_OK은 전송 오류를 나타냅니다.
상위 계층과의 상호작용
[SWS_EthIf_00255]에 따라 EthIf_TxConfirmation은 수신된 전송 결과 Result를 해당 콜백 <UL>_TxConfirmation을 통해 구성된 상위 계층으로 전달합니다.
동시성 및 제약사항
이 함수는 재진입 불가능(Non Reentrant)으로 지정되어 있습니다([SWS_EthIf_00091]). 따라서 병렬 호출을 피해야 합니다. 사양 발췌본에는 특정 DET 또는 DEM 오류 메시지가 정의되어 있지 않으며, 오류는 오직 값 E_NOT_OK를 갖는 매개변수 Result을 통해서만 전달됩니다([SWS_EthIf_00091]).
이 텍스트는 AI에 의해 자동으로 작성되었습니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_CtrlModeIndication [SWS_EthIf_00231] 📄 PDF
void EthIf_CtrlModeIndication (uint8 CtrlIdx, thernetInterface Eth_ModeType CtrlMode); ⚠️
Called asynchronously when mode has been read out. Triggered by previous Eth_ Set Controller Mode call. Can directly be called within the trigger functions.
알림 함수 EthIf_CtrlModeIndication은 [SWS_EthIf_00231]에 따라 이더넷 컨트롤러의 작동 모드가 성공적으로 판독되는 즉시 호출됩니다. 트리거는 이전 Eth_SetControllerMode 호출의 결과로 비동기적으로 발생하며, 호출은 각 트리거 함수 내에서 직접 발생할 수 있습니다. 함수 자체는 동기식 실행 시맨틱을 가지며 반환값을 제공하지 않습니다([SWS_EthIf_00231]).
매개변수를 통해 이더넷 인터페이스 컨텍스트에서의 물리적 이더넷 컨트롤러 인덱스(CtrlIdx) 및 보고된 컨트롤러 모드(CtrlMode)가 전달됩니다([SWS_EthIf_00231]). 동시성과 관련하여 [SWS_EthIf_00231]은 이 함수가 동일한 컨트롤러 인덱스에 대해서는 재진입이 불가능하지만, 서로 다른 인덱스에 대해서는 재진입 가능하게 실행될 수 있음을 명시합니다.
다른 모듈과의 상호작용과 관련하여, 관련 요구사항들은 후속 작업을 참조하지만 현재 릴리스에서는 더 이상 사용되지 않는 것(obsolete)으로 분류됩니다:
- [SWS_EthIf_00267](OBSOLETE)에 따르면, 이 함수의 컨텍스트에서 해당 제어 참조가 존재하는 경우 스위치 포트 그룹의 모든 포트에 대해
EthSwt_SetSwitchPortMode을 호출하고,ETH_MODE_DOWN시 활성 그룹과의 충돌을 해결하도록 의도되었습니다. - [SWS_EthIf_00413](OBSOLETE)에 따르면, 이 함수의 컨텍스트에서 트랜시버 참조가 존재하는 경우 이전에
ETH_MODE_ACTIVE또는ETH_MODE_DOWN가 요청되었는지 여부에 따라ETHTRCV_LINK_STATE_ACTIVE또는ETHTRCV_LINK_STATE_DOWN과 함께EthTrcv_TransceiverLinkStateRequest을 호출하도록 의도되었습니다.
이 텍스트는 AUTOSAR CP R20-11 명세를 기반으로 AI에 의해 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_TrcvModeIndication [SWS_EthIf_00232] 📄 PDF
void EthIf_TrcvModeIndication (uint8 TrcvIdx, Eth_ModeType TrcvMode);
Called asynchronously when a mode change has been read out. If the function is triggered by previous call of Eth Trcv_ Set Transceiver Mode it can directly be called within the trigger function. Ava ilable via Eth If.h
사용법 및 의미론
함수 EthIf_TrcvModeIndication은 트랜시버의 모드 변경이 판독되는 즉시 호출되는 Ethernet 인터페이스의 알림 인터페이스 역할을 합니다 [SWS_EthIf_00232]. 이 함수는 헤더 파일 EthIf.h를 통해 제공되며 서비스 ID 0x0f을 갖습니다 [SWS_EthIf_00232].
함수 자체의 실행은 동기로 명시되어 있는 반면, 호출은 모드 변경이 확인되었을 때 비동기로 수행됩니다 [SWS_EthIf_00232]. 이 함수가 선행된 EthTrcv_SetTransceiverMode 호출에 의해 트리거되는 경우, 해당 트리거 함수 내에서 직접 호출될 수 있습니다 [SWS_EthIf_00232].
매개변수 및 반환값
TrcvIdx: Ethernet 인터페이스 컨텍스트 내 Ethernet 트랜시버의 인덱스(입력 매개변수) [SWS_EthIf_00232].TrcvMode:Eth_ModeType타입의 신호된 Ethernet 트랜시버 작동 모드(입력 매개변수) [SWS_EthIf_00232].- 반환값: 없음(
void) [SWS_EthIf_00232].
동시성 및 재진입성
이 함수는 동일한 인덱스에 대해서는 재진입 불가능하지만, 서로 다른 인덱스에 대해서는 재진입 가능하도록 명시되어 있습니다 [SWS_EthIf_00232]. 이때 사양 테이블에는 Ctrl Idx(이)라고 언급되어 있으며, 이는 이 트랜시버 인터페이스의 컨텍스트에서 트랜시버 또는 컨트롤러 인덱스를 참조하는 것으로 해석할 수 있습니다 [SWS_EthIf_00232]. 질문 Q-c0123f1ef0e4ec71 (열림)
이 사용 지침은 AUTOSAR CP R20-11 사양을 기반으로 자동으로 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_SwitchPortModeIndication [SWS_EthIf_91055] 📄 PDF
void EthIf_SwitchPortModeIndication (uint8 SwitchIdx, uint8 SwitchPortIdx, Eth_ModeType PortMode);
The Eth If shall determine the expected notifications based on the Eth Swt Port configuration. In case the Eth Swt Port references an Eth Trcv the Eth If expects a notification from the Eth Trcv via API Eth If_ Trcv Mode Indication(). Otherwise the Eth If expects a notification from the Eth Swt via API Eth If_ Switch Port Mode Indication()
함수 EthIf_SwitchPortModeIndication은 Ethernet Interface(EthIf)에서 Ethernet Switch Driver가 보고한 Ethernet 스위치 포트의 모드 변경에 대한 비동기 알림 인터페이스 역할을 합니다[SWS_EthIf_91055].
사용법 및 상호작용
EthIf는 해당 스위치 포트의 구성을 기반으로 예상되는 알림을 결정합니다: 스위치 포트가 트랜시버(EthTrcv)를 참조하는 경우 EthIf는 대신 EthIf_TrcvModeIndication()을 통한 알림을 기대합니다. 그렇지 않으면 Ethernet Switch Driver로부터 EthIf_SwitchPortModeIndication()을 통한 알림을 기대합니다[SWS_EthIf_91055].
SwitchIdx: Ethernet Switch Driver 컨텍스트 내 Ethernet 스위치의 인덱스[SWS_EthIf_91055].SwitchPortIdx: 대상 Ethernet 스위치의 포트 인덱스[SWS_EthIf_91055].PortMode:Eth_ModeType타입의 새로 보고된 스위치 포트 모드[SWS_EthIf_91055].
실행 특성 및 제약 사항
이 함수는 반환값이 없으며(void) 서비스 ID는 0x46입니다[SWS_EthIf_91055]. 비동기(Asynchronous) 및 재진입 불가(Non Reentrant)로 명시되어 있습니다[SWS_EthIf_91055]. 따라서 호출자는 이 서비스에 대한 경합 호출이 발생하지 않도록 해야 합니다. 페이로드에는 이 함수에 대한 특정 DET 또는 DEM 오류 메시지가 정의되어 있지 않습니다.
이 사용 지침은 명세를 기반으로 자동 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_SleepIndication [SWS_EthIf_91006] 📄 PDF
void EthIf_SleepIndication (uint8 TrcvIdx);
This API is called by the corresponding Eth Trcv, if a sleep indication was detected on the network. This could be used e.g. for Ethernet hardware which is compliant to the OA TC10. In this ca se the Ethernet hardware (PHY) detect an Sleep.Indication which was triggered by a Sleep.Request of the connected link partner. Tags: atp.Status=draft
사용법 및 호출 컨텍스트
함수 EthIf_SleepIndication은 Ethernet 인터페이스의 알림 인터페이스 역할을 합니다. 이 함수는 각 Ethernet 트랜시버 드라이버(EthTrcv)가 네트워크에서 슬립 표시를 등록하는 즉시 해당 드라이버에 의해 호출됩니다 [SWS_EthIf_91006]. 유일한 입력 매개변수로 TrcvIdx이(가) 전달되며, 이는 EthIf 모듈의 컨텍스트 내에서 신호를 보내는 Ethernet 트랜시버의 인덱스를 고유하게 식별합니다 [SWS_EthIf_91006]. 이 함수는 입력/출력값 및 반환값을 가지지 않으며 알림을 동기식으로 실행합니다 [SWS_EthIf_91006].
하드웨어 상호작용
주요 사용 사례는 OPEN Alliance TC10 사양을 준수하도록 설계된 Ethernet 하드웨어와 함께 사용하는 것입니다 [SWS_EthIf_91006]. 이 시나리오에서 트랜시버(PHY)는 직접 연결된 링크 파트너의 슬립 요청(Sleep.Request)에 의해 트리거된 Sleep.Indication을(를) 하드웨어 수준에서 감지합니다 [SWS_EthIf_91006].
동시성 및 제약사항
인터페이스는 동기식 및 재진입 가능으로 정의되며, 헤더 파일 EthIf.h을(를) 통해 제공됩니다(서비스 ID 0x68) [SWS_EthIf_91006]. 시스템 통합 시 이 요소가 태그 atp.Status=draft이(가) 지정된 초안(draft)으로 표시되어 있음을 고려해야 합니다 [SWS_EthIf_91006]. 사양 범위 내에 구체적인 오류 처리 루틴이나 DET 오류 코드는 정의되어 있지 않으며, 공식적인 오류 검사는 향후 사양 버전에서 이루어질 것으로 보입니다. 질문 Q-680af6c43439167f (열림)
이 사용 지침은 AUTOSAR R20-11 사양을 바탕으로 자동 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_MainFunctionRx [SWS_EthIf_00097] 📄 PDF
void EthIf_MainFunctionRx (void);
The function checks for new received frames and issues reception indications in polling mode.
사용법 및 호출 컨텍스트
함수 EthIf_MainFunctionRx은 이더넷 인터페이스(EthIf)에서 폴링 작업 중 새로 수신된 데이터 프레임을 검사하고 상위 계층으로 해당 수신 표시(Reception Indications)를 트리거하는 핵심 작업을 담당합니다 [SWS_EthIf_00097]. 이 함수는 시그니처 void EthIf_MainFunctionRx (void)으로 정의되어 있으므로 호출 매개변수를 받지 않으며 반환값을 반환하지 않습니다 [SWS_EthIf_00097]. 서비스 ID로는 16진수 값 0x20가 지정되어 있습니다 [SWS_EthIf_00097].
이 함수는 헤더 파일 SchM_EthIf.h을 통해 제공됩니다 [SWS_EthIf_00097]. 이는 이 함수의 호출이 기본 소프트웨어의 주기적 태스크 컨텍스트 내에서 Schedule Manager(SchM) 또는 운영체제에 의해 주기적으로 수행됨을 시사합니다.
동시성 및 오류 처리
수신된 프레임의 검사 및 전달이 폴링 모드로 지정되어 있으므로 [SWS_EthIf_00097], 원활한 수신 작업을 위해서는 호출의 적절한 시간 타이밍이 필요합니다. 지연된 실행은 수신 메시지를 상위 소프트웨어 계층으로 전달하는 데 지연을 초래할 것으로 보입니다. 질문 Q-554ef0cf302c3aa3 (열림) 사양에는 이 함수에 대해 특정 오류 코드, 개발 오류(DET) 또는 DEM으로의 오류 메시지가 나열되어 있지 않습니다.
이 사용 지침은 AI에 의해 생성되었으며 AUTOSAR CP R20-11 사양 버전의 요구사항을 요약합니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_MainFunctionTx [SWS_EthIf_00113] 📄 PDF
void EthIf_MainFunctionTx (void);
The function issues transmission confirmations in polling mode. It checks also for transceiver state changes.
메인 함수 EthIf_MainFunctionTx은 이더넷 인터페이스 모듈 내에서 전송 작업 및 상태 조회의 주기적 처리를 위해 사용됩니다 [SWS_EthIf_00113]. 16진수 서비스 ID 0x21를 가지며, 시그니처 void EthIf_MainFunctionTx (void)에 따라 전달 매개변수와 반환값 없이 실행되므로 모든 처리는 상태 기반으로 이루어집니다 [SWS_EthIf_00113].
작동 중 이 서비스는 이더넷 통신에서 두 가지 핵심 작업을 수행합니다.
- 전송 확인: 폴링 모드에서 이 함수는 성공적으로 완료된 전송에 대한 확인(Transmission Confirmations)을 상위 계층에 제공합니다 [SWS_EthIf_00113].
- 트랜시버 상태: 연결된 이더넷 트랜시버의 발생한 상태 변경 사항이 있는지 시스템을 모니터링하고 검사합니다 [SWS_EthIf_00113].
시스템 통합과 관련하여 이 인터페이스는 헤더 파일 SchM_EthIf.h을 통해 사용할 수 있습니다 [SWS_EthIf_00113]. 해석: SchM_EthIf.h를 통한 제공으로 볼 때, 호출은 주기적 태스크의 컨텍스트에서 BSW 스케줄러(SchM)에 의해 주기적으로 수행될 것으로 보입니다. 질문 Q-b9dde07f9cc74a95 (열림) 이를 통해 폴링 작업에서의 보류 중인 전송 확인 및 트랜시버 상태 전환이 인터럽트 의존성 없이 규칙적으로 처리되도록 보장합니다.
본 사양 범위에서는 이 서비스에 대해 특정 오류 코드, DET 또는 DEM을 통한 별도의 오류 처리 루틴 및 재진입성에 대한 요구사항이 정의되어 있지 않으므로 표시되지 않습니다.
이 사용 지침은 AUTOSAR Classic 릴리스 R20-11 사양의 요구조건을 기반으로 합니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 EthIf_MainFunctionState [SWS_EthIf_91104] 📄 PDF
void EthIf_MainFunctionState (void);
The function is polling different communication hardware (Ethernet transceiver, Ethernet switch ports) related information, e.g. link state, signal quality.
사용법 및 의미론
함수 EthIf_MainFunctionState은 Ethernet 트랜시버 및 Ethernet 스위치 포트와 같은 연결된 Ethernet 통신 하드웨어의 상태 및 진단 정보를 주기적으로 쿼리(폴링)하는 데 사용됩니다 [SWS_EthIf_91104]. 여기에는 예를 들어 연결 상태(Link State) 및 신호 품질이 포함됩니다 [SWS_EthIf_91104]. 이 함수는 입력 및 출력 매개변수가 없으며 값을 반환하지 않습니다(void EthIf_MainFunctionState(void), 서비스 ID 0x05) [SWS_EthIf_91104]. 실행 동작은 비동기로 명시되어 있습니다 [SWS_EthIf_91104].
동시성 및 호출 조건
이 함수는 재진입 불가능(Non Reentrant)으로 정의됩니다 [SWS_EthIf_91104]. 따라서 어떤 시점에서도 병렬로 실행되거나 스스로를 인터럽트하며 실행되어서는 안 됩니다. 인터페이스가 헤더 파일 EthIf_SchM.h을(를) 통해 제공되므로 [SWS_EthIf_91104], 주기적 호출은 일반적으로 BSW 스케줄러(SchM)의 태스크 컨텍스트에서 수행될 것으로 보입니다. 질문 Q-10d02355b276be90 (열림)
상호작용 및 구성
[SWS_EthIf_00407]에 따르면 EthIf_MainFunctionState은(는) 구성된 주기 EthIfMainFunctionStatePeriod에 따라 하드웨어 정보를 엄격히 쿼리해야 합니다. 이를 통해 Ethernet 인터페이스에서 물리적 인터페이스 매개변수의 주기적인 업데이트가 보장됩니다.
이 참고사항은 AUTOSAR 사양을 기반으로 AI에 의해 생성되었으며 공식 통합 검사를 대체하지 않습니다.
구현자 가이드 준비 중 (복잡도 I1)
타입 EthIf_ConfigType [SWS_EthIf_00149] 📄 PDF
Implementation specific structure of the post build configuration
타입 EthIf_SwitchPortGroupIdxType [SWS_EthIf_91101] 📄 PDF
Data Type that represents the Ethernet interface switch port group index. The index is zero based and unique for every configured switch port group.
타입 EthIf_MeasurementIdxType [SWS_EthIf_91010] 📄 PDF
Index to select specific measurement data
타입 EthIf_SignalQualityResultType [SWS_EthIf_91057] 📄 PDF
-
데이터 구조 EthIf_SignalQualityResultType([SWS_EthIf_91057])은 이더넷 레벨에서 연결 품질의 수집 및 진단에 사용되며 헤더 파일 EthIf.h를 통해 제공됩니다.
이 구조체는 기본 타입 uint32의 세 가지 측정값을 묶습니다:
ActualSignalQuality: 이더넷 연결의 현재 인가된 신호 품질을 나타냅니다.HighestSignalQuality: 마지막 리셋 이후 측정된 연결의 최고 신호 품질을 유지합니다.LowestSignalQuality: 마지막 리셋 이후 측정된 연결의 최저 신호 품질을 문서화합니다.
모듈 EthIf과의 상호작용에서 이러한 극값은 연결 안정성의 추이를 반영합니다. 내부적으로 저장된 히스토리 값의 리셋은 전용 인터페이스를 통해 제어됩니다:
TrcvIdx을 통해 지정된 트랜시버의 경우, 함수EthIf_ClearTrcvSignalQuality은 저장된 신호 품질 값을 리셋합니다([SWS_EthIf_00400]).SwitchIdx및SwitchPortIdx을 통해 식별된 스위치 포트의 경우,EthIf_ClearSwitchPortSignalQuality는 저장된 신호 품질 값을 삭제합니다([SWS_EthIf_00404]).
해석: 페이로드에 특정 읽기 함수가 명시되어 있지 않으므로, 이 구조체는 현재 신호 품질을 극값과 비교하기 위해 트랜시버 및 스위치 포트에 대한 해당 상태 쿼리의 출력 매개변수로 사용될 것으로 보입니다. 질문 Q-8e5f2914bade574c (열림)
이 텍스트는 AI에 의해 생성되었으며 전적으로 R20-11의 사양 지침만을 기반으로 합니다.
구현자 가이드 준비 중 (복잡도 I1)
Request a governed re-review of this record. The record is not changed immediately.
- Record
AUTOSAR/AP/record/CP_MOD_EthIf- Status
- unspecified
- Version
AUTOSAR/AP/record/CP_MOD_EthIf@rel:R20-11#f52deec6- Content hash
f52deec6- Source
- https://www.autosar.org/fileadmin/standards/R20-11/CP/AUTOSAR_SWS_EthernetInterface.pdf#nameddest=SWS_EthIf_00024
gemini-3.8-flash-low· 2026-10-13 · 독일어 원문