|
@@ -10156,6 +10156,50 @@ static uint8_t dp_soc_is_swlm_enabled(struct cdp_soc_t *soc_hdl)
|
|
|
}
|
|
|
#endif
|
|
|
|
|
|
+/**
|
|
|
+ * dp_display_srng_info() - Dump the srng HP TP info
|
|
|
+ * @soc_hdl: CDP Soc handle
|
|
|
+ *
|
|
|
+ * This function dumps the SW hp/tp values for the important rings.
|
|
|
+ * HW hp/tp values are not being dumped, since it can lead to
|
|
|
+ * READ NOC error when UMAC is in low power state. MCC does not have
|
|
|
+ * device force wake working yet.
|
|
|
+ *
|
|
|
+ * Return: none
|
|
|
+ */
|
|
|
+static void dp_display_srng_info(struct cdp_soc_t *soc_hdl)
|
|
|
+{
|
|
|
+ struct dp_soc *soc = cdp_soc_t_to_dp_soc(soc_hdl);
|
|
|
+ hal_soc_handle_t hal_soc = soc->hal_soc;
|
|
|
+ uint32_t hp, tp, i;
|
|
|
+
|
|
|
+ dp_info("SRNG HP-TP data:");
|
|
|
+ for (i = 0; i < soc->num_tcl_data_rings; i++) {
|
|
|
+ hal_get_sw_hptp(hal_soc, soc->tcl_data_ring[i].hal_srng,
|
|
|
+ &hp, &tp);
|
|
|
+ dp_info("TCL DATA ring[%d]: hp=0x%x, tp=0x%x", i, hp, tp);
|
|
|
+
|
|
|
+ hal_get_sw_hptp(hal_soc, soc->tx_comp_ring[i].hal_srng,
|
|
|
+ &hp, &tp);
|
|
|
+ dp_info("TX comp ring[%d]: hp=0x%x, tp=0x%x", i, hp, tp);
|
|
|
+ }
|
|
|
+
|
|
|
+ for (i = 0; i < soc->num_reo_dest_rings; i++) {
|
|
|
+ hal_get_sw_hptp(hal_soc, soc->reo_dest_ring[i].hal_srng,
|
|
|
+ &hp, &tp);
|
|
|
+ dp_info("REO DST ring[%d]: hp=0x%x, tp=0x%x", i, hp, tp);
|
|
|
+ }
|
|
|
+
|
|
|
+ hal_get_sw_hptp(hal_soc, soc->reo_exception_ring.hal_srng, &hp, &tp);
|
|
|
+ dp_info("REO exception ring: hp=0x%x, tp=0x%x", hp, tp);
|
|
|
+
|
|
|
+ hal_get_sw_hptp(hal_soc, soc->rx_rel_ring.hal_srng, &hp, &tp);
|
|
|
+ dp_info("WBM RX release ring: hp=0x%x, tp=0x%x", hp, tp);
|
|
|
+
|
|
|
+ hal_get_sw_hptp(hal_soc, soc->wbm_desc_rel_ring.hal_srng, &hp, &tp);
|
|
|
+ dp_info("WBM desc release ring: hp=0x%x, tp=0x%x", hp, tp);
|
|
|
+}
|
|
|
+
|
|
|
/**
|
|
|
* dp_soc_get_dp_txrx_handle() - get context for external-dp from dp soc
|
|
|
* @soc_handle: datapath soc handle
|
|
@@ -11549,6 +11593,7 @@ static struct cdp_misc_ops dp_ops_misc = {
|
|
|
.set_swlm_enable = dp_soc_set_swlm_enable,
|
|
|
.is_swlm_enabled = dp_soc_is_swlm_enabled,
|
|
|
#endif
|
|
|
+ .display_txrx_hw_info = dp_display_srng_info,
|
|
|
};
|
|
|
#endif
|
|
|
|