We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent b94ca3c commit 282ab49Copy full SHA for 282ab49
1 file changed
drivers/iommu/apple-dart.c
@@ -1234,7 +1234,9 @@ static int apple_dart_remove(struct platform_device *pdev)
1234
{
1235
struct apple_dart *dart = platform_get_drvdata(pdev);
1236
1237
- apple_dart_hw_reset(dart);
+ if (!dart->locked)
1238
+ apple_dart_hw_reset(dart);
1239
+
1240
free_irq(dart->irq, dart);
1241
1242
iommu_device_unregister(&dart->iommu);
@@ -1342,6 +1344,10 @@ static __maybe_unused int apple_dart_resume(struct device *dev)
1342
1344
unsigned int sid, idx;
1343
1345
int ret;
1346
1347
+ /* Locked DARTs can't be restored, and they should not need it */
1348
+ if (dart->locked)
1349
+ return 0;
1350
1351
ret = apple_dart_hw_reset(dart);
1352
if (ret) {
1353
dev_err(dev, "Failed to reset DART on resume\n");
0 commit comments