BroadSync
Manage Time API BroadSync endpoints
- BroadSync
Shortest form:
bs.Configure and inspect BroadSync, Broadcom’s time-of-day and 1PPS interface between switches or between a switch and a time module. BroadSync runs as firmware on an embedded core; the shell talks to that firmware.
If no BroadSync firmware is loaded, every form prints
Failed: Broadsync firmware not loadedand does nothing, followed by the SAI shell’sFailed to execute the diagnostic command. Error: Operation failed.SONiC does not load BroadSync firmware on Trident 3 (both embedded cores are held in reset, see MCSStatus), so on a SONiC switch this is the result of every form. Otherwise each form first printsBS<n>. bs_initialized[<0|1>]. Sub-command words can be abbreviated to their capital letters.The built-in help is incomplete: the shell also accepts the sub-commands
reattach,wband1PPS, theCONFigkeysFreq,NoPhaseandTarGeTctr, theLOGkeyDebug, and interfacesbs0tobs3where the help shows only BS0 and BS1.Safety:
STATusand the query forms ofDEBUGand1PPSare read-only. All other forms change the time-synchronisation firmware’s state; this matters only if a time-sync feature is in use.Hardware-validated
drivshell> broadsync status Failed: Broadsync firmware not loaded Failed to execute the diagnostic command. Error: Operation failed.
- BroadSync CONFig [Master] [BS1] [BitClock=<hz>] [HeartBeat=<hz>] [Freq=<n>] [PhaseSec=<s>] [PhaseNSec=<ns>] [NoPhase] [NtpTodSec=<s>] [NtpTodNSec=<ns>] [BSTimeSec=<s>] [BSTimeNSec=<ns>] [NtpTodDisable=<0|1>] [PtpTodDisable=<0|1>] [PtpTodSec=<s>] [PtpTodNSec=<ns>] [TarGeTctr=<n>]
Create or reconfigure a BroadSync interface. Slave and BS0 unless
MasterorBS1are given (both are flags that need no=). Defaults:BitClock=10000000,HeartBeat=4000,TarGeTctr=6. Once BroadSync is initialised, NTP/PTP ToD updates cannot be disabled (BroadSync initialized!! Cannot disable NTP/PTP ToD updates).Unvalidated
drivshell> broadsync config master bitclock=10000000 heartbeat=4000
- BroadSync reattach
Reconnect to an already running BroadSync firmware, for example after a warm boot. Prints
BroadSync FW reattached on unit <n>. Not in the built-in help.Unvalidated
drivshell> broadsync reattach
- BroadSync STATus [bs0 | bs1 | bs2 | bs3]
Print
Status = <n>, the DPLL lock state of one interface. Read-only.Hardware-validated
drivshell> broadsync status bs1 Failed: Broadsync firmware not loaded Failed to execute the diagnostic command. Error: Operation failed.
- BroadSync wb
Tell the BroadSync firmware to prepare for a warm boot. Not in the built-in help.
Unvalidated
drivshell> broadsync wb
- BroadSync 1PPS [ON | OFF]
Show (
1PPS is Enabled|Disabled) or switch the 1PPS heartbeat output on or off. Not in the built-in help.Unvalidated
drivshell> broadsync 1pps
- BroadSync DEBUG [ON | OFF]
Show (
Debug output is On|Off) or set debug output of the firmware messaging.Unvalidated
drivshell> broadsync debug
- BroadSync LOG [Debug=<mask>] [LogDebug] [LogPLL] [Vlan=<vid>] [DestMAC=<mac>] [DestAddr=<ip>] [SrcMAC=<mac>] [SrcAddr=<ip>] [UDPPort=<port>]
Configure the firmware’s UDP log stream.
Debug(default0xff) is not in the built-in help.Unvalidated
drivshell> broadsync log logdebug destaddr=192.0.2.1 srcaddr=192.0.2.2 udpport=5000
- BroadSync CLEANUP [bs0 | bs1]
Delete the BroadSync interface and print
Broadsync cleanup: bs<n>.Unvalidated
drivshell> broadsync cleanup
Built-in help
BroadSync CONFig [Master] [BS1] [BitClock=<hz>] [HeartBeat=<hz>] [PhaseSec=<seconds>] [PhaseNSec]=<nanoseconds> [NtpTodSec=<seconds>] [NtpTodNSec]=<nanoseconds> [BSTimeSec=<seconds>] [BSTimeNSec=<nanoseconds>] [NtpTodDisable=<0/1>] [PtpTodDisable=<0/1>] [PtpTodSec=<seconds>] [PtpTodNSec=<nanoseconds>] Initialize or reconfigure. Default is slave, if 'Master' is not specified Default is BS0, if 'BS1' is not specified BroadSync STATus [BS0|BS1] Show DPLL lock state Default is BS0, if 'BS0/''BS1' is not specified BroadSync DEBUG [ON|OFF] No option: print debug state. ON/OFF: enable/disable debug output BroadSync LOG [LogDebug] [LogPLL] [Vlan=<vlan>] [DestMAC=<mac>] [DestAddr=<addr>] [SrcMAC=<mac>] [SrcAddr=<addr>] [UDPPort=<udp port>] Sets UDP logging state BroadSync CLEANUP Cleanup the interface