iommu/dart: Initialize DART_STREAMS_ENABLE
authorSven Peter <sven@svenpeter.dev>
Tue, 19 Oct 2021 16:22:53 +0000 (18:22 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 25 Nov 2021 08:48:30 +0000 (09:48 +0100)
commit3c0c79d1261e7f6dc871e22740ce6b0b430b90f5
treeadfdb4ff7a92df31f26c9802a5107c10883e6aeb
parentc4ea7b0c6180b84a22a72087972ef1fc8ca3ce97
iommu/dart: Initialize DART_STREAMS_ENABLE

[ Upstream commit 5a009fc1364170b240a4d351b345e69bb3728b3e ]

DART has an additional global register to control which streams are
isolated. This register is a bit redundant since DART_TCR can already
be used to control isolation and is usually initialized to DART_STREAM_ALL
by the time we get control. Some DARTs (namely the one used for the audio
controller) however have some streams disabled initially. Make sure those
work by initializing DART_STREAMS_ENABLE during reset.

Reported-by: Martin PoviĊĦer <povik@protonmail.com>
Signed-off-by: Sven Peter <sven@svenpeter.dev>
Reviewed-by: Hector Martin <marcan@marcan.st>
Link: https://lore.kernel.org/r/20211019162253.45919-1-sven@svenpeter.dev
Signed-off-by: Joerg Roedel <jroedel@suse.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/iommu/apple-dart.c