mirror of
https://github.com/logicog/RTLPlayground.git
synced 2026-08-30 14:52:51 +08:00
Add a Spanning Tree page: an on/off toggle driving the existing "stp" command over /cmd, and a live status section fed by a new /stp.json endpoint - the elected root bridge (priority + MAC), our path cost, whether we are the root, and the per-port STP state read live from the ASIC's MSTP register (same 2-bit encoding stp_setup() writes). Ports are reported by their physical numbers. Recovered-from: 3132319, 9365c86
36 lines
745 B
C
36 lines
745 B
C
#ifndef __PAGE_IMPL_H__
|
|
#define __PAGE_IMPL_H__
|
|
|
|
void send_counters(char port);
|
|
void send_status(void);
|
|
void send_vlan(uint16_t vlan);
|
|
void send_basic_info(void);
|
|
void send_bandwidth(void);
|
|
void send_eee(void);
|
|
void send_l2(uint16_t idx);
|
|
void l2_delete(uint16_t idx);
|
|
void send_mirror(void);
|
|
void send_mtu(void);
|
|
void send_config(void);
|
|
void send_cmd_log(void);
|
|
void send_lag(void);
|
|
void send_stp(void);
|
|
void send_vlanlist(void);
|
|
|
|
/* Convert only the lower nibble to ascii HEX char.
|
|
For convenience the upper nibble is masked out.
|
|
*/
|
|
inline char itohex(uint8_t val) {
|
|
// Ignore upper nibble for convenience.
|
|
val &= 0x0f;
|
|
val -= 10;
|
|
|
|
// 10 or above
|
|
if ((int8_t)val >= 0)
|
|
val += ('a' - '0' - 10);
|
|
|
|
return val + ('0' + 10);
|
|
}
|
|
|
|
#endif
|