12#ifndef TIMING_INCLUDE_TIMING_FIBV2IONODE_HPP_
13#define TIMING_INCLUDE_TIMING_FIBV2IONODE_HPP_
23#include "uhal/DerivedNode.hpp"
52 std::string
get_status(
bool print_out=
false)
const override;
62 std::string
get_sfp_status(uint32_t sfp_id,
bool print_out=
false)
const override;
72 void switch_sfp_tx(uint32_t sfp_id,
bool turn_on)
const override;
110 void reset(
const std::string& )
const override {}
117 std::unique_ptr<const SI534xSlave>
get_pll()
const override {
return nullptr;}
122 void configure_pll(
const std::string& clock_config_file =
"")
const override;
std::string get_pll_status(bool print_out=false) const override
Print status of on-board PLL.
FIBV2IONode(const uhal::Node &aNode)
void validate_sfp_id(uint32_t sfp_id) const
Get the PLL chip.
void switch_sfp_soft_tx_control_bit(uint32_t sfp_id, bool turn_on) const override
control tx laser of on-board SFP softly (I2C command)
void reset(const std::string &) const override
No config file for FIB v2.
std::string get_status(bool print_out=false) const override
Get status string, optionally print.
void switch_sfp_tx(uint32_t sfp_id, bool turn_on) const override
Switch on or off the SFP tx laser via the I2C IO expander controlling the sfp tx disable pin....
void configure_pll(const std::string &clock_config_file="") const override
Configure clock chip.
std::string get_sfp_status(uint32_t sfp_id, bool print_out=false) const override
Print status of on-board SFP.
void reset(const ClockSource &clock_source) const override
Reset IO, with clock file look up.
std::string get_uid_address_parameter_name() const override
Get the UID address parameter name.
bool clocks_ok() const override
Clocks ready?
std::unique_ptr< const SI534xSlave > get_pll() const override
Get the PLL chip.
void get_info(timinghardwareinfo::TimingPLLMonitorData &mon_data) const override
Base class for timing IO nodes.