|
@@ -1,6 +1,6 @@
|
|
/*
|
|
/*
|
|
* Copyright (c) 2016-2021 The Linux Foundation. All rights reserved.
|
|
* Copyright (c) 2016-2021 The Linux Foundation. All rights reserved.
|
|
- * Copyright (c) 2021-2023 Qualcomm Innovation Center, Inc. All rights reserved.
|
|
|
|
|
|
+ * Copyright (c) 2021-2024 Qualcomm Innovation Center, Inc. All rights reserved.
|
|
*
|
|
*
|
|
* Permission to use, copy, modify, and/or distribute this software for
|
|
* Permission to use, copy, modify, and/or distribute this software for
|
|
* any purpose with or without fee is hereby granted, provided that the
|
|
* any purpose with or without fee is hereby granted, provided that the
|
|
@@ -2864,13 +2864,14 @@ void dp_update_soft_irq_limits(struct dp_soc *soc, uint32_t tx_limit,
|
|
* READ NOC error when UMAC is in low power state. MCC does not have
|
|
* READ NOC error when UMAC is in low power state. MCC does not have
|
|
* device force wake working yet.
|
|
* device force wake working yet.
|
|
*
|
|
*
|
|
- * Return: none
|
|
|
|
|
|
+ * Return: rings are empty
|
|
*/
|
|
*/
|
|
-void dp_display_srng_info(struct cdp_soc_t *soc_hdl)
|
|
|
|
|
|
+bool dp_display_srng_info(struct cdp_soc_t *soc_hdl)
|
|
{
|
|
{
|
|
struct dp_soc *soc = cdp_soc_t_to_dp_soc(soc_hdl);
|
|
struct dp_soc *soc = cdp_soc_t_to_dp_soc(soc_hdl);
|
|
hal_soc_handle_t hal_soc = soc->hal_soc;
|
|
hal_soc_handle_t hal_soc = soc->hal_soc;
|
|
uint32_t hp, tp, i;
|
|
uint32_t hp, tp, i;
|
|
|
|
+ bool ret = true;
|
|
|
|
|
|
dp_info("SRNG HP-TP data:");
|
|
dp_info("SRNG HP-TP data:");
|
|
for (i = 0; i < soc->num_tcl_data_rings; i++) {
|
|
for (i = 0; i < soc->num_tcl_data_rings; i++) {
|
|
@@ -2890,6 +2891,9 @@ void dp_display_srng_info(struct cdp_soc_t *soc_hdl)
|
|
for (i = 0; i < soc->num_reo_dest_rings; i++) {
|
|
for (i = 0; i < soc->num_reo_dest_rings; i++) {
|
|
hal_get_sw_hptp(hal_soc, soc->reo_dest_ring[i].hal_srng,
|
|
hal_get_sw_hptp(hal_soc, soc->reo_dest_ring[i].hal_srng,
|
|
&tp, &hp);
|
|
&tp, &hp);
|
|
|
|
+ if (hp != tp)
|
|
|
|
+ ret = false;
|
|
|
|
+
|
|
dp_info("REO DST ring[%d]: hp=0x%x, tp=0x%x", i, hp, tp);
|
|
dp_info("REO DST ring[%d]: hp=0x%x, tp=0x%x", i, hp, tp);
|
|
}
|
|
}
|
|
|
|
|
|
@@ -2901,6 +2905,8 @@ void dp_display_srng_info(struct cdp_soc_t *soc_hdl)
|
|
|
|
|
|
hal_get_sw_hptp(hal_soc, soc->wbm_desc_rel_ring.hal_srng, &tp, &hp);
|
|
hal_get_sw_hptp(hal_soc, soc->wbm_desc_rel_ring.hal_srng, &tp, &hp);
|
|
dp_info("WBM desc release ring: hp=0x%x, tp=0x%x", hp, tp);
|
|
dp_info("WBM desc release ring: hp=0x%x, tp=0x%x", hp, tp);
|
|
|
|
+
|
|
|
|
+ return ret;
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|