DEENESPTFRRUARHIKOZHNL
CLASSIC Modul: ethif Rolle: constitutive Konfidenz: 95%

SNIP_CLASSIC_ETHIF_SECTION_8_3_26_EthIf_SwitchPortGroupRequestMode

Quelle: SWS_EthernetInterface.pdf (Seite 77) • Ziel-Anforderung: SWS_Std_00005

Wortlaut

8.3.26 EthIf_SwitchPortGroupRequestMode [SWS_EthIf_91102] Definition of API function EthIf_SwitchPortGroupRequest Mode ⌈ Service Name EthIf_SwitchPortGroupRequestMode Syntax Std_ReturnType EthIf_SwitchPortGroupRequestMode ( EthIf_SwitchPortGroupIdxType PortGroupIdx, Eth_ModeType PortMode ) Service ID [hex] 0x06 Sync/Async Asynchronous Reentrancy Non Reentrant PortGroupIdx Index of the port group within the context of the Ethernet Interface Parameters (in) PortMode ETH_MODE_DOWN: disable the Ethernet switch port group ETH_MODE_ACTIVE: enable the Ethernet switch port group ETH_MODE_ACTIVE_WITH_WAKEUP_REQUEST: enable the port group and request for a wake-up on the network Parameters (inout) None Parameters (out) None ▽ △ Return value Std_ReturnType E_OK: success E_NOT_OK: port group mode could not be changed Description Request a mode for the EthIfSwtPortGroup. The call shall be forwarded to EthSwt by calling EthSwt_SetSwitchPortMode for all EthSwtPorts referenced by the port group. Available via EthIf.h ⌋() [SWS_EthIf_00270] ⌈If EthIf_SwitchPortGroupRequestMode is called with ETH_MODE_DOWN EthIf shall start a timer with EthIfSwitchOffPortTimedelay for all ports of the respective EthIf_SwitchPortGroup if the mode ETH_MODE_DOWN has been requested for all EthIfSwitchPortGroups referencing the port and the current mode is ETH_MODE_ACTIVE.⌋() [SWS_EthIf_00271] ⌈If the timer to switch off ports (see [SWS_EthIf_00270]) elapses for a port, EthIf shall call the following functions in the given order for the corresponding EthSwtPort: 1. EthSwt_PortLinkStateRequest with ETHTRCV_LINK_STATE_DOWN 2. EthSwt_SetSwitchPortMode with ETH_MODE_DOWN ⌋() Note: The implementation has to ensure that EthSwtPorts within EthIfSwitchPortGroups are only disabled if all prior activation request have been withdrawn. This could be realized e.g. by a counter mechanism. Rationale: Delaying to switch off EthSwtPorts by EthIfSwitchOffPortTimedelay is needed to ensure a simultaneous switch-off of the Ethernet switch port and the Ethernet hardware (PHY or another Ethernet switch) of the connected communication partner: 1. If the Ethernet hardware of the connected communication partner is an PHY, then the EthIfSwitchOffPortTimedelay cover the time which is needed until the PHY of the connected communication partner will be switched off, due to the NM handling. 2. If the Ethernet hardware of the connected communication partner is an Ethernet switch, then both EthSwtPorts should be switched off in the same point in time to avoid link down recognition. [SWS_EthIf_00273] ⌈If development error detection is enabled: the function shall check that the service EthIf_Init was previously called. If the check fails, the function shall raise the development error ETHIF_E_UNINIT.⌋() [SWS_EthIf_00274] ⌈If development error detection is enabled: the function shall check that the provided parameter PortGroupIdx addresses a port group not referenced by any EthIfController. If the check fails, the function shall raise the development error ETHIF_E_INV_PORT_GROUP_IDX.⌋() Rationale: Avoid that a EthIfSwitchPortGroup which shall be controlled by EthIfController is incidentally called by BswM

Versionen & Provenienz · Zugeordnete Anforderungen

Diese Angaben zeigt der Versions-Explorer.

Begründung & Zuweisungs-Evidenz

Cited verbatim in the snippet (deterministic citation).

Dokumenten-Herkunft & Rückverfolgbarkeit

Spezifikations-Dokument SWS_EthernetInterface.pdf
Dokumentseite Seite 77
Ziel-Modul ethif (classic)
Ziel-Anforderung SWS_Std_00005
Semantische Rolle constitutive
Automatisierungs-Konfidenz 0.95