rte_dpaa2_close_dpcon_device() called dpcon_close() but not dpcon_disable(). close only releases the MC control session; it does not disable the channel. Cosmetic: an idle DPCON generates nothing and every consumer reprograms on setup, so disable before close only to return the channel clean, as the symmetric counterpart of the dpcon_enable() done on setup.
Signed-off-by: Maxime Leroy <[email protected]> --- drivers/event/dpaa2/dpaa2_hw_dpcon.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/event/dpaa2/dpaa2_hw_dpcon.c b/drivers/event/dpaa2/dpaa2_hw_dpcon.c index ea5b0d4b85..f65a63a786 100644 --- a/drivers/event/dpaa2/dpaa2_hw_dpcon.c +++ b/drivers/event/dpaa2/dpaa2_hw_dpcon.c @@ -128,6 +128,7 @@ rte_dpaa2_close_dpcon_device(int object_id) if (dpcon_dev) { rte_dpaa2_free_dpcon_dev(dpcon_dev); + dpcon_disable(&dpcon_dev->dpcon, CMD_PRI_LOW, dpcon_dev->token); dpcon_close(&dpcon_dev->dpcon, CMD_PRI_LOW, dpcon_dev->token); TAILQ_REMOVE(&dpcon_dev_list, dpcon_dev, next); rte_free(dpcon_dev); -- 2.43.0

