diff options
Diffstat (limited to 'src/osmo-bts-sysmo/misc/sysmobts_mgr.h')
-rw-r--r-- | src/osmo-bts-sysmo/misc/sysmobts_mgr.h | 50 |
1 files changed, 47 insertions, 3 deletions
diff --git a/src/osmo-bts-sysmo/misc/sysmobts_mgr.h b/src/osmo-bts-sysmo/misc/sysmobts_mgr.h index c71a5493..deddaadb 100644 --- a/src/osmo-bts-sysmo/misc/sysmobts_mgr.h +++ b/src/osmo-bts-sysmo/misc/sysmobts_mgr.h @@ -10,15 +10,59 @@ enum { DFIND, }; + +enum { + TEMP_ACT_PWR_CONTRL = 0x1, + TEMP_ACT_MASTER_OFF = 0x2, + TEMP_ACT_SLAVE_OFF = 0x4, + TEMP_ACT_PA_OFF = 0x8, +}; + +enum { + STATE_NORMAL, /* Everything is fine */ + STATE_WARNING, /* We are above the warning threshold */ + STATE_CRITICAL, /* We have an issue. Wait for below warning */ +}; + +/** + * Temperature Limits. We separate from a threshold + * that will generate a warning and one that is so + * severe that an action will be taken. + */ +struct sysmobts_temp_limit { + int thresh_warn; + int thresh_crit; +}; + enum mgr_vty_node { MGR_NODE = _LAST_OSMOVTY_NODE + 1, -}; -int sysmobts_mgr_vty_init(void); -int sysmobts_mgr_parse_config(const char *config_file); + ACT_WARN_NODE, + ACT_CRIT_NODE, + LIMIT_RF_NODE, + LIMIT_DIGITAL_NODE, + LIMIT_BOARD_NODE, + LIMIT_PA_NODE, +}; struct sysmobts_mgr_instance { const char *config_file; + + struct sysmobts_temp_limit rf_limit; + struct sysmobts_temp_limit digital_limit; + + /* Only available on sysmobts 2050 */ + struct sysmobts_temp_limit board_limit; + struct sysmobts_temp_limit pa_limit; + + int action_warn; + int action_crit; + + int state; }; + +int sysmobts_mgr_vty_init(void); +int sysmobts_mgr_parse_config(struct sysmobts_mgr_instance *mgr); int sysmobts_mgr_nl_init(void); + #endif |