rstp_ptx.c File Reference

Port Transmit state machine (PTX) More...

#include "rstp/rstp.h"
#include "rstp/rstp_fsm.h"
#include "rstp/rstp_ptx.h"
#include "rstp/rstp_procedures.h"
#include "rstp/rstp_conditions.h"
#include "rstp/rstp_misc.h"
#include "debug.h"

Go to the source code of this file.

Macros

#define TRACE_LEVEL   RSTP_TRACE_LEVEL
 

Functions

void rstpPtxInit (RstpBridgePort *port)
 PTX state machine initialization. More...
 
void rstpPtxFsm (RstpBridgePort *port)
 PTX state machine implementation. More...
 
void rstpPtxChangeState (RstpBridgePort *port, RstpPtxState newState)
 Update PTX state machine state. More...
 

Variables

const RstpParamName rstpPtxStates []
 

Detailed Description

Port Transmit state machine (PTX)

License

SPDX-License-Identifier: GPL-2.0-or-later

Copyright (C) 2019-2024 Oryx Embedded SARL. All rights reserved.

This file is part of CycloneSTP Open.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

Author
Oryx Embedded SARL (www.oryx-embedded.com)
Version
2.4.4

Definition in file rstp_ptx.c.

Macro Definition Documentation

◆ TRACE_LEVEL

#define TRACE_LEVEL   RSTP_TRACE_LEVEL

Definition at line 32 of file rstp_ptx.c.

Function Documentation

◆ rstpPtxChangeState()

void rstpPtxChangeState ( RstpBridgePort port,
RstpPtxState  newState 
)

Update PTX state machine state.

Parameters
[in]portPointer to the bridge port context
[in]newStateNew state to switch to

Definition at line 173 of file rstp_ptx.c.

◆ rstpPtxFsm()

void rstpPtxFsm ( RstpBridgePort port)

PTX state machine implementation.

Parameters
[in]portPointer to the bridge port context

Definition at line 75 of file rstp_ptx.c.

◆ rstpPtxInit()

void rstpPtxInit ( RstpBridgePort port)

PTX state machine initialization.

Parameters
[in]portPointer to the bridge port context

Definition at line 63 of file rstp_ptx.c.

Variable Documentation

◆ rstpPtxStates

const RstpParamName rstpPtxStates[]
Initial value:
=
{
{RSTP_PTX_STATE_TRANSMIT_INIT, "TRANSMIT_INIT"},
{RSTP_PTX_STATE_TRANSMIT_PERIODIC, "TRANSMIT_PERIODIC"},
{RSTP_PTX_STATE_TRANSMIT_CONFIG, "TRANSMIT_CONFIG"},
{RSTP_PTX_STATE_TRANSMIT_TCN, "TRANSMIT_TCN"},
{RSTP_PTX_STATE_TRANSMIT_RSTP, "TRANSMIT_RSTP"},
}

Definition at line 47 of file rstp_ptx.c.

@ RSTP_PTX_STATE_TRANSMIT_TCN
Definition: rstp_ptx.h:52
@ RSTP_PTX_STATE_TRANSMIT_CONFIG
Definition: rstp_ptx.h:51
@ RSTP_PTX_STATE_TRANSMIT_INIT
Definition: rstp_ptx.h:49
@ RSTP_PTX_STATE_TRANSMIT_PERIODIC
Definition: rstp_ptx.h:50
@ RSTP_PTX_STATE_TRANSMIT_RSTP
Definition: rstp_ptx.h:53
@ RSTP_PTX_STATE_IDLE
Definition: rstp_ptx.h:54