dmaengine: idxd: fix wq cleanup of WQCFG registers
authorDave Jiang <dave.jiang@intel.com>
Mon, 12 Apr 2021 16:02:36 +0000 (09:02 -0700)
committerVinod Koul <vkoul@kernel.org>
Mon, 12 Apr 2021 16:38:39 +0000 (22:08 +0530)
commitea9aadc06a9f10ad20a90edc0a484f1147d88a7a
treeee5c3286567fabd571ecb1f0cd56f0b13836d1fd
parent6df0e6c57dfc064af330071f372f11aa8c584997
dmaengine: idxd: fix wq cleanup of WQCFG registers

A pre-release silicon erratum workaround where wq reset does not clear
WQCFG registers was leaked into upstream code. Use wq reset command
instead of blasting the MMIO region. This also address an issue where
we clobber registers in future devices.

Fixes: da32b28c95a7 ("dmaengine: idxd: cleanup workqueue config after disabling")
Reported-by: Shreenivaas Devarajan <shreenivaas.devarajan@intel.com>
Signed-off-by: Dave Jiang <dave.jiang@intel.com>
Link: https://lore.kernel.org/r/161824330020.881560.16375921906426627033.stgit@djiang5-desk3.ch.intel.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
drivers/dma/idxd/device.c
drivers/dma/idxd/idxd.h
drivers/dma/idxd/sysfs.c