lkml.org 
[lkml]   [2024]   [Apr]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH v1 1/2] net: stmmac: mmc_core: Add GMAC LPI statistics
    Date
    XGMAC MMC has already added LPI statistics. GMAC MMC lack of these
    statistics. Add register definition and reading the LPI statistics
    from registers.

    Signed-off-by: Minda Chen <minda.chen@starfivetech.com>
    ---
    drivers/net/ethernet/stmicro/stmmac/mmc_core.c | 11 +++++++++++
    1 file changed, 11 insertions(+)

    diff --git a/drivers/net/ethernet/stmicro/stmmac/mmc_core.c b/drivers/net/ethernet/stmicro/stmmac/mmc_core.c
    index 7eb477faa75a..b0db5f4e8fe8 100644
    --- a/drivers/net/ethernet/stmicro/stmmac/mmc_core.c
    +++ b/drivers/net/ethernet/stmicro/stmmac/mmc_core.c
    @@ -79,6 +79,12 @@
    #define MMC_RX_FIFO_OVERFLOW 0xd4
    #define MMC_RX_VLAN_FRAMES_GB 0xd8
    #define MMC_RX_WATCHDOG_ERROR 0xdc
    +
    +#define MMC_TX_LPI_USEC 0xec
    +#define MMC_TX_LPI_TRAN 0xf0
    +#define MMC_RX_LPI_USEC 0xf4
    +#define MMC_RX_LPI_TRAN 0xf8
    +
    /* IPC*/
    #define MMC_RX_IPC_INTR_MASK 0x100
    #define MMC_RX_IPC_INTR 0x108
    @@ -283,6 +289,8 @@ static void dwmac_mmc_read(void __iomem *mmcaddr, struct stmmac_counters *mmc)
    mmc->mmc_tx_excessdef += readl(mmcaddr + MMC_TX_EXCESSDEF);
    mmc->mmc_tx_pause_frame += readl(mmcaddr + MMC_TX_PAUSE_FRAME);
    mmc->mmc_tx_vlan_frame_g += readl(mmcaddr + MMC_TX_VLAN_FRAME_G);
    + mmc->mmc_tx_lpi_usec += readl(mmcaddr + MMC_TX_LPI_USEC);
    + mmc->mmc_tx_lpi_tran += readl(mmcaddr + MMC_TX_LPI_TRAN);

    /* MMC RX counter registers */
    mmc->mmc_rx_framecount_gb += readl(mmcaddr + MMC_RX_FRAMECOUNT_GB);
    @@ -316,6 +324,9 @@ static void dwmac_mmc_read(void __iomem *mmcaddr, struct stmmac_counters *mmc)
    mmc->mmc_rx_fifo_overflow += readl(mmcaddr + MMC_RX_FIFO_OVERFLOW);
    mmc->mmc_rx_vlan_frames_gb += readl(mmcaddr + MMC_RX_VLAN_FRAMES_GB);
    mmc->mmc_rx_watchdog_error += readl(mmcaddr + MMC_RX_WATCHDOG_ERROR);
    + mmc->mmc_rx_lpi_usec += readl(mmcaddr + MMC_RX_LPI_USEC);
    + mmc->mmc_rx_lpi_tran += readl(mmcaddr + MMC_RX_LPI_TRAN);
    +
    /* IPv4 */
    mmc->mmc_rx_ipv4_gd += readl(mmcaddr + MMC_RX_IPV4_GD);
    mmc->mmc_rx_ipv4_hderr += readl(mmcaddr + MMC_RX_IPV4_HDERR);
    --
    2.17.1

    \
     
     \ /
      Last update: 2024-05-27 16:17    [W:8.794 / U:0.952 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site