From d7667cb5b45b53da43d48b4a31bb2a8249bca2c6 Mon Sep 17 00:00:00 2001 From: logicog Date: Wed, 20 Aug 2025 10:21:41 +0200 Subject: [PATCH] Cleanup statistic counters --- rtl837x_port.h | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/rtl837x_port.h b/rtl837x_port.h index b968d98..c693a07 100644 --- a/rtl837x_port.h +++ b/rtl837x_port.h @@ -1,12 +1,23 @@ #ifndef _RTL837X_PORT_H_ #define _RTL837X_PORT_H_ +#define STAT_COUNTER_TX_PKTS 0x2e +#define STAT_COUNTER_RX_PKTS 0x2f +#define STAT_COUNTER_ERR_PKTS 0x30 + +#define STAT_GET(cnt, port) \ + REG_WRITE(RTL837X_STAT_GET, 0x00, 0x00, cnt >> 3, (cnt << 5) | (port << 1) | 1); \ + do { \ + reg_read_m(RTL837X_STAT_GET); \ + } while (sfr_data[3] & 0x1); + uint8_t port_l2_forget(void) __banked; void port_l2_learned(void) __banked; void port_stats_print(void) __banked; +int8_t vlan_get(register uint16_t vlan) __banked; void vlan_setup(void) __banked; void port_pvid_set(uint8_t port, __xdata uint16_t pvid) __banked; -void vlan_create(uint16_t vlan, uint16_t members, uint16_t tagged) __banked; +void vlan_create(register uint16_t vlan, register uint16_t members, register uint16_t tagged) __banked; void vlan_delete(uint16_t vlan) __banked; void port_mirror_set(register uint8_t port, __xdata uint16_t rx_pmask, __xdata uint16_t tx_pmask) __banked; void port_mirror_del(void) __banked;