Advanced LAN Bypass User manual

User Manual
Advantech
Advanced LAN Bypass

Advanced LAN Bypass User Manual ii
Copyright
The documentation and the software included with this product are copyrighted 2018
by Advantech Co., Ltd. All rights are reserved. Advantech Co., Ltd. reserves the right
to make improvements in the products described in this manual at any time without
notice. No part of this manual may be reproduced, copied, translated or transmitted
in any form or by any means without the prior written permission of Advantech Co.,
Ltd. Information provided in this manual is intended to be accurate and reliable. How-
ever, Advantech Co., Ltd. assumes no responsibility for its use, nor for any infringe-
ments of the rights of third parties, which may result from its use.
Product Warranty (2 years)
Advantech warrants to you, the original purchaser, that each of its products will be
free from defects in materials and workmanship for two years from the date of pur-
chase.
This warranty does not apply to any products which have been repaired or altered by
persons other than repair personnel authorized by Advantech, or which have been
subject to misuse, abuse, accident or improper installation. Advantech assumes no
liability under the terms of this warranty as a consequence of such events.
Because of Advantech’s high quality-control standards and rigorous testing, most of
our customers never need to use our repair service. If an Advantech product is defec-
tive, it will be repaired or replaced at no charge during the warranty period. For out-
of-warranty repairs, you will be billed according to the cost of replacement materials,
service time and freight. Please consult your dealer for more details.
If you think you have a defective product, follow these steps:
1. Collect all the information about the problem encountered. (For example, CPU
speed, Advantech products used, other hardware and software used, etc.) Note
anything abnormal and list any onscreen messages you get when the problem
occurs.
2. Call your dealer and describe the problem. Please have your manual, product,
and any helpful information readily available.
3. If your product is diagnosed as defective, obtain an RMA (return merchandize
authorization) number from your dealer. This allows us to process your return
more quickly.
4. Carefully pack the defective product, a fully-completed Repair and Replacement
Order Card and a photocopy proof of purchase date (such as your sales receipt)
in a shippable container. A product returned without proof of the purchase date
is not eligible for warranty service.
5. Write the RMA number visibly on the outside of the package and ship it prepaid
to your dealer.
Part No. 2002ALBP00 Edition 1
Printed in Taiwan September 2018

iii Advanced LAN Bypass User Manual
Declaration of Conformity
The Advantech Node Explorer has been successfully tested for compliance to the
regulations below. Should you need a signed copy of the declaration of conformity or
the related test reports, please contact your Advantech representative.
CE
This product has passed the CE test for environmental specifications when shielded
cables are used for external wiring.
FCC Class A
Note: This equipment has been tested and found to comply with the limits for a Class
A digital device, pursuant to part 15 of the FCC Rules. These limits are designed to
provide reasonable protection against harmful interference when the equipment is
operated in a commercial environment. This equipment generates, uses, and can
radiate radio frequency energy and, if not installed and used in accordance with the
instruction manual, may cause harmful interference to radio communications. Opera-
tion of this equipment in a residential area is likely to cause harmful interference in
which case the user will be required to correct the interference at his or her own
expense.
Warnings, Cautions and Notes
We Appreciate Your Input
Please let us know of any aspect of this product, including the manual, which could
benefit from improvements or corrections. We appreciate your valuable input in help-
ing make our products better.
Please send all such - in writing to: ncg@advantech.com
Warning! Warnings indicate conditions, which if not observed, can cause personal
injury!
Caution! Cautions are included to help you avoid damaging hardware or losing
data. e.g.
There is a danger of a new battery exploding if it is incorrectly installed.
Do not attempt to recharge, force open, or heat the battery. Replace the
battery only with the same or equivalent type recommended by the man-
ufacturer. Discard used batteries according to the manufacturer's
instructions.
Note! Notes provide optional additional information.

Advanced LAN Bypass User Manual iv

v Advanced LAN Bypass User Manual
Contents
Chapter 1 ADVANCED LAN BYPASS..................1
1.1 Scope........................................................................................................2
Table 1.1: Scope .........................................................................2
1.2 Terminology ..............................................................................................2
Table 1.2: Terminology................................................................2
1.3 Advanced LAN Bypass Hardware Architecture Overview.........................3
Figure 1.1 LAN Bypass Hardware Overview...............................3
Chapter 2 OVERVIEW ...........................................5
2.1 Host Interface............................................................................................6
2.2 Segment Control.......................................................................................6
2.3 Event and Action.......................................................................................6
Figure 2.1 Bypass Actions and Related Port Connectivity ..........7
Table 2.1: Mapping between Events and Actions (Example 1)...7
Table 2.2: Mapping between Events and Actions (Example 2)...8
Table 2.3: Mapping between Events and Actions (Example 3)...8
Table 2.4: Mapping between Events and Actions (Example 4)...9
2.4 Manual Bypass Control.............................................................................9
2.5 Watchdog Timer........................................................................................9
2.5.1 Standard Watchdog Mechanism...................................................9
2.5.2 Toggle Pin Mechanism ...............................................................10
2.5.3 Global Watchdog Trigger Mechanism.........................................11
2.6 Bypass Master/Slave Mode with Button and LED Control......................12
2.6.1 Master Segment..........................................................................12
2.6.2 Master/Slave Mode LED.............................................................12
2.6.3 Master/Slave Mode Button..........................................................12
2.7 LED Indication.........................................................................................13
Table 2.5: Activity LED Behavior...............................................13
Table 2.6: Link Speed LED Behavior .......................................13
2.7.1 Adjustable Blinking Frequency for Bypass/Disconnect States....13
Figure 2.2 Adjustable Blinking Frequency.................................14
2.8 Error Codes.............................................................................................14
Table 2.7: Error Code................................................................14
Chapter 3 LIBLBPCU -ADVANCED LAN BYPASS
LIBRARY.............................................17
3.1 Supported Distributions...........................................................................18
3.2 The lbpcu.cfg File....................................................................................18
Figure 3.1 Sample lbpcu.cfg for Two Segments........................19
3.3 Segment Control for PCIe-based Devices ..............................................19
3.4 Header File..............................................................................................20
3.5 API Command List ..................................................................................22
Table 3.1: Supported API Functions..........................................22
3.6 How to Use the API.................................................................................23
3.7 API Functions..........................................................................................23
3.7.1 LBPCU Open/Close....................................................................23
Table 3.2: API Function "lbp_check_conf_file" Error Codes .....23
Table 3.3: API Function "lbp_open" Error Codes ......................24
Table 3.4: API Function "lbp_close" Error Codes......................24
3.7.2 LBP Information..........................................................................24

Advanced LAN Bypass User Manual vi
Table 3.5: API Function "lbp_get_version" Error Codes ........... 24
Table 3.6: API Function "lbp_get_num_segments" Error Codes ..
24
Table 3.7: API Function "lbp_get_fw_version" Error Codes...... 25
Table 3.8: API Function "lbp_get_protocol_version" Error Codes.
25
Table 3.9: API Function "lbp_get_bl_fw_version" Error Codes. 25
3.7.3 LBP Event/Action........................................................................ 26
Table 3.10:API Function "lbp_get_action" Error Codes ............. 26
Table 3.11:API Function "lbp_set_action" Error Codes.............. 27
Table 3.12:API Function "get_last_event_action" Error Codes.. 27
Table 3.13:API Function "lbp_set_current_action" Error Codes 27
3.7.4 LBP Watchdog............................................................................ 28
Table 3.14:API Function "lbp_set_wdt_counter" Error Codes.... 28
Table 3.15:API Function "lbp_get_wdt_status" Error Codes...... 28
Table 3.16:API Function "lbp_reset_start_wdt" Error Codes ..... 28
Table 3.17:API Function "lbp_stop_wdt" Error Codes................ 29
Table 3.18:API Function "lbp_set_ext_wdt" Error Codes........... 29
Table 3.19:Parameter ext_wdt_mode........................................ 29
3.7.5 LBP Toggle................................................................................. 30
Table 3.20:API function "lbp_set_toggle_pin_mode" Error Codes.
30
Table 3.21:Parameter toggle_mode Error Codes ...................... 30
Table 3.22:API function "lbp_start_wdt_by_toggle" Error Codes31
Table 3.23:API function "lbp_nic_wdt_toggle"............................ 31
3.7.6 LBP FW Upgrade........................................................................ 31
Table 3.24:API function "lbp_check_upgrade_image" Error Codes
31
Table 3.25:API function "lbp_get_fw_mode" Error Codes.......... 31
Table 3.26:API Function "lbp_upgrade_fw" Error Codes ........... 32
3.7.7 LBP Reset Monitoring................................................................. 32
Table 3.27:API Function "lbp_start_reset_monitoring" Error Codes
33
Table 3.28:API Function "lbp_get_reset_monitoring_state" Error
Codes....................................................................... 33
Table 3.29:Parameter rm_mode ................................................ 34
Table 3.30:API Function "lbp_set_rmt_counter" Error Codes.... 34
Table 3.31:API Function "lbp_get_rmt_status" Error Codes ...... 35
3.7.8 LBP Message Output Level........................................................ 35
Table 3.32:API Function "lbp_set_message_level" Error Codes35
3.7.9 LBP Bypass Control Type........................................................... 35
Table 3.33:API Function "lbp_set_bypass_ctrl_type" Error Codes
35
Table 3.34:API Function "lbp_get_bypass_ctrl_type" Error Codes
36
3.7.10 LBP Bypass LED........................................................................ 36
Table 3.35:Parameter Duty........................................................ 36
Table 3.36:Parameter Period..................................................... 36
Table 3.37:API Function "lbp_set_bypass_led" Error Codes..... 36
Table 3.38:API Function "lbp_get_bypass_led" Error Codes..... 37
Table 3.39:Parameter Duty........................................................ 37
Table 3.40:Parameter Period..................................................... 37
Table 3.41:API Function "lbp_set_disconnect_led" Error Codes37
Table 3.42:API Function "lbp_get_disconnect_led" Error Codes38
3.7.11 Master/Slave Mode..................................................................... 38
Table 3.43:Parameter master_slave_config............................... 38
Table 3.44: API Function "lbp_set_master_slave_mode" Error
Codes....................................................................... 38
Table 3.45: API Function "lbp_get_master_slave_mode" Error
Codes....................................................................... 39

vii Advanced LAN Bypass User Manual
Table 3.46: Parameter Duty .......................................................39
Table 3.47: Parameter Duty .......................................................39
Table 3.48: Parameter Period ....................................................39
Table 3.49: API Function "lbp_set_master_led" Error Codes.....39
Table 3.50: API Function "lbp_get_master_led" Error Codes ....40
3.7.12 Scan event thread init/detach .....................................................40
Chapter 4 LBPCU ................................................41
4.1 ./lbpcu......................................................................................................43
Figure 4.1 Usage of the "lbpcu" Command ...............................43
4.2 ./lbpcu -V.................................................................................................44
Figure 4.2 Usage of the "lbpcu -V" Command...........................44
4.3 ./lbpcu -VF...............................................................................................44
Figure 4.3 Usage of the "lbpcu -VF" Command.........................44
Figure 4.4 Retrieve the MCU FW Version for Segment 1..........44
4.4 ./lbpcu -VP...............................................................................................44
Figure 4.5 Usage of the "lbpcu -VP" Command ........................44
Figure 4.6 Retrieve the Protocol Versions on Segment 1..........44
4.5 ./lbpcu -n .................................................................................................45
Figure 4.7 Usage of the "lbpcu -n" Command ...........................45
4.6 ./lbpcu -GA..............................................................................................45
Figure 4.8 Usage of the "lbpcu -GA" Command........................45
Figure 4.9 Return the Current Action for the POWER_OFF Event
on Segment 1...........................................................45
4.7 ./lbpcu -SA...............................................................................................46
Figure 4.10Usage of the "lbpcu -SA" Command ........................46
Figure 4.11Set BYPASS Action for the POWER_OFF Event on
Segment 1................................................................46
4.8 ./lbpcu -SW..............................................................................................47
Figure 4.12Usage of the "lbpcu -SW" Command .......................47
Figure 4.13Set the WDT Timeout to 100 s on Segment 1..........47
4.9 ./lbpcu -GW .............................................................................................47
Figure 4.14Usage of the "lbpcu -GW" Command.......................47
Figure 4.15Get the WDT Status on Segment 1..........................48
4.10 ./lbpcu -RW .............................................................................................48
Figure 4.16Usage of the "lbpcu -RW" Command .......................48
Figure 4.17Start WDT on Segment 1 .........................................48
4.11 ./lbpcu -StopW.........................................................................................49
Figure 4.18Stop the WDT on Segment 1....................................49
4.12 ./lbpcu -ST...............................................................................................49
Figure 4.19Usage of the "lbpcu -ST" Command.........................49
Figure 4.20Set Toggle Pin Mode on Segment 1.........................49
4.13 ./lbpcu -SEW...........................................................................................50
Figure 4.21Usage of the "lbpcu -SEW" Command.....................50
Figure 4.22Enable External WDT on Segment 1........................50
4.14 ./lbpcu -WT..............................................................................................51
Figure 4.23Strobe the WDT through the Toggle Pin Interface on
Segment 1................................................................51
4.15 ./lbpcu -GLEA..........................................................................................51
Figure 4.24Usage of the "lbpcu -GLEA" Command....................51
Figure 4.25Get the Last Event and Last Action on Segment 1...51
4.16 ./lbpcu -SCA............................................................................................52
Figure 4.26Usage of the "lbpcu -SCA" Command......................52
Figure 4.27Set a Manual BYPASS Action on Segment 1...........52
4.17 ./lbpcu -CUI.............................................................................................52
Figure 4.28Usage of the "lbpcu -CUI" Command.......................52
Figure 4.29Check Upgraded FW Image File..............................52
4.18 ./lbpcu -GFM ...........................................................................................53

Advanced LAN Bypass User Manual viii
Figure 4.30Usage of the "lbpcu -GFM" Command..................... 53
Figure 4.31MCU FW is in Application Mode............................... 53
Figure 4.32MCU FW is in Upgrade Mode .................................. 53
Figure 4.33MCU FW Upgrade Process Commenced ................ 53
4.19 ./lbpcu -UG.............................................................................................. 53
Figure 4.34Usage of the "lbpcu -UG" Command........................ 53
Figure 4.35Upgrade the MCU FW on Segment 1 ...................... 54
4.20 ./lbpcu -SRM ........................................................................................... 54
Figure 4.36Start Monitoring Reset Signal on Segment 1 ........... 54
4.21 ./lbpcu -GRMS ........................................................................................ 54
Figure 4.37Get Reset the Monitoring State on Segment 1......... 54
4.22 ./lbpcu -SRMT......................................................................................... 55
Figure 4.38Set the Countdown Value of Reset Monitoring on Seg-
ment 1 ...................................................................... 55
4.23 ./lbpcu -GRMT......................................................................................... 55
Figure 4.39Get Related Countdown Values on Segment 1........ 55
4.24 ./lbpcu -SWT ........................................................................................... 56
Figure 4.40Send the WDT Start Sequence on Segment 1......... 56
4.25 ./lbpcu -ML .............................................................................................. 56
Figure 4.41Set the Debug Message Output Level ..................... 58
4.26 ./lbpcu -SBCT.......................................................................................... 58
Figure 4.42Set the Bypass Control Type on Segment 1............ 58
4.27 ./lbpcu -GBCT......................................................................................... 59
Figure 4.43Get the Bypass Control Type on Segment 1............ 59
4.28 ./lbpcu -SBL ............................................................................................ 59
Figure 4.44Set the LED ON/OFF Settings for a BYPASS Action on
Segment 1................................................................ 59
4.29 ./lbpcu -GBL............................................................................................ 60
Figure 4.45Get the LED ON/OFF Settings for a BYPASS Action on
Segment 1................................................................ 60
4.30 ./lbpcu -SDL ............................................................................................ 60
Figure 4.46Set the LED ON/OFF Settings for a DISCONNECT Ac-
tion on Segment 1.................................................... 60
4.31 ./lbpcu -GDL............................................................................................ 61
Figure 4.47GetLEDON/OFFSettingsforDISCONNECTActionon
Segment 1................................................................ 61
4.32 ./lbpcu -SMSM ........................................................................................ 61
Figure 4.48EnableMaster/SlaveMode,SetasMaster,andDisable
the Toggle Pin on Segment 1................................... 61
4.33 /lbpcu -GMSM......................................................................................... 62
Figure 4.49Get Master/Slave Mode, Set as Master, and Disable
the Toggle Pin on Segment 1................................... 62
4.34 /lbpcu -SML............................................................................................. 62
Figure 4.50Set the Master/Slave Mode LED Behavior, XXX on
Segment 1................................................................ 62
4.35 /lbpcu -GML ............................................................................................ 63
Figure 4.51Get the Master/Slave Mode LED Behavior for a BY-
PASS Action on Segment 1 ..................................... 63
4.36 ./lbpcu -RAW........................................................................................... 63
Figure 4.52Usage of the "lbpcu -RAW" Command..................... 63
Figure 4.53Start WDT on All Segments ..................................... 63
4.37 ./lbpcu -StopAW...................................................................................... 64
Figure 4.54Stop WDT on All Segments...................................... 64
4.38 ./lbpcu -SAWT......................................................................................... 64
Figure 4.55Send the WDT Start Sequence on All Segments..... 64
4.39 ./lbpcu -WAT ........................................................................................... 65
Figure 4.56Strobethe WDT through the Toggle Pin Interface on All
Segments................................................................. 65
4.40 ./lbpcu -SACA ......................................................................................... 65
Figure 4.57Usage of the "lbpcu -SACA" Command ................... 65

ix Advanced LAN Bypass User Manual
Figure 4.58Set the Manual BYPASS Action on All Segments....65
4.41 ./lbpcu -CBTEST.....................................................................................66
Figure 4.59Enable the Event Change Detect Thread.................66
4.42 ./lbpcu -i...................................................................................................67
Figure 4.60Get all Info of a Segment..........................................68
Appendix A OS limitation ......................................69
A.1 OS limitation............................................................................................70
A.1.1 Segmentation Fault with Two Linux Distributions .......................70
Table A.1: Linux Distribution Compatibility ...............................70

Advanced LAN Bypass User Manual x

Chapter 1
1ADVANCED LAN
BYPASS

Advanced LAN Bypass User Manual 2
1.1 Scope
This document describes Advantech Advanced LAN Bypass and related SW APIs.
It covers the following SW and FW releases (see Section 3.7.2 for more details):
Please check the release date on the Advantech website or contact with your Advan-
tech representative for details supported product and eSW version.
1.2 Terminology
Table 1.1: Scope
Release date FW version Liblbpcu version LBPCU version Protocol version
2016/02/04 00.22 00.16 00.12 00.06
2016/06/28 01.02 01.00 01.00 00.06
2017/08/21 01.14 01.12 01.12 00.08
2017/09/04 01.16 01.12 01.14 00.08
2017/10/31 01.18 01.14 01.16 00.08
2018/05/10 01.20 01.16 01.18 00.08
2018/07/06 01.20 01.18 01.20 00.08
2018/09/03 01.20 01.20 01.22 00.08
Table 1.2: Terminology
Term Description
Action A specific action that the Advanced LAN Bypass mechanism
should take for a specific event
API Application programming interface
Bypass segment One bypass segment consists of two (adjacent) network ports con-
nected through bypass relays (electrical or optical)
Event A system event (e.g., power up, power down, reset, WDT timeout)
FW Firmware
FlowNIC Advantech's intelligent NIC series for flow processing/load balanc-
ing on high-end network appliances
Host system x86 system
LAN Bypass MCU LAN Bypass micro controller
LBP LAN Bypass
LBPCU Advanced LAN Bypass Control Utility
LED Light emitting diode
Liblbpcu Static library for Advanced LAN Bypass
NIC Network interface controller
NMC Network mezzanine card (an Advantech proprietary form factor
NIC card)
PCIe PCI Express
PFA PCI function address
PMM PHY mezzanine module
WDT Watchdog timer

3 Advanced LAN Bypass User Manual
Chapter 1 ADVANCED LAN BYPASS
1.3 Advanced LAN Bypass Hardware Architecture
Overview
Advanced LAN Bypass may be supported on Ethernet ports hosted either directly on
a motherboard as onboard network ports or via add-in cards such as NMCs or PCIe
NIC cards.
The NICs are connected to the CPU (s) via the PCIe interface.
A dedicated and buffered power rail allows the LAN bypass mechanism to detect sys-
tem events (e.g., power outages or resets) and take the appropriate predefined
action.
Figure 1.1 LAN Bypass Hardware Overview
Two network ports form one bypass segment. The individual segments on the plat-
form are implicitly defined through hardware design (i.e., signal and relay connectiv-
ity).
Bypass control happens on a per-segment basis.
Both network ports of a segment can either connect to their associated NICs, be dis-
connected from their associated NICs, or be switched to bypass mode where both of
the physical LAN ports connect directly to each other, isolating them from their asso-
ciated NICs (see Section 2.3 for more details).
A LAN Bypass MCU controls this connectivity by switching optical or electrical relays
between the ports. Latching relays are used to guarantee that the bypass state or
connectivity is maintained during an absence of power.
Using the Advanced LAN Bypass library and related SW APIs, applications running
on the host system can access the LAN Bypass MCUs in the system in order to
change bypass behavior or to activate and use additional features such as the inte-
grated WDT functionality.
The interface between the host SW and the LAN Bypass MCUs is optimized for low-
latency operation. The LAN Bypass library is designed as a user space library and
communicates directly with the NICs, allowing multiple SW instances to be run in par-
allel.

Advanced LAN Bypass User Manual 4

Chapter 2
2OVERVIEW

Advanced LAN Bypass User Manual 6
2.1 Host Interface
The Advantech Advanced LAN Bypass mechanism uses a direct low-latency connec-
tion between the NIC(s) and the LAN Bypass MCU(s).
2.2 Segment Control
Bypass control is always performed at the segment level; that is, each bypass seg-
ment can be controlled independently and uses distinct resources such as bypass
WDT.
This allows various schemes for applications controlling the bypass segments.
In most cases, a centralized control application or OS is used to manage LAN bypass
on the system. In such a scenario, the control plane can still control each bypass
segment independently (e.g., force one segment into bypass mode but keep another
segment connected).
Moreover, WDTs may be used independently or be centrally controlled by using the
global WDT trigger feature. For more details regarding supported WDT mechanisms,
refer to Section 2.5
It is also possible that several OS or application instances control their respective
bypass segment(s) independently, instead of using a single, global control method.
In this case, each application or instance only accesses the "local" NIC(s) and LAN
Bypass MCU(s). This eliminates shared resources which would create dependencies
between these instances via spin locks or mutexes.
The global WDT trigger feature can still be used for synchronization between bypass
segments in this mode.
2.3 Event and Action
Advanced LAN Bypass uses an event driven architecture to provide maximum flexi-
bility to define the LAN bypass behavior of each segment.
The LAN Bypass MCU will perform the specified action for each of the platform
events.
There are eight events supported by Advanced LAN Bypass:
Power Up
The host system is turned on/powers up
Power Down
The host system is turned off/powers down or there is a power failure
Power Reset
The host system is reset or rebooted
WDT Start
LAN Bypass WDT is started or strobed for the first time
WDT Timeout
LAN Bypass WDT times out
External Trigger
Global WDT trigger input (dedicated GPIO pin)
Button Event_1
The master button (supported on specific platforms) has been pushed
Button Event_2
The master button (supported on specific platforms) has been pushed again

7 Advanced LAN Bypass User Manual
Chapter 2 OVERVIEW
There are four actions supported by Advanced LAN Bypass:
CONNECT
Connects the bypass segment to the host system (i.e., both network ports of the
segment connect to the respective NICs/host)
DISCONNECT
Disconnects the bypass segment (i.e., both network ports of the segment are
isolated from the respective NICs/host and from each other)
BYPASS
Connects both ports in the bypass segment, while it isolates them from the
respective NICs/host (i.e., network traffic is possible between both ports, but
bypasses the host itself)
DO_NOT_CHANGE
Means that the state will not be changed when the specified event occurs (i.e.,
network connectivity will remain as is).
Figure 2.1 Bypass Actions and Related Port Connectivity
The default action setting for all events is "CONNECT", which means LAN Bypass is
turned off.
Example 1:
Connects the LAN ports to the host system when the system is powered and
operational
Bypasses the NICs in case of power failure or in case application SW hangs
Maintains the states of network connectivity (no change) in case of a system
reset
Master/slave mode is disabled
Table 2.1: Mapping between Events and Actions (Example 1)
Event CONNECT DISCONNECT BYPASS DO_NOT_ CHANGE
Power Up X
Power Down X
Power Reset X
WDT Start X
WDT Timeout X
External Trigger X
Button Event 1 X
Button Event 2 X
Action

Advanced LAN Bypass User Manual 8
Example 2:
Connects the LAN ports to the host system ONLY when application SW is run-
ning and strobing the WDT
Bypasses the NICs if the power is down or application SW hangs
Disconnects the LAN ports from the NICs in other states (system is booting,
application is not yet loaded)
Master/slave mode is disabled
Example 3:
Connects the LAN ports to the host system only when application SW is running
and strobing the WDT
Does not allow any traffic through the unit or bypassing the unit in any other sit-
uation
Master/Slave mode is disabled
Table 2.2: Mapping between Events and Actions (Example 2)
Event CONNECT DISCONNECT BYPASS DO_NOT_ CHANGE
Power Up X
Power Down X
Power Reset X
WDT Start X
WDT Timeout X
External Trigger X
Button Event 1 X
Button Event 2 X
Table 2.3: Mapping between Events and Actions (Example 3)
Event CONNECT DISCONNECT BYPASS DO_NOT_ CHANGE
Power Up X
Power Down X
Power Reset X
WDT Start X
WDT Timeout X
External Trigger X
Button Event 1 X
Button Event 2 X
Action
Action

9 Advanced LAN Bypass User Manual
Chapter 2 OVERVIEW
Example 4:
Connects the LAN ports to the host system only when application SW is running
and strobing the WDT
Does not allow any traffic through the unit or bypassing the unit in any other sit-
uation
Sets all segments to the same behavior (master/slave mode is enabled)
A button is required in the front or rear panel that can:
–connect all ports when pushed by the user
–bypass all ports if pushed by the user
2.4 Manual Bypass Control
In addition to the event-driven model, it is also possible to force an action on a spe-
cific LAN bypass segment via the Advanced LAN Bypass SW API. For example, an
application might enable previously disconnected network ports once it starts up and
is ready to process data. The last event will show as "Manual" to distinguish with the
event list in Section 2.3.
2.5 Watchdog Timer
Each segment supports an independent WDT. The timer base is set to 100 ms. The
WDT timeout period can be set between 100 ms and 6553.5 s (approximately 109
min).
Several WDT modes are supported. In addition to the standard WDT mode,
Advanced LAN Bypass also supports an additional feature called "toggle pin mode,"
which reduces the communication latency and overhead between the NIC and LAN
Bypass MCU. It also allows automatic WDT start-up.
Both mechanisms are supported in parallel, meaning that regular WDT control is still
available even though toggle pin mode is enabled.
Meanwhile, both mechanisms are used to strobe the same WDT. WDT expiration will
always trigger a WDT timeout event, regardless of the WDT having been previously
strobed through the toggle pin or a SW API.
2.5.1 Standard Watchdog Mechanism
In this mode, the WDT in the LAN Bypass MCU is controlled by the host SW via the
regular messaging interface. The host SW issues API commands to configure and
start, stop, or reset the WDT (see Section 3.7.4 for more details).
Table 2.4: Mapping between Events and Actions (Example 4)
Event CONNECT DISCONNECT BYPASS DO_NOT_ CHANGE
Power Up X
Power Down X
Power Reset X
WDT Start X
WDT Timeout X
External Trigger X
Button Event 1 X
Button Event 2 X
Action

Advanced LAN Bypass User Manual 10
The WDT is also strobed (to keep it from timing out) via the messaging interface
(inband).
2.5.2 Toggle Pin Mechanism
In this mode, a dedicated signal ("toggle pin") between the NIC and LAN Bypass
MCU is used to strobe the WDT and keep it from timing out. Every signal state
change (i.e., each rising or falling edge) will be treated as a WDT strobe.
This mechanism is disabled by default to provide backward compatibility with the
Legacy LAN Bypass implementation. To enable the toggle pin mechanism, two acti-
vation methods are supported:
It can be activated "on demand" by issuing the respective command via the reg-
ular messaging interface between the host and LAN Bypass MCU
It can be permanently enabled by configuration and a specific start sequence on
the toggle pin will start the timer
In toggle pin mode, no communication over the regular messaging interface is
required. The host SW simply keeps toggling the dedicated signal in order to strobe
the WDT.
Arming and auto re-arming functionalities further simplify the use of the toggle pin
mode.
2.5.2.1 On Demand Mode
Once toggle pin mode is enabled and set to on demand (manual) mode, the WDT is
armed.
Once armed, the host SW needs to execute a specific start sequence on the toggle
pin (initiated through the "lbp_start_wdt_by_toggle" API call) to start the WDT.
In normal operation, the WDT will be disarmed when it expires and needs to be re-
armed by the host SW.
For use cases where manual re-arming is not desired, auto re-arming can be
enabled. When this is enabled, the WDT will be automatically re-armed when it
expires. A subsequent change of the toggle signal will restart the WDT.
The auto re-arm function can be configured as a non-volatile setting of the LAN
Bypass MCU.
2.5.2.2 Permanent Mode
Toggle pin mode can be permanently enabled as a non-volatile configuration setting
for the LAN Bypass MCU. In this mode, toggle pin mode will automatically be
enabled and the WDT will be armed by default.
In addition, the auto re-arming features can be used as in on demand mode.
In combination, the non-volatile configuration setting for the WDT count, toggle pin
permanent enable, and auto re-arm allow for a one-time configuration of the WDT via
the host messaging interface. Once configured, no inband messaging is required
anymore but all WDT operations can be accomplished out-of-band via the toggle pin.
Toggle pin mode summary:
Enable/disable (volatile setting)
Toggle pin mode manual enable/disable (on demand mode)
Arm/disarm (volatile setting)
Arm/dis-arm the WDT (if armed, a change in toggle signal will implicitly start the
WDT)
Auto re-arm (non-volatile setting)
When the WDT expires, it will be re-armed by a subsequent change of the tog-
gle signal
Table of contents
Other Advanced Control Unit manuals