Эх сурвалжийг харах

firewire: ohci: propagate return code from soft_reset to probe and resume

software_reset() may fail
  - due to unresponsive chip with -EBUSY (-16), or
  - due to ejected or unseated card with -ENODEV (-19).
Let the PCI probe and resume routines log the actual error code instead
of hardwired -EBUSY.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
Stefan Richter 9 жил өмнө
parent
commit
a354cf00c7

+ 3 - 2
drivers/firewire/ohci.c

@@ -2278,9 +2278,10 @@ static int ohci_enable(struct fw_card *card,
 	u32 lps, version, irqs;
 	u32 lps, version, irqs;
 	int i, ret;
 	int i, ret;
 
 
-	if (software_reset(ohci)) {
+	ret = software_reset(ohci);
+	if (ret < 0) {
 		ohci_err(ohci, "failed to reset ohci card\n");
 		ohci_err(ohci, "failed to reset ohci card\n");
-		return -EBUSY;
+		return ret;
 	}
 	}
 
 
 	/*
 	/*